Merge remote-tracking branch master into core-updates
This commit is contained in:
commit
154d97abdd
@ -278,6 +278,7 @@ MODULES = \
|
||||
guix/scripts/container.scm \
|
||||
guix/scripts/container/exec.scm \
|
||||
guix/scripts/deploy.scm \
|
||||
guix/scripts/time-machine.scm \
|
||||
guix.scm \
|
||||
$(GNU_SYSTEM_MODULES)
|
||||
|
||||
@ -564,7 +565,7 @@ EXTRA_DIST += \
|
||||
tests/test.drv \
|
||||
tests/signing-key.pub \
|
||||
tests/signing-key.sec \
|
||||
tests/cve-sample.xml \
|
||||
tests/cve-sample.json \
|
||||
build-aux/config.rpath \
|
||||
bootstrap \
|
||||
doc/build.scm \
|
||||
|
3
README
3
README
@ -63,7 +63,8 @@ To do so:
|
||||
- Re-run the 'configure' script passing it the option
|
||||
'--localstatedir=/somewhere', where '/somewhere' is the 'localstatedir'
|
||||
value of the currently installed Guix (failing to do that would lead the
|
||||
new Guix to consider the store to be empty!).
|
||||
new Guix to consider the store to be empty!). We recommend to use the
|
||||
value '/var'.
|
||||
|
||||
- Run "make", "make check", and "make install".
|
||||
|
||||
|
@ -18,10 +18,15 @@
|
||||
|
||||
(define-module (run-system-tests)
|
||||
#:use-module (gnu tests)
|
||||
#:use-module (gnu packages package-management)
|
||||
#:use-module ((gnu ci) #:select (channel-instance->package))
|
||||
#:use-module (guix store)
|
||||
#:use-module ((guix status) #:select (with-status-verbosity))
|
||||
#:use-module (guix monads)
|
||||
#:use-module (guix channels)
|
||||
#:use-module (guix derivations)
|
||||
#:use-module ((guix git-download) #:select (git-predicate))
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix ui)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-34)
|
||||
@ -46,28 +51,48 @@
|
||||
lst)
|
||||
(lift1 reverse %store-monad))))
|
||||
|
||||
(define (run-system-tests . args)
|
||||
(define tests
|
||||
;; Honor the 'TESTS' environment variable so that one can select a subset
|
||||
;; of tests to run in the usual way:
|
||||
;;
|
||||
;; make check-system TESTS=installed-os
|
||||
(define (tests-for-channel-instance instance)
|
||||
"Return a list of tests for perform, using Guix from INSTANCE, a channel
|
||||
instance."
|
||||
;; Honor the 'TESTS' environment variable so that one can select a subset
|
||||
;; of tests to run in the usual way:
|
||||
;;
|
||||
;; make check-system TESTS=installed-os
|
||||
(parameterize ((current-guix-package
|
||||
(channel-instance->package instance)))
|
||||
(match (getenv "TESTS")
|
||||
(#f
|
||||
(all-system-tests))
|
||||
((= string-tokenize (tests ...))
|
||||
(filter (lambda (test)
|
||||
(member (system-test-name test) tests))
|
||||
(all-system-tests)))))
|
||||
(all-system-tests))))))
|
||||
|
||||
(format (current-error-port) "Running ~a system tests...~%"
|
||||
(length tests))
|
||||
|
||||
|
||||
(define (run-system-tests . args)
|
||||
(define source
|
||||
(string-append (current-source-directory) "/.."))
|
||||
|
||||
(with-store store
|
||||
(with-status-verbosity 2
|
||||
(run-with-store store
|
||||
(mlet* %store-monad ((drv (mapm %store-monad system-test-value tests))
|
||||
;; Intern SOURCE so that 'build-from-source' in (guix channels) sees
|
||||
;; "fresh" file names and thus doesn't find itself loading .go files
|
||||
;; from ~/.cache/guile when it loads 'build-aux/build-self.scm'.
|
||||
;; XXX: It would be best to not do it upfront because we may need it.
|
||||
(mlet* %store-monad ((source (interned-file source "guix-source"
|
||||
#:recursive? #t
|
||||
#:select?
|
||||
(or (git-predicate source)
|
||||
(const #t))))
|
||||
(instance -> (checkout->channel-instance source))
|
||||
(tests -> (tests-for-channel-instance instance))
|
||||
(drv (mapm %store-monad system-test-value tests))
|
||||
(out -> (map derivation->output-path drv)))
|
||||
(format (current-error-port) "Running ~a system tests...~%"
|
||||
(length tests))
|
||||
|
||||
(mbegin %store-monad
|
||||
(show-what-to-build* drv)
|
||||
(set-build-options* #:keep-going? #t #:keep-failed? #t
|
||||
|
@ -50,10 +50,8 @@ then
|
||||
# it or its parent directories. See <http://bugs.gnu.org/17935>.
|
||||
NIX_STORE_DIR="`cd "@GUIX_TEST_ROOT@/store"; pwd -P`"
|
||||
|
||||
NIX_LOCALSTATE_DIR="@GUIX_TEST_ROOT@/var"
|
||||
GUIX_LOG_DIRECTORY="@GUIX_TEST_ROOT@/var/log/guix"
|
||||
GUIX_DATABASE_DIRECTORY="@GUIX_TEST_ROOT@/db"
|
||||
NIX_ROOT_FINDER="@abs_top_builddir@/nix/scripts/list-runtime-roots"
|
||||
|
||||
# Choose a PID-dependent name to allow for parallel builds. Note
|
||||
# that the directory name must be chosen so that the socket's file
|
||||
@ -97,8 +95,8 @@ then
|
||||
NIXPKGS="@NIXPKGS@"
|
||||
|
||||
export NIX_IGNORE_SYMLINK_STORE NIX_STORE_DIR \
|
||||
NIX_LOCALSTATE_DIR GUIX_LOG_DIRECTORY GUIX_STATE_DIRECTORY GUIX_DATABASE_DIRECTORY \
|
||||
NIX_ROOT_FINDER GUIX_BINARY_SUBSTITUTE_URL \
|
||||
GUIX_LOG_DIRECTORY GUIX_STATE_DIRECTORY GUIX_DATABASE_DIRECTORY \
|
||||
GUIX_BINARY_SUBSTITUTE_URL \
|
||||
GUIX_ALLOW_UNAUTHENTICATED_SUBSTITUTES \
|
||||
GUIX_CONFIGURATION_DIRECTORY XDG_CACHE_HOME NIXPKGS
|
||||
|
||||
|
@ -115,9 +115,6 @@ if test "x$guix_build_daemon" = "xyes"; then
|
||||
dnl to do i686-linux builds on x86_64-linux machines.
|
||||
AC_CHECK_HEADERS([sys/personality.h])
|
||||
|
||||
dnl Check for <linux/fs.h> (for immutable file support).
|
||||
AC_CHECK_HEADERS([linux/fs.h])
|
||||
|
||||
dnl Determine the appropriate default list of substitute URLs (GnuTLS
|
||||
dnl is required so we can default to 'https'.)
|
||||
guix_substitute_urls="https://ci.guix.gnu.org"
|
||||
|
12
configure.ac
12
configure.ac
@ -280,9 +280,14 @@ dnl Documentation translation.
|
||||
AM_MISSING_PROG([PO4A_TRANSLATE], [po4a-translate])
|
||||
AM_MISSING_PROG([PO4A_UPDATEPO], [po4a-updatepo])
|
||||
|
||||
dnl Emacs (optional), for 'etc/indent-package.el'.
|
||||
AC_PATH_PROG([EMACS], [emacs], [/usr/bin/emacs])
|
||||
AC_SUBST([EMACS])
|
||||
dnl Emacs (optional), for 'etc/indent-code.el'.
|
||||
AC_PATH_PROG([EMACS], [emacs])
|
||||
if test "x$EMACS" = x; then
|
||||
AC_MSG_WARN([Please install GNU Emacs to use etc/indent-code.el.])
|
||||
else
|
||||
AC_SUBST([EMACS])
|
||||
AC_CONFIG_FILES([etc/indent-code.el], [chmod +x etc/indent-code.el])
|
||||
fi
|
||||
|
||||
case "$storedir" in
|
||||
/gnu/store)
|
||||
@ -302,6 +307,5 @@ AC_CONFIG_FILES([Makefile
|
||||
AC_CONFIG_FILES([test-env:build-aux/test-env.in], [chmod +x test-env])
|
||||
AC_CONFIG_FILES([pre-inst-env:build-aux/pre-inst-env.in],
|
||||
[chmod +x pre-inst-env])
|
||||
AC_CONFIG_FILES([etc/indent-code.el], [chmod +x etc/indent-code.el])
|
||||
|
||||
AC_OUTPUT
|
||||
|
@ -51,6 +51,12 @@
|
||||
(define info-manual
|
||||
(@@ (guix self) info-manual))
|
||||
|
||||
(define %manual
|
||||
;; The manual to build--i.e., the base name of a .texi file, such as "guix"
|
||||
;; or "guix-cookbook".
|
||||
(or (getenv "GUIX_MANUAL")
|
||||
"guix"))
|
||||
|
||||
(define %languages
|
||||
'("de" "en" "es" "fr" "ru" "zh_CN"))
|
||||
|
||||
@ -164,7 +170,9 @@ as well as images, OS examples, and translations."
|
||||
|
||||
(define %makeinfo-html-options
|
||||
;; Options passed to 'makeinfo --html'.
|
||||
'("--css-ref=https://www.gnu.org/software/gnulib/manual.css"))
|
||||
'("--css-ref=https://www.gnu.org/software/gnulib/manual.css"
|
||||
"-c" "EXTRA_HEAD=<meta name=\"viewport\" \
|
||||
content=\"width=device-width, initial-scale=1\" />"))
|
||||
|
||||
(define guile-lib/htmlprag-fixed
|
||||
;; Guile-Lib with a hotfix for (htmlprag).
|
||||
@ -359,7 +367,7 @@ its <pre class=\"lisp\"> blocks (as produced by 'makeinfo --html')."
|
||||
|
||||
(define* (html-manual source #:key (languages %languages)
|
||||
(version "0.0")
|
||||
(manual "guix")
|
||||
(manual %manual)
|
||||
(date 1)
|
||||
(options %makeinfo-html-options))
|
||||
"Return the HTML manuals built from SOURCE for all LANGUAGES, with the given
|
||||
@ -386,6 +394,13 @@ makeinfo OPTIONS."
|
||||
(chr chr))
|
||||
(string-downcase language)))
|
||||
|
||||
(define (language->texi-file-name language)
|
||||
(if (string=? language "en")
|
||||
(string-append #$manual-source "/"
|
||||
#$manual ".texi")
|
||||
(string-append #$manual-source "/"
|
||||
#$manual "." language ".texi")))
|
||||
|
||||
;; Install a UTF-8 locale so that 'makeinfo' is at ease.
|
||||
(setenv "GUIX_LOCPATH"
|
||||
#+(file-append glibc-utf8-locales "/lib/locale"))
|
||||
@ -395,15 +410,12 @@ makeinfo OPTIONS."
|
||||
(setvbuf (current-error-port) 'line)
|
||||
|
||||
(for-each (lambda (language)
|
||||
(let ((opts `("--html"
|
||||
"-c" ,(string-append "TOP_NODE_UP_URL=/manual/"
|
||||
(let* ((texi (language->texi-file-name language))
|
||||
(opts `("--html"
|
||||
"-c" ,(string-append "TOP_NODE_UP_URL=/manual/"
|
||||
language)
|
||||
#$@options
|
||||
,(if (string=? language "en")
|
||||
(string-append #$manual-source "/"
|
||||
#$manual ".texi")
|
||||
(string-append #$manual-source "/"
|
||||
#$manual "." language ".texi")))))
|
||||
#$@options
|
||||
,texi)))
|
||||
(format #t "building HTML manual for language '~a'...~%"
|
||||
language)
|
||||
(mkdir-p (string-append #$output "/"
|
||||
@ -433,7 +445,8 @@ makeinfo OPTIONS."
|
||||
(symlink #$images
|
||||
(string-append #$output "/" (normalize language)
|
||||
"/html_node/images"))))
|
||||
'#$languages))))
|
||||
(filter (compose file-exists? language->texi-file-name)
|
||||
'#$languages)))))
|
||||
|
||||
(let* ((name (string-append manual "-html-manual"))
|
||||
(manual (computed-file name build)))
|
||||
@ -442,7 +455,7 @@ makeinfo OPTIONS."
|
||||
|
||||
(define* (pdf-manual source #:key (languages %languages)
|
||||
(version "0.0")
|
||||
(manual "guix")
|
||||
(manual %manual)
|
||||
(date 1)
|
||||
(options '()))
|
||||
"Return the HTML manuals built from SOURCE for all LANGUAGES, with the given
|
||||
@ -570,7 +583,10 @@ from SOURCE."
|
||||
(define* (html-manual-indexes source
|
||||
#:key (languages %languages)
|
||||
(version "0.0")
|
||||
(manual "guix")
|
||||
(manual %manual)
|
||||
(title (if (string=? "guix" manual)
|
||||
"GNU Guix Reference Manual"
|
||||
"GNU Guix Cookbook"))
|
||||
(date 1))
|
||||
(define build
|
||||
(with-extensions (list guile-json-3)
|
||||
@ -674,7 +690,7 @@ from SOURCE."
|
||||
|
||||
(define (language-index language)
|
||||
(define title
|
||||
(translate "GNU Guix Reference Manual" language))
|
||||
(translate #$title language))
|
||||
|
||||
(sxml-index
|
||||
language title
|
||||
@ -732,8 +748,7 @@ from SOURCE."
|
||||
%iso639-languages)))
|
||||
|
||||
(define (top-level-index languages)
|
||||
(define title
|
||||
"GNU Guix Reference Manual")
|
||||
(define title #$title)
|
||||
(sxml-index
|
||||
"en" title
|
||||
`(main
|
||||
@ -741,7 +756,7 @@ from SOURCE."
|
||||
(@ (class "page centered-block limit-width"))
|
||||
(h2 ,title)
|
||||
(div
|
||||
"The GNU Guix Reference Manual is available in the following
|
||||
"This document is available in the following
|
||||
languages:\n"
|
||||
(ul
|
||||
,@(map (lambda (language)
|
||||
@ -782,7 +797,7 @@ languages:\n"
|
||||
#:key (languages %languages)
|
||||
(version "0.0")
|
||||
(date (time-second (current-time time-utc)))
|
||||
(manual "guix"))
|
||||
(manual %manual))
|
||||
"Return the union of the HTML and PDF manuals, as well as the indexes."
|
||||
(directory-union (string-append manual "-manual")
|
||||
(map (lambda (proc)
|
||||
|
@ -94,7 +94,8 @@ more information.
|
||||
Then, run @command{./configure} as usual. Make sure to pass
|
||||
@code{--localstatedir=@var{directory}} where @var{directory} is the
|
||||
@code{localstatedir} value used by your current installation (@pxref{The
|
||||
Store}, for information about this).
|
||||
Store}, for information about this). We recommend to use the value
|
||||
@code{/var}.
|
||||
|
||||
Finally, you have to invoke @code{make check} to run tests
|
||||
(@pxref{Running the Test Suite}). If anything
|
||||
|
File diff suppressed because it is too large
Load Diff
360
doc/guix.texi
360
doc/guix.texi
@ -66,6 +66,8 @@ Copyright @copyright{} 2019 Josh Holland@*
|
||||
Copyright @copyright{} 2019 Diego Nicola Barbato@*
|
||||
Copyright @copyright{} 2019 Ivan Petkov@*
|
||||
Copyright @copyright{} 2019 Jakob L. Kreuze@*
|
||||
Copyright @copyright{} 2019 Kyle Andrews@*
|
||||
Copyright @copyright{} 2019 Alex Griffin@*
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
@ -196,6 +198,7 @@ Package Management
|
||||
* Invoking guix gc:: Running the garbage collector.
|
||||
* Invoking guix pull:: Fetching the latest Guix and distribution.
|
||||
* Channels:: Customizing the package collection.
|
||||
* Invoking guix time-machine:: Running an older revision of Guix.
|
||||
* Inferiors:: Interacting with another revision of Guix.
|
||||
* Invoking guix describe:: Display information about your Guix revision.
|
||||
* Invoking guix archive:: Exporting and importing store files.
|
||||
@ -791,8 +794,9 @@ When configuring Guix on a system that already has a Guix installation,
|
||||
be sure to specify the same state directory as the existing installation
|
||||
using the @code{--localstatedir} option of the @command{configure}
|
||||
script (@pxref{Directory Variables, @code{localstatedir},, standards,
|
||||
GNU Coding Standards}). The @command{configure} script protects against
|
||||
unintended misconfiguration of @var{localstatedir} so you do not
|
||||
GNU Coding Standards}). Usually, this @var{localstatedir} option is
|
||||
set to the value @file{/var}. The @command{configure} script protects
|
||||
against unintended misconfiguration of @var{localstatedir} so you do not
|
||||
inadvertently corrupt your store (@pxref{The Store}).
|
||||
|
||||
@node Running the Test Suite
|
||||
@ -2110,7 +2114,7 @@ ifconfig -a
|
||||
@dots{} or, using the GNU/Linux-specific @command{ip} command:
|
||||
|
||||
@example
|
||||
ip a
|
||||
ip address
|
||||
@end example
|
||||
|
||||
@c https://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-net_id.c#n20
|
||||
@ -2128,6 +2132,13 @@ To configure a wired network run the following command, substituting
|
||||
ifconfig @var{interface} up
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
@dots{} or, using the GNU/Linux-specific @command{ip} command:
|
||||
|
||||
@example
|
||||
ip link set @var{interface} up
|
||||
@end example
|
||||
|
||||
@item Wireless connection
|
||||
@cindex wireless
|
||||
@cindex WiFi
|
||||
@ -2540,6 +2551,7 @@ guix install emacs-guix
|
||||
* Invoking guix gc:: Running the garbage collector.
|
||||
* Invoking guix pull:: Fetching the latest Guix and distribution.
|
||||
* Channels:: Customizing the package collection.
|
||||
* Invoking guix time-machine:: Running an older revision of Guix.
|
||||
* Inferiors:: Interacting with another revision of Guix.
|
||||
* Invoking guix describe:: Display information about your Guix revision.
|
||||
* Invoking guix archive:: Exporting and importing store files.
|
||||
@ -3666,6 +3678,21 @@ descriptions, and deploys it. Source code is downloaded from a
|
||||
@uref{https://git-scm.com, Git} repository, by default the official
|
||||
GNU@tie{}Guix repository, though this can be customized.
|
||||
|
||||
Specifically, @command{guix pull} downloads code from the @dfn{channels}
|
||||
(@pxref{Channels}) specified by one of the followings, in this order:
|
||||
|
||||
@enumerate
|
||||
@item
|
||||
the @option{--channels} option;
|
||||
@item
|
||||
the user's @file{~/.config/guix/channels.scm} file;
|
||||
@item
|
||||
the system-wide @file{/etc/guix/channels.scm} file;
|
||||
@item
|
||||
the built-in default channels specified in the @code{%default-channels}
|
||||
variable.
|
||||
@end enumerate
|
||||
|
||||
On completion, @command{guix package} will use packages and package
|
||||
versions from this just-retrieved copy of Guix. Not only that, but all
|
||||
the Guix commands and Scheme modules will also be taken from that latest
|
||||
@ -3763,7 +3790,8 @@ configuration in the @file{~/.config/guix/channels.scm} file or using the
|
||||
@item --channels=@var{file}
|
||||
@itemx -C @var{file}
|
||||
Read the list of channels from @var{file} instead of
|
||||
@file{~/.config/guix/channels.scm}. @var{file} must contain Scheme code that
|
||||
@file{~/.config/guix/channels.scm} or @file{/etc/guix/channels.scm}.
|
||||
@var{file} must contain Scheme code that
|
||||
evaluates to a list of channel objects. @xref{Channels}, for more
|
||||
information.
|
||||
|
||||
@ -4126,7 +4154,10 @@ say, on another machine, by providing a channel specification in
|
||||
@end lisp
|
||||
|
||||
The @command{guix describe --format=channels} command can even generate this
|
||||
list of channels directly (@pxref{Invoking guix describe}).
|
||||
list of channels directly (@pxref{Invoking guix describe}). The resulting
|
||||
file can be used with the -C options of @command{guix pull}
|
||||
(@pxref{Invoking guix pull}) or @command{guix time-machine}
|
||||
(@pxref{Invoking guix time-machine}).
|
||||
|
||||
At this point the two machines run the @emph{exact same Guix}, with access to
|
||||
the @emph{exact same packages}. The output of @command{guix build gimp} on
|
||||
@ -4140,6 +4171,61 @@ artifacts with very fine grain, and to reproduce software environments at
|
||||
will---some sort of ``meta reproducibility'' capabilities, if you will.
|
||||
@xref{Inferiors}, for another way to take advantage of these super powers.
|
||||
|
||||
@node Invoking guix time-machine
|
||||
@section Invoking @command{guix time-machine}
|
||||
|
||||
@cindex @command{guix time-machine}
|
||||
@cindex pinning, channels
|
||||
@cindex replicating Guix
|
||||
@cindex reproducibility, of Guix
|
||||
|
||||
The @command{guix time-machine} command provides access to other
|
||||
revisions of Guix, for example to install older versions of packages,
|
||||
or to reproduce a computation in an identical environment. The revision
|
||||
of Guix to be used is defined by a commit or by a channel
|
||||
description file created by @command{guix describe}
|
||||
(@pxref{Invoking guix describe}).
|
||||
|
||||
The general syntax is:
|
||||
|
||||
@example
|
||||
guix time-machine @var{options}@dots{} -- @var{command} @var {arg}@dots{}
|
||||
@end example
|
||||
|
||||
where @var{command} and @var{arg}@dots{} are passed unmodified to the
|
||||
@command{guix} command if the specified revision. The @var{options} that define
|
||||
this revision are the same as for @command{guix pull} (@pxref{Invoking guix pull}):
|
||||
|
||||
@table @code
|
||||
@item --url=@var{url}
|
||||
@itemx --commit=@var{commit}
|
||||
@itemx --branch=@var{branch}
|
||||
Use the @code{guix} channel from the specified @var{url}, at the
|
||||
given @var{commit} (a valid Git commit ID represented as a hexadecimal
|
||||
string), or @var{branch}.
|
||||
|
||||
@item --channels=@var{file}
|
||||
@itemx -C @var{file}
|
||||
Read the list of channels from @var{file}. @var{file} must contain
|
||||
Scheme code that evaluates to a list of channel objects.
|
||||
@xref{Channels} for more information.
|
||||
@end table
|
||||
|
||||
As for @command{guix pull}, the absence of any options means that the
|
||||
the latest commit on the master branch will be used. The command
|
||||
|
||||
@example
|
||||
guix time-machine -- build hello
|
||||
@end example
|
||||
|
||||
will thus build the package @code{hello} as defined in the master branch,
|
||||
which is in general a newer revison of Guix than you have installed.
|
||||
Time travel works in both directions!
|
||||
|
||||
Note that @command{guix time-machine} can trigger builds of channels and
|
||||
their dependencies, and these are controlled by the standard build
|
||||
options (@pxref{Common Build Options}).
|
||||
|
||||
@node Inferiors
|
||||
@section Inferiors
|
||||
|
||||
@ -5662,9 +5748,6 @@ The URL to the home-page of the package, as a string.
|
||||
The list of systems supported by the package, as strings of the form
|
||||
@code{architecture-kernel}, for example @code{"x86_64-linux"}.
|
||||
|
||||
@item @code{maintainers} (default: @code{'()})
|
||||
The list of maintainers of the package, as @code{maintainer} objects.
|
||||
|
||||
@item @code{location} (default: source location of the @code{package} form)
|
||||
The source location of the package. It is useful to override this when
|
||||
inheriting from another package, in which case this field is not
|
||||
@ -8297,6 +8380,11 @@ The returned source tarball is the result of applying any patches and
|
||||
code snippets specified in the package @code{origin} (@pxref{Defining
|
||||
Packages}).
|
||||
|
||||
Note that @command{guix build -S} compiles the sources only of the
|
||||
specified packages. They do not include the sources of statically
|
||||
linked dependencies and by themselves are insufficient for reproducing
|
||||
the packages.
|
||||
|
||||
@item --sources
|
||||
Fetch and return the source of @var{package-or-derivation} and all their
|
||||
dependencies, recursively. This is a handy way to obtain a local copy
|
||||
@ -9487,7 +9575,7 @@ that limit has been reset.
|
||||
@cindex CVE, Common Vulnerabilities and Exposures
|
||||
Report known vulnerabilities found in the Common Vulnerabilities and
|
||||
Exposures (CVE) databases of the current and past year
|
||||
@uref{https://nvd.nist.gov/download.cfm#CVE_FEED, published by the US
|
||||
@uref{https://nvd.nist.gov/vuln/data-feeds, published by the US
|
||||
NIST}.
|
||||
|
||||
To view information about a particular vulnerability, visit pages such as:
|
||||
@ -9504,7 +9592,7 @@ where @code{CVE-YYYY-ABCD} is the CVE identifier---e.g.,
|
||||
@code{CVE-2015-7554}.
|
||||
|
||||
Package developers can specify in package recipes the
|
||||
@uref{https://nvd.nist.gov/cpe.cfm,Common Platform Enumeration (CPE)}
|
||||
@uref{https://nvd.nist.gov/products/cpe,Common Platform Enumeration (CPE)}
|
||||
name and version of the package when they differ from the name or version
|
||||
that Guix uses, as in this example:
|
||||
|
||||
@ -9886,7 +9974,18 @@ The package dependency graph is largely architecture-independent, but there
|
||||
are some architecture-dependent bits that this option allows you to visualize.
|
||||
@end table
|
||||
|
||||
On top of that, @command{guix graph} supports all the usual package
|
||||
transformation options (@pxref{Package Transformation Options}). This
|
||||
makes it easy to view the effect of a graph-rewriting transformation
|
||||
such as @option{--with-input}. For example, the command below outputs
|
||||
the graph of @code{git} once @code{openssl} has been replaced by
|
||||
@code{libressl} everywhere in the graph:
|
||||
|
||||
@example
|
||||
guix graph git --with-input=openssl=libressl
|
||||
@end example
|
||||
|
||||
So many possibilities, so much fun!
|
||||
|
||||
@node Invoking guix publish
|
||||
@section Invoking @command{guix publish}
|
||||
@ -10094,7 +10193,7 @@ of the @code{operating-system} declaration (@pxref{guix-publish-service-type,
|
||||
@code{guix-publish-service-type}}).
|
||||
|
||||
If you are instead running Guix on a ``foreign distro'', follow these
|
||||
instructions:”
|
||||
instructions:
|
||||
|
||||
@itemize
|
||||
@item
|
||||
@ -10550,7 +10649,6 @@ ClientPID: 19419
|
||||
ClientCommand: cuirass --cache-directory /var/cache/cuirass @dots{}
|
||||
@end example
|
||||
|
||||
|
||||
@node System Configuration
|
||||
@chapter System Configuration
|
||||
|
||||
@ -13940,6 +14038,52 @@ Package object of the Open vSwitch.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@defvr {Scheme Variable} pagekite-service-type
|
||||
This is the service type for the @uref{https://pagekite.net, PageKite} service,
|
||||
a tunneling solution for making localhost servers publicly visible, even from
|
||||
behind NAT or restrictive firewalls. The value for this service type is a
|
||||
@code{pagekite-configuration} record.
|
||||
|
||||
Here's an example exposing the local HTTP and SSH daemons:
|
||||
|
||||
@lisp
|
||||
(service pagekite-service-type
|
||||
(pagekite-configuration
|
||||
(kites '("http:@@kitename:localhost:80:@@kitesecret"
|
||||
"raw/22:@@kitename:localhost:22:@@kitesecret"))
|
||||
(extra-file "/etc/pagekite.rc")))
|
||||
@end lisp
|
||||
@end defvr
|
||||
|
||||
@deftp {Data Type} pagekite-configuration
|
||||
Data type representing the configuration of PageKite.
|
||||
|
||||
@table @asis
|
||||
@item @code{package} (default: @var{pagekite})
|
||||
Package object of PageKite.
|
||||
|
||||
@item @code{kitename} (default: @code{#f})
|
||||
PageKite name for authenticating to the frontend server.
|
||||
|
||||
@item @code{kitesecret} (default: @code{#f})
|
||||
Shared secret for authenticating to the frontend server. You should probably
|
||||
put this inside @code{extra-file} instead.
|
||||
|
||||
@item @code{frontend} (default: @code{#f})
|
||||
Connect to the named PageKite frontend server instead of the
|
||||
@uref{https://pagekite.net,,pagekite.net} service.
|
||||
|
||||
@item @code{kites} (default: @code{'("http:@@kitename:localhost:80:@@kitesecret")})
|
||||
List of service kites to use. Exposes HTTP on port 80 by default. The format
|
||||
is @code{proto:kitename:host:port:secret}.
|
||||
|
||||
@item @code{extra-file} (default: @code{#f})
|
||||
Extra configuration file to read, which you are expected to create manually.
|
||||
Use this to add additional options and manage shared secrets out-of-band.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@node X Window
|
||||
@subsection X Window
|
||||
|
||||
@ -13991,6 +14135,9 @@ When @code{auto-login?} is false, GDM presents a log-in screen.
|
||||
When @code{auto-login?} is true, GDM logs in directly as
|
||||
@code{default-user}.
|
||||
|
||||
@item @code{debug?} (default: @code{#f})
|
||||
When true, GDM writes debug messages to its log.
|
||||
|
||||
@item @code{gnome-shell-assets} (default: ...)
|
||||
List of GNOME Shell assets needed by GDM: icon theme, fonts, etc.
|
||||
|
||||
@ -14196,16 +14343,43 @@ Relogin after logout.
|
||||
|
||||
@cindex login manager
|
||||
@cindex X11 login
|
||||
@deffn {Scheme Procedure} sddm-service config
|
||||
Return a service that spawns the SDDM graphical login manager for config of
|
||||
type @code{<sddm-configuration>}.
|
||||
@defvr {Scheme Variable} sddm-service-type
|
||||
This is the type of the service to run the
|
||||
@uref{https://github.com/sddm/sddm,SSDM display manager}. Its value
|
||||
must be a @code{sddm-configuration} record (see below).
|
||||
|
||||
@example
|
||||
(sddm-service (sddm-configuration
|
||||
(auto-login-user "Alice")
|
||||
(auto-login-session "xfce.desktop")))
|
||||
@end example
|
||||
@end deffn
|
||||
Here's an example use:
|
||||
|
||||
@lisp
|
||||
(service sddm-service-type
|
||||
(sddm-configuration
|
||||
(auto-login-user "alice")
|
||||
(auto-login-session "xfce.desktop")))
|
||||
@end lisp
|
||||
@end defvr
|
||||
|
||||
@deftp {Data Type} sddm-configuration
|
||||
This data type represents the configuration of the SDDM login manager.
|
||||
The available fields are:
|
||||
|
||||
@table @asis
|
||||
@item @code{sddm} (default: @code{sddm})
|
||||
The SDDM package to use.
|
||||
|
||||
@item @code{display-server} (default: @code{"x11"})
|
||||
This must be either @code{"x11"} or @code{"wayland"}.
|
||||
|
||||
@c FIXME: Add more fields.
|
||||
|
||||
@item @code{auto-login-user} (default: @code{""})
|
||||
If non-empty, this is the user account under which to log in
|
||||
automatically.
|
||||
|
||||
@item @code{auto-login-session} (default: @code{""})
|
||||
If non-empty, this is the @file{.desktop} file name to use as the
|
||||
auto-login session.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@cindex Xorg, configuration
|
||||
@deftp {Data Type} xorg-configuration
|
||||
@ -15487,8 +15661,9 @@ notifications and ways to mount/unmount disks. Programs that talk to UDisks
|
||||
include the @command{udisksctl} command, part of UDisks, and GNOME Disks.
|
||||
@end deffn
|
||||
|
||||
@deffn {Scheme Procedure} colord-service [#:colord @var{colord}]
|
||||
Return a service that runs @command{colord}, a system service with a D-Bus
|
||||
@deffn {Scheme Variable} colord-service-type
|
||||
This is the type of the service that runs @command{colord}, a system
|
||||
service with a D-Bus
|
||||
interface to manage the color profiles of input and output devices such as
|
||||
screens and scanners. It is notably used by the GNOME Color Manager graphical
|
||||
tool. See @uref{https://www.freedesktop.org/software/colord/, the colord web
|
||||
@ -17417,7 +17592,7 @@ Defaults to @samp{#f}.
|
||||
|
||||
@deftypevr {@code{getmail-options-configuration} parameter} non-negative-integer delete-after
|
||||
Getmail will delete messages this number of days after seeing them, if
|
||||
they have not been delivered. This means messages will be left on the
|
||||
they have been delivered. This means messages will be left on the
|
||||
server this number of days after delivering them. A value of @samp{0}
|
||||
disabled this feature.
|
||||
|
||||
@ -19702,6 +19877,17 @@ 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{modules} (default: @code{'()})
|
||||
List of nginx dynamic modules to load. This should be a list of file
|
||||
names of loadable modules, as in this example:
|
||||
|
||||
@lisp
|
||||
(modules
|
||||
(list
|
||||
(file-append nginx-accept-language-module "\
|
||||
/etc/nginx/modules/ngx_http_accept_language_module.so")))
|
||||
@end lisp
|
||||
|
||||
@item @code{extra-content} (default: @code{""})
|
||||
Extra content for the @code{http} block. Should be string or a string
|
||||
valued G-expression.
|
||||
@ -21006,6 +21192,44 @@ The list of knot-zone-configuration used by this configuration.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@subsubheading Knot Resolver Service
|
||||
|
||||
@deffn {Scheme Variable} knot-resolver-service-type
|
||||
This this the type of the knot resolver service, whose value should be
|
||||
an @code{knot-resolver-configuration} object as in this example:
|
||||
|
||||
@lisp
|
||||
(service knot-resolver-service-type
|
||||
(knot-resolver-configuration
|
||||
(kresd-config-file (plain-file "kresd.conf" "
|
||||
net.listen('192.168.0.1', 5353)
|
||||
user('knot-resolver', 'knot-resolver')
|
||||
modules = @{ 'hints > iterate', 'stats', 'predict' @}
|
||||
cache.size = 100 * MB
|
||||
"))))
|
||||
@end lisp
|
||||
|
||||
For more information, refer its @url{https://knot-resolver.readthedocs.org/en/stable/daemon.html#configuration, manual}.
|
||||
@end deffn
|
||||
|
||||
@deftp {Data Type} knot-resolver-configuration
|
||||
Data type representing the configuration of knot-resolver.
|
||||
|
||||
@table @asis
|
||||
@item @code{package} (default: @var{knot-resolver})
|
||||
Package object of the knot DNS resolver.
|
||||
|
||||
@item @code{kresd-config-file} (default: %kresd.conf)
|
||||
File-like object of the kresd configuration file to use, by default it
|
||||
will listen on @code{127.0.0.1} and @code{::1}.
|
||||
|
||||
@item @code{garbage-collection-interval} (default: 1000)
|
||||
Number of milliseconds for @code{kres-cache-gc} to periodically trim the cache.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
|
||||
@subsubheading Dnsmasq Service
|
||||
|
||||
@deffn {Scheme Variable} dnsmasq-service-type
|
||||
@ -22351,9 +22575,69 @@ The port to run mpd on.
|
||||
The address that mpd will bind to. To use a Unix domain socket,
|
||||
an absolute path can be specified here.
|
||||
|
||||
@item @code{outputs} (default: @code{"(list (mpd-output))"})
|
||||
The audio outputs that MPD can use. By default this is a single output using pulseaudio.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@deftp {Data Type} mpd-output
|
||||
Data type representing an @command{mpd} audio output.
|
||||
|
||||
@table @asis
|
||||
@item @code{name} (default: @code{"MPD"})
|
||||
The name of the audio output.
|
||||
|
||||
@item @code{type} (default: @code{"pulse"})
|
||||
The type of audio output.
|
||||
|
||||
@item @code{enabled?} (default: @code{#t})
|
||||
Specifies whether this audio output is enabled when MPD is started. By
|
||||
default, all audio outputs are enabled. This is just the default
|
||||
setting when there is no state file; with a state file, the previous
|
||||
state is restored.
|
||||
|
||||
@item @code{tags?} (default: @code{#t})
|
||||
If set to @code{#f}, then MPD will not send tags to this output. This
|
||||
is only useful for output plugins that can receive tags, for example the
|
||||
@code{httpd} output plugin.
|
||||
|
||||
@item @code{always-on?} (default: @code{#f})
|
||||
If set to @code{#t}, then MPD attempts to keep this audio output always
|
||||
open. This may be useful for streaming servers, when you don’t want to
|
||||
disconnect all listeners even when playback is accidentally stopped.
|
||||
|
||||
@item @code{mixer-type}
|
||||
This field accepts a symbol that specifies which mixer should be used
|
||||
for this audio output: the @code{hardware} mixer, the @code{software}
|
||||
mixer, the @code{null} mixer (allows setting the volume, but with no
|
||||
effect; this can be used as a trick to implement an external mixer
|
||||
External Mixer) or no mixer (@code{none}).
|
||||
|
||||
@item @code{extra-options} (default: @code{'()"})
|
||||
An association list of option symbols to string values to be appended to
|
||||
the audio output configuration.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
The following example shows a configuration of @code{mpd} that provides
|
||||
an HTTP audio streaming output.
|
||||
|
||||
@lisp
|
||||
(service mpd-service-type
|
||||
(mpd-configuration
|
||||
(outputs
|
||||
(list (mpd-output
|
||||
(name "streaming")
|
||||
(type "httpd")
|
||||
(mixer-type 'null)
|
||||
(extra-options
|
||||
`((encoder . "vorbis")
|
||||
(port . "8080"))))))))
|
||||
@end lisp
|
||||
|
||||
|
||||
@node Virtualization Services
|
||||
@subsection Virtualization services
|
||||
|
||||
@ -24549,6 +24833,10 @@ The type of device to connect to. Run @command{inputattach --help}, from the
|
||||
@item @code{device} (default: @code{"/dev/ttyS0"})
|
||||
The device file to connect to the device.
|
||||
|
||||
@item @code{baud-rate} (default: @code{#f})
|
||||
Baud rate to use for the serial connection.
|
||||
Should be a number or @code{#f}.
|
||||
|
||||
@item @code{log-file} (default: @code{#f})
|
||||
If true, this must be the name of a file to log messages to.
|
||||
@end table
|
||||
@ -25976,12 +26264,10 @@ The object of the operating system configuration to deploy.
|
||||
|
||||
@item @code{environment}
|
||||
An @code{environment-type} describing how the machine should be provisioned.
|
||||
At the moment, the only supported value is
|
||||
@code{managed-host-environment-type}.
|
||||
|
||||
@item @code{configuration} (default: @code{#f})
|
||||
An object describing the configuration for the machine's @code{environment}.
|
||||
If the @code{environment} has a default configuration, @code{#f} maybe used.
|
||||
If the @code{environment} has a default configuration, @code{#f} may be used.
|
||||
If @code{#f} is used for an environment with no default configuration,
|
||||
however, an error will be thrown.
|
||||
@end table
|
||||
@ -26009,6 +26295,26 @@ remote host.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@deftp {Data Type} digital-ocean-configuration
|
||||
This is the data type describing the Droplet that should be created for a
|
||||
machine with an @code{environment} of @code{digital-ocean-environment-type}.
|
||||
|
||||
@table @asis
|
||||
@item @code{ssh-key}
|
||||
The path to the SSH private key to use to authenticate with the remote
|
||||
host. In the future, this field may not exist.
|
||||
@item @code{tags}
|
||||
A list of string ``tags'' that uniquely identify the machine. Must be given
|
||||
such that no two machines in the deployment have the same set of tags.
|
||||
@item @code{region}
|
||||
A Digital Ocean region slug, such as @code{"nyc3"}.
|
||||
@item @code{size}
|
||||
A Digital Ocean size slug, such as @code{"s-1vcpu-1gb"}
|
||||
@item @code{enable-ipv6?}
|
||||
Whether or not the droplet should be created with IPv6 networking.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@node Running Guix in a VM
|
||||
@section Running Guix in a Virtual Machine
|
||||
|
||||
|
202
etc/news.scm
202
etc/news.scm
@ -9,9 +9,184 @@
|
||||
(channel-news
|
||||
(version 0)
|
||||
|
||||
(entry (commit "f675f8dec73d02e319e607559ed2316c299ae8c7")
|
||||
(title (en "New command @command{guix time-machine}")
|
||||
(de "Neuer Befehl @command{guix time-machine}")
|
||||
(fr "Nouvelle commande @command{guix time-machine}"))
|
||||
(body (en "The new command @command{guix time-machine} facilitates
|
||||
access to older or newer revisions of Guix than the one that is installed.
|
||||
It can be used to install different versions of packages, and to
|
||||
re-create computational environments exactly as used in the past.")
|
||||
(de "Der neue Befehl @command{guix time-machine} vereinfacht
|
||||
den Zugriff auf ältere oder neuere Guix-Versionen als die installierte.
|
||||
Er kann zur Installation bestimmer Paketversionen verwendet werden, aber
|
||||
auch zur Wiederherstellung von Entwicklungsumgebungen, wie sie in der
|
||||
Vergagngenheit verwendet wurden.")
|
||||
(fr "La nouvelle commande @command{guix time-machine}
|
||||
facilite l'accès à des versions antérieures ou postérieures par rapport
|
||||
à la version installée. Elle sert à installer des versions spécifiques
|
||||
de paquets, ainsi à la restauration d'environnements dans un état
|
||||
historique.")))
|
||||
(entry (commit "3e962e59d849e4300e447d94487684102d9d412e")
|
||||
(title (en "@command{guix graph} now supports package
|
||||
transformations")
|
||||
(de "@command{guix graph} unterstützt nun Paketumwandlungen"))
|
||||
(body
|
||||
(en "The @command{guix graph} command now supports the common package
|
||||
transformation options (see @command{info \"(guix) Package Transformation
|
||||
Options\"}). This is useful in particular to see the effect of the
|
||||
@option{--with-input} dependency graph rewriting option.")
|
||||
(de "Der Befehl @command{guix graph} unterstützt nun die mit anderen
|
||||
Befehlen gemeinsamen Umwandlungsoptionen (siehe @command{info \"(guix.de)
|
||||
Paketumwandlungsoptionen\"}). Sie helfen insbesondere dabei, die Wirkung der
|
||||
Befehlszeilenoption @option{--with-input} zum Umschreiben des
|
||||
Abhängigkeitsgraphen zu sehen.")
|
||||
(es "La orden @command{guix graph} ahora implementa las opciones
|
||||
comunes de transformación de paquetes (véase @command{info \"(guix.es)
|
||||
Opciones de transformación de paquetes\"}). Esto es particularmente
|
||||
útil para comprobar el efecto de la opción de reescritura del grafo
|
||||
de dependencias @option{--with-input}.")))
|
||||
|
||||
(entry (commit "49af34cfac89d384c46269bfd9388b2c73b1220a")
|
||||
(title (en "@command{guix pull} now honors
|
||||
@file{/etc/guix/channels.scm}")
|
||||
(de "@command{guix pull} berücksichtigt nun
|
||||
@file{/etc/guix/channels.scm}")
|
||||
(es "Ahora @command{guix pull} tiene en cuenta
|
||||
@file{/etc/guix/channels.scm}")
|
||||
(fr "@command{guix pull} lit maintenant
|
||||
@file{/etc/guix/channels.scm}"))
|
||||
(body
|
||||
(en "The @command{guix pull} command will now read the
|
||||
@file{/etc/guix/channels.scm} file if it exists and if the per-user
|
||||
@file{~/.config/guix/channels.scm} is not present. This allows administrators
|
||||
of multi-user systems to define site-wide defaults.")
|
||||
(de "Der Befehl @command{guix pull} liest nun die Datei
|
||||
@file{/etc/guix/channels.scm}, wenn sie existiert und es für den jeweiligen
|
||||
Benutzer keine @file{~/.config/guix/channels.scm} gibt. Dadurch können
|
||||
Administratoren von Mehrbenutzersystemen systemweite Voreinstellungen
|
||||
vornehmen.")
|
||||
(es "Ahora la orden @command{guix pull} lee el fichero
|
||||
@file{/etc/guix/channels.scm} si existe y el fichero personalizable
|
||||
@file{~/.config/guix/channels.scm} no está presente. Esto permite a quienes
|
||||
administran sistemas con múltiples usuarias definir valores predeterminados
|
||||
en el sistema.")
|
||||
(fr "La commande @command{guix pull} lira maintenant le fichier
|
||||
@file{/etc/guix/channels.scm} s'il existe et si le fichier
|
||||
@file{~/.config/guix/channels.scm} par utilisateur·rice n'est pas présent.
|
||||
Cela permet aux personnes administrant des systèmes multi-utilisateurs de
|
||||
définir les canaux par défaut.")))
|
||||
|
||||
(entry (commit "81c580c8664bfeeb767e2c47ea343004e88223c7")
|
||||
(title (en "Insecure @file{/var/guix/profiles/per-user} permissions (CVE-2019-18192)")
|
||||
(de "Sicherheitslücke in @file{/var/guix/profiles/per-user}-Berechtigungen (CVE-2019-18192)")
|
||||
(es "Vulnerabilidad en los permisos de @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
|
||||
(fr "Permissions laxistes pour @file{/var/guix/profiles/per-user} (CVE-2019-18192)")
|
||||
(nl "Onveilige @file{/var/guix/profiles/per-user}-rechten (CVE-2019-18192)"))
|
||||
(body
|
||||
(en "The default user profile, @file{~/.guix-profile}, points to
|
||||
@file{/var/guix/profiles/per-user/$USER}. Until now,
|
||||
@file{/var/guix/profiles/per-user} was world-writable, allowing the
|
||||
@command{guix} command to create the @code{$USER} sub-directory.
|
||||
|
||||
On a multi-user system, this allowed a malicious user to create and populate
|
||||
that @code{$USER} sub-directory for another user that had not yet logged in.
|
||||
Since @code{/var/@dots{}/$USER} is in @code{$PATH}, the target user could end
|
||||
up running attacker-provided code. See
|
||||
@uref{https://issues.guix.gnu.org/issue/37744} for more information.
|
||||
|
||||
This is now fixed by letting @command{guix-daemon} create these directories on
|
||||
behalf of users and removing the world-writable permissions on
|
||||
@code{per-user}. On multi-user systems, we recommend updating the daemon now.
|
||||
To do that, run @code{sudo guix pull} if you're on a foreign distro, or run
|
||||
@code{guix pull && sudo guix system reconfigure @dots{}} on Guix System. In
|
||||
both cases, make sure to restart the service afterwards, with @code{herd} or
|
||||
@code{systemctl}.")
|
||||
(de "Das voreingestellte Benutzerprofil, @file{~/.guix-profile},
|
||||
verweist auf @file{/var/guix/profiles/per-user/$USER}. Bisher hatte jeder
|
||||
Benutzer Schreibzugriff auf @file{/var/guix/profiles/per-user}, wodurch der
|
||||
@command{guix}-Befehl berechtigt war, das Unterverzeichnis @code{$USER}
|
||||
anzulegen.
|
||||
|
||||
Wenn mehrere Benutzer dasselbe System benutzen, kann ein böswilliger Benutzer
|
||||
so das Unterverzeichnis @code{$USER} und Dateien darin für einen anderen
|
||||
Benutzer anlegen, wenn sich dieser noch nie angemeldet hat. Weil
|
||||
@code{/var/…/$USER} auch in @code{$PATH} aufgeführt ist, kann der betroffene
|
||||
Nutzer dazu gebracht werden, vom Angreifer vorgegebenen Code auszuführen.
|
||||
Siehe @uref{https://issues.guix.gnu.org/issue/37744} für weitere
|
||||
Informationen.
|
||||
|
||||
Der Fehler wurde nun behoben, indem @command{guix-daemon} diese Verzeichnisse
|
||||
jetzt selbst anlegt statt das dem jeweiligen Benutzerkonto zu überlassen. Der
|
||||
Schreibzugriff auf @code{per-user} wird den Benutzern entzogen. Für Systeme
|
||||
mit mehreren Benutzern empfehlen wir, den Daemon jetzt zu aktualisieren. Auf
|
||||
einer Fremddistribution führen Sie dazu @code{sudo guix pull} aus; auf einem
|
||||
Guix-System führen Sie @code{guix pull && sudo guix system reconfigure …}
|
||||
aus. Achten Sie in beiden Fällen darauf, den Dienst mit @code{herd} oder
|
||||
@code{systemctl} neuzustarten.")
|
||||
(es "El perfil predeterminado de la usuaria, @file{~/.guix-profile},
|
||||
apunta a @file{/var/guix/profiles/per-user/$USUARIA}. Hasta ahora cualquiera
|
||||
podía escribir en @file{/var/guix/profiles/per-user}, lo cual permitía
|
||||
a la orden @command{guix} crear el subdirectorio @code{$USUARIA}.
|
||||
|
||||
En un sistema con múltiples usuarias, esto permitiría a cualquiera con
|
||||
intención de causar daño crear ese subdirectorio @code{$USUARIA} con el nombre
|
||||
de alguien que no hubiese ingresado en el sistema. Puesto que ese
|
||||
subdirectorio @code{/var/@dots{}/$USUARIA} se encuentra en la ruta de binarios
|
||||
predeterminada @code{$PATH}, el objetivo del ataque podría ejecutar código
|
||||
proporcionado por la parte atacante. Véase
|
||||
@uref{https://issues.guix.gnu.org/issue/37744} para obtener más información.
|
||||
|
||||
Se ha solucionando delegando en @command{guix-daemon} la creación de esos
|
||||
directorios y eliminando los permisos de escritura para todo el mundo en
|
||||
@code{per-user}. En sistemas con múltiples usuarias recomendamos actualizar
|
||||
cuanto antes el daemon. Para hacerlo ejecute @code{sudo guix pull} si se
|
||||
encuentra en una distribución distinta, o ejecute @code{guix pull && sudo guix system reconfigure @dots{}} en el sistema Guix. En ambos casos, asegurese de
|
||||
reiniciar el servicio tras ello, con @code{herd} o @code{systemctl}.")
|
||||
(fr "Le profil utilisateur par défaut, @file{~/.guix-profile},
|
||||
pointe vers @file{/var/guix/profiles/per-user/$USER}. Jusqu'à
|
||||
maintenant, @file{/var/guix/profiles/per-user} était disponible en
|
||||
écriture pour tout le monde, ce qui permettait à la commande
|
||||
@command{guix} de créér le sous-répertoire @code{$USER}.
|
||||
|
||||
Sur un système multi-utilisateur, cela permet à un utilisateur
|
||||
malveillant de créer et de remplir le sous-répertoire @code{USER} pour
|
||||
n'importe quel utilisateur qui ne s'est jamais connecté. Comme
|
||||
@code{/var/@dots{}/$USER} fait partie de @code{$PATH}, l'utilisateur
|
||||
ciblé pouvait exécuter des programmes fournis par l'attaquant. Voir
|
||||
@uref{https://issues.guix.gnu.org/issue/37744} pour plus de détails.
|
||||
|
||||
Cela est maintenant corrigé en laissant à @command{guix-daemon} le soin
|
||||
de créer ces répertoire pour le compte des utilisateurs et en
|
||||
supprimant les permissions en écriture pour tout le monde sur
|
||||
@code{per-user}. Nous te recommandons de mettre à jour le démon
|
||||
immédiatement. Pour cela, lance @code{sudo guix pull} si tu es sur
|
||||
une distro externe ou @code{guix pull && sudo guix system reconfigure
|
||||
@dots{}} sur le système Guix. Dans tous les cas, assure-toi ensuite de
|
||||
redémarrer le service avec @code{herd} ou @code{systemctl}.")
|
||||
(nl "Het standaard gebruikersprofiel, @file{~/.guix-profile}, verwijst
|
||||
naar @file{/var/guix/profiles/per-user/$USER}. Tot op heden kon om het even wie
|
||||
in @file{/var/guix/profiles/per-user} schrijven, wat het @command{guix}-commando
|
||||
toestond de @code{$USER} submap aan te maken.
|
||||
|
||||
Op systemen met meerdere gebruikers kon hierdoor een kwaadaardige gebruiker een
|
||||
@code{$USER} submap met inhoud aanmaken voor een andere gebruiker die nog niet
|
||||
was ingelogd. Omdat @code{/var/@dots{}/$USER} zich in @code{$PATH} bevindt,
|
||||
kon het doelwit zo code uitvoeren die door de aanvaller zelf werd aangeleverd.
|
||||
Zie @uref{https://issues.guix.gnu.org/issue/37744} voor meer informatie.
|
||||
|
||||
Dit probleem is nu verholpen: schrijven door iedereen in @code{per-user} is niet
|
||||
meer toegestaan en @command{guix-daemon} maakt zelf submappen aan namens de
|
||||
gebruiker. Op systemen met meerdere gebruikers raden we aan om
|
||||
@code{guix-daemon} nu bij te werken. Op Guix System kan dit met
|
||||
@code{guix pull && sudo guix system reconfigure @dots{}}, op andere distributies
|
||||
met @code{sudo guix pull}. Herstart vervolgens in beide gevallen
|
||||
@code{guix-daemon} met @code{herd} of @code{systemctl}.")))
|
||||
|
||||
(entry (commit "5f3f70391809f8791c55c05bd1646bc58508fa2c")
|
||||
(title (en "GNU C Library upgraded")
|
||||
(de "GNU-C-Bibliothek aktualisiert")
|
||||
(es "Actualización de la biblioteca C de GNU")
|
||||
(fr "Mise à jour de la bibliothèque C de GNU")
|
||||
(nl "GNU C-bibliotheek bijgewerkt"))
|
||||
(body
|
||||
@ -38,6 +213,18 @@ guix install glibc-locales glibc-locales-2.28
|
||||
Auf Guix System genügt es, das @code{locale-libcs}-Feld Ihrer
|
||||
@code{operating-system}-Form anzupassen. Führen Sie @code{info \"(guix.de)
|
||||
Locales\"} aus, um weitere Informationen dazu zu erhalten.")
|
||||
(es "Se ha actualizado la biblioteca de C de GNU (glibc) a la versión
|
||||
2.29. Para ejecutar programas instalados previamente que se encuentren
|
||||
enlazados con glibc 2.28, es necesario que instale los datos de localización
|
||||
de la versión 2.28 junto a los datos de localización de la versión 2.29:
|
||||
|
||||
@example
|
||||
guix install glibc-locales glibc-locales-2.28
|
||||
@end example
|
||||
|
||||
En el sistema Guix, puede ajustar el campo @code{locale-libcs} de su
|
||||
declaración @code{operating-system}. Ejecute @code{info \"(guix.es)
|
||||
Localizaciones\"} para obtener más información.")
|
||||
(fr "La bibliothèque C de GNU (glibc) a été mise à jour en version
|
||||
2.29. Pour pouvoir lancer tes programmes déjà installés et liés à glibc 2.28,
|
||||
tu dois installer les données pour la version 2.28 en plus des données de
|
||||
@ -61,10 +248,11 @@ guix install glibc-locales glibc-locales-2.28
|
||||
|
||||
Op Guix System kunt u het @code{locale-libcs}-veld van uw
|
||||
@code{operating-system}-vorm aanpassen. Voer @code{info \"(guix) Locales\"}
|
||||
uit voor verdere uitleg." )))
|
||||
uit voor verdere uitleg.")))
|
||||
(entry (commit "cdd3bcf03883d129581a79e6d6611b2afd3b277b")
|
||||
(title (en "New reduced binary seed bootstrap")
|
||||
(de "Neues Bootstrapping mit kleinerem Seed")
|
||||
(es "Nueva reducción de la semilla binaria para el lanzamiento inicial")
|
||||
(fr "Nouvel ensemble de binaires de bootstrap réduit")
|
||||
(nl "Nieuwe bootstrap met verkleinde binaire kiem"))
|
||||
(body
|
||||
@ -85,6 +273,12 @@ binaires à partir desquels les paquets sont construits pèse maintenant environ
|
||||
130 Mio, soit la moitié par rapport à l'ensemble précédent. Tu peux lancer
|
||||
@code{info \"(guix) Bootstrapping\"} pour plus de détails, ou regarder la
|
||||
présentation sur @uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
|
||||
(es "El grafo de paquetes en x86_64 y i686 ahora tiene su raíz en un
|
||||
@dfn{conjunto reducido de semillas binarias}. El conjunto inicial de binarios
|
||||
desde el que se construyen los paquetes ahora tiene un tamaño aproximado de
|
||||
130_MiB , la mitad de su tamaño anterior. Ejecute @code{info \"(guix.es)
|
||||
Lanzamiento inicial\"} para aprender más, o puede ver la charla en inglés
|
||||
en@uref{https://archive.fosdem.org/2019/schedule/event/gnumes/}.")
|
||||
(nl "Het netwerk van pakketten voor x86_64 en i686 is nu geworteld in
|
||||
een @dfn{verkleinde verzameling van binaire kiemen}. Die beginverzameling
|
||||
van binaire bestanden waaruit pakketten gebouwd worden is nu zo'n 130 MiB
|
||||
@ -95,6 +289,7 @@ Bootstrapping\"} uit voor meer details, of bekijk de presentatie op
|
||||
(entry (commit "dcc90d15581189dbc30e201db2b807273d6484f0")
|
||||
(title (en "New channel news mechanism")
|
||||
(de "Neuer Mechanismus, um Neuigkeiten über Kanäle anzuzeigen.")
|
||||
(es "Nuevo mecanismo de noticias de los canales")
|
||||
(fr "Nouveau mécanisme d'information sur les canaux")
|
||||
(nl "Nieuw mechanisme voor nieuwsberichten per kanaal"))
|
||||
(body
|
||||
@ -108,6 +303,11 @@ Mechanismus können Kanalautoren Ihren Nutzern @dfn{Einträge zu
|
||||
Neuigkeiten} mitteilen, die diese sich mit @command{guix pull --news}
|
||||
anzeigen lassen können. Führen Sie @command{info \"(guix.de) Aufruf
|
||||
von guix pull\"} aus, um weitere Informationen zu erhalten.")
|
||||
(es "Está leyendo este mensaje a través del mecanismo de noticias del
|
||||
canal, ¡enhorabuena! Este mecanismo permite a las autoras de canales
|
||||
proporcionar @dfn{entradas de noticias} que las usuarias pueden ver con
|
||||
@command{guix pull --news}. Ejecute @command{info \"(guix.es) Invocación de
|
||||
guix pull\"} para obtener más información.")
|
||||
(fr "Ce message t'arrive à travers le nouveau mécanisme d'information
|
||||
des canaux, bravo ! Ce mécanisme permet aux auteur·rice·s de canaux de
|
||||
fournir des informations qu'on peut visualiser avec @command{guix pull
|
||||
|
@ -28,12 +28,15 @@
|
||||
u-boot-a20-olinuxino-micro-bootloader
|
||||
u-boot-bananapi-m2-ultra-bootloader
|
||||
u-boot-beaglebone-black-bootloader
|
||||
u-boot-firefly-rk3399-bootloader
|
||||
u-boot-mx6cuboxi-bootloader
|
||||
u-boot-nintendo-nes-classic-edition-bootloader
|
||||
u-boot-novena-bootloader
|
||||
u-boot-pine64-plus-bootloader
|
||||
u-boot-pinebook-bootloader
|
||||
u-boot-puma-rk3399-bootloader
|
||||
u-boot-rock64-rk3328-bootloader
|
||||
u-boot-rockpro64-rk3399-bootloader
|
||||
u-boot-wandboard-bootloader))
|
||||
|
||||
(define install-u-boot
|
||||
@ -90,6 +93,33 @@
|
||||
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||
device (* 512 512)))))
|
||||
|
||||
(define install-firefly-rk3399-u-boot
|
||||
#~(lambda (bootloader device mount-point)
|
||||
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
|
||||
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
|
||||
(write-file-on-device idb (stat:size (stat idb))
|
||||
device (* 64 512))
|
||||
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||
device (* 16384 512)))))
|
||||
|
||||
(define install-rock64-rk3328-u-boot
|
||||
#~(lambda (bootloader device mount-point)
|
||||
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
|
||||
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
|
||||
(write-file-on-device idb (stat:size (stat idb))
|
||||
device (* 64 512))
|
||||
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||
device (* 16384 512)))))
|
||||
|
||||
(define install-rockpro64-rk3399-u-boot
|
||||
#~(lambda (bootloader device mount-point)
|
||||
(let ((idb (string-append bootloader "/libexec/idbloader.img"))
|
||||
(u-boot (string-append bootloader "/libexec/u-boot.itb")))
|
||||
(write-file-on-device idb (stat:size (stat idb))
|
||||
device (* 64 512))
|
||||
(write-file-on-device u-boot (stat:size (stat u-boot))
|
||||
device (* 16384 512)))))
|
||||
|
||||
|
||||
|
||||
;;;
|
||||
@ -149,6 +179,13 @@
|
||||
(inherit u-boot-allwinner-bootloader)
|
||||
(package u-boot-bananapi-m2-ultra)))
|
||||
|
||||
(define u-boot-firefly-rk3399-bootloader
|
||||
;; SD and eMMC use the same format
|
||||
(bootloader
|
||||
(inherit u-boot-bootloader)
|
||||
(package u-boot-firefly-rk3399)
|
||||
(installer install-firefly-rk3399-u-boot)))
|
||||
|
||||
(define u-boot-mx6cuboxi-bootloader
|
||||
(bootloader
|
||||
(inherit u-boot-imx-bootloader)
|
||||
@ -179,3 +216,17 @@
|
||||
(inherit u-boot-bootloader)
|
||||
(package u-boot-puma-rk3399)
|
||||
(installer install-puma-rk3399-u-boot)))
|
||||
|
||||
(define u-boot-rock64-rk3328-bootloader
|
||||
;; SD and eMMC use the same format
|
||||
(bootloader
|
||||
(inherit u-boot-bootloader)
|
||||
(package u-boot-rock64-rk3328)
|
||||
(installer install-rock64-rk3328-u-boot)))
|
||||
|
||||
(define u-boot-rockpro64-rk3399-bootloader
|
||||
;; SD and eMMC use the same format
|
||||
(bootloader
|
||||
(inherit u-boot-bootloader)
|
||||
(package u-boot-rockpro64-rk3399)
|
||||
(installer install-rockpro64-rk3399-u-boot)))
|
||||
|
@ -54,7 +54,8 @@
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (hydra-jobs))
|
||||
#:export (channel-instance->package
|
||||
hydra-jobs))
|
||||
|
||||
;;; Commentary:
|
||||
;;;
|
||||
|
37
gnu/local.mk
37
gnu/local.mk
@ -22,6 +22,7 @@
|
||||
# Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
# Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
|
||||
# Copyright © 2019 John Soo <jsoo1@asu.edu>
|
||||
# Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
@ -212,6 +213,7 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/gl.scm \
|
||||
%D%/packages/glib.scm \
|
||||
%D%/packages/gnome.scm \
|
||||
%D%/packages/gnome-xyz.scm \
|
||||
%D%/packages/gnu-doc.scm \
|
||||
%D%/packages/gnucash.scm \
|
||||
%D%/packages/gnunet.scm \
|
||||
@ -425,6 +427,7 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/ruby.scm \
|
||||
%D%/packages/rush.scm \
|
||||
%D%/packages/rust.scm \
|
||||
%D%/packages/rust-cbindgen.scm \
|
||||
%D%/packages/samba.scm \
|
||||
%D%/packages/sagemath.scm \
|
||||
%D%/packages/sawfish.scm \
|
||||
@ -580,6 +583,7 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/system/vm.scm \
|
||||
\
|
||||
%D%/machine.scm \
|
||||
%D%/machine/digital-ocean.scm \
|
||||
%D%/machine/ssh.scm \
|
||||
\
|
||||
%D%/build/accounts.scm \
|
||||
@ -694,12 +698,16 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \
|
||||
%D%/packages/patches/antlr3-3_3-fix-java8-compilation.patch \
|
||||
%D%/packages/patches/apr-skip-getservbyname-test.patch \
|
||||
%D%/packages/patches/arm-trusted-firmware-disable-hdcp.patch \
|
||||
%D%/packages/patches/arm-trusted-firmware-optional-bin-generation.patch \
|
||||
%D%/packages/patches/arm-trusted-firmware-rockchip-disable-binary.patch \
|
||||
%D%/packages/patches/aspell-default-dict-dir.patch \
|
||||
%D%/packages/patches/ath9k-htc-firmware-binutils.patch \
|
||||
%D%/packages/patches/ath9k-htc-firmware-gcc.patch \
|
||||
%D%/packages/patches/ath9k-htc-firmware-objcopy.patch \
|
||||
%D%/packages/patches/audacity-build-with-system-portaudio.patch \
|
||||
%D%/packages/patches/automake-skip-amhello-tests.patch \
|
||||
%D%/packages/patches/avahi-CVE-2018-1000845.patch \
|
||||
%D%/packages/patches/avahi-localstatedir.patch \
|
||||
%D%/packages/patches/avogadro-boost148.patch \
|
||||
%D%/packages/patches/avogadro-eigen3-update.patch \
|
||||
@ -755,7 +763,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/coda-use-system-libs.patch \
|
||||
%D%/packages/patches/combinatorial-blas-awpm.patch \
|
||||
%D%/packages/patches/combinatorial-blas-io-fix.patch \
|
||||
%D%/packages/patches/cpio-CVE-2016-2037.patch \
|
||||
%D%/packages/patches/cpufrequtils-fix-aclocal.patch \
|
||||
%D%/packages/patches/crawl-upgrade-saves.patch \
|
||||
%D%/packages/patches/crda-optional-gcrypt.patch \
|
||||
@ -778,6 +785,7 @@ 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/docker-adjust-tests-for-changes-in-go.patch \
|
||||
%D%/packages/patches/docker-engine-test-noinstall.patch \
|
||||
%D%/packages/patches/docker-fix-tests.patch \
|
||||
%D%/packages/patches/docker-use-fewer-modprobes.patch \
|
||||
@ -797,6 +805,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
|
||||
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
|
||||
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
|
||||
%D%/packages/patches/emacs-magit-log-format-author-margin.patch \
|
||||
%D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
|
||||
%D%/packages/patches/emacs-source-date-epoch.patch \
|
||||
%D%/packages/patches/emacs-undohist-ignored.patch \
|
||||
@ -973,6 +982,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
|
||||
%D%/packages/patches/hplip-remove-imageprocessor.patch \
|
||||
%D%/packages/patches/hydra-disable-darcs-test.patch \
|
||||
%D%/packages/patches/icecat-gnuzilla-fixes.patch \
|
||||
%D%/packages/patches/icecat-makeicecat.patch \
|
||||
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
|
||||
%D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \
|
||||
@ -995,11 +1005,13 @@ dist_patch_DATA = \
|
||||
%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 \
|
||||
%D%/packages/patches/java-svg-salamander-Fix-non-det.patch \
|
||||
%D%/packages/patches/java-xerces-bootclasspath.patch \
|
||||
%D%/packages/patches/java-xerces-build_dont_unzip.patch \
|
||||
%D%/packages/patches/java-xerces-xjavac_taskdef.patch \
|
||||
%D%/packages/patches/jbig2dec-ignore-testtest.patch \
|
||||
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
|
||||
%D%/packages/patches/libvirt-create-machine-cgroup.patch \
|
||||
%D%/packages/patches/libziparchive-add-includes.patch \
|
||||
%D%/packages/patches/localed-xorg-keyboard.patch \
|
||||
%D%/packages/patches/kiki-level-selection-crash.patch \
|
||||
@ -1018,6 +1030,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch \
|
||||
%D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch \
|
||||
%D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \
|
||||
%D%/packages/patches/kodi-increase-test-timeout.patch \
|
||||
%D%/packages/patches/kodi-set-libcurl-ssl-parameters.patch \
|
||||
%D%/packages/patches/kodi-skip-test-449.patch \
|
||||
%D%/packages/patches/laby-make-install.patch \
|
||||
@ -1057,9 +1070,10 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/libmad-md_size.patch \
|
||||
%D%/packages/patches/libmad-mips-newgcc.patch \
|
||||
%D%/packages/patches/libmp4v2-c++11.patch \
|
||||
%D%/packages/patches/libmpeg2-arm-private-symbols.patch \
|
||||
%D%/packages/patches/libmpeg2-global-symbol-test.patch \
|
||||
%D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \
|
||||
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
|
||||
%D%/packages/patches/libreoffice-boost.patch \
|
||||
%D%/packages/patches/libreoffice-icu.patch \
|
||||
%D%/packages/patches/libreoffice-glm.patch \
|
||||
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
|
||||
@ -1137,6 +1151,9 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/mtools-mformat-uninitialized.patch \
|
||||
%D%/packages/patches/mumble-1.2.19-abs.patch \
|
||||
%D%/packages/patches/mumps-build-parallelism.patch \
|
||||
%D%/packages/patches/mumps-shared-libseq.patch \
|
||||
%D%/packages/patches/mumps-shared-mumps.patch \
|
||||
%D%/packages/patches/mumps-shared-pord.patch \
|
||||
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
|
||||
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
|
||||
%D%/packages/patches/mutt-store-references.patch \
|
||||
@ -1179,6 +1196,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/opencv-rgbd-aarch64-test-fix.patch \
|
||||
%D%/packages/patches/openfoam-4.1-cleanup.patch \
|
||||
%D%/packages/patches/openjdk-10-idlj-reproducibility.patch \
|
||||
%D%/packages/patches/openmpi-psm2-priority.patch \
|
||||
%D%/packages/patches/openocd-nrf52.patch \
|
||||
%D%/packages/patches/opensmtpd-fix-crash.patch \
|
||||
%D%/packages/patches/openssl-runpath.patch \
|
||||
@ -1193,8 +1211,6 @@ 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/patchelf-page-size.patch \
|
||||
%D%/packages/patches/patchelf-rework-for-arm.patch \
|
||||
%D%/packages/patches/patchutils-test-perms.patch \
|
||||
%D%/packages/patches/patch-hurd-path-max.patch \
|
||||
%D%/packages/patches/pcre2-fix-jit_match-crash.patch \
|
||||
@ -1262,6 +1278,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/python-configobj-setuptools.patch \
|
||||
%D%/packages/patches/python-faker-fix-build-32bit.patch \
|
||||
%D%/packages/patches/python-keras-integration-test.patch \
|
||||
%D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
|
||||
%D%/packages/patches/python-pyfakefs-remove-bad-test.patch \
|
||||
%D%/packages/patches/python-flint-includes.patch \
|
||||
%D%/packages/patches/python-libxml2-utf8.patch \
|
||||
@ -1304,8 +1321,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/rtags-separate-rct.patch \
|
||||
%D%/packages/patches/racket-store-checksum-override.patch \
|
||||
%D%/packages/patches/ruby-rubygems-276-for-ruby24.patch \
|
||||
%D%/packages/patches/ruby-concurrent-ignore-broken-test.patch \
|
||||
%D%/packages/patches/ruby-concurrent-test-arm.patch \
|
||||
%D%/packages/patches/ruby-rack-ignore-failing-test.patch \
|
||||
%D%/packages/patches/ruby-safe-yaml-add-require-time.patch \
|
||||
%D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\
|
||||
@ -1316,11 +1331,13 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/rust-coresimd-doctest.patch \
|
||||
%D%/packages/patches/rust-reproducible-builds.patch \
|
||||
%D%/packages/patches/rxvt-unicode-escape-sequences.patch \
|
||||
%D%/packages/patches/sbcl-graph-asdf-definitions.patch \
|
||||
%D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \
|
||||
%D%/packages/patches/scheme48-tests.patch \
|
||||
%D%/packages/patches/scotch-build-parallelism.patch \
|
||||
%D%/packages/patches/scotch-integer-declarations.patch \
|
||||
%D%/packages/patches/sdl-libx11-1.6.patch \
|
||||
%D%/packages/patches/seahorse-gkr-use-0-on-empty-flags.patch \
|
||||
%D%/packages/patches/seq24-rename-mutex.patch \
|
||||
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
|
||||
%D%/packages/patches/shishi-fix-libgcrypt-detection.patch \
|
||||
@ -1374,11 +1391,13 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/tk-find-library.patch \
|
||||
%D%/packages/patches/ttf2eot-cstddef.patch \
|
||||
%D%/packages/patches/ttfautohint-source-date-epoch.patch \
|
||||
%D%/packages/patches/tomb-fix-errors-on-open.patch \
|
||||
%D%/packages/patches/totem-meson-compat.patch \
|
||||
%D%/packages/patches/totem-meson-easy-codec.patch \
|
||||
%D%/packages/patches/tuxpaint-stamps-path.patch \
|
||||
%D%/packages/patches/txr-shell.patch \
|
||||
%D%/packages/patches/u-boot-fix-mkimage-header-verification.patch \
|
||||
%D%/packages/patches/udiskie-no-appindicator.patch \
|
||||
%D%/packages/patches/unzip-CVE-2014-8139.patch \
|
||||
%D%/packages/patches/unzip-CVE-2014-8140.patch \
|
||||
%D%/packages/patches/unzip-CVE-2014-8141.patch \
|
||||
@ -1404,6 +1423,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/vinagre-newer-freerdp.patch \
|
||||
%D%/packages/patches/vinagre-newer-rdp-parameters.patch \
|
||||
%D%/packages/patches/virglrenderer-CVE-2017-6386.patch \
|
||||
%D%/packages/patches/vlc-fix-test_libvlc_slaves.patch \
|
||||
%D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch \
|
||||
%D%/packages/patches/vorbis-tools-CVE-2014-9640.patch \
|
||||
%D%/packages/patches/vorbis-tools-CVE-2015-6749.patch \
|
||||
@ -1413,6 +1433,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/wavpack-CVE-2018-6767.patch \
|
||||
%D%/packages/patches/wavpack-CVE-2018-7253.patch \
|
||||
%D%/packages/patches/wavpack-CVE-2018-7254.patch \
|
||||
%D%/packages/patches/weasyprint-library-paths.patch \
|
||||
%D%/packages/patches/wicd-bitrate-none-fix.patch \
|
||||
%D%/packages/patches/wicd-get-selected-profile-fix.patch \
|
||||
%D%/packages/patches/wicd-urwid-1.3.patch \
|
||||
@ -1435,9 +1456,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/xfce4-panel-plugins.patch \
|
||||
%D%/packages/patches/xfce4-settings-defaults.patch \
|
||||
%D%/packages/patches/xinetd-fix-fd-leak.patch \
|
||||
%D%/packages/patches/xinetd-CVE-2013-4342.patch \
|
||||
%D%/packages/patches/xorriso-no-partition-table-in-inner-efi.patch \
|
||||
%D%/packages/patches/xorriso-no-mbr-in-inner-efi.patch
|
||||
%D%/packages/patches/xinetd-CVE-2013-4342.patch
|
||||
|
||||
MISC_DISTRO_FILES = \
|
||||
%D%/packages/ld-wrapper.in
|
||||
|
422
gnu/machine/digital-ocean.scm
Normal file
422
gnu/machine/digital-ocean.scm
Normal file
@ -0,0 +1,422 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu machine digital-ocean)
|
||||
#:use-module (gnu machine ssh)
|
||||
#:use-module (gnu machine)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services networking)
|
||||
#:use-module (gnu system)
|
||||
#:use-module (gnu system pam)
|
||||
#:use-module (guix base32)
|
||||
#:use-module (guix derivations)
|
||||
#:use-module (guix i18n)
|
||||
#:use-module (guix import json)
|
||||
#:use-module (guix monads)
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix ssh)
|
||||
#:use-module (guix store)
|
||||
#:use-module (ice-9 iconv)
|
||||
#:use-module (json)
|
||||
#:use-module (rnrs bytevectors)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-2)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (ssh key)
|
||||
#:use-module (ssh sftp)
|
||||
#:use-module (ssh shell)
|
||||
#:use-module (web client)
|
||||
#:use-module (web request)
|
||||
#:use-module (web response)
|
||||
#:use-module (web uri)
|
||||
#:export (digital-ocean-configuration
|
||||
digital-ocean-configuration?
|
||||
|
||||
digital-ocean-configuration-ssh-key
|
||||
digital-ocean-configuration-tags
|
||||
digital-ocean-configuration-region
|
||||
digital-ocean-configuration-size
|
||||
digital-ocean-configuration-enable-ipv6?
|
||||
|
||||
digital-ocean-environment-type))
|
||||
|
||||
;;; Commentary:
|
||||
;;;
|
||||
;;; This module implements a high-level interface for provisioning "droplets"
|
||||
;;; from the Digital Ocean virtual private server (VPS) service.
|
||||
;;;
|
||||
;;; Code:
|
||||
|
||||
(define %api-base "https://api.digitalocean.com")
|
||||
|
||||
(define %digital-ocean-token
|
||||
(make-parameter (getenv "GUIX_DIGITAL_OCEAN_TOKEN")))
|
||||
|
||||
(define* (post-endpoint endpoint body)
|
||||
"Encode BODY as JSON and send it to the Digital Ocean API endpoint
|
||||
ENDPOINT. This procedure is quite a bit more specialized than 'http-post', as
|
||||
it takes care to set headers such as 'Content-Type', 'Content-Length', and
|
||||
'Authorization' appropriately."
|
||||
(let* ((uri (string->uri (string-append %api-base endpoint)))
|
||||
(body (string->bytevector (scm->json-string body) "UTF-8"))
|
||||
(headers `((User-Agent . "Guix Deploy")
|
||||
(Accept . "application/json")
|
||||
(Content-Type . "application/json")
|
||||
(Authorization . ,(format #f "Bearer ~a"
|
||||
(%digital-ocean-token)))
|
||||
(Content-Length . ,(number->string
|
||||
(bytevector-length body)))))
|
||||
(port (open-socket-for-uri uri))
|
||||
(request (build-request uri
|
||||
#:method 'POST
|
||||
#:version '(1 . 1)
|
||||
#:headers headers
|
||||
#:port port))
|
||||
(request (write-request request port)))
|
||||
(write-request-body request body)
|
||||
(force-output (request-port request))
|
||||
(let* ((response (read-response port))
|
||||
(body (read-response-body response)))
|
||||
(unless (= 2 (floor/ (response-code response) 100))
|
||||
(raise
|
||||
(condition (&message
|
||||
(message (format
|
||||
#f
|
||||
(G_ "~a: HTTP post failed: ~a (~s)")
|
||||
(uri->string uri)
|
||||
(response-code response)
|
||||
(response-reason-phrase response)))))))
|
||||
(close-port port)
|
||||
(bytevector->string body "UTF-8"))))
|
||||
|
||||
(define (fetch-endpoint endpoint)
|
||||
"Return the contents of the Digital Ocean API endpoint ENDPOINT as an
|
||||
alist. This procedure is quite a bit more specialized than 'json-fetch', as it
|
||||
takes care to set headers such as 'Accept' and 'Authorization' appropriately."
|
||||
(define headers
|
||||
`((user-agent . "Guix Deploy")
|
||||
(Accept . "application/json")
|
||||
(Authorization . ,(format #f "Bearer ~a" (%digital-ocean-token)))))
|
||||
(json-fetch (string-append %api-base endpoint) #:headers headers))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Parameters for droplet creation.
|
||||
;;;
|
||||
|
||||
(define-record-type* <digital-ocean-configuration> digital-ocean-configuration
|
||||
make-digital-ocean-configuration
|
||||
digital-ocean-configuration?
|
||||
this-digital-ocean-configuration
|
||||
(ssh-key digital-ocean-configuration-ssh-key) ; string
|
||||
(tags digital-ocean-configuration-tags) ; list of strings
|
||||
(region digital-ocean-configuration-region) ; string
|
||||
(size digital-ocean-configuration-size) ; string
|
||||
(enable-ipv6? digital-ocean-configuration-enable-ipv6?)) ; boolean
|
||||
|
||||
(define (read-key-fingerprint file-name)
|
||||
"Read the private key at FILE-NAME and return the key's fingerprint as a hex
|
||||
string."
|
||||
(let* ((privkey (private-key-from-file file-name))
|
||||
(pubkey (private-key->public-key privkey))
|
||||
(hash (get-public-key-hash pubkey 'md5)))
|
||||
(bytevector->hex-string hash)))
|
||||
|
||||
(define (machine-droplet machine)
|
||||
"Return an alist describing the droplet allocated to MACHINE."
|
||||
(let ((tags (digital-ocean-configuration-tags
|
||||
(machine-configuration machine))))
|
||||
(find (lambda (droplet)
|
||||
(equal? (assoc-ref droplet "tags") (list->vector tags)))
|
||||
(vector->list
|
||||
(assoc-ref (fetch-endpoint "/v2/droplets") "droplets")))))
|
||||
|
||||
(define (machine-public-ipv4-network machine)
|
||||
"Return the public IPv4 network interface of the droplet allocated to
|
||||
MACHINE as an alist. The expected fields are 'ip_address', 'netmask', and
|
||||
'gateway'."
|
||||
(and-let* ((droplet (machine-droplet machine))
|
||||
(networks (assoc-ref droplet "networks"))
|
||||
(network (find (lambda (network)
|
||||
(string= "public" (assoc-ref network "type")))
|
||||
(vector->list (assoc-ref networks "v4")))))
|
||||
network))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Remote evaluation.
|
||||
;;;
|
||||
|
||||
(define (digital-ocean-remote-eval target exp)
|
||||
"Internal implementation of 'machine-remote-eval' for MACHINE instances with
|
||||
an environment type of 'digital-ocean-environment-type'."
|
||||
(let* ((network (machine-public-ipv4-network target))
|
||||
(address (assoc-ref network "ip_address"))
|
||||
(ssh-key (digital-ocean-configuration-ssh-key
|
||||
(machine-configuration target)))
|
||||
(delegate (machine
|
||||
(inherit target)
|
||||
(environment managed-host-environment-type)
|
||||
(configuration
|
||||
(machine-ssh-configuration
|
||||
(host-name address)
|
||||
(identity ssh-key)
|
||||
(system "x86_64-linux"))))))
|
||||
(machine-remote-eval delegate exp)))
|
||||
|
||||
|
||||
;;;
|
||||
;;; System deployment.
|
||||
;;;
|
||||
|
||||
;; The following script was adapted from the guide available at
|
||||
;; <https://wiki.pantherx.org/Installation-digital-ocean/>.
|
||||
(define (guix-infect network)
|
||||
"Given NETWORK, an alist describing the Droplet's public IPv4 network
|
||||
interface, return a Bash script that will install the Guix system."
|
||||
(format #f "#!/bin/bash
|
||||
|
||||
apt-get update
|
||||
apt-get install xz-utils -y
|
||||
wget https://ftp.gnu.org/gnu/guix/guix-binary-1.0.1.x86_64-linux.tar.xz
|
||||
cd /tmp
|
||||
tar --warning=no-timestamp -xf ~~/guix-binary-1.0.1.x86_64-linux.tar.xz
|
||||
mv var/guix /var/ && mv gnu /
|
||||
mkdir -p ~~root/.config/guix
|
||||
ln -sf /var/guix/profiles/per-user/root/current-guix ~~root/.config/guix/current
|
||||
export GUIX_PROFILE=\"`echo ~~root`/.config/guix/current\" ;
|
||||
source $GUIX_PROFILE/etc/profile
|
||||
groupadd --system guixbuild
|
||||
for i in `seq -w 1 10`; do
|
||||
useradd -g guixbuild -G guixbuild \
|
||||
-d /var/empty -s `which nologin` \
|
||||
-c \"Guix build user $i\" --system \
|
||||
guixbuilder$i;
|
||||
done;
|
||||
cp ~~root/.config/guix/current/lib/systemd/system/guix-daemon.service /etc/systemd/system/
|
||||
systemctl start guix-daemon && systemctl enable guix-daemon
|
||||
mkdir -p /usr/local/bin
|
||||
cd /usr/local/bin
|
||||
ln -s /var/guix/profiles/per-user/root/current-guix/bin/guix
|
||||
mkdir -p /usr/local/share/info
|
||||
cd /usr/local/share/info
|
||||
for i in /var/guix/profiles/per-user/root/current-guix/share/info/*; do
|
||||
ln -s $i;
|
||||
done
|
||||
guix archive --authorize < ~~root/.config/guix/current/share/guix/ci.guix.gnu.org.pub
|
||||
# guix pull
|
||||
guix package -i glibc-utf8-locales
|
||||
export GUIX_LOCPATH=\"$HOME/.guix-profile/lib/locale\"
|
||||
guix package -i openssl
|
||||
cat > /etc/bootstrap-config.scm << EOF
|
||||
(use-modules (gnu))
|
||||
(use-service-modules networking ssh)
|
||||
|
||||
(operating-system
|
||||
(host-name \"gnu-bootstrap\")
|
||||
(timezone \"Etc/UTC\")
|
||||
(bootloader (bootloader-configuration
|
||||
(bootloader grub-bootloader)
|
||||
(target \"/dev/vda\")
|
||||
(terminal-outputs '(console))))
|
||||
(file-systems (cons (file-system
|
||||
(mount-point \"/\")
|
||||
(device \"/dev/vda1\")
|
||||
(type \"ext4\"))
|
||||
%base-file-systems))
|
||||
(services
|
||||
(append (list (static-networking-service \"eth0\" \"~a\"
|
||||
#:netmask \"~a\"
|
||||
#:gateway \"~a\"
|
||||
#:name-servers '(\"84.200.69.80\" \"84.200.70.40\"))
|
||||
(simple-service 'guile-load-path-in-global-env
|
||||
session-environment-service-type
|
||||
\\`((\"GUILE_LOAD_PATH\"
|
||||
. \"/run/current-system/profile/share/guile/site/2.2\")
|
||||
(\"GUILE_LOAD_COMPILED_PATH\"
|
||||
. ,(string-append \"/run/current-system/profile/lib/guile/2.2/site-ccache:\"
|
||||
\"/run/current-system/profile/share/guile/site/2.2\"))))
|
||||
(service openssh-service-type
|
||||
(openssh-configuration
|
||||
(log-level 'debug)
|
||||
(permit-root-login 'without-password))))
|
||||
%base-services)))
|
||||
EOF
|
||||
# guix pull
|
||||
guix system build /etc/bootstrap-config.scm
|
||||
guix system reconfigure /etc/bootstrap-config.scm
|
||||
mv /etc /old-etc
|
||||
mkdir /etc
|
||||
cp -r /old-etc/{passwd,group,shadow,gshadow,mtab,guix,bootstrap-config.scm} /etc/
|
||||
guix system reconfigure /etc/bootstrap-config.scm"
|
||||
(assoc-ref network "ip_address")
|
||||
(assoc-ref network "netmask")
|
||||
(assoc-ref network "gateway")))
|
||||
|
||||
(define (machine-wait-until-available machine)
|
||||
"Block until the initial Debian image has been installed on the droplet
|
||||
named DROPLET-NAME."
|
||||
(and-let* ((droplet (machine-droplet machine))
|
||||
(droplet-id (assoc-ref droplet "id"))
|
||||
(endpoint (format #f "/v2/droplets/~a/actions" droplet-id)))
|
||||
(let loop ()
|
||||
(let ((actions (assoc-ref (fetch-endpoint endpoint) "actions")))
|
||||
(unless (every (lambda (action)
|
||||
(string= "completed" (assoc-ref action "status")))
|
||||
(vector->list actions))
|
||||
(sleep 5)
|
||||
(loop))))))
|
||||
|
||||
(define (wait-for-ssh address ssh-key)
|
||||
"Block until the an SSH session can be made as 'root' with SSH-KEY at ADDRESS."
|
||||
(let loop ()
|
||||
(catch #t
|
||||
(lambda ()
|
||||
(open-ssh-session address #:user "root" #:identity ssh-key))
|
||||
(lambda args
|
||||
(sleep 5)
|
||||
(loop)))))
|
||||
|
||||
(define (add-static-networking target network)
|
||||
"Return an <operating-system> based on TARGET with a static networking
|
||||
configuration for the public IPv4 network described by the alist NETWORK."
|
||||
(operating-system
|
||||
(inherit (machine-operating-system target))
|
||||
(services (cons* (static-networking-service "eth0"
|
||||
(assoc-ref network "ip_address")
|
||||
#:netmask (assoc-ref network "netmask")
|
||||
#:gateway (assoc-ref network "gateway")
|
||||
#:name-servers '("84.200.69.80" "84.200.70.40"))
|
||||
(simple-service 'guile-load-path-in-global-env
|
||||
session-environment-service-type
|
||||
`(("GUILE_LOAD_PATH"
|
||||
. "/run/current-system/profile/share/guile/site/2.2")
|
||||
("GUILE_LOAD_COMPILED_PATH"
|
||||
. ,(string-append "/run/current-system/profile/lib/guile/2.2/site-ccache:"
|
||||
"/run/current-system/profile/share/guile/site/2.2"))))
|
||||
(operating-system-user-services
|
||||
(machine-operating-system target))))))
|
||||
|
||||
(define (deploy-digital-ocean target)
|
||||
"Internal implementation of 'deploy-machine' for 'machine' instances with an
|
||||
environment type of 'digital-ocean-environment-type'."
|
||||
(maybe-raise-missing-api-key-error)
|
||||
(maybe-raise-unsupported-configuration-error target)
|
||||
(let* ((config (machine-configuration target))
|
||||
(name (machine-display-name target))
|
||||
(region (digital-ocean-configuration-region config))
|
||||
(size (digital-ocean-configuration-size config))
|
||||
(ssh-key (digital-ocean-configuration-ssh-key config))
|
||||
(fingerprint (read-key-fingerprint ssh-key))
|
||||
(enable-ipv6? (digital-ocean-configuration-enable-ipv6? config))
|
||||
(tags (digital-ocean-configuration-tags config))
|
||||
(request-body `(("name" . ,name)
|
||||
("region" . ,region)
|
||||
("size" . ,size)
|
||||
("image" . "debian-9-x64")
|
||||
("ssh_keys" . ,(vector fingerprint))
|
||||
("backups" . #f)
|
||||
("ipv6" . ,enable-ipv6?)
|
||||
("user_data" . #nil)
|
||||
("private_networking" . #nil)
|
||||
("volumes" . #nil)
|
||||
("tags" . ,(list->vector tags))))
|
||||
(response (post-endpoint "/v2/droplets" request-body)))
|
||||
(machine-wait-until-available target)
|
||||
(let* ((network (machine-public-ipv4-network target))
|
||||
(address (assoc-ref network "ip_address")))
|
||||
(wait-for-ssh address ssh-key)
|
||||
(let* ((ssh-session (open-ssh-session address #:user "root" #:identity ssh-key))
|
||||
(sftp-session (make-sftp-session ssh-session)))
|
||||
(call-with-remote-output-file sftp-session "/tmp/guix-infect.sh"
|
||||
(lambda (port)
|
||||
(display (guix-infect network) port)))
|
||||
(rexec ssh-session "/bin/bash /tmp/guix-infect.sh")
|
||||
;; Session will close upon rebooting, which will raise 'guile-ssh-error.
|
||||
(catch 'guile-ssh-error
|
||||
(lambda () (rexec ssh-session "reboot"))
|
||||
(lambda args #t)))
|
||||
(wait-for-ssh address ssh-key)
|
||||
(let ((delegate (machine
|
||||
(operating-system (add-static-networking target network))
|
||||
(environment managed-host-environment-type)
|
||||
(configuration
|
||||
(machine-ssh-configuration
|
||||
(host-name address)
|
||||
(identity ssh-key)
|
||||
(system "x86_64-linux"))))))
|
||||
(deploy-machine delegate)))))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Roll-back.
|
||||
;;;
|
||||
|
||||
(define (roll-back-digital-ocean target)
|
||||
"Internal implementation of 'roll-back-machine' for MACHINE instances with an
|
||||
environment type of 'digital-ocean-environment-type'."
|
||||
(let* ((network (machine-public-ipv4-network target))
|
||||
(address (assoc-ref network "ip_address"))
|
||||
(ssh-key (digital-ocean-configuration-ssh-key
|
||||
(machine-configuration target)))
|
||||
(delegate (machine
|
||||
(inherit target)
|
||||
(environment managed-host-environment-type)
|
||||
(configuration
|
||||
(machine-ssh-configuration
|
||||
(host-name address)
|
||||
(identity ssh-key)
|
||||
(system "x86_64-linux"))))))
|
||||
(roll-back-machine delegate)))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Environment type.
|
||||
;;;
|
||||
|
||||
(define digital-ocean-environment-type
|
||||
(environment-type
|
||||
(machine-remote-eval digital-ocean-remote-eval)
|
||||
(deploy-machine deploy-digital-ocean)
|
||||
(roll-back-machine roll-back-digital-ocean)
|
||||
(name 'digital-ocean-environment-type)
|
||||
(description "Provisioning of \"droplets\": virtual machines
|
||||
provided by the Digital Ocean virtual private server (VPS) service.")))
|
||||
|
||||
|
||||
(define (maybe-raise-missing-api-key-error)
|
||||
(unless (%digital-ocean-token)
|
||||
(raise (condition
|
||||
(&message
|
||||
(message (G_ "No Digital Ocean access token was provided. This \
|
||||
may be fixed by setting the environment variable GUIX_DIGITAL_OCAEN_TOKEN to \
|
||||
one procured from https://cloud.digitalocean.com/account/api/tokens.")))))))
|
||||
|
||||
(define (maybe-raise-unsupported-configuration-error machine)
|
||||
"Raise an error if MACHINE's configuration is not an instance of
|
||||
<digital-ocean-configuration>."
|
||||
(let ((config (machine-configuration machine))
|
||||
(environment (environment-type-name (machine-environment machine))))
|
||||
(unless (and config (digital-ocean-configuration? config))
|
||||
(raise (condition
|
||||
(&message
|
||||
(message (format #f (G_ "unsupported machine configuration '~a'
|
||||
for environment of type '~a'")
|
||||
config
|
||||
environment))))))))
|
@ -228,9 +228,7 @@ package module."
|
||||
#:outputs (package-outputs package)
|
||||
#:location (package-location package)
|
||||
#:supported?
|
||||
(->bool
|
||||
(member (%current-system)
|
||||
(package-supported-systems package)))
|
||||
(->bool (supported-package? package))
|
||||
#:deprecated?
|
||||
(->bool
|
||||
(package-superseded package))))
|
||||
|
@ -83,7 +83,7 @@
|
||||
;; the tests to pass.
|
||||
#:tests? #f
|
||||
#:make-flags
|
||||
(list "CXXFLAGS=-std=c++11" "gtk_update_icon_cache=true")))
|
||||
(list "gtk_update_icon_cache=true")))
|
||||
(inputs
|
||||
`(("boost" ,boost)
|
||||
("enchant" ,enchant)
|
||||
|
@ -19,7 +19,7 @@
|
||||
;;; Copyright © 2017 Ethan R. Jones <doubleplusgood23@gmail.com>
|
||||
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
|
||||
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
|
||||
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
@ -1128,7 +1128,7 @@ system administrator.")
|
||||
(define-public sudo
|
||||
(package
|
||||
(name "sudo")
|
||||
(version "1.8.27")
|
||||
(version "1.8.29")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@ -1138,7 +1138,7 @@ system administrator.")
|
||||
version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1h1f7v9pv0rzp14cxzv8kaa8mdd717fbqv83l7c5dvvi8jwnisvv"))
|
||||
"0z4wyadh9cks17gdpfgx4kvbrlnyb6nai2sd6chk7qh4jsngylyf"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@ -1184,6 +1184,12 @@ system administrator.")
|
||||
(("\\$\\(DESTDIR\\)\\$\\(vardir\\)")
|
||||
;; Don't try to create /var/db/sudo.
|
||||
"$(TMPDIR)/dummy"))
|
||||
|
||||
;; ‘Checking existing [/etc/]sudoers file for syntax errors’ is
|
||||
;; not the task of the build system, and fails.
|
||||
(substitute* "plugins/sudoers/Makefile.in"
|
||||
(("^pre-install:" match)
|
||||
(string-append match "\ndisabled-" match)))
|
||||
#t)))
|
||||
|
||||
;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
|
||||
@ -1593,6 +1599,7 @@ system is under heavy load.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dharple/detox.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1dd608c7g65s5lj02cddvani3q9kzirddgkjqa22ap9d4f8b9xgr"))))
|
||||
@ -1839,13 +1846,13 @@ of supported upstream metrics systems simultaneously.")
|
||||
(define-public ansible
|
||||
(package
|
||||
(name "ansible")
|
||||
(version "2.8.1")
|
||||
(version "2.8.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "ansible" version))
|
||||
(sha256
|
||||
(base32 "0ia4x17ywym3r1m96ar4h0wc2xlylhbjp6x4wzwkh4p2i0x1vmg1"))))
|
||||
(base32 "11k94ifp42psivzx147xwbmq1ak7qnjdgkb6c1xz53nfapkh754f"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-bcrypt" ,python-bcrypt)
|
||||
@ -1880,21 +1887,16 @@ import re
|
||||
sys.argv[0] = re.sub(r'\\.([^/]*)-real$', r'\\1', sys.argv[0])
|
||||
")))
|
||||
#t))
|
||||
(add-after 'wrap 'fix-symlinks
|
||||
(add-after 'install 'replace-symlinks
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Replace symlinks with duplicate copies of the ansible
|
||||
;; executable.
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(for-each
|
||||
(lambda (subprogram)
|
||||
;; The symlinks point to the ansible wrapper script. Make
|
||||
;; them point to the real executable (.ansible-real).
|
||||
(delete-file (string-append out "/bin/.ansible-" subprogram "-real"))
|
||||
(symlink (string-append out "/bin/.ansible-real")
|
||||
(string-append out "/bin/.ansible-" subprogram "-real"))
|
||||
;; The wrapper scripts of the symlinks invoke the ansible
|
||||
;; wrapper script. Fix them to invoke the correct executable.
|
||||
(substitute* (string-append out "/bin/ansible-" subprogram)
|
||||
(("/bin/ansible")
|
||||
(string-append "/bin/.ansible-" subprogram "-real"))))
|
||||
(delete-file (string-append out "/bin/ansible-" subprogram))
|
||||
(copy-file (string-append out "/bin/ansible")
|
||||
(string-append out "/bin/ansible-" subprogram)))
|
||||
(list "config" "console" "doc" "galaxy"
|
||||
"inventory" "playbook" "pull" "vault")))
|
||||
#t)))))
|
||||
@ -2420,13 +2422,13 @@ a new command using the matched rule, and runs it.")
|
||||
(define-public di
|
||||
(package
|
||||
(name "di")
|
||||
(version "4.47.1")
|
||||
(version "4.47.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gentoo.com/di/di-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1bdbl9k3gqf4h6g21difqc0w17pjid6r587y19wi37vx36aava7f"))))
|
||||
(base32 "1g97pp2hznskqlkhl6ppyzgdmv878bcqiwh633kdnm70d1pvh192"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; obscure test failures
|
||||
@ -2611,22 +2613,24 @@ Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
|
||||
environment-variable-names)
|
||||
(for-each
|
||||
(lambda (env-name)
|
||||
(let* ((env-value (getenv env-name))
|
||||
(search-path (search-path-as-string->list env-value))
|
||||
(new-search-path (filter filter-predicate
|
||||
search-path))
|
||||
(new-env-value (list->search-path-as-string
|
||||
new-search-path ":")))
|
||||
(setenv env-name new-env-value)))
|
||||
(when (getenv env-name)
|
||||
(let* ((env-value (getenv env-name))
|
||||
(search-path (search-path-as-string->list env-value))
|
||||
(new-search-path (filter filter-predicate
|
||||
search-path))
|
||||
(new-env-value (list->search-path-as-string
|
||||
new-search-path ":")))
|
||||
(setenv env-name new-env-value))))
|
||||
environment-variable-names))
|
||||
(setenv "CROSS_CPATH" (getenv "CPATH"))
|
||||
(setenv "CROSS_C_INCLUDE_PATH" (getenv "C_INCLUDE_PATH"))
|
||||
(setenv "CROSS_CPLUS_INCLUDE_PATH" (getenv "CPLUS_INCLUDE_PATH"))
|
||||
(setenv "CROSS_LIBRARY_PATH" (getenv "LIBRARY_PATH"))
|
||||
(filter-environment! cross?
|
||||
'("CROSS_C_INCLUDE_PATH" "CROSS_CPLUS_INCLUDE_PATH"
|
||||
'("CROSS_CPATH" "CROSS_C_INCLUDE_PATH" "CROSS_CPLUS_INCLUDE_PATH"
|
||||
"CROSS_LIBRARY_PATH"))
|
||||
(filter-environment! (lambda (e) (not (cross? e)))
|
||||
'("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"
|
||||
'("CPATH" "C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"
|
||||
"LIBRARY_PATH"))
|
||||
#t))
|
||||
(replace 'build
|
||||
@ -2831,6 +2835,7 @@ tool for remote execution and deployment.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dylanaraps/neofetch")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"022xzn9jk18k2f4b6011d8jk5nbl84i3mw3inlz4q52p2hvk8fch"))))
|
||||
|
@ -130,8 +130,7 @@ C/C++ programs to use its capabilities without restrictions or overhead.")
|
||||
"--with-python=auto"
|
||||
(string-append "--with-dbusconfdir="
|
||||
(assoc-ref %outputs "out")
|
||||
"/etc")
|
||||
"CXXFLAGS=-std=c++11")))
|
||||
"/etc"))))
|
||||
(native-inputs
|
||||
`(("glib" ,glib "bin")
|
||||
("pkg-config" ,pkg-config)))
|
||||
|
@ -202,6 +202,7 @@ the real span of the lattice.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/fplll/fpylll.git")
|
||||
(commit (string-append version "dev"))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"01x2sqdv0sbjj4g4waj0hj4rcn4bq7h17442xaqwbznym9azmn9w"))))
|
||||
@ -345,7 +346,7 @@ precision.")
|
||||
(define-public giac
|
||||
(package
|
||||
(name "giac")
|
||||
(version "1.5.0-65")
|
||||
(version "1.5.0-69")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
;; "~parisse/giac" is not used because the maintainer regularly
|
||||
@ -357,7 +358,7 @@ precision.")
|
||||
"source/giac_" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1g2fp9vgy0gqjmi6mlc3ldfn8ryq3h4mfd7rcq5hs6ry21hblv30"))))
|
||||
"05l1qa2kfmvsbp0iqjmg3ixkcqa3h9ry1mjpcps52bxw05s3k1z9"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules ((ice-9 ftw)
|
||||
@ -484,7 +485,7 @@ fast arithmetic.")
|
||||
(define-public arb
|
||||
(package
|
||||
(name "arb")
|
||||
(version "2.16.0")
|
||||
(version "2.17.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -493,7 +494,7 @@ fast arithmetic.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0478671wfwy3gl26sbxh1jq1ih36z4k72waa8y2y2lvn649gb7cd"))))
|
||||
"05lpy3hkl5f8ik19aw40cqydrb932xaf2n8hbq9ib5dnk7f010p1"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
`(("flint" ,flint))) ; flint.h is included by arf.h
|
||||
@ -509,8 +510,8 @@ fast arithmetic.")
|
||||
(flint (assoc-ref inputs "flint"))
|
||||
(gmp (assoc-ref inputs "gmp"))
|
||||
(mpfr (assoc-ref inputs "mpfr")))
|
||||
;; do not pass "--enable-fast-install", which makes the
|
||||
;; homebrew configure process fail
|
||||
;; Do not pass "--enable-fast-install", which makes the
|
||||
;; homebrew configure process fail.
|
||||
(invoke "./configure"
|
||||
(string-append "--prefix=" out)
|
||||
(string-append "--with-flint=" flint)
|
||||
@ -523,7 +524,7 @@ arithmetic. It supports efficient high-precision computation with
|
||||
polynomials, power series, matrices and special functions over the
|
||||
real and complex numbers, with automatic, rigorous error control.")
|
||||
(license license:lgpl2.1+)
|
||||
(home-page "http://fredrikj.net/arb/")))
|
||||
(home-page "http://arblib.org")))
|
||||
|
||||
(define-public python-flint
|
||||
(package
|
||||
@ -996,7 +997,7 @@ features, and more.")
|
||||
(define-public xtensor
|
||||
(package
|
||||
(name "xtensor")
|
||||
(version "0.20.9")
|
||||
(version "0.20.10")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -1004,7 +1005,7 @@ features, and more.")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"1rw04bdi7mzp362dhkxr9m4rafnvb47xjsi9p3fp4vfif8v0jij8"))
|
||||
"1fmv2hpx610xwhxrndfsfvlbqfyk4l3gi5q5d7pa9m82kblxjj9l"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
|
@ -5,7 +5,7 @@
|
||||
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
||||
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
@ -217,7 +217,6 @@ in Main, System, Radio and Events sub-logs.")
|
||||
(build-system android-ndk-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; Test failure: logging.UNIMPLEMENTED
|
||||
#:make-flags '("CXXFLAGS=-std=gnu++11")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'enter-source
|
||||
@ -257,7 +256,7 @@ various Android core host applications.")
|
||||
"CC = gcc\n"
|
||||
|
||||
"CFLAGS += -fPIC\n"
|
||||
"CXXFLAGS += -std=gnu++11 -fPIC\n"
|
||||
"CXXFLAGS += -fPIC\n"
|
||||
"CPPFLAGS += -Iinclude -I../include\n"
|
||||
"LDFLAGS += -shared -Wl,-soname,$(NAME).so.0\n"
|
||||
|
||||
@ -312,7 +311,7 @@ various Android core host applications.")
|
||||
(build-system android-ndk-build-system)
|
||||
(arguments
|
||||
`(#:make-flags '("CFLAGS=-Wno-error"
|
||||
"CXXFLAGS=-fpermissive -Wno-error -std=gnu++11")
|
||||
"CXXFLAGS=-fpermissive -Wno-error")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'enter-source
|
||||
@ -631,8 +630,7 @@ file system.")
|
||||
(source (android-platform-system-core version))
|
||||
(build-system android-ndk-build-system)
|
||||
(arguments
|
||||
`(#:make-flags (list "CXXFLAGS=-std=gnu++11")
|
||||
#:phases
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'enter-source
|
||||
(lambda _
|
||||
@ -676,16 +674,16 @@ file system.")
|
||||
(define-public android-udev-rules
|
||||
(package
|
||||
(name "android-udev-rules")
|
||||
(version "20180112")
|
||||
(version "20191103")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/M0Rf30/android-udev-rules")
|
||||
(commit version)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "13gj79nnd04szqlrrzzkdr6wi1fky08pi7x8xfbg0jj3d3v0giah"))))
|
||||
(base32 "0x2f2sv0x0ry7kccp47s0hlxps3hbpg37dj3xjjgpdm5hmn2cjq3"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs `(("source" ,source)))
|
||||
(arguments
|
||||
|
@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016, 2017, 2018 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
|
||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
@ -44,14 +44,14 @@
|
||||
(define-public clamav
|
||||
(package
|
||||
(name "clamav")
|
||||
(version "0.101.2")
|
||||
(version "0.102.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.clamav.net/downloads/production/"
|
||||
"clamav-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0d3n4y8i5q594h4cjglmvpk4jd73r9ajpp1bvq5lr9zpdzgyn4ha"))
|
||||
"1qdyj4r39266bmbsd2nwyspm20k9wh3c30awrg8c54y78s61izj8"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -149,18 +149,27 @@ dictionaries, including personal ones.")
|
||||
"1svls9p7rsfi3hs0afh0cssj006qb4v1ik2yzqgj8hm10c6as2sm")))
|
||||
|
||||
(define-public aspell-dict-ca
|
||||
(aspell-dictionary "ca" "Catalan"
|
||||
#:version "2.1.5-1"
|
||||
#:sha256
|
||||
(base32
|
||||
"1fb5y5kgvk25nlsfvc8cai978hg66x3pbp9py56pldc7vxzf9npb")))
|
||||
(let ((version "2.5.0")
|
||||
(sha256
|
||||
(base32 "0kbi8fi7a1bys31kfqrlh332gyik0cfdmxgl7n15sa9c305rkgwq")))
|
||||
(package
|
||||
(inherit (aspell-dictionary "ca" "Catalan"
|
||||
#:version version
|
||||
#:sha256 sha256))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.softcatala.org/pub/softcatala/aspell/"
|
||||
version "/aspell6-ca-" version ".tar.bz2"))
|
||||
(sha256 sha256)))
|
||||
(home-page "https://www.softcatala.org/pub/softcatala/aspell/"))))
|
||||
|
||||
(define-public aspell-dict-de
|
||||
(aspell-dictionary "de" "German"
|
||||
#:version "20030222-1"
|
||||
#:version "20161207-7-0"
|
||||
#:sha256
|
||||
(base32
|
||||
"01p92qj66cqb346gk7hjfynaap5sbcn85xz07kjfdq623ghr8v5s")))
|
||||
"0wamclvp66xfmv5wff96v6gdlnfv4y8lx3f8wvxyzm5imwgms4n2")))
|
||||
|
||||
(define-public aspell-dict-da
|
||||
(aspell-dictionary "da" "Danish"
|
||||
@ -180,10 +189,10 @@ dictionaries, including personal ones.")
|
||||
|
||||
(define-public aspell-dict-en
|
||||
(aspell-dictionary "en" "English"
|
||||
#:version "2018.04.16-0"
|
||||
#:version "2019.10.06-0"
|
||||
#:sha256
|
||||
(base32
|
||||
"0bxxdzkk9g27plg22y9qzsx9cfjw3aa29w5bmzs561qc9gkp247i")))
|
||||
"1zai9wrqwgb9z9vfgb22qhrvxvg73jg0ix44j1khm2f6m96lncr4")))
|
||||
|
||||
(define-public aspell-dict-eo
|
||||
(aspell-dictionary "eo" "Esperanto"
|
||||
@ -282,19 +291,17 @@ dictionaries, including personal ones.")
|
||||
|
||||
(define-public aspell-dict-pt-br
|
||||
(aspell-dictionary "pt_BR" "Brazilian Portuguese"
|
||||
#:version "20090702-0"
|
||||
#:prefix "aspell6-"
|
||||
#:version "20131030-12-0"
|
||||
#:sha256
|
||||
(base32
|
||||
"1y09lx9zf2rnp55r16b2vgj953l3538z1vaqgflg9mdvm555bz3p")))
|
||||
"1xqlpk21s93c6blkdnpk7l62q9fxjvzdv2x86chl8p2x1gdrj3gb")))
|
||||
|
||||
(define-public aspell-dict-pt-pt
|
||||
(aspell-dictionary "pt_PT" "Portuguese"
|
||||
#:version "20070510-0"
|
||||
#:prefix "aspell6-"
|
||||
#:version "20190329-1-0"
|
||||
#:sha256
|
||||
(base32
|
||||
"1mnr994cwlag6shy8865ky99lymysiln07mbldcncahg90dagdxq")))
|
||||
"0ld0d0ily4jqifjfsxfv4shbicz6ymm2gk56fq9gbzra1j4qnw75")))
|
||||
|
||||
(define-public aspell-dict-ru
|
||||
(aspell-dictionary "ru" "Russian"
|
||||
|
@ -99,6 +99,10 @@ has strong support for macros.")
|
||||
(base32
|
||||
"0gv0slmm0qpq91za3v2v9glff3il594x5xsrbgab7xcmnh0ndkix"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:parallel-tests? #f)) ; Some tests fail
|
||||
; non-deterministically when run in
|
||||
; parallel
|
||||
(inputs
|
||||
`(("python" ,python-wrapper)
|
||||
("xmlto" ,xmlto)))
|
||||
|
@ -23,6 +23,7 @@
|
||||
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -63,6 +64,7 @@
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages dbm)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages flex)
|
||||
@ -521,8 +523,6 @@ formant warp.")
|
||||
`(#:tests? #f ; no check target
|
||||
#:make-flags
|
||||
(list "LV2PEG=ttl2c"
|
||||
"CXXFLAGS=-std=gnu++11"
|
||||
"CFLAGS=-std=gnu++11"
|
||||
(string-append "prefix=" %output)
|
||||
(string-append "pkgdatadir=" %output "/share/azr3-jack"))
|
||||
#:phases
|
||||
@ -1109,7 +1109,7 @@ follower.")
|
||||
(define-public fluidsynth
|
||||
(package
|
||||
(name "fluidsynth")
|
||||
(version "2.0.7")
|
||||
(version "2.0.9")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -1118,7 +1118,7 @@ follower.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1h1dj3wmjwzny2hgr41k3p67w4kxvzn365kkqwyfd6yk0v3rahic"))))
|
||||
"08bhwv0gw7zq1z0b36m2dzxl6zcgvmvaa60nly2wif7rinkprp5n"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
@ -1169,28 +1169,17 @@ also play midifiles using a Soundfont.")
|
||||
(define-public faad2
|
||||
(package
|
||||
(name "faad2")
|
||||
(version "2.7")
|
||||
(version "2.8.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/faac/faad2-src/faad2-"
|
||||
version "/faad2-" version ".zip"))
|
||||
(version-major+minor version) ".0/"
|
||||
"faad2-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16f3l16c00sg0wkrkm3vzv0gy3g97x309vw788igs0cap2x1ak3z"))))
|
||||
"089zqykqgmmysznvk0bi2pfvdqwclnn540d0zks83sv2pynpfjb5"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("unzip" ,unzip)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
(lambda _
|
||||
(substitute* "bootstrap" (("\r\n") "\n"))
|
||||
(invoke "sh" "bootstrap"))))))
|
||||
(home-page "http://www.audiocoding.com/faad2.html")
|
||||
(home-page "https://www.audiocoding.com/faad2.html")
|
||||
(synopsis "MPEG-4 and MPEG-2 AAC decoder")
|
||||
(description
|
||||
"FAAD2 is an MPEG-4 and MPEG-2 AAC decoder supporting LC, Main, LTP, SBR,
|
||||
@ -1328,8 +1317,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
|
||||
#:configure-flags
|
||||
(list
|
||||
;; Add the output lib directory to the RUNPATH.
|
||||
(string-append "--ldflags=-Wl,-rpath=" %output "/lib")
|
||||
"--cxxflags=-std=c++11")
|
||||
(string-append "--ldflags=-Wl,-rpath=" %output "/lib"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-boost-includes
|
||||
@ -1586,24 +1574,26 @@ synchronous execution of all clients, and low latency operation.")
|
||||
(define-public jalv
|
||||
(package
|
||||
(name "jalv")
|
||||
(version "1.6.0")
|
||||
(version "1.6.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.drobilla.net/jalv-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1x2wpzzx2cgvz3dgdcgsj8dr0w3zsasy62mvl199bsdj5fbjaili"))))
|
||||
"1wwfn7yzbs37s2rdlfjgks63svd5g14yyzd2gdl7h0z12qncwsy2"))))
|
||||
(build-system waf-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no check target
|
||||
`(#:tests? #f ; no check target
|
||||
#:python ,python-2))
|
||||
(inputs
|
||||
`(("lv2" ,lv2)
|
||||
("lilv" ,lilv)
|
||||
("suil" ,suil)
|
||||
("gtk" ,gtk+)
|
||||
("gtkmm" ,gtkmm)
|
||||
("gtk2" ,gtk+-2)
|
||||
("gtk3" ,gtk+)
|
||||
("gtkmm" ,gtkmm-2)
|
||||
("qtbase" ,qtbase)
|
||||
("jack" ,jack-1)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
@ -1817,26 +1807,32 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
|
||||
(define-public lilv
|
||||
(package
|
||||
(name "lilv")
|
||||
(version "0.24.4")
|
||||
(version "0.24.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.drobilla.net/lilv-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0f24cd7wkk5l969857g2ydz2kjjrkvvddg1g87xzzs78lsvq8fy3"))))
|
||||
"1p3hafsxgs5d4za7n66lf5nz74qssfqpmk520cm7iq2njvvlqm2z"))))
|
||||
(build-system waf-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no check target
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before
|
||||
'configure 'set-ldflags
|
||||
(add-before 'configure 'set-ldflags
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(setenv "LDFLAGS"
|
||||
(string-append "-Wl,-rpath="
|
||||
(assoc-ref outputs "out") "/lib"))
|
||||
#t)))))
|
||||
#t))
|
||||
(add-after 'unpack 'full-store-path-to-shared-library
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(with-directory-excursion "bindings/python"
|
||||
(substitute* "lilv.py"
|
||||
(("liblilv-0.so") (string-append (assoc-ref outputs "out")
|
||||
"/lib/liblilv-0.so"))))
|
||||
#t)))))
|
||||
;; Required by lilv-0.pc.
|
||||
(propagated-inputs
|
||||
`(("lv2" ,lv2)
|
||||
@ -1844,8 +1840,9 @@ included are the command line utilities @code{send_osc} and @code{dump_osc}.")
|
||||
("sord" ,sord)
|
||||
("sratom" ,sratom)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "https://drobilla.net/software/lilv/")
|
||||
`(("python" ,python)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(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
|
||||
@ -2344,33 +2341,22 @@ tempo and pitch of an audio recording independently of one another.")
|
||||
(define-public rtmidi
|
||||
(package
|
||||
(name "rtmidi")
|
||||
(version "2.1.0")
|
||||
(version "4.0.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/powertab/rtmidi.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.music.mcgill.ca/~gary/rtmidi"
|
||||
"/release/rtmidi-" version ".tar.gz"))
|
||||
(file-name (string-append "rtmidi-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"106v177y3nrjv2l1yskch4phpqd8h97b67zj0jiq9pc3c69jr1ay"))))
|
||||
"1k962ljpnwyjw9jjiky2372khhri1wqvrj5qsalfpys31xqzw31p"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;no "check" target
|
||||
#:phases
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'fix-makefile
|
||||
(add-before 'bootstrap 'noconfigure
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("/bin/ln") "ln")
|
||||
(("RtMidi.h RtError.h") "RtMidi.h"))
|
||||
#t))
|
||||
(add-before 'install 'make-target-dirs
|
||||
(lambda _
|
||||
(let ((out (assoc-ref %outputs "out")))
|
||||
(mkdir-p (string-append out "/bin"))
|
||||
(mkdir (string-append out "/lib"))
|
||||
(mkdir (string-append out "/include")))
|
||||
(setenv "NOCONFIGURE" "yes")
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("jack" ,jack-1)
|
||||
@ -2380,7 +2366,7 @@ tempo and pitch of an audio recording independently of one another.")
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/powertab/rtmidi")
|
||||
(home-page "https://www.music.mcgill.ca/~gary/rtmidi")
|
||||
(synopsis "Cross-platform MIDI library for C++")
|
||||
(description
|
||||
"RtMidi is a set of C++ classes (RtMidiIn, RtMidiOut, and API specific
|
||||
@ -2391,17 +2377,18 @@ input/output.")
|
||||
(define-public sratom
|
||||
(package
|
||||
(name "sratom")
|
||||
(version "0.6.2")
|
||||
(version "0.6.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.drobilla.net/sratom-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lz883ravxjf7r9wwbx2gx9m8vhyiavxrl9jdxfppjxnsralll8a"))))
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.drobilla.net/sratom-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0vh0biy3ngpzzgdml309c2mqz8xq9q0hlblczb4c6alhp0a8yv0l"))))
|
||||
(build-system waf-build-system)
|
||||
(arguments `(#:tests? #f)) ; no check target
|
||||
(inputs
|
||||
(arguments `(#:tests? #f)) ;no check target
|
||||
(propagated-inputs
|
||||
;; In Requires of sratom-0.pc.
|
||||
`(("lv2" ,lv2)
|
||||
("serd" ,serd)
|
||||
("sord" ,sord)))
|
||||
@ -2417,19 +2404,17 @@ the Turtle syntax.")
|
||||
(define-public suil
|
||||
(package
|
||||
(name "suil")
|
||||
(version "0.10.4")
|
||||
(version "0.10.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.drobilla.net/suil-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ay7hl6nr6ip1nn9k2m8ri3b52b6sx9mhixmcy4fy3kr2a88ksd1"))))
|
||||
"0z4v01pjw4wh65x38w6icn28wdwxz13ayl8hvn4p1g9kmamp1z06"))))
|
||||
(build-system waf-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no check target
|
||||
#:configure-flags
|
||||
'("CXXFLAGS=-std=gnu++11")))
|
||||
`(#:tests? #f)) ;no check target
|
||||
(inputs
|
||||
`(("lv2" ,lv2)
|
||||
("gtk+" ,gtk+-2)
|
||||
@ -2951,7 +2936,7 @@ result.")
|
||||
(define-public zita-convolver
|
||||
(package
|
||||
(name "zita-convolver")
|
||||
(version "3.1.0")
|
||||
(version "4.0.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -2961,31 +2946,33 @@ result.")
|
||||
(snippet
|
||||
;; Don't optimize for a specific processor architecture.
|
||||
'(begin
|
||||
(substitute* "libs/Makefile"
|
||||
(substitute* "source/Makefile"
|
||||
(("^CXXFLAGS \\+= -march=native") ""))
|
||||
#t))
|
||||
(modules '((guix build utils)))
|
||||
(sha256
|
||||
(base32
|
||||
"14qrnczhp5mbwhky64il7kxc4hl1mmh495v60va7i2qnhasr6zmz"))))
|
||||
"0prji66p86z2bzminywkwchr5bfgxcg2i8y803pydd1hzf2198cs"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no "check" target
|
||||
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
||||
#:make-flags
|
||||
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
|
||||
(string-append "SUFFIX="))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-makefile-and-enter-directory
|
||||
(lambda _
|
||||
(substitute* "libs/Makefile"
|
||||
(substitute* "source/Makefile"
|
||||
(("ldconfig") "true")
|
||||
(("^LIBDIR =.*") "LIBDIR = lib\n"))
|
||||
(chdir "libs")
|
||||
(chdir "source")
|
||||
#t))
|
||||
(add-after 'install 'install-symlink
|
||||
(lambda _
|
||||
(symlink "libzita-convolver.so"
|
||||
(string-append (assoc-ref %outputs "out")
|
||||
"/lib/libzita-convolver.so.3"))
|
||||
"/lib/libzita-convolver.so.4"))
|
||||
#t))
|
||||
;; no configure script
|
||||
(delete 'configure))))
|
||||
@ -3685,16 +3672,16 @@ library.")
|
||||
(define-public faudio
|
||||
(package
|
||||
(name "faudio")
|
||||
(version "19.09")
|
||||
(version "19.11")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/FNA-XNA/FAudio.git")
|
||||
(commit version)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0fagik55jmy3qmb27nhg0zxash1ahfkxphx8m8gs0pimqqrdrd9d"))))
|
||||
(base32 "0ckpr6ffz8ssfh1y850dhip5s5jv0j6n90qz5yx1v9d6gpwf08rp"))))
|
||||
(arguments
|
||||
'(#:tests? #f ; No tests.
|
||||
#:configure-flags '("-DFFMPEG=ON")))
|
||||
@ -3769,3 +3756,58 @@ other Gnaural instances, allowing synchronous sessions between many users.")
|
||||
a sound card, encodes it into Ogg Vorbis and/or mp3, and sends the audio
|
||||
stream to one or more IceCast and/or ShoutCast servers.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libltc
|
||||
(package
|
||||
(name "libltc")
|
||||
(version "1.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://github.com/x42/libltc/releases/download/v"
|
||||
version "/libltc-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"173h9dgmain3nyrwk6q2d7yl4fnh4vacag4s2p01n5b7nyrkxrjh"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:parallel-tests? #f)) ;tests fail otherwise
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(synopsis "Encode or decode Linear/Longitudinal Time Code (LTC) audio")
|
||||
(description "Libltc is a POSIX-C Library for handling
|
||||
@dfn{Linear/Longitudinal Time Code} (LTC) data.")
|
||||
(home-page "https://x42.github.io/libltc/")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public redkite
|
||||
(package
|
||||
(name "redkite")
|
||||
(version "0.6.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.com/geontime/redkite.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1i874izajbdhlfacwwj84qrsxf7g4y6nblzxalrkzaap9sa7d1r6"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ;no tests included
|
||||
(inputs
|
||||
`(("cairo" ,cairo)))
|
||||
(native-inputs
|
||||
`(("pkg-config", pkg-config)))
|
||||
(synopsis "Small GUI toolkit")
|
||||
(description "Redkite is a small GUI toolkit developed in C++17 and
|
||||
inspired from other well known GUI toolkits such as Qt and GTK. It is
|
||||
minimal on purpose and is intended to be statically linked to applications,
|
||||
therefore satisfying any requirements they may have to be self contained,
|
||||
as is the case with audio plugins.")
|
||||
(home-page "https://gitlab.com/geontime/redkite")
|
||||
(license license:gpl3+)))
|
||||
|
@ -35,6 +35,7 @@
|
||||
(package
|
||||
(name "avahi")
|
||||
(version "0.7")
|
||||
(replacement avahi/fixed)
|
||||
(home-page "http://avahi.org")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
@ -74,6 +75,17 @@ network. It is an implementation of the mDNS (for \"Multicast DNS\") and
|
||||
DNS-SD (for \"DNS-Based Service Discovery\") protocols.")
|
||||
(license lgpl2.1+)))
|
||||
|
||||
(define avahi/fixed
|
||||
(package
|
||||
(inherit avahi)
|
||||
(source (origin
|
||||
(inherit (package-source avahi))
|
||||
(patches
|
||||
(append (search-patches "avahi-CVE-2018-1000845.patch")
|
||||
(origin-patches (package-source avahi))))))
|
||||
;; Hide a duplicate of the CVE fixed above.
|
||||
(properties `((lint-hidden-cve . ("CVE-2017-6519"))))))
|
||||
|
||||
(define-public nss-mdns
|
||||
(package
|
||||
(name "nss-mdns")
|
||||
|
@ -303,13 +303,13 @@ random access nor for in-place modification.")
|
||||
(version "1.1.15")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(uri (string-append "https://github.com/miekg/rdup/archive/"
|
||||
version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/miekg/rdup.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jr91hgcf0rrpanqlwws72ql9db6d6grs2i122ki1s4bx0vqqyvq"))))
|
||||
(base32 "0bzyv6qmnivxnv9nw7lnfn46k0m1dlxcjj53zcva6v8y8084l1iw"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
@ -319,11 +319,14 @@ random access nor for in-place modification.")
|
||||
;; For tests.
|
||||
("dejagnu" ,dejagnu)))
|
||||
(inputs
|
||||
;; XXX Compiling with nettle (encryption) support requires patching out
|
||||
;; -Werror from GNUmakefile.in. Then, rdup-tr-{en,de}crypt tests fail:
|
||||
;; free(): invalid pointer
|
||||
;; ** rdup-tr: SIGPIPE received, exiting
|
||||
`(("glib" ,glib)
|
||||
("pcre" ,pcre)
|
||||
("libarchive" ,libarchive)
|
||||
("mcrypt" ,mcrypt)
|
||||
("nettle" ,nettle)))
|
||||
("mcrypt" ,mcrypt)))
|
||||
(arguments
|
||||
`(#:parallel-build? #f ;race conditions
|
||||
#:phases
|
||||
@ -339,6 +342,13 @@ random access nor for in-place modification.")
|
||||
;; Avoid frivolous dependency on ‘which’ with a shell builtin.
|
||||
(("which") "command -v"))
|
||||
#t))
|
||||
(add-before 'check 'disable-encryption-tests
|
||||
(lambda _
|
||||
(for-each delete-file
|
||||
(list "testsuite/rdup/rdup.rdup-tr-crypt.exp"
|
||||
"testsuite/rdup/rdup.rdup-tr-decrypt.exp"
|
||||
"testsuite/rdup/rdup.rdup-tr-encrypt.exp"))
|
||||
#t))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
(setenv "HOME" (getcwd))
|
||||
@ -722,63 +732,6 @@ NTFS volumes using @code{ntfs-3g}, preserving NTFS-specific attributes.")
|
||||
license:lgpl3+
|
||||
license:cc0))))
|
||||
|
||||
(define-public obnam
|
||||
(package
|
||||
(name "obnam")
|
||||
(version "1.21")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://code.liw.fi/debian/pool/main/o/obnam/obnam_"
|
||||
version ".orig.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qlipsq50hca71zc0dp1mg9zs12qm0sbblw7qfzl0hj6mk2rv1by"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(substitute* "obnamlib/vfs_local_tests.py"
|
||||
;; 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.
|
||||
(("self.fs.get_groupname\\(0\\)") "'root'"))
|
||||
(substitute* "obnamlib/vfs_local.py"
|
||||
;; Don't cover get_groupname function.
|
||||
(("def get_groupname\\(self, gid\\):")
|
||||
"def get_groupname(self, gid): # pragma: no cover"))
|
||||
;; Can't run network tests.
|
||||
(invoke "./check" "--unit-tests"))))))
|
||||
(inputs
|
||||
`(("python2-cliapp" ,python2-cliapp)
|
||||
("python2-larch" ,python2-larch)
|
||||
("python2-paramiko" ,python2-paramiko)
|
||||
("python2-pyaml" ,python2-pyaml)
|
||||
("python2-tracing" ,python2-tracing)
|
||||
("python2-ttystatus" ,python2-ttystatus)))
|
||||
(native-inputs
|
||||
`(("gnupg" ,gnupg)
|
||||
("python2-coverage" ,python2-coverage)
|
||||
("python2-coverage-test-runner" ,python2-coverage-test-runner)
|
||||
("python2-pep8" ,python2-pep8)
|
||||
("python2-pylint" ,python2-pylint)))
|
||||
(home-page "https://obnam.org/")
|
||||
(synopsis "Retired backup program")
|
||||
(description
|
||||
"Warning: @uref{https://blog.liw.fi/posts/2017/08/13/retiring_obnam/,
|
||||
the Obnam project is retired}. You should use another backup solution instead.
|
||||
|
||||
Obnam was an easy, secure backup program. Features included snapshot backups,
|
||||
data de-duplication and encrypted backups using GnuPG. Backups can be stored on
|
||||
local hard disks, or online via the SSH SFTP protocol. The backup server, if
|
||||
used, does not require any special software, on top of SSH.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public dirvish
|
||||
(package
|
||||
(name "dirvish")
|
||||
|
@ -981,18 +981,23 @@ with the Linux kernel.")
|
||||
(substitute-keyword-arguments
|
||||
(ensure-keyword-arguments (package-arguments base-gcc)
|
||||
'(#:implicit-inputs? #f))
|
||||
((#:make-flags flags)
|
||||
`(let ((libc (assoc-ref %build-inputs "libc")))
|
||||
;; FLAGS_FOR_TARGET are needed for the target libraries to receive
|
||||
;; the -Bxxx for the startfiles.
|
||||
(cons (string-append "FLAGS_FOR_TARGET=-B" libc "/lib")
|
||||
,flags)))))
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-before 'configure 'treat-glibc-as-system-header
|
||||
(lambda _
|
||||
(let ((libc (assoc-ref %build-inputs "libc")))
|
||||
;; GCCs build processes requires that the libc
|
||||
;; we're building against is on the system header
|
||||
;; search path.
|
||||
(for-each (lambda (var)
|
||||
(setenv var (string-append libc "/include")))
|
||||
'("C_INCLUDE_PATH" "CPLUS_INCLUDE_PATH"))
|
||||
#t)))))))
|
||||
(native-inputs
|
||||
`(("libc" ,libc)
|
||||
("libc:static" ,libc "static")
|
||||
,@(append (package-inputs base-gcc)
|
||||
(fold alist-delete (%final-inputs) '("libc" "libc:static")))))
|
||||
(inputs '())))
|
||||
`(,@(package-native-inputs base-gcc)
|
||||
,@(append (fold alist-delete (%final-inputs) '("libc" "libc:static")))
|
||||
("libc" ,libc)
|
||||
("libc:static" ,libc "static")))))
|
||||
|
||||
(define-public (make-glibc-locales glibc)
|
||||
(package
|
||||
|
@ -3,7 +3,7 @@
|
||||
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@ -31,6 +31,7 @@
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix monads)
|
||||
@ -310,14 +311,15 @@ completion for many common commands.")
|
||||
(package
|
||||
(name "bash-tap")
|
||||
(version "1.0.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/illusori/bash-tap/"
|
||||
"archive/" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qs1qi38bl3ns4mpagcawv618dsk2q1lgrbddgvs0wl3ia12cyz5"))))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/illusori/bash-tap.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "13zz9h6bhhnk3hiwhlpafrnf2isws249h3fz785dcgymk02arz9c"))))
|
||||
;; There is no compilation process to use this package, however, the bash
|
||||
;; scripts installed by this package start with "#!/bin/bash". To fix
|
||||
;; these lines, we use the patch-shebangs of the GNU build system. The
|
||||
|
@ -2,6 +2,7 @@
|
||||
;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017, 2018 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Simon Tournier <zimon.toutoune@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -832,6 +833,36 @@ Disease Ontology.")
|
||||
using data from public repositories.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-phastcons100way-ucsc-hg19
|
||||
(package
|
||||
(name "r-phastcons100way-ucsc-hg19")
|
||||
(version "3.7.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "phastCons100way.UCSC.hg19"
|
||||
version 'annotation))
|
||||
(sha256
|
||||
(base32
|
||||
"1jmc4k4zgkx5vr2plnidnd9bidlwlb0kr7mjg60cqjw7dq7jl1fa"))))
|
||||
(properties
|
||||
`((upstream-name . "phastCons100way.UCSC.hg19")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-bsgenome" ,r-bsgenome)
|
||||
("r-genomeinfodb" ,r-genomeinfodb)
|
||||
("r-genomicranges" ,r-genomicranges)
|
||||
("r-genomicscores" ,r-genomicscores)
|
||||
("r-iranges" ,r-iranges)
|
||||
("r-s4vectors" ,r-s4vectors)))
|
||||
(home-page "https://bioconductor.org/packages/phastCons100way.UCSC.hg19")
|
||||
(synopsis "UCSC phastCons conservation scores for hg19")
|
||||
(description
|
||||
"This package provides UCSC phastCons conservation scores for the human
|
||||
genome (hg19) calculated from multiple alignments with other 99 vertebrate
|
||||
species.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
|
||||
;;; Experiment data
|
||||
|
||||
@ -3453,14 +3484,14 @@ profiles (GO and KEGG) of gene and gene clusters.")
|
||||
(define-public r-mlinterfaces
|
||||
(package
|
||||
(name "r-mlinterfaces")
|
||||
(version "1.64.0")
|
||||
(version "1.64.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "MLInterfaces" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0zqvxmvbkig3cc4r5k405s53d7y5ccvrf8kf5j6v8s1kkrklai4j"))))
|
||||
"1c1hciwy37zpr5bzdjj2xxx2r4jdfmr5w0zmg010lm2985z41gqh"))))
|
||||
(properties `((upstream-name . "MLInterfaces")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@ -4537,14 +4568,14 @@ based on @dfn{Continuous Wavelet Transform} (CWT).")
|
||||
(define-public r-xcms
|
||||
(package
|
||||
(name "r-xcms")
|
||||
(version "3.6.1")
|
||||
(version "3.6.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "xcms" version))
|
||||
(sha256
|
||||
(base32
|
||||
"06vhqvvzlkc5bslswagrapmn5ag3x84xg9gxk0fhlmgwapqwki1g"))))
|
||||
"0icww3f1kahyk96mc07yhsbyiranzm2614n509as09jf8bdhq23v"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-biobase" ,r-biobase)
|
||||
@ -6048,3 +6079,61 @@ attributable to individual, tissue, time point, or technical variables. The
|
||||
package includes dream differential expression analysis for repeated
|
||||
measures.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-htqpcr
|
||||
(package
|
||||
(name "r-htqpcr")
|
||||
(version "1.38.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "HTqPCR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"09xgj797f0qsbm4jswxw7ijjwa4jxg06bfkq66xfhbvascyyrhg7"))))
|
||||
(properties `((upstream-name . "HTqPCR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-affy" ,r-affy)
|
||||
("r-biobase" ,r-biobase)
|
||||
("r-gplots" ,r-gplots)
|
||||
("r-limma" ,r-limma)
|
||||
("r-rcolorbrewer" ,r-rcolorbrewer)))
|
||||
(home-page "http://www.ebi.ac.uk/bertone/software")
|
||||
(synopsis "Automated analysis of high-throughput qPCR data")
|
||||
(description
|
||||
"Analysis of Ct values from high throughput quantitative real-time
|
||||
PCR (qPCR) assays across multiple conditions or replicates. The input data
|
||||
can be from spatially-defined formats such ABI TaqMan Low Density Arrays or
|
||||
OpenArray; LightCycler from Roche Applied Science; the CFX plates from Bio-Rad
|
||||
Laboratories; conventional 96- or 384-well plates; or microfluidic devices
|
||||
such as the Dynamic Arrays from Fluidigm Corporation. HTqPCR handles data
|
||||
loading, quality assessment, normalization, visualization and parametric or
|
||||
non-parametric testing for statistical significance in Ct values between
|
||||
features (e.g. genes, microRNAs).")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-unifiedwmwqpcr
|
||||
(package
|
||||
(name "r-unifiedwmwqpcr")
|
||||
(version "1.20.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "unifiedWMWqPCR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"10j70bp5y1x2prz2iagqmwf04y79yqinq08wz4ilh8wggb9f7l8a"))))
|
||||
(properties
|
||||
`((upstream-name . "unifiedWMWqPCR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-biocgenerics" ,r-biocgenerics)
|
||||
("r-htqpcr" ,r-htqpcr)))
|
||||
(home-page "https://bioconductor.org/packages/unifiedWMWqPCR")
|
||||
(synopsis "Unified Wilcoxon-Mann Whitney Test for differential expression in qPCR data")
|
||||
(description
|
||||
"This package implements the unified Wilcoxon-Mann-Whitney Test for qPCR
|
||||
data. This modified test allows for testing differential expression in qPCR
|
||||
data.")
|
||||
(license license:gpl2+)))
|
||||
|
@ -1443,8 +1443,7 @@ confidence to have in an alignment.")
|
||||
"-lboost_system"
|
||||
"-lboost_iostreams"
|
||||
"-lz"
|
||||
"-fopenmp"
|
||||
"-std=c++11"))))
|
||||
"-fopenmp"))))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'do-not-build-bundled-pigz
|
||||
@ -1556,14 +1555,14 @@ gapped, local, and paired-end alignment modes.")
|
||||
(define-public bowtie1
|
||||
(package
|
||||
(name "bowtie1")
|
||||
(version "1.2.2")
|
||||
(version "1.2.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/bowtie-bio/bowtie/"
|
||||
version "/bowtie-" version "-src.zip"))
|
||||
version "/bowtie-src-x86_64.zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jl2cj9bz8lwz8dwnxbycn8yp8g4kky62fkcxifyf1ri0y6n2vc0"))
|
||||
"0vmiqdhc9dzyfy9sh6vgi7k9xy2hiw8g87vbamnc6cgpm179zsa4"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(substitute* "Makefile"
|
||||
@ -7731,13 +7730,13 @@ biological sequences or sets of sequences.")
|
||||
(define-public r-rsamtools
|
||||
(package
|
||||
(name "r-rsamtools")
|
||||
(version "2.0.2")
|
||||
(version "2.0.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Rsamtools" version))
|
||||
(sha256
|
||||
(base32
|
||||
"188k5g40lbli7dxr96hldyvg9r9hmlbh2fp0qs5nnd12b8zbf338"))))
|
||||
"03qfpaqbffirpnby88mv6h45njfapli28crdvg35h2zi2jkkmhvp"))))
|
||||
(properties
|
||||
`((upstream-name . "Rsamtools")))
|
||||
(build-system r-build-system)
|
||||
@ -8283,14 +8282,14 @@ secondary structure and comparative analysis in R.")
|
||||
(define-public r-rhtslib
|
||||
(package
|
||||
(name "r-rhtslib")
|
||||
(version "1.16.2")
|
||||
(version "1.16.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Rhtslib" version))
|
||||
(sha256
|
||||
(base32
|
||||
"07qaqj2hypmrg40m3pci082bzar6wi10dh77r4a8x74dfppcwdzf"))))
|
||||
"1lmrfr32nrz36abn440kvzzck53y2320xjxqzs2jw7m2a9h3ryak"))))
|
||||
(properties `((upstream-name . "Rhtslib")))
|
||||
(build-system r-build-system)
|
||||
;; Without this a temporary directory ends up in the Rhtslib.so binary,
|
||||
@ -8571,13 +8570,13 @@ of gene-level counts.")
|
||||
(define-public r-rhdf5
|
||||
(package
|
||||
(name "r-rhdf5")
|
||||
(version "2.28.0")
|
||||
(version "2.28.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "rhdf5" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0y1w3cs7wg2b3jlkd6wyyz6626xg011nrg36si8gg371iqck9a1i"))))
|
||||
"027cv1kh3xl66lrrahv2jgfmvgcwfpcj9dpgdj5fd9ybf5nyjcwb"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-rhdf5lib" ,r-rhdf5lib)))
|
||||
@ -9705,14 +9704,14 @@ microarrays or GRanges for sequencing data.")
|
||||
(define-public r-keggrest
|
||||
(package
|
||||
(name "r-keggrest")
|
||||
(version "1.24.0")
|
||||
(version "1.24.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "KEGGREST" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1yjrpbm5zfg0h3nb5gg06q2f19ydbhjqwi0jb6q3p8dyrgww9mqp"))))
|
||||
"0yxp3iajdy61q6mjgp1nxdgmf2yb58cvqmdgab7lqxr0ky1wkfkr"))))
|
||||
(properties `((upstream-name . "KEGGREST")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@ -9852,14 +9851,14 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2):
|
||||
(define-public r-ensembldb
|
||||
(package
|
||||
(name "r-ensembldb")
|
||||
(version "2.8.0")
|
||||
(version "2.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "ensembldb" version))
|
||||
(sha256
|
||||
(base32
|
||||
"09s5g9xm9m8mqvzk6pkp9fyhx3zyb4p8yziz49mhfji5n35nydjr"))))
|
||||
"103z902104ljdp6s9y2dmgrl5wkdz8vvlbbqgk8r4drkg7m3d4lj"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-annotationdbi" ,r-annotationdbi)
|
||||
@ -10032,14 +10031,14 @@ interval to data view, mismatch pileup, and several splicing summaries.")
|
||||
(define-public r-gprofiler
|
||||
(package
|
||||
(name "r-gprofiler")
|
||||
(version "0.6.8")
|
||||
(version "0.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "gProfileR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"05d6y6b7vkkzp2qhs1cwlvp02djij1b28dbwxnrms08f8qi35iaj"))))
|
||||
"1h1v0kgpsn04ald2izznh7fr2riwisj5hcgz4k7h3qc931rf0r4k"))))
|
||||
(properties `((upstream-name . "gProfileR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@ -10188,14 +10187,14 @@ by Ernst and Kellis.")
|
||||
(define-public r-ldblock
|
||||
(package
|
||||
(name "r-ldblock")
|
||||
(version "1.14.2")
|
||||
(version "1.14.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "ldblock" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xx04cghx6ads1ackwnw3z0gf72qv461nznzmcnkgmp7w5n9m2af"))))
|
||||
"154yvrvs8ik7ifcny1681cmqra0i163j00k4vbvkvl701p5gsp5q"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-biocgenerics" ,r-biocgenerics)
|
||||
@ -10322,14 +10321,14 @@ with your data.")
|
||||
(define-public r-gwascat
|
||||
(package
|
||||
(name "r-gwascat")
|
||||
(version "2.16.0")
|
||||
(version "2.16.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "gwascat" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0akb36mrybmxbb1bc9kgxbnj3cdypfylj3yzrmhjwqxml03mg61i"))))
|
||||
"0d4krqx8zjniwp6k2vzwqgfws39w03x51kqiwd5dks1fp05sw4xh"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-annotationdbi" ,r-annotationdbi)
|
||||
@ -10428,14 +10427,14 @@ provided.")
|
||||
(define-public r-hdf5array
|
||||
(package
|
||||
(name "r-hdf5array")
|
||||
(version "1.12.2")
|
||||
(version "1.12.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "HDF5Array" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0afradisrr5gn0lf2kxjw55vdm3lm9mlgx53qlr9r40c1hrydpf5"))))
|
||||
"1037j6f0yyw4cf6p051810qamxi1sji5w4d0fgq5lyzyl5d36fm6"))))
|
||||
(properties `((upstream-name . "HDF5Array")))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
@ -10457,14 +10456,14 @@ block processing.")
|
||||
(define-public r-rhdf5lib
|
||||
(package
|
||||
(name "r-rhdf5lib")
|
||||
(version "1.6.1")
|
||||
(version "1.6.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Rhdf5lib" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0niz9dh66fcwbvqpkpsdlz9d06kwi3kfh45dhk3qz9g9qqyiakr1"))
|
||||
"0q68n5jm7w99paibj8vkxbdksbyrxilzwc9dkp3zf8zrdc5qfxzy"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@ -10510,8 +10509,8 @@ block processing.")
|
||||
(("HDF5_CXX_INCLUDE=.*") "HDF5_CXX_INCLUDE=./hdf5/c++/src\n")
|
||||
(("HDF5_INCLUDE=.*") "HDF5_INCLUDE=./hdf5/src\n")
|
||||
;; szip is non-free software
|
||||
(("cp \\$\\{SZIP_LIB\\}.*") "")
|
||||
(("\\$\\{USER_LIB_DIR\\}libsz.a") "")))
|
||||
(("cp \"\\$\\{SZIP_LIB\\}.*") "")
|
||||
(("PKG_LIBS =.*") "PKG_LIBS = -lz -lhdf5\n")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("zlib" ,zlib)))
|
||||
@ -12850,6 +12849,7 @@ HTML reports with interesting findings about your samples.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jsh58/Genrich.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x0q6z0208n3cxzqjla4rgjqpyqgwpmz27852lcvzkzaigymq4zp"))))
|
||||
@ -14799,6 +14799,7 @@ and reflect the fast5 file schema, and tools to convert between
|
||||
(uri (git-reference
|
||||
(url "https://github.com/phoenixding/tbsp.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"025ym14x8gbd6hb55lsinqj6f5qzw36i10klgs7ldzxxd7s39ki1"))))
|
||||
@ -15260,3 +15261,91 @@ and/or unmapped/clipped reads to a separate FASTQ file. When marking
|
||||
duplicates, samblaster will require approximately 20MB of memory per 1M read
|
||||
pairs.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-velocyto
|
||||
(let ((commit "d7790346cb99f49ab9c2b23ba70dcf9d2c9fc350")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "r-velocyto")
|
||||
(version (git-version "0.6" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/velocyto-team/velocyto.R.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"16wqf70j7rd7pay2q513iyz12i8n9vrpg1bisah4lddbcpx5dz1n"))))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
`(("boost" ,boost)))
|
||||
(propagated-inputs
|
||||
`(("r-hdf5r" ,r-hdf5r)
|
||||
("r-mass" ,r-mass)
|
||||
("r-mgcv" ,r-mgcv)
|
||||
("r-pcamethods" ,r-pcamethods)
|
||||
("r-rcpp" ,r-rcpp)
|
||||
("r-rcpparmadillo" ,r-rcpparmadillo)
|
||||
;; Suggested packages
|
||||
("r-rtsne" ,r-rtsne)
|
||||
("r-cluster" ,r-cluster)
|
||||
("r-abind" ,r-abind)
|
||||
("r-h5" ,r-h5)
|
||||
("r-biocgenerics" ,r-biocgenerics)
|
||||
("r-genomicalignments" ,r-genomicalignments)
|
||||
("r-rsamtools" ,r-rsamtools)
|
||||
("r-edger" ,r-edger)
|
||||
("r-igraph" ,r-igraph)))
|
||||
(home-page "http://velocyto.org")
|
||||
(synopsis "RNA velocity estimation in R")
|
||||
(description
|
||||
"This package provides basic routines for estimation of gene-specific
|
||||
transcriptional derivatives and visualization of the resulting velocity
|
||||
patterns.")
|
||||
(license license:gpl3))))
|
||||
|
||||
(define-public methyldackel
|
||||
(package
|
||||
(name "methyldackel")
|
||||
(version "0.4.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dpryan79/MethylDackel.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"10gh8k0ca92kywnrw5pkacq3g6r8s976s12k8jhp8g3g49q9a97g"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
#:make-flags
|
||||
(list "CC=gcc"
|
||||
(string-append "prefix="
|
||||
(assoc-ref %outputs "out") "/bin/"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "Makefile"
|
||||
(("install MethylDackel \\$\\(prefix\\)" match)
|
||||
(string-append "install -d $(prefix); " match)))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("htslib" ,htslib)
|
||||
("zlib" ,zlib)))
|
||||
;; Needed for tests
|
||||
(native-inputs
|
||||
`(("python" ,python-wrapper)))
|
||||
(home-page "https://github.com/dpryan79/MethylDackel")
|
||||
(synopsis "Universal methylation extractor for BS-seq experiments")
|
||||
(description
|
||||
"MethylDackel will process a coordinate-sorted and indexed BAM or CRAM
|
||||
file containing some form of BS-seq alignments and extract per-base
|
||||
methylation metrics from them. MethylDackel requires an indexed fasta file
|
||||
containing the reference genome as well.")
|
||||
;; See https://github.com/dpryan79/MethylDackel/issues/85
|
||||
(license license:expat)))
|
||||
|
@ -110,7 +110,7 @@
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "http://www.transmissionbt.com/")
|
||||
(home-page "https://transmissionbt.com/")
|
||||
(synopsis "Fast and easy BitTorrent client")
|
||||
(description
|
||||
"Transmission is a BitTorrent client that comes with graphical,
|
||||
@ -400,18 +400,7 @@ and will take advantage of multiple processor cores where possible.")
|
||||
"--enable-tests")
|
||||
#:make-flags (list
|
||||
(string-append "LDFLAGS=-Wl,-rpath="
|
||||
(assoc-ref %outputs "out") "/lib"))
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'compile-python-c++11
|
||||
(lambda _
|
||||
;; Make sure the Python bindings are compiled in C++ mode to
|
||||
;; avoid undefined references as mentioned in
|
||||
;; <https://github.com/qbittorrent/qBittorrent/issues/638>.
|
||||
;; XXX: This can be removed for 1.2+.
|
||||
(substitute* "bindings/python/setup.py"
|
||||
(("\\+ target_specific\\(\\)\\,")
|
||||
"+ target_specific() + ['-std=c++11'],"))
|
||||
#t)))))
|
||||
(assoc-ref %outputs "out") "/lib"))))
|
||||
(inputs `(("boost" ,boost)
|
||||
("openssl" ,openssl)))
|
||||
(native-inputs `(("python" ,python-2)
|
||||
@ -427,7 +416,7 @@ desktops.")
|
||||
(define-public qbittorrent
|
||||
(package
|
||||
(name "qbittorrent")
|
||||
(version "4.1.6")
|
||||
(version "4.1.9.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -436,7 +425,7 @@ desktops.")
|
||||
(commit (string-append "release-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1y9kv84sy5fg64wbl4xpm8qh0hjba7ibk045cazp0m736rjmxk8c"))))
|
||||
(base32 "19zgqlby7i1kr20wa4zd99qzd062a879xxxbmlf40rnqiqy4bhyi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
@ -11,6 +11,7 @@
|
||||
;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -161,6 +162,55 @@ across a broad spectrum of applications.")
|
||||
(license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"
|
||||
"Some components have other similar licences."))))
|
||||
|
||||
;; TODO: Merge with 'Boost' in the next rebuild cycle.
|
||||
(define-public boost-with-python3
|
||||
(package
|
||||
(inherit boost)
|
||||
(name "boost-python3")
|
||||
(native-inputs
|
||||
`(("perl" ,perl)
|
||||
("python" ,python)
|
||||
("tcsh" ,tcsh)))
|
||||
(arguments (substitute-keyword-arguments (package-arguments boost)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((icu (assoc-ref inputs "icu4c"))
|
||||
(python (assoc-ref inputs "python"))
|
||||
(out (assoc-ref outputs "out")))
|
||||
(substitute* '("libs/config/configure"
|
||||
"libs/spirit/classic/phoenix/test/runtest.sh"
|
||||
"tools/build/src/engine/execunix.c"
|
||||
"tools/build/src/engine/Jambase"
|
||||
"tools/build/src/engine/jambase.c")
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
(setenv "SHELL" (which "sh"))
|
||||
(setenv "CONFIG_SHELL" (which "sh"))
|
||||
|
||||
(substitute* "tools/build/src/tools/python.jam"
|
||||
(("include/python\\$\\(version\\)")
|
||||
"include/python$(version)m"))
|
||||
|
||||
(invoke "./bootstrap.sh"
|
||||
(string-append "--prefix=" out)
|
||||
;; Auto-detection looks for dependencies only
|
||||
;; in traditional install locations.
|
||||
(string-append "--with-icu=" icu)
|
||||
(string-append "--with-python=" python "/bin/python3")
|
||||
(string-append "--with-python-root=" python)
|
||||
"--with-python-version=3.7"
|
||||
"--with-toolset=gcc"))))
|
||||
(replace 'provide-libboost_python
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(with-directory-excursion (string-append out "/lib")
|
||||
(symlink "libboost_python37.so" "libboost_python.so")
|
||||
;; Some packages also look for libboost_python3.so
|
||||
(symlink "libboost_python37.so" "libboost_python3.so"))
|
||||
#t)))))))))
|
||||
|
||||
(define-public boost-for-mysql
|
||||
;; Older version for MySQL 5.7.23.
|
||||
(package
|
||||
|
@ -430,6 +430,19 @@ tree binary files. These are board description files used by Linux and BSD.")
|
||||
also initializes the boards (RAM etc).")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define u-boot-2019.10
|
||||
(package
|
||||
(inherit u-boot)
|
||||
(version "2019.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"ftp://ftp.denx.de/pub/u-boot/"
|
||||
"u-boot-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"053hcrwwlacqh2niisn0zas95zkbffw5aw5sdhixs8lmfdq60vcd"))))))
|
||||
|
||||
(define-public u-boot-tools
|
||||
(package
|
||||
(inherit u-boot)
|
||||
@ -541,9 +554,9 @@ board-independent tools.")))
|
||||
"_" "-")))
|
||||
(native-inputs
|
||||
`(,@(if (not (same-arch?))
|
||||
`(("cross-gcc" ,(cross-gcc triplet #:xgcc gcc-7))
|
||||
`(("cross-gcc" ,(cross-gcc triplet))
|
||||
("cross-binutils" ,(cross-binutils triplet)))
|
||||
`(("gcc-7" ,gcc-7)))
|
||||
`())
|
||||
,@(package-native-inputs u-boot)))
|
||||
(arguments
|
||||
`(#:modules ((ice-9 ftw)
|
||||
@ -746,6 +759,76 @@ to Novena upstream, does not load u-boot.img from the first partition.")
|
||||
("firmware-m0" ,rk3399-cortex-m0)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public u-boot-rock64-rk3328
|
||||
(let ((base (make-u-boot-package "rock64-rk3328" "aarch64-linux-gnu")))
|
||||
(package
|
||||
(inherit base)
|
||||
(version (package-version u-boot-2019.10))
|
||||
(source (package-source u-boot-2019.10))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'set-environment
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((bl31 (string-append (assoc-ref inputs "firmware")
|
||||
"/bl31.elf")))
|
||||
(setenv "BL31" bl31))
|
||||
#t))
|
||||
(add-after 'unpack 'add-u-boot-itb
|
||||
(lambda _
|
||||
(substitute* "Kconfig"
|
||||
(("default .u-boot.itb. if SPL_LOAD_FIT && .ROCKCHIP_RK3399")
|
||||
"default \"u-boot.itb\" if SPL_LOAD_FIT && (ARCH_ROCKCHIP"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("firmware" ,arm-trusted-firmware-rk3328)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public u-boot-firefly-rk3399
|
||||
(let ((base (make-u-boot-package "firefly-rk3399" "aarch64-linux-gnu")))
|
||||
(package
|
||||
(inherit base)
|
||||
(version (package-version u-boot-2019.10))
|
||||
(source (package-source u-boot-2019.10))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'set-environment
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "BL31" (string-append (assoc-ref inputs "firmware")
|
||||
"/bl31.elf"))
|
||||
#t))
|
||||
;; Phases do not succeed on the bl31 ELF.
|
||||
(delete 'strip)
|
||||
(delete 'validate-runpath)))))
|
||||
(native-inputs
|
||||
`(("firmware" ,arm-trusted-firmware-rk3399)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public u-boot-rockpro64-rk3399
|
||||
(let ((base (make-u-boot-package "rockpro64-rk3399" "aarch64-linux-gnu")))
|
||||
(package
|
||||
(inherit base)
|
||||
(version (package-version u-boot-2019.10))
|
||||
(source (package-source u-boot-2019.10))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'set-environment
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "BL31" (string-append (assoc-ref inputs "firmware")
|
||||
"/bl31.elf"))
|
||||
#t))
|
||||
;; Phases do not succeed on the bl31 ELF.
|
||||
(delete 'strip)
|
||||
(delete 'validate-runpath)))))
|
||||
(native-inputs
|
||||
`(("firmware" ,arm-trusted-firmware-rk3399)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public vboot-utils
|
||||
(package
|
||||
(name "vboot-utils")
|
||||
|
@ -33,6 +33,7 @@
|
||||
#:use-module ((guix derivations)
|
||||
#:select (derivation derivation-input derivation->output-path))
|
||||
#:use-module ((guix utils) #:select (gnu-triplet->nix-system))
|
||||
#:use-module ((guix gexp) #:select (lower-object))
|
||||
#:use-module (guix memoization)
|
||||
#:use-module (guix i18n)
|
||||
#:use-module (srfi srfi-1)
|
||||
@ -148,38 +149,42 @@ for system '~a'")
|
||||
;;; Helper procedures.
|
||||
;;;
|
||||
|
||||
(define (bootstrap-origin source)
|
||||
"Return a variant of SOURCE, an <origin> instance, whose method uses
|
||||
(define bootstrap-origin
|
||||
(mlambdaq (source)
|
||||
"Return a variant of SOURCE, an <origin> instance, whose method uses
|
||||
%BOOTSTRAP-GUILE to do its job."
|
||||
(define (boot fetch)
|
||||
(lambda* (url hash-algo hash
|
||||
#:optional name #:key system)
|
||||
(fetch url hash-algo hash name
|
||||
#:guile %bootstrap-guile
|
||||
#:system system)))
|
||||
(define (boot fetch)
|
||||
(lambda* (url hash-algo hash
|
||||
#:optional name #:key system)
|
||||
(fetch url hash-algo hash name
|
||||
#:guile %bootstrap-guile
|
||||
#:system system)))
|
||||
|
||||
(define %bootstrap-patch-inputs
|
||||
;; Packages used when an <origin> has a non-empty 'patches' field.
|
||||
`(("tar" ,%bootstrap-coreutils&co)
|
||||
("xz" ,%bootstrap-coreutils&co)
|
||||
("bzip2" ,%bootstrap-coreutils&co)
|
||||
("gzip" ,%bootstrap-coreutils&co)
|
||||
("patch" ,%bootstrap-coreutils&co)))
|
||||
(define %bootstrap-patch-inputs
|
||||
;; Packages used when an <origin> has a non-empty 'patches' field.
|
||||
`(("tar" ,%bootstrap-coreutils&co)
|
||||
("xz" ,%bootstrap-coreutils&co)
|
||||
("bzip2" ,%bootstrap-coreutils&co)
|
||||
("gzip" ,%bootstrap-coreutils&co)
|
||||
("patch" ,%bootstrap-coreutils&co)))
|
||||
|
||||
(let ((orig-method (origin-method source)))
|
||||
(origin (inherit source)
|
||||
(method (cond ((eq? orig-method url-fetch)
|
||||
(boot url-fetch))
|
||||
(else orig-method)))
|
||||
(patch-guile %bootstrap-guile)
|
||||
(patch-inputs %bootstrap-patch-inputs)
|
||||
(let ((orig-method (origin-method source)))
|
||||
(if (or (not (null? (origin-patches source)))
|
||||
(origin-snippet source))
|
||||
(origin (inherit source)
|
||||
(method (if (eq? orig-method url-fetch)
|
||||
(boot url-fetch)
|
||||
orig-method))
|
||||
(patch-guile %bootstrap-guile)
|
||||
(patch-inputs %bootstrap-patch-inputs)
|
||||
|
||||
;; Patches can be origins as well, so process them.
|
||||
(patches (map (match-lambda
|
||||
((? origin? patch)
|
||||
(bootstrap-origin patch))
|
||||
(patch patch))
|
||||
(origin-patches source))))))
|
||||
;; Patches can be origins as well, so process them.
|
||||
(patches (map (match-lambda
|
||||
((? origin? patch)
|
||||
(bootstrap-origin patch))
|
||||
(patch patch))
|
||||
(origin-patches source))))
|
||||
source))))
|
||||
|
||||
(define* (package-from-tarball name source program-to-test description
|
||||
#:key snippet)
|
||||
@ -345,8 +350,8 @@ or false to signal an error."
|
||||
#:allow-other-keys)
|
||||
(define (->store file)
|
||||
(run-with-store store
|
||||
(origin->derivation (bootstrap-executable file system)
|
||||
system)))
|
||||
(lower-object (bootstrap-executable file system)
|
||||
system)))
|
||||
|
||||
(let* ((tar (->store "tar"))
|
||||
(xz (->store "xz"))
|
||||
|
@ -102,8 +102,8 @@ generate such a compilation database.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public gn
|
||||
(let ((commit "1ab6fa2cab7ec64840db720a56018ca8939329f9")
|
||||
(revision "1530")) ;as returned by `git describe`, used below
|
||||
(let ((commit "6e5ba2e7210823cf7ccce3eb2a23336a4e7f1349")
|
||||
(revision "1666")) ;as returned by `git describe`, used below
|
||||
(package
|
||||
(name "gn")
|
||||
(version (git-version "0.0" revision commit))
|
||||
@ -113,17 +113,15 @@ generate such a compilation database.")
|
||||
(uri (git-reference (url home-page) (commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"06h974d1lag3wwsz6s5asmpv0njmf671ag4la2fpnbh494m97lfk"))
|
||||
"157ax65sixjm0i1j89wvny48v1mbsl4pbvv5vqinjc6r0fryaf2r"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;FIXME: How to run?
|
||||
#:phases (modify-phases %standard-phases
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-before 'configure 'set-build-environment
|
||||
(lambda _
|
||||
(setenv "CC" "gcc") (setenv "CXX" "g++")
|
||||
(setenv "AR" "ar")
|
||||
(setenv "LDFLAGS" "-pthread")
|
||||
#t))
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
@ -143,6 +141,14 @@ generate such a compilation database.")
|
||||
(lambda _
|
||||
(invoke "ninja" "-C" "out" "gn"
|
||||
"-j" (number->string (parallel-job-count)))))
|
||||
(replace 'check
|
||||
(lambda* (#:key (tests? #t) #:allow-other-keys)
|
||||
(if tests?
|
||||
(lambda ()
|
||||
(invoke "ninja" "-C" "out" "gn_unittests"
|
||||
"-j" (number->string (parallel-job-count)))
|
||||
(invoke "./out/gn_unittests"))
|
||||
(format #t "test suite not run~%"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
|
@ -3,7 +3,7 @@
|
||||
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
|
||||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
|
||||
@ -155,17 +155,14 @@ libcdio.")
|
||||
(define-public xorriso
|
||||
(package
|
||||
(name "xorriso")
|
||||
(version "1.5.0")
|
||||
(version "1.5.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/xorriso/xorriso-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0aq6lvlwlkxz56l5sbvgycr6j5c82ch2bv6zrnc2345ibfpafgx9"))
|
||||
(patches
|
||||
(search-patches "xorriso-no-partition-table-in-inner-efi.patch"
|
||||
"xorriso-no-mbr-in-inner-efi.patch"))))
|
||||
"1rqpzj95f70jfwpn4lamasfgqpizjsipz12aprdhri777b4zas9v"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
@ -671,7 +668,7 @@ information is written to standard error.")
|
||||
(define-public asunder
|
||||
(package
|
||||
(name "asunder")
|
||||
(version "2.9.3")
|
||||
(version "2.9.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@ -680,7 +677,7 @@ information is written to standard error.")
|
||||
".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1630i1df06y840v3fgdf75jxw1s8kwbfn5bhi0686viah0scccw5"))))
|
||||
"069x6az2r3wlb2hd07iz0hxpxwknw7s9h7pyhnkmzv1pw9ci3kk4"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
'(#:out-of-source? #f
|
||||
@ -815,14 +812,14 @@ DVD-RW, DVD-R, DVD-R/DL, BD-R, and BD-RE.")
|
||||
(define-public libisofs
|
||||
(package
|
||||
(name "libisofs")
|
||||
(version "1.5.0")
|
||||
(version "1.5.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://files.libburnia-project.org/releases/"
|
||||
"libisofs-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"001l3akf3wb6msl9man776w560iqyvsbwwzs7d7y7msx13irspys"))))
|
||||
"002mcyqwg625a8hqvsrmgm26mhhfwj0j7rahfhsqirmk02b16npg"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("zlib" ,zlib)
|
||||
|
@ -21,11 +21,11 @@
|
||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||
;;; Copyright © 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2017 ng0 <ng0@n0.is>
|
||||
;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
|
||||
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
@ -288,7 +288,7 @@ format.")
|
||||
(define-public cppcheck
|
||||
(package
|
||||
(name "cppcheck")
|
||||
(version "1.87")
|
||||
(version "1.89")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -296,7 +296,7 @@ format.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1xiy54rz99nzbpwj35jiyssd2nc6k5k0lw5ml6nh2qnmbfkl8swl"))))
|
||||
(base32 "07yn1zycsb7sn1v7fprihbl0ih4n2zkd7l9jvmkjcskvwn4n21h0"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("-DBUILD_TESTS=ON")))
|
||||
@ -1703,19 +1703,22 @@ unit tests and failing them if the unit test module does not exercise all
|
||||
statements in the module it tests.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
;; Further releases, up to 2.4.3, have failing unit tests. See:
|
||||
;; https://github.com/PyCQA/pylint/issues/3198.
|
||||
(define-public python-pylint
|
||||
(package
|
||||
(name "python-pylint")
|
||||
(version "1.7.2")
|
||||
(version "2.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/PyCQA/pylint/archive/pylint-"
|
||||
version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/PyCQA/pylint")
|
||||
(commit (string-append "pylint-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mzn1czhf1mgr2wiqfihb274sja02h899b85kywdpivppa9nwrmp"))))
|
||||
"17vvzbcqmkhr4icq5p3737nbiiyj1y3g1pa08n9mb1bsnvxmqq0z"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)
|
||||
@ -1726,22 +1729,6 @@ statements in the module it tests.")
|
||||
("python-isort" ,python-isort)
|
||||
("python-mccabe" ,python-mccabe)
|
||||
("python-six" ,python-six)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
;; Somehow, tests for python2-pylint
|
||||
;; fail if run from the build directory
|
||||
(let ((work "/tmp/work"))
|
||||
(mkdir-p work)
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append (getenv "PYTHONPATH") ":" work))
|
||||
(copy-recursively "." work)
|
||||
(with-directory-excursion "/tmp"
|
||||
(invoke "python" "-m" "unittest" "discover"
|
||||
"-s" (string-append work "/pylint/test")
|
||||
"-p" "*test_*.py"))))))))
|
||||
(home-page "https://github.com/PyCQA/pylint")
|
||||
(synopsis "Python source code analyzer which looks for coding standard
|
||||
errors")
|
||||
@ -1756,10 +1743,42 @@ possible to write plugins to add your own checks.")
|
||||
(properties `((python2-variant . ,(delay python2-pylint))))
|
||||
(license license:gpl2+)))
|
||||
|
||||
;; Python2 is not supported anymore by Pylint. See:
|
||||
;; https://github.com/PyCQA/pylint/issues/1763.
|
||||
(define-public python2-pylint
|
||||
(let ((pylint (package-with-python2
|
||||
(strip-python2-variant python-pylint))))
|
||||
(strip-python2-variant python-pylint))))
|
||||
(package (inherit pylint)
|
||||
(version "1.7.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/PyCQA/pylint")
|
||||
(commit (string-append "pylint-" version))))
|
||||
(file-name (git-file-name (package-name pylint) version))
|
||||
(sha256
|
||||
(base32
|
||||
"0yyc1gxq66li2adyx8njs83dh1pliylzkdmihw0k5bn6z4aakh8s"))))
|
||||
(arguments
|
||||
`(,@(package-arguments pylint)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
;; Somehow, tests fail if run from the build directory.
|
||||
(let ((work "/tmp/work"))
|
||||
(mkdir-p work)
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append (getenv "PYTHONPATH") ":" work))
|
||||
(copy-recursively "." work)
|
||||
(with-directory-excursion "/tmp"
|
||||
(invoke "python" "-m" "unittest" "discover"
|
||||
"-s" (string-append work "/pylint/test")
|
||||
"-p" "*test_*.py"))))))))
|
||||
(native-inputs
|
||||
`(("python2-futures" ,python2-futures)
|
||||
,@(package-native-inputs pylint)))
|
||||
(propagated-inputs
|
||||
`(("python2-backports-functools-lru-cache"
|
||||
,python2-backports-functools-lru-cache)
|
||||
@ -2310,6 +2329,38 @@ program or test suite under a test bed with the previously recorded devices
|
||||
loaded.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public virtest
|
||||
;; No releases yet, so we take the commit that "vc" expects.
|
||||
(let ((commit "f7d03ef39fceba168745bd29e1b20af6e7971e04")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "virtest")
|
||||
(version (git-version "0.0" revision commit))
|
||||
(home-page "https://github.com/mattkretz/virtest")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url home-page) (commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07pjyb0mk7y2w1dg1bhl26nb7416xa1mw16ifj6mmps5y6aq054l"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'adjust-install-directory
|
||||
(lambda _
|
||||
;; Vc is the only consumer of this library, and expects
|
||||
;; to find it in "virtest/vir/" instead of "vir/vir/".
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("DESTINATION include/vir")
|
||||
"DESTINATION include/virtest"))
|
||||
#t)))))
|
||||
(synopsis "Header-only test framework")
|
||||
(description
|
||||
"@code{virtest} is a small header-only test framework for C++. It
|
||||
grew out of the @dfn{Vc} project.")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public python-pyfakefs
|
||||
(package
|
||||
(name "python-pyfakefs")
|
||||
|
@ -69,12 +69,11 @@
|
||||
#:use-module (gnu packages xiph)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xdisorg)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (srfi srfi-1))
|
||||
#:use-module (gnu packages xorg))
|
||||
|
||||
(define %preserved-third-party-files
|
||||
'("base/third_party/cityhash" ;Expat
|
||||
"base/third_party/dmg_fp" ;X11-style
|
||||
"base/third_party/double_conversion" ;BSD-3
|
||||
"base/third_party/dynamic_annotations" ;BSD-2
|
||||
"base/third_party/icu" ;Unicode, X11-style
|
||||
"base/third_party/superfasthash" ;BSD-3
|
||||
@ -125,6 +124,7 @@
|
||||
"third_party/catapult/tracing/third_party/pako" ;Expat
|
||||
"third_party/ced" ;BSD-3
|
||||
"third_party/cld_3" ;ASL2.0
|
||||
"third_party/closure_compiler" ;ASL2.0
|
||||
"third_party/crashpad" ;ASL2.0
|
||||
"third_party/crashpad/crashpad/third_party/lss" ;ASL2.0
|
||||
"third_party/crashpad/crashpad/third_party/zlib/zlib_crashpad.h" ;Zlib
|
||||
@ -132,6 +132,7 @@
|
||||
"third_party/cros_system_api" ;BSD-3
|
||||
"third_party/dav1d" ;BSD-2
|
||||
"third_party/dawn" ;ASL2.0
|
||||
"third_party/depot_tools/owners.py" ;BSD-3
|
||||
"third_party/dom_distiller_js" ;BSD-3
|
||||
"third_party/emoji-segmenter" ;ASL2.0
|
||||
"third_party/flatbuffers" ;ASL2.0
|
||||
@ -169,7 +170,9 @@
|
||||
"third_party/nasm" ;BSD-2
|
||||
"third_party/node" ;Expat
|
||||
"third_party/node/node_modules/polymer-bundler/lib/third_party/UglifyJS2" ;BSD-2
|
||||
"third_party/one_euro_filter" ;BSD-3
|
||||
"third_party/openscreen" ;BSD-3
|
||||
"third_party/openscreen/src/third_party/tinycbor" ;Expat
|
||||
"third_party/ots" ;BSD-3
|
||||
"third_party/pdfium" ;BSD-3
|
||||
"third_party/pdfium/third_party/agg23" ;Expat
|
||||
@ -180,6 +183,7 @@
|
||||
"third_party/pffft" ;the "FFTPACK" license, similar to BSD-3
|
||||
"third_party/ply" ;BSD-3
|
||||
"third_party/polymer" ;BSD-3
|
||||
"third_party/private-join-and-compute" ;ASL2.0
|
||||
"third_party/protobuf" ;BSD-3
|
||||
"third_party/protobuf/third_party/six" ;Expat
|
||||
"third_party/pyjson5" ;ASL2.0
|
||||
@ -238,9 +242,9 @@ from forcing GEXP-PROMISE."
|
||||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
|
||||
(define %chromium-version "76.0.3809.132")
|
||||
(define %ungoogled-revision "8eba5c0df1a318012e3deab39a9add252a0d56a3")
|
||||
(define %debian-revision "debian/76.0.3809.87-2")
|
||||
(define %chromium-version "78.0.3904.97")
|
||||
(define %ungoogled-revision "acaf16383f264d8a2f24142ad054c9b4355771d3")
|
||||
(define %debian-revision "e43d74632091324774a5049668782dba7b09cf72")
|
||||
(define package-revision "0")
|
||||
(define %package-version (string-append %chromium-version "-"
|
||||
package-revision "."
|
||||
@ -254,7 +258,7 @@ from forcing GEXP-PROMISE."
|
||||
%chromium-version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hajwjf7swlgh1flpf8ljfrb2zhmcpzvrigvvxqd36g3nm04cknm"))))
|
||||
"01wx5bi397d80za0sdfwgfbjj6n2ad2i31zmcrhm6wzryjwrmx6i"))))
|
||||
|
||||
(define %ungoogled-origin
|
||||
(origin
|
||||
@ -265,7 +269,7 @@ from forcing GEXP-PROMISE."
|
||||
(string-take %ungoogled-revision 7)))
|
||||
(sha256
|
||||
(base32
|
||||
"08fd9whfc1qky44xqxbypr7jz1rg6cma017wj4b5c5b14grxz6k6"))))
|
||||
"1gqbch6dnww3c3vn1i4nb07iz1f78mws9dsxscj3rsrkcgwhsdz8"))))
|
||||
|
||||
(define %debian-origin
|
||||
(origin
|
||||
@ -279,7 +283,7 @@ from forcing GEXP-PROMISE."
|
||||
(string-take %debian-revision 7))))
|
||||
(sha256
|
||||
(base32
|
||||
"1fjhpzrxmgjr7i31li1vsfmp0qkbi0cpyc7p1zjwvf2x4da0v907"))))
|
||||
"1l1ajjkn1y7ql5w4zb3c3vw57hkydvy1mac7y81rycx4g5djasaz"))))
|
||||
|
||||
(define (gentoo-patch name hash revision)
|
||||
(origin
|
||||
@ -289,20 +293,6 @@ from forcing GEXP-PROMISE."
|
||||
(file-name name)
|
||||
(sha256 (base32 hash))))
|
||||
|
||||
(define-syntax-rule (gentoo-patches (name hash) ...)
|
||||
(list (gentoo-patch name hash "9fd80e7d75aa63843ec33c9d44fee32596ae8f25")
|
||||
...))
|
||||
|
||||
(define %auxiliary-patches
|
||||
;; XXX: Debians "gcc/wrong-namespace.patch" and "fixes/inspector.patch" does
|
||||
;; not work for us, so we take these upstream fixes via Gentoo instead.
|
||||
(gentoo-patches
|
||||
("chromium-76-quiche.patch" "1cs0y16jn7r1nxh0j36vqcsdvigl902kdcqfmyivnxgblrx66l2i")
|
||||
("chromium-76-gcc-blink-namespace1.patch"
|
||||
"0k7nrn0dhvqxj4sg2gndzxih0l1f77h6pv7jhcdz7h69sm4xci2z")
|
||||
("chromium-76-gcc-blink-namespace2.patch"
|
||||
"014y2d8ii9sr340sjbv1fhsjd5s3dl0vbmq5wzlkdjsp91dcn9ch")))
|
||||
|
||||
;; This is a "computed" origin that does the following:
|
||||
;; *) Runs the Ungoogled scripts on a pristine Chromium tarball.
|
||||
;; *) Applies Debians Chromium patches, for their unbundling and GCC work.
|
||||
@ -374,12 +364,19 @@ from forcing GEXP-PROMISE."
|
||||
;; Skip the Debian-specific ones.
|
||||
(not (string-prefix? "debianization/" line))
|
||||
(not (string-prefix? "buster/" line))
|
||||
;; And those that conflict with Ungoogled.
|
||||
(not (any (cute string-suffix? <> line)
|
||||
;; These conflict with Ungoogled.
|
||||
'("widevine-buildflag.patch"
|
||||
"signin.patch"
|
||||
"third-party-cookies.patch"
|
||||
|
||||
;; Disable workarounds for the
|
||||
;; Chromium "-lite" tarball. We
|
||||
;; use the "full" version and don't
|
||||
;; need these patches.
|
||||
"closure.patch"
|
||||
"owners.patch"
|
||||
|
||||
;; XXX: 'fixes/inspector.patch'
|
||||
;; makes v8 reuse the top-level
|
||||
;; third_party/inspector_protocol
|
||||
@ -387,21 +384,12 @@ from forcing GEXP-PROMISE."
|
||||
;; but that does not work here for
|
||||
;; some reason. Ignore that patch
|
||||
;; and those that depend on it.
|
||||
"wrong-namespace.patch"
|
||||
"explicit-specialization.patch"
|
||||
"inspector.patch"))))
|
||||
(invoke "patch" "--force" "-p1" "--input"
|
||||
(string-append patches "/" line)
|
||||
"--no-backup-if-mismatch"))
|
||||
(loop (read-line)))))))
|
||||
|
||||
(format #t "Applying Guix-specific patches...~%")
|
||||
(force-output)
|
||||
(for-each (lambda (patch)
|
||||
(invoke "patch" "--force" "-p1" "--input"
|
||||
patch "--no-backup-if-mismatch"))
|
||||
'#+%auxiliary-patches)
|
||||
|
||||
(format #t "Pruning third party files...~%")
|
||||
(force-output)
|
||||
(apply invoke "python"
|
||||
@ -441,6 +429,21 @@ from forcing GEXP-PROMISE."
|
||||
`(cons "--enable-custom-modes"
|
||||
,flags))))))
|
||||
|
||||
;; Chromium 78 requires libvpx features that are not in any release.
|
||||
(define libvpx/chromium
|
||||
(package/inherit
|
||||
libvpx
|
||||
(version "m78-3904")
|
||||
(source (origin
|
||||
(inherit (package-source libvpx))
|
||||
(uri (git-reference
|
||||
(url "https://chromium.googlesource.com/webm/libvpx")
|
||||
(commit version)))
|
||||
(file-name (git-file-name "libvpx" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1pphjfmg0aqq93n5cq790884v1h84di8p9mk3r28sm053wszhm7g"))))))
|
||||
|
||||
(define-public ungoogled-chromium
|
||||
(package
|
||||
(name "ungoogled-chromium")
|
||||
@ -590,8 +593,14 @@ from forcing GEXP-PROMISE."
|
||||
;; TODO: Add ~/.guix-profile.
|
||||
"/run/current-system/profile/share/chromium/extensions"))
|
||||
|
||||
;; Many files try to include ICU headers from "third_party/icu/...".
|
||||
;; Remove the "third_party/" prefix to use system headers instead.
|
||||
(substitute* (find-files "chrome" "\\.cc$")
|
||||
(("third_party/icu/source/(common|i18n)/")
|
||||
""))
|
||||
|
||||
;; XXX: Should be unnecessary when use_system_lcms2=true.
|
||||
(substitute* "third_party/pdfium/core/fxcodec/codec/ccodec_iccmodule.h"
|
||||
(substitute* "third_party/pdfium/core/fxcodec/icc/iccmodule.h"
|
||||
(("include \"third_party/lcms/include/lcms2\\.h\"")
|
||||
"include \"lcms2.h\""))
|
||||
|
||||
@ -631,10 +640,6 @@ from forcing GEXP-PROMISE."
|
||||
;; Prevent GCC from optimizing away null pointer safety checks.
|
||||
(setenv "CXXFLAGS" "-fno-delete-null-pointer-checks")
|
||||
|
||||
;; Work around <https://bugs.gnu.org/30756>.
|
||||
(unsetenv "C_INCLUDE_PATH")
|
||||
(unsetenv "CPLUS_INCLUDE_PATH")
|
||||
|
||||
;; TODO: pre-compile instead. Avoids a race condition.
|
||||
(setenv "PYTHONDONTWRITEBYTECODE" "1")
|
||||
|
||||
@ -657,6 +662,22 @@ from forcing GEXP-PROMISE."
|
||||
(invoke "gn" "args" "out/Release" "--list"))))
|
||||
(replace 'build
|
||||
(lambda* (#:key (parallel-build? #t) #:allow-other-keys)
|
||||
;; XXX: Chromiums linking step requires a lot of simultaneous file
|
||||
;; accesses. Having a too low ulimit will result in bogus linker
|
||||
;; errors such as "foo.a: error adding symbols: malformed archive".
|
||||
|
||||
;; Try increasing the soft resource limit of max open files to 4096,
|
||||
;; or equal to the hard limit, whichever is lower.
|
||||
(call-with-values (lambda () (getrlimit 'nofile))
|
||||
(lambda (soft hard)
|
||||
(when (and soft (< soft 4096))
|
||||
(if hard
|
||||
(setrlimit 'nofile (min hard 4096) hard)
|
||||
(setrlimit 'nofile 4096 #f))
|
||||
(format #t
|
||||
"increased maximum number of open files from ~d to ~d~%"
|
||||
soft (if hard (min hard 4096) 4096)))))
|
||||
|
||||
(invoke "ninja" "-C" "out/Release"
|
||||
"-j" (if parallel-build?
|
||||
(number->string (parallel-job-count))
|
||||
@ -727,7 +748,7 @@ from forcing GEXP-PROMISE."
|
||||
(mkdir-p icons)
|
||||
(copy-file (string-append "product_logo_" size ".png")
|
||||
(string-append icons "/chromium.png"))))
|
||||
'("22" "24" "48" "64" "128" "256")))
|
||||
'("24" "48" "64" "128" "256")))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
@ -770,7 +791,7 @@ from forcing GEXP-PROMISE."
|
||||
("libjpeg-turbo" ,libjpeg-turbo)
|
||||
("libpng" ,libpng)
|
||||
("libva" ,libva)
|
||||
("libvpx" ,libvpx)
|
||||
("libvpx" ,libvpx/chromium)
|
||||
("libwebp" ,libwebp)
|
||||
("libx11" ,libx11)
|
||||
("libxcb" ,libxcb)
|
||||
@ -832,12 +853,7 @@ disabled in order to protect the users privacy.")
|
||||
(inputs
|
||||
`(("wayland" ,wayland)
|
||||
("wayland-protocols" ,wayland-protocols)
|
||||
;; Remove inputs only needed for X11.
|
||||
,@(fold alist-delete (package-inputs ungoogled-chromium)
|
||||
'("libx11" "libxcb" "libxcomposite" "libxcursor"
|
||||
"libxdamage" "libxext" "libxfixes" "libxi"
|
||||
"libxrender" "libxtst" "libxext" "libxrandr"
|
||||
"libxscrnsaver"))))
|
||||
,@(package-inputs ungoogled-chromium)))
|
||||
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments ungoogled-chromium)
|
||||
|
@ -3,7 +3,7 @@
|
||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2016, 2017 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@ -47,8 +47,8 @@
|
||||
#:use-module (guix build-system gnu))
|
||||
|
||||
(define-public cuirass
|
||||
(let ((commit "d27ff21e430cd38b02bd70a0dc8d60c9c2736f83")
|
||||
(revision "24"))
|
||||
(let ((commit "e20ff86d97f7dd92dad140b5919e3cbdf2fb1ce6")
|
||||
(revision "26"))
|
||||
(package
|
||||
(name "cuirass")
|
||||
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
|
||||
@ -60,7 +60,7 @@
|
||||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"166xl9zfy7dm645fk2ln45bvw0y0gy0xw8fb7mprbjz8v95dh27p"))))
|
||||
"1c3rcfmx7vm13x3nid9xbl18rrqljh5vb71qxps4yqid75br4hrb"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils)
|
||||
@ -68,6 +68,8 @@
|
||||
(ice-9 rdelim)
|
||||
(ice-9 popen))
|
||||
|
||||
#:configure-flags '("--localstatedir=/var") ;for /var/log/cuirass
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-repo-tests
|
||||
|
@ -229,6 +229,22 @@ and workspaces that can be used in the compiler environment of your choice.")
|
||||
(search-paths
|
||||
(package-native-search-paths cmake-minimal))))
|
||||
|
||||
(define-public cmake-3.15.5
|
||||
;; CMake 3.15.5 fixes some issues, but declare another version to
|
||||
;; avoid triggering the rebuild of all CMake-based packages.
|
||||
;; See <https://issues.guix.gnu.org/issue/38060>.
|
||||
(package
|
||||
(inherit cmake)
|
||||
(version "3.15.5")
|
||||
(source (origin
|
||||
(inherit (package-source cmake))
|
||||
(uri (string-append "https://www.cmake.org/files/v"
|
||||
(version-major+minor version)
|
||||
"/cmake-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1d5y8d92axcc6rfqlsxamayfs3fc1vdby91hn5mx1kn02ppprpgv"))))))
|
||||
|
||||
(define-public emacs-cmake-mode
|
||||
(package
|
||||
(inherit cmake)
|
||||
|
@ -321,18 +321,21 @@ features that are not supported by the standard @code{stdio} implementation.")
|
||||
(package
|
||||
(name "withershins")
|
||||
(version "0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/cameronwhite/withershins/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08z3lyvswx7sad10637vfpwglbcbgzzcpfihw0x8lzr74f3b70bh"))))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/cameronwhite/withershins.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1cviqvbbcwljm1zx12j6511hazr3kscwrvcyifrkfi4fpy5z985m"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:out-of-source? #f
|
||||
#:configure-flags
|
||||
;; XXX A (justified!) misleading-indentation error breaks the build.
|
||||
(list "-DENABLE_WERROR=OFF")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after
|
||||
@ -432,7 +435,6 @@ functionality such as HTML output.")
|
||||
'(#:build-type "RelWithDebInfo"
|
||||
#:configure-flags
|
||||
'("-DRTAGS_NO_ELISP_FILES=1"
|
||||
"-DCMAKE_CXX_FLAGS=-std=c++11"
|
||||
"-DBUILD_TESTING=FALSE")
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
@ -460,30 +462,24 @@ importantly we give you proper follow-symbol and find-references support.")
|
||||
(version "0.9.20140503")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/pagekite/Colormake/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pagekite/Colormake.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"08ldss9zd8ls6bjahvxhffpsjcysifr720yf3jz9db2mlklzmyd3"))))
|
||||
(base32 "1f9v5s0viq4yc9iv6701h3pv7j21zz1ckl37lpp9hsnliiizv03p"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs
|
||||
`(("bash" ,bash)
|
||||
("gzip" ,gzip)
|
||||
("perl" ,perl)
|
||||
("tar" ,tar)))
|
||||
("perl" ,perl)))
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
;; bootstrap
|
||||
(setenv "PATH" (string-append
|
||||
(assoc-ref %build-inputs "tar") "/bin" ":"
|
||||
(assoc-ref %build-inputs "gzip") "/bin"))
|
||||
(invoke "tar" "xvf" (assoc-ref %build-inputs "source"))
|
||||
(chdir (string-append (string-capitalize ,name) "-" ,version))
|
||||
(copy-recursively (assoc-ref %build-inputs "source") "source")
|
||||
(chdir "source")
|
||||
(patch-shebang "colormake.pl"
|
||||
(list (string-append (assoc-ref %build-inputs "perl")
|
||||
"/bin")))
|
||||
@ -504,7 +500,7 @@ importantly we give you proper follow-symbol and find-references support.")
|
||||
"clmake-short" "colormake.pl")
|
||||
bin)
|
||||
#t))))
|
||||
(home-page "http://bre.klaki.net/programs/colormake/")
|
||||
(home-page "https://bre.klaki.net/programs/colormake/")
|
||||
(synopsis "Wrapper around @command{make} to produce colored output")
|
||||
(description "This package provides a wrapper around @command{make} to
|
||||
produce colored output.")
|
||||
@ -514,14 +510,15 @@ produce colored output.")
|
||||
(package
|
||||
(name "makefile2graph")
|
||||
(version "1.5.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/lindenb/" name
|
||||
"/archive/v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0h1vchkpmm9h6s87p5nf0ksjxcmsxpx8k62a508w428n570wcr4l"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/lindenb/makefile2graph.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1gjfk3d8qg3cla7qd2y7r9s03whlfwy83q8k76xfcnqrjjfavdgk"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:test-target "test"
|
||||
|
@ -2049,12 +2049,13 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||
("bash" ,bash)))
|
||||
(inputs '())))
|
||||
|
||||
(define (gcc-boot0-intermediate-wrapped)
|
||||
;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the
|
||||
;; non-cross names.
|
||||
(cross-gcc-wrapper gcc-boot0 binutils-boot0
|
||||
glibc-final-with-bootstrap-bash
|
||||
(car (assoc-ref (%boot1-inputs) "bash"))))
|
||||
(define gcc-boot0-intermediate-wrapped
|
||||
(mlambda ()
|
||||
;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the
|
||||
;; non-cross names.
|
||||
(cross-gcc-wrapper gcc-boot0 binutils-boot0
|
||||
glibc-final-with-bootstrap-bash
|
||||
(car (assoc-ref (%boot1-inputs) "bash")))))
|
||||
|
||||
(define static-bash-for-glibc
|
||||
;; A statically-linked Bash to be used by GLIBC-FINAL in system(3) & co.
|
||||
@ -2145,11 +2146,12 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||
|
||||
,@(package-arguments glibc-final-with-bootstrap-bash)))))
|
||||
|
||||
(define (gcc-boot0-wrapped)
|
||||
;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the
|
||||
;; non-cross names.
|
||||
(cross-gcc-wrapper gcc-boot0 binutils-boot0 glibc-final
|
||||
(car (assoc-ref (%boot1-inputs) "bash"))))
|
||||
(define gcc-boot0-wrapped
|
||||
(mlambda ()
|
||||
;; Make the cross-tools GCC-BOOT0 and BINUTILS-BOOT0 available under the
|
||||
;; non-cross names.
|
||||
(cross-gcc-wrapper gcc-boot0 binutils-boot0 glibc-final
|
||||
(car (assoc-ref (%boot1-inputs) "bash")))))
|
||||
|
||||
(define (%boot2-inputs)
|
||||
;; 3rd stage inputs.
|
||||
@ -2376,8 +2378,9 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%"
|
||||
(define gnu-make-final
|
||||
;; The final GNU Make, which uses the final Guile.
|
||||
(let ((pkg-config (package
|
||||
(inherit pkg-config)
|
||||
(inputs (%boot5-inputs))
|
||||
(inherit %pkg-config) ;the native pkg-config
|
||||
(inputs `(("guile" ,guile-final)
|
||||
,@(%boot5-inputs)))
|
||||
(arguments
|
||||
`(#:implicit-inputs? #f
|
||||
,@(package-arguments pkg-config))))))
|
||||
|
@ -1895,13 +1895,17 @@ The specification of the Brotli Compressed Data Format is defined in RFC 7932.")
|
||||
(version "1.03")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.oberhumer.com/opensource/"
|
||||
(uri (string-append "https://www.oberhumer.com/opensource/"
|
||||
name "/download/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0j036lkwsxvm15gr29n8wn07cqq79dswjs9k54939ms5zngjjrdq"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://www.oberhumer.com/opensource/ucl/")
|
||||
(arguments
|
||||
`(;; UCL 1.03 fails to build with newer C standards.
|
||||
#:configure-flags '("CFLAGS=-std=gnu90"
|
||||
"--enable-shared" "--disable-static")))
|
||||
(home-page "https://www.oberhumer.com/opensource/ucl/")
|
||||
(synopsis "Portable lossless data compression library")
|
||||
(description "UCL implements a number of compression algorithms that
|
||||
achieve an excellent compression ratio while allowing fast decompression.
|
||||
@ -1924,9 +1928,11 @@ decompression is a little bit slower.")
|
||||
"08anybdliqsbsl6x835iwzljahnm9i7v26icdjkcv33xmk6p5vw1"))
|
||||
(patches (search-patches "upx-fix-CVE-2017-15056.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("perl" ,perl)
|
||||
("ucl" ,ucl)))
|
||||
(inputs `(("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
`(("perl" ,perl)))
|
||||
(inputs
|
||||
`(("ucl" ,ucl)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
`(#:make-flags
|
||||
(list "all"
|
||||
|
@ -56,11 +56,10 @@
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--enable-nmcompat"
|
||||
"--enable-polkit"
|
||||
"--enable-polkit" ; Polkit doesn't need to be present at build time.
|
||||
"--enable-openconnect"
|
||||
"--enable-openvpn"
|
||||
"--enable-vpnc"
|
||||
"--enable-pptp"
|
||||
"--enable-l2tp"
|
||||
"--localstatedir=/var"
|
||||
(string-append
|
||||
@ -69,13 +68,12 @@
|
||||
"--with-dbusdatadir=" (assoc-ref %outputs "out") "/share"))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("python" ,python-2)))
|
||||
("python" ,python-wrapper)))
|
||||
(inputs
|
||||
`(("dbus" ,dbus)
|
||||
("glib" ,glib)
|
||||
("gnutls" ,gnutls)
|
||||
("iptables" ,iptables)
|
||||
("polkit" ,polkit) ;so connman can be used by unprivileged users
|
||||
("readline" ,readline)
|
||||
;; These inputs are needed for connman to include the interface to
|
||||
;; these technologies so IF they are installed they can be used.
|
||||
@ -84,7 +82,8 @@
|
||||
("openvpn" ,openvpn)
|
||||
("ppp" ,ppp)
|
||||
("vpnc" ,vpnc)
|
||||
("wpa-supplicant" ,wpa-supplicant)))
|
||||
("wpa-supplicant" ,wpa-supplicant)
|
||||
("xl2tpd" ,xl2tpd)))
|
||||
(home-page "https://01.org/connman")
|
||||
(synopsis "Connection management daemon")
|
||||
(description "Connman provides a daemon for managing Internet connections.
|
||||
@ -126,9 +125,9 @@ sharing) to clients via USB, ethernet, WiFi, cellular and Bluetooth.")
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("efl" ,efl)
|
||||
("python-2" ,python-2)
|
||||
("python2-dbus" ,python2-dbus)
|
||||
("python2-efl" ,python2-efl)))
|
||||
("python" ,python-wrapper)
|
||||
("python-dbus" ,python-dbus)
|
||||
("python-efl" ,python-efl)))
|
||||
(home-page "https://www.enlightenment.org")
|
||||
(synopsis "Connman User Interface written using the EFL")
|
||||
(description
|
||||
|
@ -256,8 +256,7 @@ inside Coq.")
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--libdir=" (assoc-ref %outputs "out")
|
||||
"/lib/coq/user-contrib/Gappa")
|
||||
"CXXFLAGS=-std=c++11")
|
||||
"/lib/coq/user-contrib/Gappa"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'fix-remake
|
||||
|
@ -28,15 +28,14 @@
|
||||
(define-public cpio
|
||||
(package
|
||||
(name "cpio")
|
||||
(version "2.12")
|
||||
(version "2.13")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/cpio/cpio-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0vi9q475h1rki53100zml75vxsykzyhrn70hidy41s5c2rc8r6bh"))
|
||||
(patches (search-patches "cpio-CVE-2016-2037.patch"))))
|
||||
"0vbgnhkawdllgnkdn6zn1f56fczwk0518krakz2qbwhxmv2vvdga"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://www.gnu.org/software/cpio/")
|
||||
(synopsis "Manage cpio and tar file archives")
|
||||
|
@ -4,6 +4,7 @@
|
||||
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
|
||||
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -27,12 +28,14 @@
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages code)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web))
|
||||
@ -252,7 +255,7 @@ intuitive syntax and trivial integration.")
|
||||
(define-public xtl
|
||||
(package
|
||||
(name "xtl")
|
||||
(version "0.6.7")
|
||||
(version "0.6.8")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
@ -261,7 +264,7 @@ intuitive syntax and trivial integration.")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"0dds2fzyis42b1c3biqr3ir9l96csyyfkwrkm3fqjksdhgdklzmj"))
|
||||
"13gm8vm1b9nzvlcc632f9khnjw1xdjqj6c7k51r173y1hlk0div7"))
|
||||
(file-name (git-file-name name version))))
|
||||
(native-inputs
|
||||
`(("googletest" ,googletest)
|
||||
@ -313,3 +316,62 @@ code analysis and supports cross references, hierarchies, completion and
|
||||
syntax highlighting. @code{ccls} is derived from @code{cquery} which is not
|
||||
maintained anymore.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public gperftools
|
||||
(package
|
||||
(name "gperftools")
|
||||
(version "2.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gperftools/gperftools")
|
||||
(commit (string-append "gperftools-" version))))
|
||||
(sha256
|
||||
(base32 "0amvwrzn5qc0b0jpxpy5g6zkmj97zjh4hhjrd130hsg2lwwcwhy1"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
;; For tests:
|
||||
("perl" ,perl)))
|
||||
(home-page "https://github.com/gperftools/gperftools")
|
||||
(synopsis "Multi-threaded malloc() and performance analysis tools for C++")
|
||||
(description
|
||||
"@code{gperftools} is a collection of a high-performance multi-threaded
|
||||
malloc() implementation plus some thread-friendly performance analysis
|
||||
tools:
|
||||
|
||||
@itemize
|
||||
@item tcmalloc,
|
||||
@item heap profiler,
|
||||
@item heap checker,
|
||||
@item CPU checker.
|
||||
@end itemize\n")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public cpplint
|
||||
(package
|
||||
(name "cpplint")
|
||||
(version "1.4.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
;; Fetch from github instead of pypi, since the test cases are not in
|
||||
;; the pypi archive.
|
||||
(uri (git-reference
|
||||
(url "https://github.com/cpplint/cpplint")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32 "1ns9wbizr10w7rpyp106d7ip68s5nyskr54vw9bij11sci9z0v3j"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://github.com/cpplint/cpplint")
|
||||
(synopsis "Static code checker for C++")
|
||||
(description "@code{cpplint} is a command-line tool to check C/C++ files
|
||||
for style issues following Google’s C++ style guide. While Google maintains
|
||||
it's own version of the tool, this is a fork that aims to be more responsive
|
||||
and make @code{cpplint} usable in wider contexts.")
|
||||
(license license:bsd-3)))
|
||||
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -454,7 +454,9 @@ target that libc."
|
||||
"Return LIBC cross-built for TARGET, a GNU triplet. Use XGCC and XBINUTILS
|
||||
and the cross tool chain."
|
||||
(if (cross-newlib? target libc)
|
||||
(native-libc target libc)
|
||||
(native-libc target libc
|
||||
#:xgcc xgcc
|
||||
#:xbinutils xbinutils)
|
||||
(let ((libc libc))
|
||||
(package (inherit libc)
|
||||
(name (string-append "glibc-cross-" target))
|
||||
@ -511,10 +513,15 @@ and the cross tool chain."
|
||||
|
||||
(define* (native-libc target
|
||||
#:optional
|
||||
(libc glibc))
|
||||
(libc glibc)
|
||||
#:key
|
||||
xgcc
|
||||
xbinutils)
|
||||
(if (target-mingw? target)
|
||||
(let ((machine (substring target 0 (string-index target #\-))))
|
||||
(make-mingw-w64 machine))
|
||||
(make-mingw-w64 machine
|
||||
#:xgcc xgcc
|
||||
#:xbinutils xbinutils))
|
||||
libc))
|
||||
|
||||
(define* (cross-newlib? target
|
||||
|
@ -13,6 +13,7 @@
|
||||
;;; Copyright © 2018 Nicolò Balzarotti <nicolo@nixo.xyz>
|
||||
;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -46,6 +47,7 @@
|
||||
#:use-module (gnu packages libbsd)
|
||||
#:use-module (gnu packages libffi)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lsof)
|
||||
#:use-module (gnu packages nettle)
|
||||
#:use-module (gnu packages password-utils)
|
||||
#:use-module (gnu packages perl)
|
||||
@ -131,7 +133,7 @@ communication, encryption, decryption, signatures, etc.")
|
||||
(define-public signify
|
||||
(package
|
||||
(name "signify")
|
||||
(version "26")
|
||||
(version "27")
|
||||
(home-page "https://github.com/aperezdc/signify")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
@ -139,7 +141,7 @@ communication, encryption, decryption, signatures, etc.")
|
||||
"/download/v" version "/signify-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16sl1yq5bbsads5q4a0fbrf31b0x8r1hi4wagl90nbrhrca98baw"))))
|
||||
"0ngjsqz95yb0knlw9zs02fnclif40s63r1mydgiv17ii3mds82df"))))
|
||||
(build-system gnu-build-system)
|
||||
;; TODO Build with libwaive (described in README.md), to implement something
|
||||
;; like OpenBSD's pledge().
|
||||
@ -210,6 +212,15 @@ OpenBSD tool of the same name.")
|
||||
(copy-recursively (assoc-ref inputs "googletest-source")
|
||||
"vendor/github.com/google/googletest")
|
||||
#t))
|
||||
(add-before 'configure 'patch-CMakeLists.txt
|
||||
(lambda _
|
||||
;; Prevent CMake from adding libc on the system include path.
|
||||
;; Otherwise it will interfere with the libc used by GCC and
|
||||
;; ultimately cause #include_next errors.
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("include_directories \\(SYSTEM \\$\\{Intl_INCLUDE_DIRS\\}\\)")
|
||||
""))
|
||||
#t))
|
||||
(add-before 'check 'make-unittests
|
||||
(lambda _
|
||||
(invoke "make" "unittests"))))))
|
||||
@ -329,14 +340,15 @@ no man page, refer to the home page for usage details.")
|
||||
(define-public tomb
|
||||
(package
|
||||
(name "tomb")
|
||||
(version "2.6")
|
||||
(version "2.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://files.dyne.org/tomb/"
|
||||
"Tomb-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1sr3jcn96mciyn8xd0amd1jzamxxzpybakf8an7laf26gjim1dh2"))))
|
||||
"0x3al02796vx1cvy6y6h685c367qx70dwv471g0hmks2gr10f0cn"))
|
||||
(patches (search-patches "tomb-fix-errors-on-open.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase
|
||||
(inputs
|
||||
@ -345,6 +357,7 @@ no man page, refer to the home page for usage details.")
|
||||
("cryptsetup" ,cryptsetup)
|
||||
("e2fsprogs" ,e2fsprogs) ;for mkfs.ext4
|
||||
("gettext" ,gettext-minimal) ;used at runtime
|
||||
("lsof" ,lsof)
|
||||
("mlocate" ,mlocate)
|
||||
("pinentry" ,pinentry)
|
||||
("qrencode" ,qrencode)
|
||||
@ -352,6 +365,10 @@ no man page, refer to the home page for usage details.")
|
||||
("util-linux" ,util-linux)))
|
||||
(arguments
|
||||
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
||||
;; The "sudo" input is needed only to satisfy dependency checks in the
|
||||
;; 'check' phase. The "sudo" used at runtime should come from the
|
||||
;; system's setuid-programs, so ensure no reference is kept.
|
||||
#:disallowed-references (,sudo)
|
||||
;; TODO: Build and install gtk and qt trays
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
@ -370,8 +387,8 @@ no man page, refer to the home page for usage details.")
|
||||
,@(map (lambda (program)
|
||||
(or (and=> (which program) dirname)
|
||||
(error "program not found:" program)))
|
||||
'("seq" "mkfs.ext4" "pinentry" "sudo"
|
||||
"gpg" "cryptsetup" "gettext"
|
||||
'("seq" "mkfs.ext4" "pinentry"
|
||||
"gpg" "cryptsetup" "gettext" "lsof"
|
||||
"qrencode" "steghide" "findmnt")))))
|
||||
#t)))
|
||||
(delete 'check)
|
||||
@ -724,14 +741,14 @@ SHA256, SHA512, SHA3, AICH, ED2K, Tiger, DC++ TTH, BitTorrent BTIH, GOST R
|
||||
(define-public botan
|
||||
(package
|
||||
(name "botan")
|
||||
(version "2.7.0")
|
||||
(version "2.12.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://botan.randombit.net/releases/"
|
||||
"Botan-" version ".tgz"))
|
||||
"Botan-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"142aqabwc266jxn8wrp0f1ffrmcvdxwvyh8frb38hx9iaqazjbg4"))))
|
||||
"1ada3ga7b0z4m0vjmxlvfi4nsic2l8kjcy85jwss3z2i58a5y0vy"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
@ -740,12 +757,17 @@ SHA256, SHA512, SHA3, AICH, ED2K, Tiger, DC++ TTH, BitTorrent BTIH, GOST R
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(lib (string-append out "/lib")))
|
||||
;; Upstream tests and benchmarks with -O3.
|
||||
(setenv "CXXFLAGS" "-O3")
|
||||
(invoke "python" "./configure.py"
|
||||
(string-append "--prefix=" out)
|
||||
;; Otherwise, the `botan` executable cannot find
|
||||
;; libbotan.
|
||||
(string-append "--ldflags=-Wl,-rpath=" lib)
|
||||
|
||||
"--with-os-feature=getentropy"
|
||||
"--with-rst2man"
|
||||
|
||||
;; Recommended by upstream
|
||||
"--with-zlib" "--with-bzip2" "--with-sqlite3"))))
|
||||
(replace 'check
|
||||
@ -937,6 +959,7 @@ utility/testing functions.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/vstakhov/hpenc")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fb5yi3d2k8kd4zm7liiqagpz610y168xrr1cvn7cbq314jm2my1"))))
|
||||
@ -974,3 +997,36 @@ pre-shared keys out of band. It is designed to handle large amounts of data
|
||||
quickly by using all your CPU cores and hardware acceleration.")
|
||||
(home-page "https://github.com/vstakhov/hpenc")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public minisign
|
||||
(package
|
||||
(name "minisign")
|
||||
(version "0.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://github.com/jedisct1/minisign/releases/download/"
|
||||
version "/minisign-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"10hhgwxf9rcdlr00shrkcyxndrc22dh5lj8k5z27xg3nc0jba3hk"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
; No test suite
|
||||
`(#:tests? #f))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("libsodium" ,libsodium)))
|
||||
(home-page "https://jedisct1.github.io/minisign")
|
||||
(synopsis "Tool to sign files and verify signatures")
|
||||
(description
|
||||
"Minisign is a dead simple tool to sign files and verify signatures. It is
|
||||
portable, lightweight, and uses the highly secure Ed25519 public-key signature
|
||||
system. Signature written by minisign can be verified using OpenBSD's
|
||||
signify tool: public key files and signature files are compatible. However,
|
||||
minisign uses a slightly different format to store secret keys. Minisign
|
||||
signatures include trusted comments in addition to untrusted comments.
|
||||
Trusted comments are signed, thus verified, before being displayed.")
|
||||
(license license:isc)))
|
||||
|
@ -35,7 +35,7 @@
|
||||
(define-public cryptsetup
|
||||
(package
|
||||
(name "cryptsetup")
|
||||
(version "2.2.1")
|
||||
(version "2.2.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kernel.org/linux/utils/cryptsetup/v"
|
||||
@ -43,7 +43,7 @@
|
||||
"/cryptsetup-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0q8w3khiwsw708169vahm0nccajsc2hwqz5gv6nb1g9qxlqrmrwl"))))
|
||||
"0ija889kfhg4n2fshpq9yh2b1jl2ipvd7sfafh08g75ba6ayrw1a"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
@ -419,14 +419,14 @@ should only be used as part of the Guix cups-pk-helper service.")
|
||||
(define-public hplip
|
||||
(package
|
||||
(name "hplip")
|
||||
(version "3.19.8")
|
||||
(version "3.19.11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/hplip/hplip/" version
|
||||
"/hplip-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cmshi5dkmc1n5yiahhp0cv5p94zg61018piiqa2sna10ahgx1d3"))
|
||||
"0lfmym225dr4qnssglqd0gyf0nmm7jpbzkdr1s2wyknmx8z7fx9x"))
|
||||
(modules '((guix build utils)))
|
||||
(patches (search-patches "hplip-remove-imageprocessor.patch"))
|
||||
(snippet
|
||||
@ -491,54 +491,83 @@ should only be used as part of the Guix cups-pk-helper service.")
|
||||
(guix build utils)
|
||||
((guix build python-build-system) #:prefix python:))
|
||||
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-hard-coded-file-names
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
;; FIXME: use merged ppds (I think actually only
|
||||
;; drvs need to be merged).
|
||||
(cupsdir (assoc-ref inputs "cups-minimal")))
|
||||
(substitute* "base/g.py"
|
||||
(("'/usr/share;[^']*'")
|
||||
(string-append "'" cupsdir "/share'"))
|
||||
(("'/etc/hp/hplip.conf'")
|
||||
(string-append "'" out
|
||||
"/etc/hp/hplip.conf" "'")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-hard-coded-file-names
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
;; FIXME: use merged ppds (I think actually only
|
||||
;; drvs need to be merged).
|
||||
(cupsdir (assoc-ref inputs "cups-minimal")))
|
||||
(substitute* "base/g.py"
|
||||
(("'/usr/share;[^']*'")
|
||||
(string-append "'" cupsdir "/share'"))
|
||||
(("'/etc/hp/hplip.conf'")
|
||||
(string-append "'" out
|
||||
"/etc/hp/hplip.conf" "'")))
|
||||
|
||||
(substitute* "Makefile.in"
|
||||
(("[[:blank:]]check-plugin\\.py[[:blank:]]") " ")
|
||||
;; FIXME Use beginning-of-word in regexp.
|
||||
(("[[:blank:]]plugin\\.py[[:blank:]]") " ")
|
||||
(("/usr/include/libusb-1.0")
|
||||
(string-append (assoc-ref inputs "libusb")
|
||||
"/include/libusb-1.0"))
|
||||
(("hplip_statedir =.*$")
|
||||
;; Don't bail out while trying to create
|
||||
;; /var/lib/hplip. We can safely change its value
|
||||
;; here because it's hard-coded in the code anyway.
|
||||
"hplip_statedir = $(prefix)\n")
|
||||
(("hplip_confdir = /etc/hp")
|
||||
;; This is only used for installing the default config.
|
||||
(string-append "hplip_confdir = " out
|
||||
"/etc/hp"))
|
||||
(("halpredir = /usr/share/hal/fdi/preprobe/10osvendor")
|
||||
;; We don't use hal.
|
||||
(string-append "halpredir = " out
|
||||
"/share/hal/fdi/preprobe/10osvendor"))
|
||||
(("rulesdir = /etc/udev/rules.d")
|
||||
;; udev rules will be merged by base service.
|
||||
(string-append "rulesdir = " out
|
||||
"/lib/udev/rules.d"))
|
||||
(("rulessystemdir = /usr/lib/systemd/system")
|
||||
;; We don't use systemd.
|
||||
(string-append "rulessystemdir = " out
|
||||
"/lib/systemd/system"))
|
||||
(("/etc/sane.d")
|
||||
(string-append out "/etc/sane.d"))))))
|
||||
|
||||
;; Wrap bin/* so that the Python libraries are found.
|
||||
(add-after 'install 'wrap-binaries
|
||||
(assoc-ref python:%standard-phases 'wrap)))))
|
||||
(substitute* "Makefile.in"
|
||||
(("[[:blank:]]check-plugin\\.py[[:blank:]]") " ")
|
||||
;; FIXME Use beginning-of-word in regexp.
|
||||
(("[[:blank:]]plugin\\.py[[:blank:]]") " ")
|
||||
(("/usr/include/libusb-1.0")
|
||||
(string-append (assoc-ref inputs "libusb")
|
||||
"/include/libusb-1.0"))
|
||||
(("hplip_statedir =.*$")
|
||||
;; Don't bail out while trying to create
|
||||
;; /var/lib/hplip. We can safely change its value
|
||||
;; here because it's hard-coded in the code anyway.
|
||||
"hplip_statedir = $(prefix)\n")
|
||||
(("hplip_confdir = /etc/hp")
|
||||
;; This is only used for installing the default config.
|
||||
(string-append "hplip_confdir = " out
|
||||
"/etc/hp"))
|
||||
(("halpredir = /usr/share/hal/fdi/preprobe/10osvendor")
|
||||
;; We don't use hal.
|
||||
(string-append "halpredir = " out
|
||||
"/share/hal/fdi/preprobe/10osvendor"))
|
||||
(("rulesdir = /etc/udev/rules.d")
|
||||
;; udev rules will be merged by base service.
|
||||
(string-append "rulesdir = " out
|
||||
"/lib/udev/rules.d"))
|
||||
(("rulessystemdir = /usr/lib/systemd/system")
|
||||
;; We don't use systemd.
|
||||
(string-append "rulessystemdir = " out
|
||||
"/lib/systemd/system"))
|
||||
(("/etc/sane.d")
|
||||
(string-append out "/etc/sane.d"))))))
|
||||
(add-after 'install 'wrap-binaries
|
||||
;; Scripts in /bin are all symlinks to .py files in /share/hplip.
|
||||
;; Symlinks are immune to the Python build system's 'WRAP phase,
|
||||
;; and the .py files can't be wrapped because they are reused as
|
||||
;; modules. Replacing the symlinks in /bin with copies and
|
||||
;; wrapping them also doesn't work (“ModuleNotFoundError:
|
||||
;; No module named 'base'”). Behold: a custom WRAP-PROGRAM.
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(python (assoc-ref inputs "python")))
|
||||
(with-directory-excursion bin
|
||||
(for-each (lambda (file)
|
||||
(let ((target (readlink file)))
|
||||
(delete-file file)
|
||||
(with-output-to-file file
|
||||
(lambda _
|
||||
(format #t
|
||||
"#!~a~@
|
||||
export PYTHONPATH=\"~a:~a\"~@
|
||||
exec -a \"$0\" \"~a/~a\" \"$@\"~%"
|
||||
(which "bash")
|
||||
(string-append
|
||||
out "/lib/python"
|
||||
(python:python-version python)
|
||||
"/site-packages")
|
||||
(getenv "PYTHONPATH")
|
||||
bin target)))
|
||||
(chmod file #o755)))
|
||||
(find-files "." (lambda (file stat)
|
||||
(eq? 'symlink (stat:type stat)))))
|
||||
#t)))))))
|
||||
|
||||
;; Note that the error messages printed by the tools in the case of
|
||||
;; missing dependencies are often downright misleading.
|
||||
|
@ -216,6 +216,68 @@ standard Go idioms.")
|
||||
(home-page "http://labix.org/mgo")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public ephemeralpg
|
||||
(package
|
||||
(name "ephemeralpg")
|
||||
(version "2.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://eradman.com/ephemeralpg/code/ephemeralpg-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1dpfxsd8a52psx3zlfbqkw53m35w28qwyb87a8anz143x6gnkkr4"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:make-flags (list "CC=gcc"
|
||||
(string-append "PREFIX=" %output))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'check
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; The intention for one test is to test without PostgreSQL on
|
||||
;; the $PATH, so replace the test $PATH with just the util-linux
|
||||
;; bin, which contains getopt. It will hopefully be possible to
|
||||
;; remove this for releases after 2.8.
|
||||
(substitute* "test.rb"
|
||||
(("/bin:/usr/bin")
|
||||
(string-append (assoc-ref inputs "util-linux")
|
||||
"/bin")))
|
||||
;; Set the LC_ALL=C as some tests use sort, and the locale
|
||||
;; affects the order. It will hopefully be possible to remove
|
||||
;; this for releases after 2.8.
|
||||
(setenv "LC_ALL" "C")
|
||||
(invoke "ruby" "test.rb")
|
||||
#t))
|
||||
(add-after 'install 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(wrap-program (string-append out "/bin/pg_tmp")
|
||||
`("PATH" ":" prefix
|
||||
(,(string-append (assoc-ref inputs "util-linux")
|
||||
"/bin")
|
||||
,(string-append (assoc-ref inputs "postgresql")
|
||||
"/bin")
|
||||
;; For getsocket
|
||||
,(string-append out "/bin")))))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("postgresql" ,postgresql)
|
||||
("util-linux" ,util-linux)))
|
||||
(native-inputs
|
||||
`(("ruby" ,ruby)))
|
||||
(home-page "http://eradman.com/ephemeralpg/")
|
||||
(synopsis "Run temporary PostgreSQL databases")
|
||||
(description
|
||||
"@code{pg_tmp} creates temporary PostgreSQL databases, suitable for tasks
|
||||
like running software test suites. Temporary databases created with
|
||||
@code{pg_tmp} have a limited shared memory footprint and are automatically
|
||||
garbage-collected after a configurable number of seconds (the default is
|
||||
60).")
|
||||
(license license:isc)))
|
||||
|
||||
(define-public es-dump-restore
|
||||
(package
|
||||
(name "es-dump-restore")
|
||||
@ -262,7 +324,7 @@ ElasticSearch server")
|
||||
`(#:configure-flags '("-DBUILD_SHARED_LIBS=ON" "-DLEVELDB_BUILD_TESTS=ON")))
|
||||
(inputs
|
||||
`(("snappy" ,snappy)))
|
||||
(home-page "http://leveldb.org/")
|
||||
(home-page "https://github.com/google/leveldb")
|
||||
(synopsis "Fast key-value storage library")
|
||||
(description
|
||||
"LevelDB is a fast key-value storage library that provides an ordered
|
||||
@ -377,14 +439,13 @@ the API, and provides features such as:
|
||||
(define-public python-pylibmc
|
||||
(package
|
||||
(name "python-pylibmc")
|
||||
(version "1.6.0")
|
||||
(version "1.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pylibmc" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1n6nvvhl0g52gpzzwdj1my6049xljkfwyxxygnwda9smrbj7pyay"))))
|
||||
(base32 "1sg7d9j0v6g3xg3finf4l1hb72c13vcyyi6rqrc9shbx903d93ca"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
@ -400,10 +461,8 @@ the API, and provides features such as:
|
||||
`(("libmemcached" ,libmemcached)
|
||||
("zlib" ,zlib)
|
||||
("cyrus-sasl" ,cyrus-sasl)))
|
||||
(home-page
|
||||
"http://sendapatch.se/projects/pylibmc/")
|
||||
(synopsis
|
||||
"Python client for memcached")
|
||||
(home-page "http://sendapatch.se/projects/pylibmc/")
|
||||
(synopsis "Python client for memcached")
|
||||
(description
|
||||
"@code{pylibmc} is a client in Python for memcached. It is a wrapper
|
||||
around TangentOrg’s libmemcached library, and can be used as a drop-in
|
||||
@ -439,7 +498,7 @@ replacement for the code@{python-memcached} library.")
|
||||
(search-patch "mongodb-support-unknown-linux-distributions.patch")))))
|
||||
(build-system scons-build-system)
|
||||
(inputs
|
||||
`(("openssl" ,openssl)
|
||||
`(("openssl" ,openssl-1.0)
|
||||
("pcre" ,pcre)
|
||||
,@(match (%current-system)
|
||||
((or "x86_64-linux" "aarch64-linux" "mips64el-linux")
|
||||
@ -479,6 +538,15 @@ replacement for the code@{python-memcached} library.")
|
||||
,(format #f "--jobs=~a" (parallel-job-count))
|
||||
"--ssl")))
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch
|
||||
(lambda _
|
||||
;; Remove use of GNU extensions in parse_number_test.cpp, to
|
||||
;; allow compiling with GCC 7 or later
|
||||
;; https://jira.mongodb.org/browse/SERVER-28063
|
||||
(substitute* "src/mongo/base/parse_number_test.cpp"
|
||||
(("0xabcab\\.defdefP-10")
|
||||
"687.16784283419838"))
|
||||
#t))
|
||||
(add-after 'unpack 'scons-propagate-environment
|
||||
(lambda _
|
||||
;; Modify the SConstruct file to arrange for
|
||||
@ -1156,17 +1224,15 @@ for example from a shell script.")
|
||||
(define-public sqitch
|
||||
(package
|
||||
(name "sqitch")
|
||||
(version "0.9999")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-"
|
||||
version
|
||||
".tar.gz"))
|
||||
"mirror://cpan/authors/id/D/DW/DWHEELER/App-Sqitch-v"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1cvj8grs3bzc4g7dw1zc26g4biv1frav18sq0fkvi2kk0q1aigzm"))))
|
||||
(base32 "0p4wraqiscvwmmsvfqfy65blgsilwpvd9zj4d2zvm2xdx70ncr7l"))))
|
||||
(build-system perl-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
@ -1210,7 +1276,6 @@ for example from a shell script.")
|
||||
("perl-dbi" ,perl-dbi)
|
||||
("perl-devel-stacktrace" ,perl-devel-stacktrace)
|
||||
("perl-encode-locale" ,perl-encode-locale)
|
||||
("perl-file-homedir" ,perl-file-homedir)
|
||||
("perl-hash-merge" ,perl-hash-merge)
|
||||
("perl-ipc-run3" ,perl-ipc-run3)
|
||||
("perl-ipc-system-simple" ,perl-ipc-system-simple)
|
||||
@ -2287,7 +2352,7 @@ implementation for Python.")
|
||||
#:configure-flags '("--without-internal-zlib"
|
||||
"--with-readline")))
|
||||
(inputs
|
||||
`(("openssl" ,openssl)
|
||||
`(("openssl" ,openssl-1.0)
|
||||
("net-tools" ,net-tools)
|
||||
("readline" ,readline)
|
||||
("zlib" ,zlib)))
|
||||
@ -2938,7 +3003,7 @@ transforms idiomatic python function calls to well-formed SQL queries.")
|
||||
(native-inputs
|
||||
`(("go-github.com-howeyc-gopass" ,go-github.com-howeyc-gopass)
|
||||
("go-github.com-jessevdk-go-flags" ,go-github.com-jessevdk-go-flags)
|
||||
("go-golang.org-x-crypto-ssh-terminal" ,go-golang.org-x-crypto-ssh-terminal)
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
|
||||
("go-gopkg.in-mgo.v2" ,go-gopkg.in-mgo.v2)
|
||||
("go-gopkg.in-tomb.v2" ,go-gopkg.in-tomb.v2)
|
||||
("go-github.com-nsf-termbox-go" ,go-github.com-nsf-termbox-go)
|
||||
@ -3088,13 +3153,13 @@ NumPy, and other traditional Python scientific computing packages.")
|
||||
(define-public python-crate
|
||||
(package
|
||||
(name "python-crate")
|
||||
(version "0.23.0")
|
||||
(version "0.23.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "crate" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0s3s7yg4m2zflg9q96aibwb5hizsn10ql63fsj6h5z624qkavnlp"))))
|
||||
"0ngmlvi320c5gsxab0s7qgq0ck4jdlcwvb6lbjhnfprafdp56vvx"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-urllib3" ,python-urllib3)))
|
||||
|
@ -52,7 +52,7 @@
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
(string-append "http://ftp.de.debian.org/debian/pool/main/d/delta/"
|
||||
(string-append "mirror://debian/pool/main/d/delta/"
|
||||
"delta_" version ".orig.tar.gz")
|
||||
;; This uri seems to send guix download into an infinite loop
|
||||
(string-append "http://delta.tigris.org/files/documents/3103/"
|
||||
|
@ -67,7 +67,7 @@
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
(define-public diffoscope
|
||||
(let ((version "125"))
|
||||
(let ((version "129"))
|
||||
(package
|
||||
(name "diffoscope")
|
||||
(version version)
|
||||
@ -79,7 +79,7 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"02kwisp9j63w27hhcwpdhg66dgxzz61q4fcyfz8z4hwlz6r0gyqy"))))
|
||||
"1r8hq93gga9n4jv4fyf1divc9cwvvjadkzl47lazzrfy3nn1qjwr"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
@ -90,18 +90,6 @@
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("'python-magic',") ""))))
|
||||
;; Patch in support for known tools
|
||||
(add-after 'unpack 'add-known-tools
|
||||
(lambda _
|
||||
(substitute* "diffoscope/external_tools.py"
|
||||
(("'arch': 'enjarify'},")
|
||||
"'arch': 'enjarify', 'guix': 'enjarify'},"))
|
||||
(substitute* "diffoscope/external_tools.py"
|
||||
(("'arch': 'python-jsbeautifier'},")
|
||||
"'arch': 'python-jsbeautifier', 'guix': 'python-jsbeautifier'},"))
|
||||
(substitute* "diffoscope/external_tools.py"
|
||||
(("'arch': 'wabt'},")
|
||||
"'arch': 'wabt', 'guix': 'wabt'},"))))
|
||||
;; This test is broken because our `file` package has a
|
||||
;; bug in berkeley-db file type detection.
|
||||
(add-after 'unpack 'remove-berkeley-test
|
||||
@ -165,6 +153,8 @@
|
||||
(native-inputs `(("python-pytest" ,python-pytest)
|
||||
("python-chardet" ,python-chardet)
|
||||
("python-binwalk" ,python-binwalk)
|
||||
("python-pypdf2" ,python-pypdf2)
|
||||
("python-progressbar33" ,python-progressbar33)
|
||||
;; test suite skips tests when tool is missing
|
||||
,@(match (%current-system)
|
||||
;; ghc is only available on x86 currently.
|
||||
|
@ -32,6 +32,7 @@
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Cyan4973/xxHash")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "137hifc3f3cb4ib64rd6y83arc9hmbyncgrij2v8m94mx66g2aks"))))
|
||||
(build-system gnu-build-system)
|
||||
|
@ -612,7 +612,7 @@ passphrases.")
|
||||
(define-public ndctl
|
||||
(package
|
||||
(name "ndctl")
|
||||
(version "65")
|
||||
(version "67")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -621,7 +621,7 @@ passphrases.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0d8hzfvyxs2q8kgkwgdizlml41kin4mhx3vpdsjk34pfi7mqy69y"))))
|
||||
"076jgw1g2aafqgnq705in0wnabysqk46dq5yxdv1qzgjmyhka39n"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("asciidoc" ,asciidoc)
|
||||
@ -713,7 +713,7 @@ to create devices with respective mappings for the ATARAID sets discovered.")
|
||||
(define-public libblockdev
|
||||
(package
|
||||
(name "libblockdev")
|
||||
(version "2.21")
|
||||
(version "2.23")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/storaged-project/"
|
||||
@ -721,7 +721,7 @@ to create devices with respective mappings for the ATARAID sets discovered.")
|
||||
version "-1/libblockdev-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"02p13l4194j0vyd2zs7bb9dmyclcpqq8l3qv9289vjfbsvq2awii"))))
|
||||
"15c7g2gbkahmy8c6677pvbvblan5h8jxcqqmn6nlvqwqynq2mkjm"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
|
@ -1008,14 +1008,13 @@ forms using your favorite CSS framework, without writing template code.")
|
||||
(define-public python-django-override-storage
|
||||
(package
|
||||
(name "python-django-override-storage")
|
||||
(version "0.1.4")
|
||||
(version "0.1.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "django-override-storage" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0sqz1mh0yn8b1bzz2gr2azfiynljigm5gkzavp5n17zd3j2jg57x"))))
|
||||
(base32 "022arq94lxnlyykn8wvfnkykhi2dldnsn93pa2i41na551i0wpiv"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-django" ,python-django)))
|
||||
|
@ -34,7 +34,9 @@
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages datastructures)
|
||||
@ -46,6 +48,7 @@
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages libidn)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages nettle)
|
||||
#:use-module (gnu packages networking)
|
||||
@ -54,6 +57,7 @@
|
||||
#:use-module (gnu packages protobuf)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages swig)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages web)
|
||||
@ -65,6 +69,7 @@
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system trivial))
|
||||
|
||||
(define-public dnsmasq
|
||||
@ -109,7 +114,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
|
||||
(define-public isc-bind
|
||||
(package
|
||||
(name "bind")
|
||||
(version "9.14.6")
|
||||
(version "9.14.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -117,7 +122,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
|
||||
"/bind-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zpd47ckn5lf4qbscfkj7krngwn2gwsp961v5401h3lhxm0a0rw9"))))
|
||||
"07998nx0yv3xy8c62b1ira9qygsgvpljwcgb47ypzxq8b57gb86f"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs `("out" "utils"))
|
||||
(inputs
|
||||
@ -273,21 +278,33 @@ the two.")
|
||||
(define-public libasr
|
||||
(package
|
||||
(name "libasr")
|
||||
(version "201602131606")
|
||||
(version "1.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.opensmtpd.org/archives/"
|
||||
name "-" version ".tar.gz"))
|
||||
"libasr-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"18kdmbjsxrfai16d66qslp48b1zf7gr8him2jj5dcqgbsl44ls75"))))
|
||||
(base32 "13fn4sr4vlcx1xijpl26nmnxawyls4lr5q3mi11jdm76f80qxn4w"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
;; ‘GNU build system bootstrapping not needed’, the default lies.
|
||||
(lambda _
|
||||
(invoke "sh" "./bootstrap")))
|
||||
(add-after 'install 'install-documentation
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(install-file "src/asr_run.3"
|
||||
(string-append out "/share/man/man3"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("pkg-config" ,pkg-config)
|
||||
("groff" ,groff)))
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://www.opensmtpd.org")
|
||||
(synopsis "Asynchronous resolver library by the OpenBSD project")
|
||||
(description
|
||||
@ -373,14 +390,14 @@ to result in system-wide compromise.")
|
||||
(define-public unbound
|
||||
(package
|
||||
(name "unbound")
|
||||
(version "1.9.3")
|
||||
(version "1.9.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.unbound.net/downloads/unbound-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1ykdy62sgzv33ggkmzwx2h0ifm7hyyxyfkb4zckv7gz4f28xsm8v"))))
|
||||
(base32 "1c2bjm13x8bkw0ds1mhn9ivd2gzmfrb0x5y76bkz09a04bxjagix"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "python"))
|
||||
(native-inputs
|
||||
@ -650,6 +667,73 @@ synthesis, and on-the-fly re-configuration.")
|
||||
license:public-domain ; src/contrib/fnv and possibly murmurhash3
|
||||
license:gpl3+)))) ; everything else
|
||||
|
||||
(define-public knot-resolver
|
||||
(package
|
||||
(name "knot-resolver")
|
||||
(version "4.2.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://secure.nic.cz/files/knot-resolver/"
|
||||
"knot-resolver-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0n0llpclhparq9wbcrymxkl5d03c4y4p3shcbdxfv6j22vzqvdh3"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
'("-Dmanaged_ta=disabled" ; We'll manage the DNS root data ourself.
|
||||
"-Ddoc=enabled")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'build 'build-doc
|
||||
(lambda _
|
||||
(invoke "ninja" "doc")))
|
||||
(add-after 'install 'wrap-binary
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(lua-* (map cdr (filter
|
||||
(lambda (input)
|
||||
(string-prefix? "lua-" (car input)))
|
||||
inputs)))
|
||||
(lua-path (lambda (p)
|
||||
(string-append p "/share/lua/5.1/?.lua")))
|
||||
(lua-cpath (lambda (p)
|
||||
(string-append p "/lib/lua/5.1/?.so"))))
|
||||
(wrap-program (string-append out "/sbin/kresd")
|
||||
`("LUA_PATH" ";" prefix ,(map lua-path lua-*))
|
||||
`("LUA_CPATH" ";" prefix ,(map lua-cpath lua-*)))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("cmocka" ,cmocka) ; for unit tests
|
||||
("doxygen" ,doxygen)
|
||||
("protobuf-c" ,protobuf-c)
|
||||
("pkg-config" ,pkg-config)
|
||||
("python-breathe" ,python-breathe)
|
||||
("python-sphinx" ,python-sphinx)
|
||||
("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme)))
|
||||
(inputs
|
||||
`(("fstrm" ,fstrm)
|
||||
("gnutls" ,gnutls)
|
||||
("knot" ,knot)
|
||||
("libuv" ,libuv)
|
||||
("lmdb" ,lmdb)
|
||||
("luajit" ,luajit)
|
||||
;; TODO: Add optional lua modules: basexx, cqueues and psl.
|
||||
("lua-bitop" ,lua5.1-bitop)
|
||||
("lua-filesystem" ,lua5.1-filesystem)
|
||||
("lua-sec" ,lua5.1-sec)
|
||||
("lua-socket" ,lua5.1-socket)))
|
||||
(home-page "https://www.knot-resolver.cz/")
|
||||
(synopsis "Caching validating DNS resolver")
|
||||
(description
|
||||
"Knot Resolver is a caching full resolver implementation written in C and
|
||||
LuaJIT, both a resolver library and a daemon.")
|
||||
(license (list license:gpl3+
|
||||
;; Some 'contrib' files are under MIT, CC0 and LGPL2.
|
||||
license:expat
|
||||
license:cc0
|
||||
license:lgpl2.0))))
|
||||
|
||||
(define-public ddclient
|
||||
(package
|
||||
(name "ddclient")
|
||||
|
@ -291,9 +291,9 @@ the required network abstractions for applications.")
|
||||
("logrus" ,go-github-com-sirupsen-logrus)
|
||||
("go-netlink" ,go-netlink)
|
||||
("go-netns" ,go-netns)
|
||||
("go-golang-org-x-crypto-ssh-terminal"
|
||||
,go-golang-org-x-crypto-ssh-terminal)
|
||||
("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
("go-golang-org-x-crypto"
|
||||
,go-golang-org-x-crypto)
|
||||
("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(synopsis "Docker user-space proxy")
|
||||
(description "A proxy running in the user space. It is used by the
|
||||
built-in registry server of Docker.")
|
||||
@ -317,7 +317,8 @@ built-in registry server of Docker.")
|
||||
(patches
|
||||
(search-patches "docker-engine-test-noinstall.patch"
|
||||
"docker-fix-tests.patch"
|
||||
"docker-use-fewer-modprobes.patch"))))
|
||||
"docker-use-fewer-modprobes.patch"
|
||||
"docker-adjust-tests-for-changes-in-go.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules
|
||||
|
@ -33,7 +33,7 @@
|
||||
(define-public dunst
|
||||
(package
|
||||
(name "dunst")
|
||||
(version "1.3.2")
|
||||
(version "1.4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -42,7 +42,7 @@
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12nj8qw3y3nl8sm24wizy2a7k06v1p88bnz1xr9l39h527xyidma"))))
|
||||
"1zmx30qp2s9ca4q70j9ny4aq97pp442j9vfvsyihfcxgks6gwqqm"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
|
@ -253,7 +253,7 @@ easy.")
|
||||
(define-public snap
|
||||
(package
|
||||
(name "snap")
|
||||
(version "5.1.0")
|
||||
(version "5.2.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -263,7 +263,7 @@ easy.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"11fqbbvrv4zqbdz176ahczb2d797inq5n7zg74335d96m377si3f"))))
|
||||
"0smlqxd8gqy26dlsal197848lhynv74m8myxs6fdlnzgva1f3zzw"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
@ -487,14 +487,14 @@ letters of the alphabet, spelling, eye-hand coordination, etc.")
|
||||
(define-public fet
|
||||
(package
|
||||
(name "fet")
|
||||
(version "5.39.0")
|
||||
(version "5.40.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.lalescu.ro/liviu/fet/download/"
|
||||
"fet-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"100bmggkychqs2cavqxy7015lr4icw6k99qb03im0v4jasqqmyix"))))
|
||||
"068zdvb3rys7vvkq33i2jh89c7svvdaqp0548k99jmhbd24xnhgh"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
@ -1,6 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Clément Lassieur <clement@lassieur.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -25,10 +26,13 @@
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages graphviz)
|
||||
#:use-module (gnu packages libftdi)
|
||||
@ -111,8 +115,18 @@ to take care of the OS-specific details when writing software that uses serial p
|
||||
(sha256
|
||||
(base32
|
||||
"18x5zj3xbcylvb651dia6n4zxbdnv0j62r5af60d0l2g68knkjg4"))))
|
||||
(arguments
|
||||
`(#:implicit-inputs? #f))
|
||||
(native-inputs
|
||||
`(("sdcc" ,sdcc)))
|
||||
`(("awk" ,gawk)
|
||||
("bash" ,bash)
|
||||
("coreutils" ,coreutils)
|
||||
("grep" ,grep)
|
||||
("gzip" ,gzip)
|
||||
("make" ,gnu-make)
|
||||
("sdcc" ,sdcc)
|
||||
("sed" ,sed)
|
||||
("tar" ,tar)))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://www.sigrok.org/wiki/Fx2lafw")
|
||||
(synopsis "Firmware for Cypress FX2 chips")
|
||||
|
@ -2,7 +2,7 @@
|
||||
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
@ -31,6 +31,7 @@
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
@ -198,7 +199,7 @@ static analysis of the ELF binaries at hand.")
|
||||
(define-public patchelf
|
||||
(package
|
||||
(name "patchelf")
|
||||
(version "0.8")
|
||||
(version "0.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -207,28 +208,24 @@ static analysis of the ELF binaries at hand.")
|
||||
"/patchelf-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rqpg84wrd3fa16wa9vqdvasnc05yz49w207cz1l0wrl4k8q97y9"))
|
||||
(patches (search-patches "patchelf-page-size.patch"))))
|
||||
"1wzwvnlyf853hw9zgqq5522bvf8gqadk8icgqa41a5n7593csw7n"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; XXX: The upstream 'patchelf' doesn't support ARM. The only available
|
||||
;; patch makes significant changes to the algorithm, possibly
|
||||
;; introducing bugs. So, we apply the patch only on ARM systems.
|
||||
(inputs
|
||||
(if (target-arm32?)
|
||||
`(("patch/rework-for-arm" ,(search-patch
|
||||
"patchelf-rework-for-arm.patch")))
|
||||
'()))
|
||||
(arguments
|
||||
(if (target-arm32?)
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch/rework-for-arm
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((patch-file (assoc-ref inputs "patch/rework-for-arm")))
|
||||
(invoke "patch" "--force" "-p1" "--input" patch-file))))))
|
||||
'()))
|
||||
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-tests
|
||||
;; Our GCC code ensures that RUNPATH is never empty, it includes
|
||||
;; at least glibc/lib and gcc:lib/lib.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "tests/no-rpath.sh"
|
||||
;; Disable checking for an empty runpath:
|
||||
(("^if test.*") "")
|
||||
;; Find libgcc_s.so, which is necessary for the test:
|
||||
(("/xxxxxxxxxxxxxxx") (string-append (assoc-ref inputs "gcc:lib")
|
||||
"/lib")))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("gcc:lib" ,gcc "lib")))
|
||||
(home-page "https://nixos.org/patchelf.html")
|
||||
(synopsis "Modify the dynamic linker and RPATH of ELF executables")
|
||||
(description
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -9,6 +9,8 @@
|
||||
;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 David Wilson <david@daviwil.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -26,6 +28,7 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages emulators)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
@ -39,6 +42,7 @@
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages backup)
|
||||
#:use-module (gnu packages cdrom)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages elf)
|
||||
@ -82,6 +86,7 @@
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system gnu))
|
||||
|
||||
(define-public desmume
|
||||
@ -161,7 +166,7 @@
|
||||
(string-append (assoc-ref inputs "vulkan-loader")
|
||||
"/lib/libvulkan.so")))
|
||||
(chdir "docs")
|
||||
(invoke "bash" "-c" "g++ -O2 -std=c++11 $(freetype-config \
|
||||
(invoke "bash" "-c" "g++ -O2 $(freetype-config \
|
||||
--cflags --libs) gc-font-tool.cpp -o gc-font-tool")
|
||||
(invoke "./gc-font-tool" "a" fontfile "font_western.bin")
|
||||
(invoke "./gc-font-tool" "s" fontfile "font_japanese.bin")
|
||||
@ -1048,7 +1053,7 @@ emulation community. It provides highly accurate emulation.")
|
||||
(define-public retroarch
|
||||
(package
|
||||
(name "retroarch")
|
||||
(version "1.7.8.4")
|
||||
(version "1.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -1057,7 +1062,7 @@ emulation community. It provides highly accurate emulation.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1i3i23xwvmck8k2fpalr49np7xjzfg507243mybqrljawlnbxvph"))))
|
||||
(base32 "0y7rcpz7psf8k3agsrq277jdm651vbnn9xpqvmj2in1a786idya7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
@ -1183,7 +1188,7 @@ play them on systems for which they were never designed!")
|
||||
(define-public mame
|
||||
(package
|
||||
(name "mame")
|
||||
(version "0.214")
|
||||
(version "0.215")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -1193,7 +1198,7 @@ play them on systems for which they were never designed!")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"129yk3ybcviscy2xk1mkkzxm4h4nh5p6ndfgqbmcx547p1s6hbja"))
|
||||
"1fj2qahi0fpn41zxph06wdgjashy6vsgj0gqfly8hvcmv99r3d65"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Remove bundled libraries.
|
||||
@ -1366,3 +1371,94 @@ functions. The source code to MAME serves as this documentation.")
|
||||
;; 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))))
|
||||
|
||||
(define-public pcsxr
|
||||
;; No release since 2017.
|
||||
(let ((commit "6484236cb0281e8040ff6c8078c87899a3407534"))
|
||||
(package
|
||||
(name "pcsxr")
|
||||
;; Version is tagged here: https://github.com/frealgagu/PCSX-Reloaded
|
||||
(version "1.9.95")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pcsxr/PCSX-Reloaded")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"138mayp7zi9v4l3lm5f6xxkds619w1fgg769zm8s45c84jbz7dza"))
|
||||
(file-name (git-file-name name commit))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;no "test" target
|
||||
#:configure-flags
|
||||
(list "-DSND_BACKEND=pulse"
|
||||
"-DENABLE_CCDDA='ON'"
|
||||
"-DUSE_LIBARCHIVE='ON'"
|
||||
"-DUSE_LIBCDIO='ON'")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'cd-subdir
|
||||
(lambda _ (chdir "pcsxr")))
|
||||
(add-before 'configure 'fix-cdio-lookup
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "cmake/FindCdio.cmake"
|
||||
(("/usr/include/cdio")
|
||||
(string-append (assoc-ref inputs "libcdio") "/include/cdio"))))))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("intltool" ,intltool)
|
||||
("glib" ,glib "bin")))
|
||||
(inputs
|
||||
`(("libcdio" ,libcdio)
|
||||
("sdl2" ,sdl2)
|
||||
("gtk+" ,gtk+)
|
||||
("ffmpeg" ,ffmpeg)
|
||||
("libxv" ,libxv)
|
||||
("libarchive" ,libarchive)
|
||||
("pulseaudio" ,pulseaudio)))
|
||||
(home-page "https://archive.codeplex.com/?p=pcsxr")
|
||||
(synopsis "PlayStation emulator")
|
||||
(description
|
||||
"A PlayStation emulator based on PCSX-df Project with bugfixes and
|
||||
improvements.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public gens-gs
|
||||
(package
|
||||
(name "gens-gs")
|
||||
(version "7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://retrocdn.net/images/6/6d/Gens-gs-r"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ha5s6d3y7s9aq9f4zmn9p88109c3mrj36z2w68jhiw5xrxws833"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:system "i686-linux"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-CFLAGS
|
||||
(lambda* _
|
||||
;; Remove GTK API deprecation flags that cause build errors.
|
||||
(substitute* "configure"
|
||||
(("GTK_CFLAGS=\"\\$GTK_CFLAGS .*\"") ""))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("nasm" ,nasm)))
|
||||
(inputs
|
||||
`(("sdl" ,sdl)
|
||||
("gtk" ,gtk+-2)))
|
||||
(home-page "https://segaretro.org/Gens/GS")
|
||||
(synopsis "Emulator for Sega Genesis/Mega Drive systems")
|
||||
(description
|
||||
"Gens/GS is an emulator for the Mega Drive (also known as Sega Genesis),
|
||||
derived from Gens. Project goals include clean source code, combined features
|
||||
from various forks of Gens, and improved platform portability.")
|
||||
(supported-systems '("i686-linux" "x86_64-linux"))
|
||||
(license license:gpl2+)))
|
||||
|
@ -767,48 +767,27 @@ language.")
|
||||
(define-public kicad
|
||||
(package
|
||||
(name "kicad")
|
||||
(version "5.0.2")
|
||||
(version "5.1.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(file-name (string-append name "-" version ".tar.xz"))
|
||||
(uri (string-append
|
||||
"https://launchpad.net/kicad/" (version-major+minor version)
|
||||
"/" version "/+download/kicad-" version ".tar.xz"))
|
||||
"https://launchpad.net/kicad/" (version-major version)
|
||||
".0/" version "/+download/kicad-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "10605rr10x0353n6yk2z095ydnkd1i6j1ncbq64pfxdn5vkhcd1g"))))
|
||||
(base32 "1r60dgh6aalbpq1wsmpyxkz0nn4ck8ydfdjcrblpl69k5rks5k2j"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:out-of-source? #t
|
||||
#:tests? #f ; no tests
|
||||
#:build-type "Release"
|
||||
#:configure-flags
|
||||
(list "-DKICAD_STABLE_VERSION=ON"
|
||||
"-DKICAD_REPO_NAME=stable"
|
||||
"-DKICAD_SKIP_BOOST=ON"; Use our system's boost library.
|
||||
"-DKICAD_SCRIPTING=ON"
|
||||
"-DKICAD_SCRIPTING_MODULES=ON"
|
||||
"-DKICAD_SCRIPTING_WXPYTHON=ON"
|
||||
;; Has to be set explicitly, as we don't have the wxPython
|
||||
;; headers in the wxwidgets store item, but in wxPython.
|
||||
(string-append "-DCMAKE_CXX_FLAGS=-I"
|
||||
(assoc-ref %build-inputs "wxpython")
|
||||
"/include/wx-"
|
||||
,(version-major+minor
|
||||
(package-version python2-wxpython)))
|
||||
"-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE"
|
||||
"-DKICAD_SPICE=TRUE"
|
||||
;; TODO: Enable this when CA certs are working with curl.
|
||||
"-DBUILD_GITHUB_PLUGIN=OFF")
|
||||
(list "-DKICAD_SCRIPTING_PYTHON3=ON"
|
||||
"-DKICAD_SCRIPTING_WXPYTHON_PHOENIX=ON"
|
||||
"-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'adjust-boost-include
|
||||
(lambda _
|
||||
;; The location of this header changed in Boost 1.66.
|
||||
(substitute* "3d-viewer/3d_cache/3d_cache.cpp"
|
||||
(("boost/uuid/sha1\\.hpp")
|
||||
"boost/uuid/detail/sha1.hpp"))
|
||||
#t))
|
||||
(add-after 'install 'wrap-program
|
||||
;; Ensure correct Python at runtime.
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
@ -845,9 +824,9 @@ language.")
|
||||
("mesa" ,mesa)
|
||||
("opencascade-oce" ,opencascade-oce)
|
||||
("openssl" ,openssl)
|
||||
("python" ,python-2)
|
||||
("wxwidgets" ,wxwidgets-gtk2)
|
||||
("wxpython" ,python2-wxpython)))
|
||||
("python" ,python)
|
||||
("wxwidgets" ,wxwidgets)
|
||||
("wxpython" ,python-wxpython)))
|
||||
(home-page "http://kicad-pcb.org/")
|
||||
(synopsis "Electronics Design Automation Suite")
|
||||
(description "Kicad is a program for the formation of printed circuit
|
||||
@ -921,7 +900,7 @@ render model libraries.")
|
||||
(define-public kicad-symbols
|
||||
(package
|
||||
(name "kicad-symbols")
|
||||
(version "5.0.2")
|
||||
(version "5.1.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -930,7 +909,7 @@ render model libraries.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rjh2pjcrc3bhcgyyskj5pssm7vffrjk0ymwr70fb7sjpmk96yjk"))))
|
||||
"1lna4xlvzrxif3569pkp6mrg7fj62z3a3ri5j97lnmnnzhiddnh3"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; No tests exist
|
||||
@ -1546,7 +1525,7 @@ unique design feature of Trilinos is its focus on packages.")
|
||||
`(#:tests? #f
|
||||
#:configure-flags
|
||||
(list
|
||||
"CXXFLAGS=-O3 -std=c++11"
|
||||
"CXXFLAGS=-O3"
|
||||
(string-append "ARCHDIR="
|
||||
(assoc-ref %build-inputs "trilinos")))))
|
||||
(native-inputs
|
||||
@ -1586,7 +1565,7 @@ parallel computing platforms. It also supports serial execution.")
|
||||
(arguments
|
||||
`(,@(substitute-keyword-arguments (package-arguments xyce-serial)
|
||||
((#:configure-flags flags)
|
||||
`(list "CXXFLAGS=-O3 -std=c++11"
|
||||
`(list "CXXFLAGS=-O3"
|
||||
"CXX=mpiCC"
|
||||
"CC=mpicc"
|
||||
"F77=mpif77"
|
||||
@ -2007,6 +1986,7 @@ editors.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/markwal/GPX.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1yab269x8qyf7rd04vaxyqyjv4pzz9lp4sc4dwh927k23avr3rw5"))))
|
||||
@ -2224,7 +2204,7 @@ full programmatic control over your models.")
|
||||
(define-public freecad
|
||||
(package
|
||||
(name "freecad")
|
||||
(version "0.18.3")
|
||||
(version "0.18.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -2234,7 +2214,7 @@ full programmatic control over your models.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ny29y0h8smg1bwi5yn4kcnyfprqh3v7v2z8837cmmhcwp8dr95m"))))
|
||||
"170hk1kgrvsddrwykp24wyj0cha78zzmzbf50gn98x7ngqqs395s"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
@ -2427,7 +2407,7 @@ or the official 3dxserv, as if they were using the magellan SDK.
|
||||
|
||||
Also, libspnav provides a magellan API wrapper on top of the new API. So, any
|
||||
applications that were using the magellan library, can switch to libspnav
|
||||
without any changes. And programmers that are familliar with the magellan API
|
||||
without any changes. And programmers that are familiar with the magellan API
|
||||
can continue using it with a free library without the restrictions of the
|
||||
official SDK.")
|
||||
(license license:bsd-3)))
|
||||
|
@ -25,10 +25,12 @@
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages avahi)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages check)
|
||||
@ -67,7 +69,7 @@
|
||||
(define-public efl
|
||||
(package
|
||||
(name "efl")
|
||||
(version "1.23.1")
|
||||
(version "1.23.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -75,7 +77,7 @@
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0q9g4j7k10s1a8rv2ca9v9lydh7ml3zsrqvgncc4qhvdl76208nn"))))
|
||||
"14yljnnmb89s8j6ip08ip5d01zkgzbzr1h4fr4bwk9lh8r59x3ds"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs
|
||||
`(("check" ,check)
|
||||
@ -297,6 +299,11 @@ Libraries with some extra bells and whistles.")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'bootstrap) ; We don't want to run the autogen script.
|
||||
(add-after 'unpack 'fix-dot-desktop-creation
|
||||
(lambda _
|
||||
(substitute* "data/session/meson.build"
|
||||
(("HAVE_WAYLAND'.*") "HAVE_WAYLAND') == true\n"))
|
||||
#t))
|
||||
(add-before 'configure 'set-system-actions
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "HOME" "/tmp")
|
||||
@ -305,6 +312,7 @@ Libraries with some extra bells and whistles.")
|
||||
(utils (assoc-ref inputs "util-linux"))
|
||||
(libc (assoc-ref inputs "libc"))
|
||||
(bluez (assoc-ref inputs "bluez"))
|
||||
(bc (assoc-ref inputs "bc"))
|
||||
(efl (assoc-ref inputs "efl")))
|
||||
;; We need to patch the path to 'base.lst' to be able
|
||||
;; to switch the keyboard layout in E.
|
||||
@ -325,6 +333,8 @@ Libraries with some extra bells and whistles.")
|
||||
(string-append efl "/bin/edje_cc -v %s %s %s\"")))
|
||||
(substitute* "src/modules/everything/evry_plug_apps.c"
|
||||
(("/usr/bin/") ""))
|
||||
(substitute* "src/modules/everything/evry_plug_calc.c"
|
||||
(("bc -l") (string-append bc "/bin/bc -l")))
|
||||
(substitute* "data/etc/meson.build"
|
||||
(("/bin/mount") (string-append utils "/bin/mount"))
|
||||
(("/bin/umount") (string-append utils "/bin/umount"))
|
||||
@ -342,6 +352,7 @@ Libraries with some extra bells and whistles.")
|
||||
("util-linux" ,util-linux)))
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("bc" ,bc)
|
||||
("bluez" ,bluez)
|
||||
("dbus" ,dbus)
|
||||
("efl" ,efl)
|
||||
@ -362,6 +373,19 @@ unload unused functionality, with support for touchscreen and suitable for
|
||||
embedded systems.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public enlightenment-wayland
|
||||
(package
|
||||
(inherit enlightenment)
|
||||
(name "enlightenment-wayland")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments enlightenment)
|
||||
((#:configure-flags flags)
|
||||
`(cons* "-Dwl=true" ,flags))))
|
||||
(inputs
|
||||
`(("wayland-protocols" ,wayland-protocols)
|
||||
("xorg-server-xwayland" ,xorg-server-xwayland)
|
||||
,@(package-inputs enlightenment)))))
|
||||
|
||||
(define-public python-efl
|
||||
(package
|
||||
(name "python-efl")
|
||||
|
@ -2,6 +2,7 @@
|
||||
;;; Copyright © 2017 Dave Love <fx@gnu.org>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -22,6 +23,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
@ -175,3 +177,65 @@ interface to this library is not guaranteed to be stable.")
|
||||
testing InfiniBand networks.")
|
||||
(home-page "https://www.openfabrics.org/downloads/ibutils/")
|
||||
(license bsd-2)))
|
||||
|
||||
(define-public ucx
|
||||
(package
|
||||
(name "ucx")
|
||||
(version "1.6.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/openucx/ucx.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x3clvy716i7va4m4adgx6ihjsfnzrkdizhxz5v52944dkglpc8n"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'( ;; These are some of the flags found in 'contrib/configure-release'.
|
||||
#:configure-flags (list
|
||||
"--disable-static"
|
||||
|
||||
;; XXX: Disable optimizations specific to the build
|
||||
;; machine (AVX, etc.) There's apparently no way to
|
||||
;; have them picked up at load time.
|
||||
"--disable-optimizations"
|
||||
|
||||
"--disable-logging"
|
||||
"--disable-debug"
|
||||
"--disable-assertions"
|
||||
"--disable-params-check"
|
||||
|
||||
(string-append "--with-verbs="
|
||||
(assoc-ref %build-inputs
|
||||
"rdma-core"))
|
||||
|
||||
(string-append "--with-rdmacm="
|
||||
(assoc-ref %build-inputs
|
||||
"rdma-core")))
|
||||
|
||||
;; Be verbose so that compiler flags are displayed.
|
||||
#:make-flags '("V=1")))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("numactl" ,numactl)
|
||||
("rdma-core" ,rdma-core)))
|
||||
(synopsis "Optimized communication layer for message passing in HPC")
|
||||
(description
|
||||
"Unified Communication X (UCX) provides an optimized communication layer
|
||||
for message passing (MPI), portable global address space (PGAS) languages and
|
||||
run-time support libraries, as well as RPC and data-centric applications.
|
||||
|
||||
UCX utilizes high-speed networks for inter-node communication, and shared
|
||||
memory mechanisms for efficient intra-node communication.")
|
||||
(home-page "https://www.openucx.org/")
|
||||
(license bsd-3)
|
||||
|
||||
;; <ucm/bistro/bistro.h> lists only PowerPC64, AArch64, and x86_64 as
|
||||
;; supported.
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux"))))
|
||||
|
@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -30,20 +30,21 @@
|
||||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages iso-codes)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg))
|
||||
|
||||
(define-public fcitx
|
||||
(package
|
||||
(name "fcitx")
|
||||
(version "4.2.9.6")
|
||||
(version "4.2.9.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://download.fcitx-im.org/fcitx/"
|
||||
name "-" version "_dict.tar.xz"))
|
||||
"fcitx-" version "_dict.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hyrh3v82a32ylnlvzrp6cmq56x4p1a42q5xc6njmmj2msxm34x5"))))
|
||||
"13vg7yzfq0vj2r8zdf9ly3n243nwwggkhd5qv3z6yqdyj0m3ncyg"))))
|
||||
(build-system cmake-build-system)
|
||||
(outputs '("out" "gtk2" "gtk3"))
|
||||
(arguments
|
||||
@ -81,6 +82,7 @@
|
||||
("gtk3" ,gtk+)
|
||||
("icu4c" ,icu4c)
|
||||
("iso-codes" ,iso-codes)
|
||||
("json-c" ,json-c)
|
||||
("libxkbfile" ,libxkbfile)
|
||||
("libxml2" ,libxml2)
|
||||
("xkeyboard-config" ,xkeyboard-config)))
|
||||
@ -99,7 +101,7 @@ built-in.")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.fcitx-im.org/fcitx-configtool/"
|
||||
name "-" version ".tar.xz"))
|
||||
"fcitx-configtool-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1yyi9jhkwn49lx9a47k1zbvwgazv4y4z72gnqgzdpgdzfrlrgi5w"))))
|
||||
|
@ -14,6 +14,7 @@
|
||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
|
||||
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
|
||||
;;; Copyright © 2019 Martin Becze <mjbecze@riseup.net>
|
||||
;;; Copyright © 2019 Sebastian Schott <sschott@mailbox.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -86,7 +87,7 @@
|
||||
(define-public bitcoin-core
|
||||
(package
|
||||
(name "bitcoin-core")
|
||||
(version "0.18.0")
|
||||
(version "0.18.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
@ -94,15 +95,15 @@
|
||||
version "/bitcoin-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ps0vw9iknz1b1sx74rabd1yhlxvwbd0aimjzn9hlqkvw286hkjy"))))
|
||||
"15mz0gmm058gmq2gdpffbw25jpv7mksyhyfws6i7mqvrapqr6zaw"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("python" ,python) ; for the tests
|
||||
("util-linux" ,util-linux) ; provides the hexdump command for tests
|
||||
("python" ,python) ; for the tests
|
||||
("util-linux" ,util-linux) ; provides the hexdump command for tests
|
||||
("qttools" ,qttools)))
|
||||
(inputs
|
||||
`(("bdb" ,bdb-4.8) ; Bitcoin Core requires bdb 4.8 for compatibility
|
||||
`(("bdb" ,bdb-4.8) ; 4.8 required for compatibility
|
||||
("boost" ,boost)
|
||||
("libevent" ,libevent)
|
||||
("miniupnpc" ,miniupnpc)
|
||||
@ -133,7 +134,7 @@
|
||||
#t))
|
||||
(add-before 'check 'set-home
|
||||
(lambda _
|
||||
(setenv "HOME" (getenv "TMPDIR")) ; Tests write to $HOME.
|
||||
(setenv "HOME" (getenv "TMPDIR")) ; tests write to $HOME
|
||||
#t))
|
||||
(add-after 'check 'check-functional
|
||||
(lambda _
|
||||
@ -151,6 +152,34 @@ of the bitcoin protocol. This package provides the Bitcoin Core command
|
||||
line client and a client based on Qt.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public homebank
|
||||
(package
|
||||
(name "homebank")
|
||||
(version "5.2.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://homebank.free.fr/public/homebank-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"13ampiv68y30kc0p2560g3yz8whqpwnidfcnb9lndv93b9ca767y"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("intltool" ,intltool)))
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+)
|
||||
("libsoup" ,libsoup)))
|
||||
(arguments
|
||||
`(#:configure-flags (list "-without-ofx"))) ; libofx is not available yet
|
||||
(home-page "http://homebank.free.fr/")
|
||||
(synopsis "Graphical personal accounting application")
|
||||
(description "HomeBank allows you to manage your personal accounts at
|
||||
home. The seeks to be lightweight, simple and easy to use. It brings
|
||||
features that allow you to analyze your finances in a detailed way instantly
|
||||
and dynamically with report tools based on filtering and graphical charts.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public ledger
|
||||
(package
|
||||
(name "ledger")
|
||||
@ -448,7 +477,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
|
||||
;; the system's dynamically linked library.
|
||||
(package
|
||||
(name "monero")
|
||||
(version "0.14.1.2")
|
||||
(version "0.15.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -469,7 +498,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
|
||||
#t))
|
||||
(sha256
|
||||
(base32
|
||||
"00zl883c7lcd9z7g4y3vv7rxmr7ppzrxdblnhk32r9l3qzyw55r6"))))
|
||||
"19y4kcj4agws7swfa3draysb1y18c3xb13r8cg0faxx1dlm0zbnr"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
@ -542,13 +571,18 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
|
||||
(invoke "tests/unit_tests/unit_tests"
|
||||
(string-append "--gtest_filter=-"
|
||||
excluded-unit-tests)))))
|
||||
(add-after 'install 'install-librandomx
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((lib (string-append (assoc-ref outputs "out") "/lib")))
|
||||
(install-file "external/randomx/librandomx.a" lib)
|
||||
#t)))
|
||||
(add-after 'install 'delete-dead-links
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(delete-file (string-append out "/lib/libprotobuf.so"))
|
||||
(delete-file (string-append out "/lib/libusb-1.0.so"))
|
||||
#t))))))
|
||||
(home-page "https://getmonero.org/")
|
||||
(home-page "https://web.getmonero.org/")
|
||||
(synopsis "Command-line interface to the Monero currency")
|
||||
(description
|
||||
"Monero is a secure, private, untraceable currency. This package provides
|
||||
@ -558,7 +592,7 @@ the Monero command line client and daemon.")
|
||||
(define-public monero-gui
|
||||
(package
|
||||
(name "monero-gui")
|
||||
(version "0.14.1.2")
|
||||
(version "0.15.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -568,7 +602,7 @@ the Monero command line client and daemon.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rm043r6y2mzy8pclnzbjjfxgps8pkfa2b92p66k8y8rdmgq6m1k"))))
|
||||
"1shpnly2dym5jhvk8zk10p69mz062dihx979djg74q6hgkhhhqsh"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
@ -670,7 +704,7 @@ the Monero command line client and daemon.")
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(wrap-qt-program out "monero-wallet-gui"))
|
||||
#t)))))
|
||||
(home-page "https://getmonero.org/")
|
||||
(home-page "https://web.getmonero.org/")
|
||||
(synopsis "Graphical user interface for the Monero currency")
|
||||
(description
|
||||
"Monero is a secure, private, untraceable currency. This package provides
|
||||
@ -1133,15 +1167,35 @@ Trezor wallet.")
|
||||
(package
|
||||
(inherit bitcoin-core)
|
||||
(name "bitcoin-abc")
|
||||
(version "0.19.8")
|
||||
(version "0.20.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.bitcoinabc.org/"
|
||||
version "/linux/src/bitcoin-abc-"
|
||||
version "/src/bitcoin-abc-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ndvkxv5m8346bdhfqzgdiz1k9wyjycj05jp7daf9pml3cw79sz5"))))
|
||||
"0fld54z3l7z7k5n35rrjichjnx37j9xp0rv8i69m3x4qfj1xk2np"))))
|
||||
(inputs
|
||||
`(("bdb" ,bdb-5.3)
|
||||
("boost" ,boost)
|
||||
("libevent" ,libevent)
|
||||
("miniupnpc" ,miniupnpc)
|
||||
("openssl" ,openssl)
|
||||
("protobuf" ,protobuf)
|
||||
("qtbase" ,qtbase)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments bitcoin-core)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'fix-tests
|
||||
;; Disable 'check-devtools' test which tries to run a
|
||||
;; python script that doesn't exist.
|
||||
(lambda _
|
||||
(substitute* "Makefile.in"
|
||||
(("^check-local: check-devtools")
|
||||
"check-local:"))
|
||||
#t))))))
|
||||
(home-page "https://www.bitcoinabc.org/")
|
||||
(synopsis "Bitcoin ABC peer-to-peer full node for the Bitcoin Cash protocol")
|
||||
(description
|
||||
|
@ -390,6 +390,10 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
|
||||
(url "https://github.com/ARM-software/arm-trusted-firmware.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name "arm-trusted-firmware" version))
|
||||
(patches (search-patches
|
||||
"arm-trusted-firmware-optional-bin-generation.patch"
|
||||
"arm-trusted-firmware-rockchip-disable-binary.patch"
|
||||
"arm-trusted-firmware-disable-hdcp.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"1gy5qskrjy8n3kxdcm1dx8b45l5b75n0pm8pq80wl6xic1ycy24r"))))
|
||||
@ -398,10 +402,16 @@ Virtual Machines. OVMF contains a sample UEFI firmware for QEMU and KVM.")
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure) ; no configure script
|
||||
;; Remove binary blobs which do not contain source or proper license.
|
||||
(add-after 'unpack 'remove-binary-blobs
|
||||
(lambda _
|
||||
(for-each (lambda (file)
|
||||
(delete-file file))
|
||||
(find-files "." ".*\\.bin$"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(bin (find-files "." ".*\\.bin$")))
|
||||
(bin (find-files "." ".*\\.(bin|elf)$")))
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(install-file file out))
|
||||
@ -457,6 +467,9 @@ such as:
|
||||
(inherit base)
|
||||
(name "arm-trusted-firmware-sun50i-a64"))))
|
||||
|
||||
(define-public arm-trusted-firmware-rk3328
|
||||
(make-arm-trusted-firmware "rk3328"))
|
||||
|
||||
(define-public arm-trusted-firmware-puma-rk3399
|
||||
(let ((base (make-arm-trusted-firmware "rk3399"))
|
||||
;; Vendor's arm trusted firmware branch hasn't been upstreamed yet.
|
||||
@ -477,6 +490,16 @@ such as:
|
||||
(base32
|
||||
"0vqhwqqh8h9qlkpybg2v94911091c1418bc4pnzq5fd7zf0fjkf8")))))))
|
||||
|
||||
(define-public arm-trusted-firmware-rk3399
|
||||
(let ((base (make-arm-trusted-firmware "rk3399")))
|
||||
(package
|
||||
(inherit base)
|
||||
(name "arm-trusted-firmware-rk3399")
|
||||
(native-inputs
|
||||
`(("cross32-gcc" ,(cross-gcc "arm-none-eabi"))
|
||||
("cross32-binutils", (cross-binutils "arm-none-eabi"))
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public rk3399-cortex-m0
|
||||
(package
|
||||
(name "rk3399-cortex-m0")
|
||||
|
@ -1000,14 +1000,31 @@ correct spacing.")
|
||||
;; <https://bugs.gnu.org/32916>
|
||||
(version "4.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://fontawesome.io/assets/"
|
||||
name "-" version ".zip"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/FortAwesome/Font-Awesome.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1m1rfwm4sjkv10j3xd2dhwk286a5912b2zgvc692cmxi5gxs68jf"))))
|
||||
"0w30y26jp8nvxa3iiw7ayl6rkza1rz62msl9xw3srvxya1c77grc"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "http://fontawesome.io")
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(source (string-append (getcwd) "/fonts"))
|
||||
(fonts (string-append out "/share/fonts")))
|
||||
(for-each (lambda (file)
|
||||
(install-file file (string-append fonts "/truetype")))
|
||||
(find-files source "\\.(ttf|ttc)$"))
|
||||
(for-each (lambda (file)
|
||||
(install-file file (string-append fonts "/opentype")))
|
||||
(find-files source "\\.(otf|otc)$"))
|
||||
#t))))))
|
||||
(home-page "https://fontawesome.com/")
|
||||
(synopsis "Font that contains a rich iconset")
|
||||
(description
|
||||
"Font Awesome is a full suite of pictographic icons for easy scalable
|
||||
|
@ -46,6 +46,9 @@
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
@ -53,7 +56,8 @@
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python))
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system meson))
|
||||
|
||||
(define-public freetype
|
||||
(package
|
||||
@ -725,3 +729,48 @@ maintain the Noto Fonts project.")
|
||||
(license:non-copyleft
|
||||
"file://sample_texts/attributions.txt"
|
||||
"See sample_texts/attributions.txt in the distribution.")))))
|
||||
|
||||
(define-public fontmanager
|
||||
(package
|
||||
(name "fontmanager")
|
||||
(version "0.7.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/FontManager/font-manager")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"16hma8rrkam6ngn5vbdaryn31vdixvii6920g9z928gylz9xkd3g"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:glib-or-gtk? #t
|
||||
#:build-type "release"
|
||||
#:configure-flags
|
||||
(list (string-append "-Dc_link_args=-Wl,-rpath="
|
||||
(assoc-ref %outputs "out")
|
||||
"/lib/font-manager"))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)
|
||||
("yelp-tools" ,yelp-tools)
|
||||
("gettext" ,gettext-minimal)
|
||||
("glib" ,glib "bin")
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("desktop-file-utils" ,desktop-file-utils)))
|
||||
(inputs
|
||||
`(("json-glib" ,json-glib)
|
||||
("sqlite-with-column-metadata" ,sqlite-with-column-metadata)
|
||||
("fonconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("gtk+" ,gtk+)))
|
||||
(home-page "https://fontmanager.github.io/")
|
||||
(synopsis "Simple font management for GTK+ desktop environments")
|
||||
(description "Font Manager is intended to provide a way for users to
|
||||
easily manage desktop fonts, without having to resort to command-line
|
||||
tools or editing configuration files by hand.
|
||||
While designed primarily with the GNOME Desktop Environment in mind, it should
|
||||
work well with other GTK+ desktop environments.")
|
||||
(license license:gpl3+)))
|
||||
|
@ -120,7 +120,7 @@ For synthesis, the compiler generates netlists in the desired format.")
|
||||
(define-public yosys
|
||||
(package
|
||||
(name "yosys")
|
||||
(version "0.8")
|
||||
(version "0.9")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -129,7 +129,7 @@ For synthesis, the compiler generates netlists in the desired format.")
|
||||
(recursive? #t))) ; for the ‘iverilog’ submodule
|
||||
(sha256
|
||||
(base32
|
||||
"1qwbp8gynlklawzvpa4gdn2x0hs8zln0s3kxjqkhfcjfxffdcpvv"))
|
||||
"0lb9r055h8y1vj2z8gm4ip0v06j5mk7f9zx9gi67kkqb7g4rhjli"))
|
||||
(file-name (git-file-name name version))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
|
@ -15,6 +15,7 @@
|
||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
|
||||
;;; Copyright © 2019 Reza Alizadeh Majd <r.majd@pantherx.org>
|
||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -74,6 +75,7 @@
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages polkit)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-crypto)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages valgrind)
|
||||
@ -464,7 +466,7 @@ with localed. This package is extracted from the broader systemd package.")
|
||||
(define-public packagekit
|
||||
(package
|
||||
(name "packagekit")
|
||||
(version "1.1.11")
|
||||
(version "1.1.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -473,7 +475,7 @@ with localed. This package is extracted from the broader systemd package.")
|
||||
"PackageKit-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fi6wn54y03zh5sn92nmmxkh4cd8yn44cyk0l8phw60ivfwmkh1q"))))
|
||||
"00css16dv3asaxrklvyxy9dyjzhw82wmfrqxqpca9w2xryz58i8z"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
@ -615,6 +617,7 @@ applications, X servers (rootless or fullscreen) or other display servers.")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url home-page) (commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"16h57hzd688664qcyznzhjp3hxipdkzgv46x82yhkww24av8b55n"))))
|
||||
@ -926,7 +929,7 @@ interfaces, based on the useradd, usermod and userdel commands.")
|
||||
(define-public libmbim
|
||||
(package
|
||||
(name "libmbim")
|
||||
(version "1.20.0")
|
||||
(version "1.20.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -934,7 +937,7 @@ interfaces, based on the useradd, usermod and userdel commands.")
|
||||
"libmbim-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0rm8j4zh9gnb3yi324cnxy91gdimc1vg5gv1kxc2m5lymb3wdxrc"))))
|
||||
"16q550sy84izi5ic3sbbhjnnka2fwhj8vvdrirpn9xspbsgbc3sm"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-mkenums
|
||||
@ -1101,14 +1104,15 @@ messaging clients such as Empathy, GNOME Shell or KDE Telepathy.")
|
||||
(define-public telepathy-mission-control
|
||||
(package
|
||||
(name "telepathy-mission-control")
|
||||
(version "5.16.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://telepathy.freedesktop.org/releases/"
|
||||
name "/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jz6wwgsfxixha6ys2hbzbk5faqnj9kh2m5qdlgx5anqgandsscp"))))
|
||||
(version "5.16.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://telepathy.freedesktop.org/releases/"
|
||||
"telepathy-mission-control/"
|
||||
"telepathy-mission-control-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "00xxv38cfdirnfvgyd56m60j0nkmsv5fz6p2ydyzsychicxl6ssc"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
|
||||
@ -1438,3 +1442,64 @@ encoding names are iconv-compatible.")
|
||||
;; This combines code under MPL 1.1, LGPL 2.1+, and GPL 2.0+, so the
|
||||
;; combination is GPL 2.0+.
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public udiskie
|
||||
(package
|
||||
(name "udiskie")
|
||||
(version "1.7.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "udiskie" version))
|
||||
(sha256
|
||||
(base32
|
||||
"121g9dkr7drv9igpdbcbkj59x15mm72rzp3198bp50zj0lr4wbvi"))
|
||||
;; Remove support for the libappindicator library of the
|
||||
;; Unity desktop environment which is not in Guix.
|
||||
(patches (search-patches "udiskie-no-appindicator.patch"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("asciidoc" ,asciidoc)
|
||||
("gettext" ,gettext-minimal)
|
||||
("gobject-introspection" ,gobject-introspection)))
|
||||
(inputs
|
||||
`(("gobject-introspection" ,gobject-introspection)
|
||||
("gtk+" ,gtk+)
|
||||
("libnotify" ,libnotify)
|
||||
("udisks" ,udisks)))
|
||||
(propagated-inputs
|
||||
`(("python-docopt" ,python-docopt)
|
||||
("python-pygobject" ,python-pygobject)
|
||||
("python-keyutils" ,python-keyutils)
|
||||
("python-pyxdg" ,python-pyxdg)
|
||||
("python-pyyaml" ,python-pyyaml)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-gi-typelib
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(gi-typelib-path (getenv "GI_TYPELIB_PATH")))
|
||||
(wrap-program (string-append out "/bin/udiskie")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
|
||||
#t)))))
|
||||
(home-page "https://github.com/coldfix/udiskie")
|
||||
(synopsis "Automounter for removable media")
|
||||
(description
|
||||
"The @command{udiskie} program is a udisks2 front-end that allows to
|
||||
manage removable media such as CDs or flash drives from userspace.
|
||||
|
||||
Its features include:
|
||||
|
||||
@itemize
|
||||
@item automount removable media,
|
||||
@item notifications,
|
||||
@item tray icon,
|
||||
@item command line tools for manual (un)mounting,
|
||||
@item LUKS encrypted devices,
|
||||
@item unlocking with keyfiles,
|
||||
@item loop devices (mounting ISO archives),
|
||||
@item password caching.
|
||||
@end itemize
|
||||
")
|
||||
(license license:expat)))
|
||||
|
@ -27,6 +27,7 @@
|
||||
|
||||
(define-public fribidi
|
||||
(package
|
||||
(replacement fribidi/fixed)
|
||||
(name "fribidi")
|
||||
(version "1.0.7")
|
||||
(source
|
||||
@ -47,3 +48,10 @@ Algorithm. This algorithm is used to properly display text in left-to-right
|
||||
or right-to-left ordering as necessary.")
|
||||
(home-page "https://github.com/fribidi/fribidi")
|
||||
(license lgpl2.1+)))
|
||||
|
||||
(define fribidi/fixed
|
||||
(package
|
||||
(inherit fribidi)
|
||||
(source
|
||||
(origin (inherit (package-source fribidi))
|
||||
(patches (search-patches "fribidi-CVE-2019-18397.patch"))))))
|
||||
|
@ -2,6 +2,7 @@
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 ng0 <ng0@n0.is>
|
||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -35,15 +36,15 @@
|
||||
(define-public fvwm
|
||||
(package
|
||||
(name "fvwm")
|
||||
(version "2.6.8")
|
||||
(version "2.6.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/fvwmorg/fvwm/releases/download/"
|
||||
version "/" name "-" version ".tar.gz"))
|
||||
version "/fvwm-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hgkkdzcqjnaabvv9cnh0bz90nnjskbhjg9qnzpi2x0mbliwjdpv"))))
|
||||
"1bliqcnap7vb3m2rn8wvxyfhbf35h9x34s41fl4301yhrkrlrihv"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
@ -15,6 +15,7 @@
|
||||
;;; Copyright © 2017, 2019 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 Leo Prikler <leo.prikler@student.tugraz.at>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -445,7 +446,7 @@ support.")
|
||||
(define-public tiled
|
||||
(package
|
||||
(name "tiled")
|
||||
(version "1.2.4")
|
||||
(version "1.2.5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -454,7 +455,7 @@ support.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"04v738h298pvcwb70mwd1r2yj7578f6gkfzs0165j9fqy7avwm18"))))
|
||||
"14v2zfka2y3h0r0biw1rl59585lji5074x958s4xnb352jm5h9b9"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
@ -622,14 +623,14 @@ archive on a per-file basis.")
|
||||
(define-public love
|
||||
(package
|
||||
(name "love")
|
||||
(version "11.1")
|
||||
(version "11.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://bitbucket.org/rude/love/downloads/"
|
||||
"love-" version "-linux-src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pkwiszmjs0xrwk0wqbc5cp9108b1y8gwsid0gqk1s0x09q9lpmw"))))
|
||||
"0m8lvlabmcchskx4qpzkdlsm44360f3j0q3vvvj2388cfnvhv7v4"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
@ -971,6 +972,329 @@ to create fully featured games and multimedia programs in the python language.")
|
||||
(define-public python2-pygame
|
||||
(package-with-python2 python-pygame))
|
||||
|
||||
(define-public python2-pygame-sdl2
|
||||
(let ((real-version "2.1.0")
|
||||
(renpy-version "7.3.5"))
|
||||
(package
|
||||
(inherit python2-pygame)
|
||||
(name "python2-pygame-sdl2")
|
||||
(version (string-append real-version "-for-renpy-" renpy-version))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.renpy.org/dl/" renpy-version
|
||||
"/pygame_sdl2-" version ".tar.gz"))
|
||||
(sha256 (base32 "1bmr7j9mlsc4czpgw70ld15ymyp4wxrk9hdsqad40wjwdxvvg2dr"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; tests require pygame to be installed first
|
||||
#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'set-paths 'set-sdl-vars
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "PYGAME_SDL2_CFLAGS"
|
||||
(string-append "-I"
|
||||
(assoc-ref inputs "sdl-union")
|
||||
"/include/SDL2 -D_REENTRANT"))
|
||||
(setenv "PYGAME_SDL2_LDFLAGS"
|
||||
(string-append "-L"
|
||||
(assoc-ref inputs "sdl-union")
|
||||
"/lib -Wl,-rpath,"
|
||||
(assoc-ref inputs "sdl-union")
|
||||
"/lib -Wl,--enable-new-dtags -lSDL2"))
|
||||
#t))
|
||||
(add-before 'build 'drop-generated-files
|
||||
(lambda args
|
||||
(delete-file-recursively "gen")
|
||||
(delete-file-recursively "gen3")
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("sdl-union"
|
||||
,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))))
|
||||
(native-inputs
|
||||
`(("python2-cython" ,python2-cython)))
|
||||
(home-page "http://www.renpy.org/")
|
||||
(synopsis "Reimplementation of the Pygame API using SDL2")
|
||||
(description "Pygame_SDL2 reimplements the Pygame API using SDL2,
|
||||
staying close to the original, but also adding some SDL2-specific features.
|
||||
While it aims to be used as a drop-in replacement, it appears to be
|
||||
developed mainly for Ren'py.")
|
||||
(license (list license:lgpl2.1 license:zlib)))))
|
||||
|
||||
(define-public python2-renpy
|
||||
(package
|
||||
(name "python2-renpy")
|
||||
(version "7.3.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.renpy.org/dl/" version
|
||||
"/renpy-" version "-source.tar.bz2"))
|
||||
(sha256 (base32 "1anr5cfbvbsbik4v4rvrkdkciwhg700k4lydfbs4n85raimz9mw4"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; Ren'py doesn't seem to package tests
|
||||
#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-commands
|
||||
(lambda _
|
||||
(substitute* "renpy/editor.py"
|
||||
(("xdg-open")
|
||||
(which "xdg-open")))
|
||||
#t))
|
||||
(add-after 'set-paths 'set-build-vars
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "RENPY_CYTHON"
|
||||
(string-append (assoc-ref inputs "python2-cython")
|
||||
"/bin/cython"))
|
||||
(setenv "RENPY_DEPS_INSTALL" (string-join (map cdr inputs) ":"))
|
||||
#t))
|
||||
(replace 'build
|
||||
(lambda args
|
||||
(apply
|
||||
(lambda* (build-root #:key inputs outputs #:allow-other-keys)
|
||||
;; The "module" subdirectory contains a python (really cython)
|
||||
;; project, which is built using a script, that is thankfully
|
||||
;; named "setup.py".
|
||||
(chdir "module")
|
||||
(apply (assoc-ref %standard-phases 'build) args)
|
||||
;; the above causes renpy.__init__ to be compiled but does not
|
||||
;; compile anything else, hence we do that here
|
||||
(chdir build-root)
|
||||
(delete-file "renpy/__init__.pyc")
|
||||
(invoke "python" "-m" "compileall" "renpy"))
|
||||
(getcwd) args)
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda args
|
||||
(apply
|
||||
(lambda* (build-root #:key inputs outputs #:allow-other-keys)
|
||||
;; Again, we have to wrap the module installation.
|
||||
;; Additionally, we want to install the python code
|
||||
;; (both source and compiled) in the same directory.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(site (string-append "/lib/python"
|
||||
,(version-major+minor
|
||||
(package-version python-2))
|
||||
"/site-packages")))
|
||||
(chdir "module")
|
||||
(apply (assoc-ref %standard-phases 'install) args)
|
||||
(chdir build-root)
|
||||
(copy-recursively "renpy"
|
||||
(string-append out site "/renpy"))))
|
||||
(getcwd) args)
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("ffmpeg" ,ffmpeg)
|
||||
("freetype" ,freetype)
|
||||
("glew" ,glew)
|
||||
("libpng" ,libpng)
|
||||
("python2-pygame" ,python2-pygame-sdl2)
|
||||
("sdl-union"
|
||||
,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))))
|
||||
(native-inputs
|
||||
`(("python2-cython" ,python2-cython)
|
||||
("xdg-utils" ,xdg-utils)))
|
||||
(home-page "http://www.renpy.org/")
|
||||
(synopsis "Ren'py python module")
|
||||
(description "This package contains the shared libraries and Python
|
||||
modules of Ren'py.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public renpy
|
||||
(package
|
||||
(inherit python2-renpy)
|
||||
(name "renpy")
|
||||
(version "7.3.5")
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; see python2-renpy
|
||||
#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-commands
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "launcher/game/choose_directory.rpy"
|
||||
(("/usr/bin/python") (which "python2")))
|
||||
(substitute* "launcher/game/front_page.rpy"
|
||||
(("xdg-open")
|
||||
(which "xdg-open")))
|
||||
(substitute* "launcher/game/project.rpy"
|
||||
(("cmd = \\[ executable, \"-EO\", sys.argv\\[0\\] \\]")
|
||||
(string-append "cmd = [ \"" (assoc-ref outputs "out")
|
||||
"/bin/renpy\" ]"))
|
||||
;; Projects are still created in the usual style, so we need
|
||||
;; to adjust the path.
|
||||
(("cmd.append\\(self.path\\)")
|
||||
"cmd.append(self.path + \"/game\")"))
|
||||
#t))
|
||||
(add-after 'unpack 'drop-game-from-paths
|
||||
(lambda _
|
||||
(substitute* (list "launcher/game/gui7.rpy"
|
||||
"launcher/game/gui7/images.py")
|
||||
((", \"game\",") ","))
|
||||
#t))
|
||||
(add-before 'build 'start-xserver
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((xorg-server (assoc-ref inputs "xorg-server")))
|
||||
(setenv "HOME" (getcwd))
|
||||
(system (format #f "~a/bin/Xvfb :1 &" xorg-server))
|
||||
(setenv "DISPLAY" ":1")
|
||||
#t)))
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(invoke "python" "renpy.py" "launcher" "quit")
|
||||
(invoke "python" "renpy.py" "the_question" "quit")
|
||||
(invoke "python" "renpy.py" "tutorial" "quit")
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Here we install our custom renpy program.
|
||||
;; After finishing this step, "out" will have the following:
|
||||
;; |-- bin/renpy
|
||||
;; `-- share/renpy ; i.e. path_to_renpy_base()
|
||||
;; `-- common
|
||||
;;
|
||||
;; Note that common is also a de facto unused directory in
|
||||
;; python2-renpy. On other systems, renpy_base would point to
|
||||
;; site-packages or even somewhere in /opt.
|
||||
;; The former approach is not as straightforward as it seems
|
||||
;; -- it causes renpy to load files twice for some weird reason --
|
||||
;; and the latter is impossible on Guix. Hence the detour through
|
||||
;; share/renpy and the custom renpy program.
|
||||
;;
|
||||
;; As a convention, other games should be installed as
|
||||
;; subdirectories of share/renpy in their respective outputs as
|
||||
;; well. This differs from the traditional layout, which is
|
||||
;; roughly the following:
|
||||
;; `-- Super Awesome Game
|
||||
;; |-- game ; <- the folder we actually want
|
||||
;; |-- lib ; compiled renpy module and dependencies
|
||||
;; |-- renpy ; Ren'py python code (source + compiled)
|
||||
;; |-- Super Awesome Game.py
|
||||
;; `-- Super Awesome Game.sh
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin/renpy (string-append out "/bin/renpy")))
|
||||
(mkdir-p (string-append out "/bin"))
|
||||
(copy-recursively "renpy/common"
|
||||
(string-append out "/share/renpy/common"))
|
||||
(copy-recursively "gui"
|
||||
(string-append out "/share/renpy/gui"))
|
||||
|
||||
(call-with-output-file bin/renpy
|
||||
(lambda (port)
|
||||
(format port "#!~a~%" (which "python2"))
|
||||
(format port "
|
||||
from __future__ import print_function
|
||||
|
||||
import os
|
||||
import sys
|
||||
import warnings
|
||||
|
||||
def path_to_common(renpy_base):
|
||||
return renpy_base + \"/common\"
|
||||
|
||||
def path_to_saves(gamedir, save_directory=None):
|
||||
import renpy # @UnresolvedImport
|
||||
|
||||
if save_directory is None:
|
||||
save_directory = renpy.config.save_directory
|
||||
save_directory = renpy.exports.fsencode(save_directory)
|
||||
|
||||
if not save_directory:
|
||||
return gamedir + \"/saves\"
|
||||
|
||||
return os.path.expanduser(\"~~/.renpy/\" + save_directory)
|
||||
|
||||
def path_to_renpy_base():
|
||||
return \"~a\"
|
||||
|
||||
def main():
|
||||
renpy_base = path_to_renpy_base()
|
||||
try:
|
||||
import renpy.bootstrap
|
||||
import renpy.arguments
|
||||
except ImportError:
|
||||
print(\"\"\"Could not import renpy.bootstrap.
|
||||
Please ensure you decompressed Ren'Py correctly, preserving the directory
|
||||
structure.\"\"\", file=sys.stderr)
|
||||
raise
|
||||
|
||||
args = renpy.arguments.bootstrap()
|
||||
if not args.basedir:
|
||||
print(\"\"\"This Ren'py requires a basedir to launch.
|
||||
The basedir is the directory, in which .rpy files live -- usually the 'game'
|
||||
subdirectory of a game packaged by Ren'py.
|
||||
|
||||
If you want the Ren'py launcher, use renpy-launcher instead.\"\"\",
|
||||
file=sys.stderr)
|
||||
sys.exit()
|
||||
|
||||
renpy.bootstrap.bootstrap(renpy_base)
|
||||
|
||||
if __name__ == \"__main__\":
|
||||
main()
|
||||
"
|
||||
(string-append out "/share/renpy"))))
|
||||
(chmod bin/renpy #o755)
|
||||
#t)))
|
||||
|
||||
(add-after 'install 'install-games
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(define renpy (assoc-ref outputs "out"))
|
||||
;; TODO: We should offer a renpy-build-system to make the
|
||||
;; installation of Ren'py games easier.
|
||||
(define* (install-renpy-game #:key output game name (renpy renpy)
|
||||
#:allow-other-keys)
|
||||
(let* ((name (or name (basename game)))
|
||||
(launcher (string-append output "/bin/renpy-" name))
|
||||
(share (string-append output "/share/renpy/" name)))
|
||||
(copy-recursively (string-append game "/game") share)
|
||||
(mkdir-p (string-append output "/bin"))
|
||||
(with-output-to-file launcher
|
||||
(lambda ()
|
||||
(format #t
|
||||
"#!~a~%~a ~a \"$@\""
|
||||
(which "bash")
|
||||
(string-append renpy "/bin/renpy")
|
||||
share)))
|
||||
(chmod launcher #o755)))
|
||||
|
||||
(install-renpy-game #:output (assoc-ref outputs "out")
|
||||
#:game "launcher")
|
||||
|
||||
(install-renpy-game #:output (assoc-ref outputs "the-question")
|
||||
#:game "the_question"
|
||||
#:name "the-question")
|
||||
|
||||
(install-renpy-game #:output (assoc-ref outputs "tutorial")
|
||||
#:game "tutorial")
|
||||
#t))
|
||||
(replace 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(wrap-program (string-append (assoc-ref outputs "out")
|
||||
"/bin/renpy")
|
||||
`("PYTHONPATH" = (,(getenv "PYTHONPATH"))))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("python2-tkinter" ,python-2 "tk")
|
||||
("python2-pygame" ,python2-pygame-sdl2)
|
||||
("python2-renpy" ,python2-renpy)
|
||||
("xorg-server" ,xorg-server)))
|
||||
(outputs
|
||||
(list "out" "tutorial" "the-question"))
|
||||
(home-page "http://www.renpy.org/")
|
||||
(synopsis "Visual Novel Engine")
|
||||
(description "Ren'Py is a visual novel engine that helps you use words,
|
||||
images, and sounds to tell interactive stories that run on computers and
|
||||
mobile devices. These can be both visual novels and life simulation games.
|
||||
The easy to learn script language allows anyone to efficiently write large
|
||||
visual novels, while its Python scripting is enough for complex simulation
|
||||
games.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public grafx2
|
||||
(package
|
||||
(name "grafx2")
|
||||
@ -1527,7 +1851,7 @@ projects.")
|
||||
(define-public openvr
|
||||
(package
|
||||
(name "openvr")
|
||||
(version "1.4.18")
|
||||
(version "1.8.19")
|
||||
(home-page "https://github.com/ValveSoftware/openvr/")
|
||||
(source
|
||||
(origin
|
||||
@ -1537,8 +1861,7 @@ projects.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0m92634j6g0f2xybbzklm79cnq20vidbk1jc62pnz12aabwixvyh"))))
|
||||
(base32 "1b8cppvw6ib0kvx0vjq7jsk3plg1vh171w8xr230vjn05381wp52"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
;; No tests.
|
||||
|
@ -2,7 +2,7 @@
|
||||
;;; Copyright © 2013 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2014, 2016 David Thompson <dthompson2@worcester.edu>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2014 Cyrill Schenkel <cyrill.schenkel@gmail.com>
|
||||
;;; Copyright © 2014 Sylvain Beucler <beuc@beuc.net>
|
||||
;;; Copyright © 2014, 2015, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
@ -44,6 +44,7 @@
|
||||
;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl>
|
||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
|
||||
;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
|
||||
;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -499,7 +500,7 @@ tired of cows, a variety of other ASCII-art messengers are available.")
|
||||
(define-public freedoom
|
||||
(package
|
||||
(name "freedoom")
|
||||
(version "0.11.3")
|
||||
(version "0.12.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -508,38 +509,19 @@ tired of cows, a variety of other ASCII-art messengers are available.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0k4dlgr82qk6i7dchp3nybq6awlfag2ivy3zzl1v6vhcrnbvssgl"))))
|
||||
(base32 "1mq60lfwaaxmch7hsz8403pwafnlsmsd5z2df2j77ppwndwcrypb"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:make-flags
|
||||
(list (string-append "prefix=" (assoc-ref %outputs "out")))
|
||||
#:parallel-build? #f
|
||||
#:tests? #f ; no check target
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'bootstrap)
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((dejavu (assoc-ref inputs "font-dejavu"))
|
||||
(freedoom (assoc-ref outputs "out"))
|
||||
(let* ((freedoom (assoc-ref outputs "out"))
|
||||
(wad-dir (string-append freedoom "/share/games/doom")))
|
||||
;; Replace the font-searching function in a shell
|
||||
;; script with a direct path to the required font.
|
||||
;; This is necessary because ImageMagick can only find the
|
||||
;; most basic fonts while in the build environment.
|
||||
(substitute* "graphics/titlepic/create_caption"
|
||||
(("font=\\$\\(find_font.*$")
|
||||
(string-append
|
||||
"font=" dejavu
|
||||
"/share/fonts/truetype/DejaVuSansCondensed-Bold.ttf\n")))
|
||||
;; Make icon creation reproducible.
|
||||
(substitute* "dist/Makefile"
|
||||
(("freedm.png")
|
||||
"-define png:exclude-chunks=date freedm.png")
|
||||
(("freedoom1.png")
|
||||
"-define png:exclude-chunks=date freedoom1.png")
|
||||
(("freedoom2.png")
|
||||
"-define png:exclude-chunks=date freedoom2.png"))
|
||||
;; Make sure that the install scripts know where to find
|
||||
;; the appropriate WAD files.
|
||||
(substitute* "dist/freedoom"
|
||||
@ -553,11 +535,8 @@ tired of cows, a variety of other ASCII-art messengers are available.")
|
||||
(native-inputs
|
||||
`(("asciidoc" ,asciidoc)
|
||||
("deutex" ,deutex)
|
||||
("font-dejavu" ,font-dejavu)
|
||||
("imagemagick" ,imagemagick)
|
||||
("python" ,python-2)))
|
||||
(inputs
|
||||
`(("prboom-plus" ,prboom-plus)))
|
||||
("python" ,python)
|
||||
("python-pillow" ,python-pillow)))
|
||||
(home-page "https://freedoom.github.io/")
|
||||
(synopsis "Free content game based on the Doom engine")
|
||||
(native-search-paths
|
||||
@ -1437,14 +1416,23 @@ fight Morgoth, the Lord of Darkness.")
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Pingus/pingus.git")
|
||||
(url "https://gitlab.com/pingus/pingus.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wp06kcmknsnxz7bjnsndb8x062z7r23fb3yrnbfnj68qhz18y74"))
|
||||
(patches (search-patches "pingus-boost-headers.patch"
|
||||
"pingus-sdl-libs-config.patch"))))
|
||||
"pingus-sdl-libs-config.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(substitute* "src/pingus/screens/demo_session.cpp"
|
||||
(("#include <iostream>")
|
||||
;; std::function moved to <functional> with C++ 11.
|
||||
;; Remove this for versions newer than 0.7.6.
|
||||
"#include <iostream>\n#include <functional>"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
("scons-python2" ,scons-python2)))
|
||||
@ -1854,7 +1842,7 @@ match, cannon keep, and grave-itation pit.")
|
||||
(define minetest-data
|
||||
(package
|
||||
(name "minetest-data")
|
||||
(version "5.0.1")
|
||||
(version "5.1.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -1863,7 +1851,7 @@ match, cannon keep, and grave-itation pit.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hw3n7qqpasq6bivxhq01kr0d58w0gp46s0baxixp1fakd79p8a7"))))
|
||||
"1r9fxz2j24q74a9injvbxbf2xk67fzabv616i676zw2cvgv9hn39"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs
|
||||
`(("source" ,source)))
|
||||
@ -1888,7 +1876,7 @@ match, cannon keep, and grave-itation pit.")
|
||||
(define-public minetest
|
||||
(package
|
||||
(name "minetest")
|
||||
(version "5.0.1")
|
||||
(version "5.1.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -1897,7 +1885,7 @@ match, cannon keep, and grave-itation pit.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"11i8fqjpdggqfdlx440k5758zy0nbf9phxan9r63mavc7mph88ay"))
|
||||
"184n9gxfa7yr0j85z2x736maaymsnppd5jzm326wlqri3c0qqy3z"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@ -2594,24 +2582,14 @@ world}, @uref{http://evolonline.org, Evol Online} and
|
||||
(define openttd-engine
|
||||
(package
|
||||
(name "openttd-engine")
|
||||
(version "1.8.0")
|
||||
(version "1.9.3")
|
||||
(source
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "http://binaries.openttd.org/releases/"
|
||||
(uri (string-append "https://proxy.binaries.openttd.org/openttd-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
|
||||
"0zq8xdg0k92p3s4j9x76591zaqz7k9ra69q008m209vdfffjvly2"))
|
||||
"0ijq72kgx997ggw40i5f4a3nf7y2g72z37l47i18yjvgbdzy320r"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; The DOS port contains proprietary software.
|
||||
@ -2656,7 +2634,7 @@ Tycoon Deluxe with many enhancements including multiplayer mode,
|
||||
internationalization support, conditional orders and the ability to clone,
|
||||
autoreplace and autoupdate vehicles. This package only includes the game
|
||||
engine. When you start it you will be prompted to download a graphics set.")
|
||||
(home-page "http://openttd.org/")
|
||||
(home-page "https://www.openttd.org/")
|
||||
;; This package is GPLv2, except for a few files located in
|
||||
;; "src/3rdparty/" which are under the 3-clause BSD, LGPLv2.1+ and Zlib
|
||||
;; licenses. In addition, this software contains an in-game downloader
|
||||
@ -2667,7 +2645,7 @@ engine. When you start it you will be prompted to download a graphics set.")
|
||||
(define openttd-opengfx
|
||||
(package
|
||||
(name "openttd-opengfx")
|
||||
(version "0.5.2")
|
||||
(version "0.5.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@ -2675,7 +2653,7 @@ engine. When you start it you will be prompted to download a graphics set.")
|
||||
version "/opengfx-" version "-source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0iz66q7p1mf00njfjbc4vibh3jaybki7armkl18iz7p6x4chp9zv"))))
|
||||
"009fa1bdin1bk0ynzhzc30hzkmmwzmwkk6j591ax3f6w75l28n49"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:make-flags (list "CC=gcc"
|
||||
@ -2910,7 +2888,7 @@ Transport Tycoon Deluxe.")
|
||||
(define-public openrct2
|
||||
(package
|
||||
(name "openrct2")
|
||||
(version "0.2.3")
|
||||
(version "0.2.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -2919,7 +2897,7 @@ Transport Tycoon Deluxe.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "01mj6jlbl2cn3wpk6sy34ldzdl0qykpn7fncznjykklj2nqzr4ig"))))
|
||||
(base32 "1rlw3w20llg36sj3bk50g661qw766ng8ma3p42sdkj8br9dw800h"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "-DDOWNLOAD_OBJECTS=OFF"
|
||||
@ -4755,7 +4733,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
|
||||
(define-public crawl
|
||||
(package
|
||||
(name "crawl")
|
||||
(version "0.23.2")
|
||||
(version "0.24.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@ -4768,7 +4746,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
|
||||
(string-append "http://crawl.develz.org/release/stone_soup-"
|
||||
version "-nodeps.tar.xz")))
|
||||
(sha256
|
||||
(base32 "1hw10hqhh688mrqs9vxrl17y1dzfjzsmxz6izg1a9dzmjlhrc01a"))
|
||||
(base32 "0kdq6s12myxfdg75ma9x3ys2nd0xwb3xm2ynlmhg4628va0pnixr"))
|
||||
(patches (search-patches "crawl-upgrade-saves.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
@ -5158,7 +5136,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as
|
||||
(define-public tome4
|
||||
(package
|
||||
(name "tome4")
|
||||
(version "1.5.10")
|
||||
(version "1.6.0")
|
||||
(synopsis "Single-player, RPG roguelike game set in the world of Eyal")
|
||||
(source
|
||||
(origin
|
||||
@ -5167,7 +5145,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0mc5dgh2x9nbili7gy6srjhb23ckalf08wqq2amyjr5rq392jvd7"))
|
||||
"1z1w4ycgl5wbm0sv7577vcdfwwf4k7vaf2njzyb21rvqjizpbkwr"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
@ -5508,7 +5486,7 @@ elements to achieve a simple goal in the most complex way possible.")
|
||||
(define-public pioneer
|
||||
(package
|
||||
(name "pioneer")
|
||||
(version "20180203")
|
||||
(version "20190203")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -5517,16 +5495,15 @@ elements to achieve a simple goal in the most complex way possible.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hp2mf36kj2v93hka8m8lxw2qhmnjc62wjlpw7c7ix0r8xa01i6h"))))
|
||||
(build-system gnu-build-system)
|
||||
"1g34wvgyvz793dhm1k64kl82ib0cavkbg0f2p3fp05b457ycljff"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("pkg-config" ,pkg-config)))
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("assimp" ,assimp)
|
||||
("curl" ,curl)
|
||||
("freetype" ,freetype)
|
||||
("glew" ,glew)
|
||||
("glu" ,glu)
|
||||
("libpng" ,libpng)
|
||||
("libsigc++" ,libsigc++)
|
||||
@ -5536,16 +5513,9 @@ elements to achieve a simple goal in the most complex way possible.")
|
||||
("sdl" ,(sdl-union (list sdl2 sdl2-image)))))
|
||||
(arguments
|
||||
`(#:tests? #f ;tests are broken
|
||||
#:configure-flags (list "--with-external-liblua"
|
||||
(string-append "PIONEER_DATA_DIR="
|
||||
%output "/share/games/pioneer"))
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-before 'bootstrap 'fix-lua-check
|
||||
(lambda _
|
||||
(substitute* "configure.ac"
|
||||
(("lua5.2")
|
||||
(string-append "lua-" ,(version-major+minor
|
||||
(package-version lua-5.2))))))))))
|
||||
#:configure-flags (list "-DUSE_SYSTEM_LIBLUA:BOOL=YES"
|
||||
(string-append "-DPIONEER_DATA_DIR="
|
||||
%output "/share/games/pioneer"))))
|
||||
(home-page "http://pioneerspacesim.net")
|
||||
(synopsis "Game of lonely space adventure")
|
||||
(description
|
||||
|
@ -672,6 +672,10 @@ as the 'native-search-paths' field."
|
||||
(custom-gcc gcc-8 "gfortran" '("fortran")
|
||||
%generic-search-paths))
|
||||
|
||||
(define-public gfortran-9
|
||||
(custom-gcc gcc-9 "gfortran" '("fortran")
|
||||
%generic-search-paths))
|
||||
|
||||
(define-public gfortran
|
||||
;; Note: Update this when GCC changes! We cannot use
|
||||
;; (custom-gcc gcc "fortran" …) because that would lead to a package object
|
||||
|
@ -38,7 +38,7 @@
|
||||
(define-public gramps
|
||||
(package
|
||||
(name "gramps")
|
||||
(version "5.0.2")
|
||||
(version "5.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -48,13 +48,14 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wg743q8ixy5dmwricgkl4zck4109vq5ppmkyi18qjmna9m0aq7r"))))
|
||||
"1zrvr543zzsiapda75vdd2669fgijmx4cv7nfj5d1jsyz4qnif7b"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("intltool" ,intltool)))
|
||||
(inputs
|
||||
`(("font-gnu-freefont-ttf" ,font-gnu-freefont-ttf)
|
||||
`(("cairo" ,cairo)
|
||||
("font-gnu-freefont-ttf" ,font-gnu-freefont-ttf)
|
||||
("geocode-glib" ,geocode-glib)
|
||||
("gexiv2" ,gexiv2)
|
||||
("ghostscript" ,ghostscript)
|
||||
|
@ -6,9 +6,10 @@
|
||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
|
||||
;;; Copyright © 2018, 2019 Julien Lepiller <julien@lepiller.eu>
|
||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
|
||||
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -26,6 +27,7 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages geo)
|
||||
#:use-module (guix build-system ant)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system gnu)
|
||||
@ -36,6 +38,7 @@
|
||||
#:use-module (guix build-system r)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix svn-download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
@ -54,6 +57,7 @@
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages pcre)
|
||||
#:use-module (gnu packages perl)
|
||||
@ -122,6 +126,12 @@ topology functions.")
|
||||
`(#:glib-or-gtk? #t
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "meson_post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t))
|
||||
(add-after 'install 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
@ -151,8 +161,7 @@ topology functions.")
|
||||
,geocode-glib-path)))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
`(("gobject-introspection" ,gobject-introspection)
|
||||
("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
@ -634,14 +643,14 @@ utilities for data translation and processing.")
|
||||
(define-public postgis
|
||||
(package
|
||||
(name "postgis")
|
||||
(version "2.4.4")
|
||||
(version "2.4.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.osgeo.org/postgis/source/postgis-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hm8migjb53cymp4qvg1h20yqllmy9f7x0awv5450391i6syyqq6"))))
|
||||
"0nanza15xzfhbpbq49p1xqz96dgbsam5332y9zj6snmz2mq685ll"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
@ -997,3 +1006,210 @@ XyGrib is the continuation of the zyGrib software package with a new team of
|
||||
volunteers.")
|
||||
(home-page "https://opengribs.org")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libspatialindex
|
||||
(package
|
||||
(name "libspatialindex")
|
||||
(version "1.8.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.osgeo.org/libspatialindex/"
|
||||
"spatialindex-src-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vxzm7kczwnb6qdmc0hb00z8ykx11zk3sb68gc7rch4vrfi4dakw"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://libspatialindex.org")
|
||||
(synopsis "Spatial indexing library")
|
||||
(description "The purpose of this library is to provide:
|
||||
|
||||
@itemize
|
||||
@item An extensible framework that will support robust spatial indexing
|
||||
methods.
|
||||
@item Support for sophisticated spatial queries. Range, point location,
|
||||
nearest neighbor and k-nearest neighbor as well as parametric queries (defined
|
||||
by spatial constraints) should be easy to deploy and run.
|
||||
@item Easy to use interfaces for inserting, deleting and updating information.
|
||||
@item Wide variety of customization capabilities. Basic index and storage
|
||||
characteristics like the page size, node capacity, minimum fan-out, splitting
|
||||
algorithm, etc. should be easy to customize.
|
||||
@item Index persistence. Internal memory and external memory structures
|
||||
should be supported. Clustered and non-clustered indices should be easy to be
|
||||
persisted.
|
||||
@end itemize
|
||||
")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public java-jmapviewer
|
||||
(package
|
||||
(name "java-jmapviewer")
|
||||
(version "2.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://svn.openstreetmap.org/applications/"
|
||||
"viewer/jmapviewer/releases/" version
|
||||
"/JMapViewer-" version "-Source.zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"08hbqsbs859v4m5d90560fdifavd1apnpz9v9iry1v31dsvy5707"))))
|
||||
(build-system ant-build-system)
|
||||
(native-inputs
|
||||
`(("unzip" ,unzip)))
|
||||
(arguments
|
||||
`(#:build-target "pack"
|
||||
#:tests? #f; No tests
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'clean
|
||||
(lambda* _
|
||||
(invoke "ant" "clean")))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((dir (string-append (assoc-ref outputs "out") "/share/java/")))
|
||||
(mkdir-p dir)
|
||||
(copy-file "JMapViewer.jar" (string-append dir "JMapViewer.jar"))))))))
|
||||
(home-page "https://wiki.openstreetmap.org/wiki/JMapViewer")
|
||||
(synopsis "OSM map integration in Java")
|
||||
(description "JMapViewer is a Java component which allows to easily
|
||||
integrate an OSM map view into your Java application. It is maintained as
|
||||
an independent project by the JOSM team.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public josm
|
||||
(package
|
||||
(name "josm")
|
||||
(version "15492")
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url "https://josm.openstreetmap.de/svn/trunk")
|
||||
(revision (string->number version))
|
||||
(recursive? #f)))
|
||||
(sha256
|
||||
(base32
|
||||
"12xkwcv77as30a61w1c8a0i2b0kiiks71d487gbdfv7azlj4vqia"))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(for-each delete-file (find-files "." ".*.jar$"))
|
||||
#t))))
|
||||
(build-system ant-build-system)
|
||||
(native-inputs
|
||||
`(("javacc" ,javacc)))
|
||||
(inputs
|
||||
`(("java-commons-jcs" ,java-commons-jcs)
|
||||
("java-commons-compress" ,java-commons-compress)
|
||||
("java-jmapviewer" ,java-jmapviewer)
|
||||
("java-jsonp-api" ,java-jsonp-api)
|
||||
("java-jsonp-impl" ,java-jsonp-impl); runtime dependency
|
||||
("java-metadata-extractor" ,java-metadata-extractor)
|
||||
("java-openjfx-media" ,java-openjfx-media)
|
||||
("java-signpost-core" ,java-signpost-core)
|
||||
("java-svg-salamander" ,java-svg-salamander)))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:jar-name "josm.jar"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'rm-build.xml
|
||||
(lambda* _
|
||||
(delete-file "build.xml")
|
||||
#t))
|
||||
(add-before 'build 'fix-revision
|
||||
(lambda* _
|
||||
(with-output-to-file "REVISION.XML"
|
||||
(lambda _
|
||||
(display
|
||||
(string-append "<info><entry><commit revision=\"" ,version "\">"
|
||||
"<date>1970-01-01 00:00:00 +0000</date>"
|
||||
"</commit></entry></info>"))))
|
||||
#t))
|
||||
(add-before 'build 'fix-classpath
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "CLASSPATH"
|
||||
(string-join
|
||||
(filter
|
||||
(lambda (s)
|
||||
(let ((source (assoc-ref inputs "source")))
|
||||
(not (equal? (substring s 0 (string-length source)) source))))
|
||||
(string-split (getenv "CLASSPATH") #\:))
|
||||
":"))
|
||||
#t))
|
||||
(add-before 'build 'generate-parser
|
||||
(lambda* _
|
||||
(let* ((dir "src/org/openstreetmap/josm/gui/mappaint/mapcss")
|
||||
(out (string-append dir "/parsergen"))
|
||||
(file (string-append dir "/MapCSSParser.jj")))
|
||||
(mkdir-p "src/org/openstreetmap/josm/gui/mappaint/mapcss/parsergen")
|
||||
(invoke "javacc" "-DEBUG_PARSER=false"
|
||||
"-DEBUG_TOKEN_MANAGER=false" "-JDK_VERSION=1.8"
|
||||
"-GRAMMAR_ENCODING=UTF-8"
|
||||
(string-append "-OUTPUT_DIRECTORY=" out)
|
||||
file))
|
||||
#t))
|
||||
(add-after 'build 'generate-epsg
|
||||
(lambda _
|
||||
(system* "javac" "scripts/BuildProjectionDefinitions.java"
|
||||
"-cp" "build/classes")
|
||||
(mkdir-p "data/projection")
|
||||
(with-output-to-file "data/projection/custom-epsg"
|
||||
(lambda _ (display "")))
|
||||
(invoke "java" "-cp" "build/classes:scripts:."
|
||||
"BuildProjectionDefinitions" ".")
|
||||
#t))
|
||||
(add-after 'generate-epsg 'copy-data
|
||||
(lambda _
|
||||
(mkdir-p "build/classes")
|
||||
(rename-file "data" "build/classes/data")
|
||||
#t))
|
||||
(add-before 'install 'regenerate-jar
|
||||
(lambda _
|
||||
;; We need to regenerate the jar file to add data.
|
||||
(delete-file "build/jar/josm.jar")
|
||||
(invoke "jar" "-cf" "build/jar/josm.jar" "-C"
|
||||
"build/classes" ".")
|
||||
#t))
|
||||
(add-before 'build 'copy-styles
|
||||
(lambda _
|
||||
(mkdir-p "build/classes")
|
||||
(rename-file "styles" "build/classes/styles")
|
||||
#t))
|
||||
(add-before 'build 'copy-images
|
||||
(lambda _
|
||||
(mkdir-p "build/classes")
|
||||
(rename-file "images" "build/classes/images")
|
||||
#t))
|
||||
(add-before 'build 'copy-revision
|
||||
(lambda _
|
||||
(mkdir-p "build/classes")
|
||||
(with-output-to-file "build/classes/REVISION"
|
||||
(lambda _
|
||||
(display
|
||||
(string-append "Revision: " ,version "\n"
|
||||
"Is-Local-Build: true\n"
|
||||
"Build-Date: 1970-01-01 00:00:00 +0000\n"))))
|
||||
#t))
|
||||
(add-after 'install 'install-bin
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin")))
|
||||
(mkdir-p bin)
|
||||
(with-output-to-file (string-append bin "/josm")
|
||||
(lambda _
|
||||
(display
|
||||
(string-append "#!/bin/sh\n"
|
||||
(assoc-ref inputs "jdk") "/bin/java"
|
||||
" -cp " out "/share/java/josm.jar:"
|
||||
(getenv "CLASSPATH")
|
||||
" org.openstreetmap.josm.gui.MainApplication"))))
|
||||
(chmod (string-append bin "/josm") #o755))
|
||||
#t)))))
|
||||
(home-page "https://josm.openstreetmap.de")
|
||||
(synopsis "OSM editor")
|
||||
(description "JOSM is an extensible editor for OpenStreetMap (OSM). It
|
||||
supports loading GPX tracks, background imagery and OSM data from local
|
||||
sources as well as from online sources and allows to edit the OSM data (nodes,
|
||||
ways, and relations) and their metadata tags.")
|
||||
(license license:gpl2+)))
|
||||
|
@ -7,7 +7,7 @@
|
||||
;;; Copyright © 2017, 2019 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Miguel <rosen644835@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@ -179,14 +179,14 @@ color, font attributes (weight, posture), or underlining.")
|
||||
(define-public po4a
|
||||
(package
|
||||
(name "po4a")
|
||||
(version "0.56")
|
||||
(version "0.57")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/mquinson/po4a/releases/download/v"
|
||||
version "/po4a-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0kyhww0yw4q0m4vj8vil2wsf6sn4hidh8mqz2gjrq7gpdf83cmnr"))))
|
||||
"15yd27krlpdvjhcnwys6i5k1ww62ifq2yx8k1zxyxiwy84myqmdv"))))
|
||||
(build-system perl-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
@ -29,6 +29,7 @@
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages autotools)
|
||||
@ -49,22 +50,30 @@
|
||||
(define-public babl
|
||||
(package
|
||||
(name "babl")
|
||||
(version "0.1.66")
|
||||
(version "0.1.72")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append "https://download.gimp.org/pub/babl/"
|
||||
(version-major+minor version)
|
||||
"/babl-" version ".tar.bz2")
|
||||
"/babl-" version ".tar.xz")
|
||||
(string-append "https://ftp.gtk.org/pub/babl/"
|
||||
(version-major+minor version)
|
||||
"/babl-" version ".tar.bz2")
|
||||
"/babl-" version ".tar.xz")
|
||||
(string-append "ftp://ftp.gtk.org/pub/babl/"
|
||||
(version-major+minor version)
|
||||
"/babl-" version ".tar.bz2")))
|
||||
"/babl-" version ".tar.xz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0qx1dwbinxihwl2lmxi60qiqi402jlrdcnixx14kk6j88n9xi79n"))))
|
||||
(build-system gnu-build-system)
|
||||
"0hkagjrnza77aasa1kss5hvy37ndm50y6i7hkdn2z8hzgc4i3qb4"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "-Denable-gir=false")))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(propagated-inputs
|
||||
;; Propagated to satisfy ‘babl.pc’.
|
||||
`(("lcms" ,lcms)))
|
||||
(home-page "http://gegl.org/babl/")
|
||||
(synopsis "Image pixel format conversion library")
|
||||
(description
|
||||
@ -80,18 +89,25 @@ provided, as well as a framework to add new color models and data types.")
|
||||
(define-public gegl
|
||||
(package
|
||||
(name "gegl")
|
||||
(version "0.4.16")
|
||||
(version "0.4.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append "https://download.gimp.org/pub/gegl/"
|
||||
(string-take version 3)
|
||||
"/gegl-" version ".tar.bz2")))
|
||||
"/gegl-" version ".tar.xz")
|
||||
(string-append "https://ftp.gtk.org/pub/gegl/"
|
||||
(version-major+minor version)
|
||||
"/gegl-" version ".tar.xz")
|
||||
(string-append "ftp://ftp.gtk.org/pub/gegl/"
|
||||
(version-major+minor version)
|
||||
"/gegl-" version ".tar.xz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0njydcr6qdmfzh4fxx544681qxdpf7y6b2f47jcypn810dlxy4h1"))))
|
||||
(build-system gnu-build-system)
|
||||
"0r6akqnrkvxizyhyi8sv40mxm7j4bcwjb6mqjpxy0zzbbfsdyin9"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("LDFLAGS=-lm")))
|
||||
`(#:configure-flags
|
||||
(list "-Dintrospection=false")))
|
||||
;; These are propagated to satisfy 'gegl-0.4.pc'.
|
||||
(propagated-inputs
|
||||
`(("babl" ,babl)
|
||||
@ -118,7 +134,7 @@ buffers.")
|
||||
(define-public gimp
|
||||
(package
|
||||
(name "gimp")
|
||||
(version "2.10.12")
|
||||
(version "2.10.14")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.gimp.org/pub/gimp/v"
|
||||
@ -126,7 +142,7 @@ buffers.")
|
||||
"/gimp-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wdcr8d2ink4swn5r4v13bsiya6s3xm4ya97sdbhs4l40y7bb03x"))))
|
||||
"0m6wdnfvsxyhimdd4v3351g4r1fklllnbipbwcfym3h7q88hz6yz"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
"doc")) ; 9 MiB of gtk-doc HTML
|
||||
|
@ -199,7 +199,10 @@ shared NFS home directories.")
|
||||
("perl" ,perl) ; needed by GIO tests
|
||||
("tzdata" ,tzdata-for-tests))) ; for tests/gdatetime.c
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(;; TODO: Uncomment on the next rebuild cycle.
|
||||
;; #:disallowed-references (,tzdata-for-tests)
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-dbus-launch-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
@ -716,6 +719,33 @@ useful for C++.")
|
||||
("pkg-config" ,pkg-config)
|
||||
("python-pytest" ,python2-pytest)))))
|
||||
|
||||
;; Newer version of this core-updates package, for Lollypop.
|
||||
(define-public python-pygobject-3.34
|
||||
(package/inherit
|
||||
python-pygobject
|
||||
(version "3.34.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/pygobject/"
|
||||
(version-major+minor version)
|
||||
"/pygobject-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'delete-broken-tests
|
||||
(lambda _
|
||||
(with-directory-excursion "tests"
|
||||
(for-each
|
||||
delete-file
|
||||
;; FIXME: these tests require Gdk and/or Gtk 4.
|
||||
'("test_atoms.py"
|
||||
"test_overrides_gtk.py")))
|
||||
#t)))))))
|
||||
|
||||
(define-public perl-glib
|
||||
(package
|
||||
(name "perl-glib")
|
||||
|
213
gnu/packages/gnome-xyz.scm
Normal file
213
gnu/packages/gnome-xyz.scm
Normal file
@ -0,0 +1,213 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019 Leo Prikler <leo.prikler@student.tugraz.at>
|
||||
;;; Copyright © 2019 Alexandros Theodotou <alex@zrythm.org>
|
||||
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages gnome-xyz)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages ruby)
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
(define-public matcha-theme
|
||||
(package
|
||||
(name "matcha-theme")
|
||||
(version "2019-11-02")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/vinceliuice/matcha")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wci9ahap8kynq8cbyxr7aba9ndb1d4kiq42xvzr34vw1rhcahrr"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(source (assoc-ref %build-inputs "source"))
|
||||
(bash (assoc-ref %build-inputs "bash"))
|
||||
(coreutils (assoc-ref %build-inputs "coreutils"))
|
||||
(themesdir (string-append out "/share/themes")))
|
||||
(setenv "PATH"
|
||||
(string-append coreutils "/bin:"
|
||||
(string-append bash "/bin:")))
|
||||
(copy-recursively source (getcwd))
|
||||
(patch-shebang "Install")
|
||||
(mkdir-p themesdir)
|
||||
(invoke "./Install" "-d" themesdir)
|
||||
#t))))
|
||||
(inputs
|
||||
`(("gtk-engines" ,gtk-engines)))
|
||||
(native-inputs
|
||||
`(("bash" ,bash)
|
||||
("coreutils" ,coreutils)))
|
||||
(synopsis "Flat design theme for GTK 3, GTK 2 and GNOME-Shell")
|
||||
(description "Matcha is a flat Design theme for GTK 3, GTK 2 and
|
||||
Gnome-Shell which supports GTK 3 and GTK 2 based desktop environments
|
||||
like Gnome, Unity, Budgie, Pantheon, XFCE, Mate and others.")
|
||||
(home-page "https://github.com/vinceliuice/matcha")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public delft-icon-theme
|
||||
(package
|
||||
(name "delft-icon-theme")
|
||||
(version "1.10")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/madmaxms/iconpack-delft.git")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"0vw3yw9f9ygzfd2k3zrfih3r0vkzlhk1bmsk8sapvk7np24i1z9s"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(copy-recursively (assoc-ref %build-inputs "source") "icons")
|
||||
(delete-file "icons/README.md")
|
||||
(delete-file "icons/LICENSE")
|
||||
(delete-file "icons/logo.jpg")
|
||||
(copy-recursively "icons" (string-append %output "/share/icons")))))
|
||||
(home-page "https://www.gnome-look.org/p/1199881/")
|
||||
(synopsis "Continuation of Faenza icon theme with up to date app icons")
|
||||
(description "Delft is a fork of the popular icon theme Faenza with up to
|
||||
date app icons. It will stay optically close to the original Faenza icons,
|
||||
which haven't been updated for some years. The new app icons are ported from
|
||||
the Obsidian icon theme.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public gnome-shell-extension-dash-to-dock
|
||||
(package
|
||||
(name "gnome-shell-extension-dash-to-dock")
|
||||
(version "65")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/micheleg/dash-to-dock.git")
|
||||
(commit (string-append "extensions.gnome.org-v"
|
||||
version))))
|
||||
(sha256
|
||||
(base32
|
||||
"0ln49l9s0yfl30pi77pz7xlmh63l9vjppi863kry5lay10dsvz47"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
#:make-flags (list (string-append "INSTALLBASE="
|
||||
(assoc-ref %outputs "out")
|
||||
"/share/gnome-shell/extensions"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'bootstrap)
|
||||
(delete 'configure))))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(propagated-inputs
|
||||
`(("glib" ,glib)
|
||||
("glib" ,glib "bin")))
|
||||
(synopsis "Transforms GNOME's dash into a dock")
|
||||
(description "This extension moves the dash out of the
|
||||
overview, transforming it into a dock for easier application launching and
|
||||
faster window switching.")
|
||||
(home-page "https://micheleg.github.io/dash-to-dock/")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gnome-shell-extension-noannoyance
|
||||
(package
|
||||
(name "gnome-shell-extension-noannoyance")
|
||||
(version "5")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/BjoernDaase/noannoyance.git")
|
||||
(commit "e37b5b3c31f577b4698bc6659bc9fec5ea9ac5d4")))
|
||||
(sha256
|
||||
(base32
|
||||
"0fa8l3xlh8kbq07y4385wpb908zm6x53z81q16xlmin97dln32hh"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((dst (string-append
|
||||
(assoc-ref %outputs "out")
|
||||
"/share/gnome-shell/extensions/"
|
||||
"noannoyance@daase.net")))
|
||||
(mkdir-p dst)
|
||||
(copy-recursively (assoc-ref %build-inputs "source") dst)))))
|
||||
(synopsis "Removes 'Window is ready' annotation")
|
||||
(description "One of the many extensions, that remove this message.
|
||||
It uses ES6 syntax and claims to be more actively maintained than others.")
|
||||
(home-page "https://extensions.gnome.org/extension/2182/noannoyance/")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public numix-theme
|
||||
(package
|
||||
(name "numix-theme")
|
||||
(version "2.6.7")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/numixproject/numix-gtk-theme.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"12mw0kr0kkvg395qlbsvkvaqccr90cmxw5rrsl236zh43kj8grb7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(delete 'check))))
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas
|
||||
("gnome-shell" ,gnome-shell)
|
||||
("gtk+" ,gtk+)
|
||||
("xmllint" ,libxml2)
|
||||
("ruby-sass" ,ruby-sass)))
|
||||
(synopsis "Flat theme with light and dark elements")
|
||||
(description "Numix is a modern flat theme with a combination of light and
|
||||
dark elements. It supports GNOME, Unity, Xfce, and Openbox.")
|
||||
(home-page "https://numixproject.github.io")
|
||||
(license license:gpl3+)))
|
@ -41,6 +41,7 @@
|
||||
;;; Copyright © 2019 Jonathan Frederickson <jonathan@terracrypt.net>
|
||||
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2019 Martin Becze <mjbecze@riseup.net>
|
||||
;;; Copyright © 2019 David Wilson <david@daviwil.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@ -568,9 +569,17 @@ and keep up to date translations of documentation.")
|
||||
(base32
|
||||
"1365fabz3q7n3bl775z82m1nzg18birxxyd7l2ssbbkqrx3h7wgi"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "meson_post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin")
|
||||
("gtk+" ,gtk+ "bin") ; gtk-update-icon-cache
|
||||
("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("docbook-xml" ,docbook-xml)
|
||||
@ -771,7 +780,7 @@ forgotten when the session ends.")
|
||||
(define-public evince
|
||||
(package
|
||||
(name "evince")
|
||||
(version "3.30.2")
|
||||
(version "3.34.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
@ -779,7 +788,7 @@ forgotten when the session ends.")
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0k7jln6dpg4bpv61niicjzkzyq6fhb3yfld7pc8ck71c8pmvsnx9"))))
|
||||
"1pr6fvbaam1mzxjwyqd53hcxzdjzf73idn10j4j7n54nwg6hgr45"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--disable-nautilus")
|
||||
@ -2061,17 +2070,17 @@ Hints specification (EWMH).")
|
||||
(define-public goffice
|
||||
(package
|
||||
(name "goffice")
|
||||
(version "0.10.44")
|
||||
(version "0.10.46")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(uri (string-append "mirror://gnome/sources/goffice/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
"goffice-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1fd7cm6j0g0mqgpqs4y22b4gd2ll4mcyvg4d0q22d5ndjapl4q3d"))))
|
||||
(base32 "1a8kba36zwzr0ilafc0d1nsxxma1qibviiifd0jhbxp180x6v385"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
"doc")) ;4.0 MiB of gtk-doc
|
||||
"doc")) ; 4.0 MiB of gtk-doc
|
||||
(arguments
|
||||
'(#:configure-flags (list (string-append "--with-html-dir="
|
||||
(assoc-ref %outputs "doc")
|
||||
@ -2125,7 +2134,7 @@ Hints specification (EWMH).")
|
||||
(define-public gnumeric
|
||||
(package
|
||||
(name "gnumeric")
|
||||
(version "1.12.45")
|
||||
(version "1.12.46")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/gnumeric/"
|
||||
@ -2133,7 +2142,7 @@ Hints specification (EWMH).")
|
||||
"gnumeric-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0c8dl1kvnj3g32qy3s92qpqpqfy0in59cx005gjvvzsflahav61h"))))
|
||||
"1qdmw2dp7rmq8fmjapgwaks7ajh270wm6kyvlxlzwbgmg8vngp4z"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(;; The gnumeric developers don't worry much about failing tests.
|
||||
@ -2222,7 +2231,7 @@ engineering.")
|
||||
(define-public seahorse
|
||||
(package
|
||||
(name "seahorse")
|
||||
(version "3.30")
|
||||
(version "3.30.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@ -2231,8 +2240,19 @@ engineering.")
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1sbj1czlx1fakm72dwgbn0bwm12j838yaky4mkf6hf8j8afnxmzp"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
"12x7xmwh62yl0ax90v8nkx3jqzviaz9hz2g56yml78wzww20gawy"))
|
||||
(patches (search-patches
|
||||
"seahorse-gkr-use-0-on-empty-flags.patch"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "build-aux/meson_post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+)
|
||||
("gcr" ,gcr)
|
||||
@ -2240,13 +2260,15 @@ engineering.")
|
||||
("gpgme" ,gpgme)
|
||||
("openldap" ,openldap)
|
||||
("openssh" ,openssh)
|
||||
("avahi" ,avahi)
|
||||
("libsecret" ,libsecret)
|
||||
("libsoup" ,libsoup)))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("glib:bin" ,glib "bin")
|
||||
("itstool" ,itstool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)
|
||||
("xmllint" ,libxml2)))
|
||||
(home-page "https://launchpad.net/gnome-themes-standard")
|
||||
(synopsis "Manage encryption keys and passwords in the GNOME keyring")
|
||||
@ -2338,7 +2360,7 @@ editors, IDEs, etc.")
|
||||
(package
|
||||
(inherit vte)
|
||||
(name "vte-ng")
|
||||
(version "0.56.2.a")
|
||||
(version "0.58.2.a")
|
||||
(home-page "https://github.com/thestinger/vte-ng")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@ -2346,20 +2368,13 @@ editors, IDEs, etc.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1lmba6i0abifmvvfb1q63ql6zh6d38148kp6skmkggiib2hi5dki"))))
|
||||
"0rnm5c6m3abbm81jsfdas0y80z299ny54gr4syn4bfrms3s4g19l"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs
|
||||
`(("gtk-doc" ,gtk-doc)
|
||||
("gperf" ,gperf)
|
||||
("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
,@(package-native-inputs vte)))
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
(lambda _
|
||||
(setenv "NOCONFIGURE" "true")
|
||||
(invoke "sh" "autogen.sh"))))))
|
||||
`(#:configure-flags '("-Ddocs=true")))
|
||||
(synopsis "Enhanced VTE terminal widget")
|
||||
(description
|
||||
"VTE is a library (libvte) implementing a terminal emulator widget for
|
||||
@ -3016,15 +3031,14 @@ keyboard shortcuts.")
|
||||
(define-public colord
|
||||
(package
|
||||
(name "colord")
|
||||
(version "1.4.3")
|
||||
(version "1.4.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.freedesktop.org/software/colord/releases/"
|
||||
name "-" version ".tar.xz"))
|
||||
"colord-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xwxahg9mgmapc16xkb4kgmc40zpadrwav33xqmn6cgaw6g6d3ls"))))
|
||||
(base32 "19f0938fr7nvvm3jr263dlknaq7md40zrac2npfyz25zc00yh3ws"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(;; FIXME: One test fails:
|
||||
@ -3039,13 +3053,12 @@ keyboard shortcuts.")
|
||||
;; Wants to install to global completion dir;
|
||||
;; punt.
|
||||
"-Dbash_completion=false"
|
||||
;; colord-gtk not packaged yet.
|
||||
"-Dsession_example=false"
|
||||
"-Ddaemon_user=colord"
|
||||
"-Dsane=true"
|
||||
;; Requires spotread
|
||||
"-Dvapi=true"
|
||||
;; Requires spotread.
|
||||
"-Dargyllcms_sensor=false"
|
||||
;; TODO: Requires docbook2x
|
||||
;; TODO: Requires docbook2x.
|
||||
"-Dman=false")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
@ -3054,27 +3067,37 @@ keyboard shortcuts.")
|
||||
(substitute* "rules/meson.build"
|
||||
(("udev.get_pkgconfig_variable\\('udevdir'\\)")
|
||||
(string-append "'" (assoc-ref outputs "out") "/lib/udev'")))
|
||||
#t)))))
|
||||
#t))
|
||||
(add-before 'configure 'set-sqlite3-file-name
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; "colormgr dump" works by invoking the "sqlite3" command.
|
||||
;; Record its absolute file name.
|
||||
(let ((sqlite (assoc-ref inputs "sqlite")))
|
||||
(substitute* "client/cd-util.c"
|
||||
(("\"sqlite3\"")
|
||||
(string-append "\"" sqlite "/bin/sqlite3\"")))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("glib:bin" ,glib "bin") ; for glib-compile-resources, etc.
|
||||
`(("glib:bin" ,glib "bin") ; for glib-compile-resources, etc.
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("gtk-doc" ,gtk-doc)
|
||||
("intltool" ,intltool)
|
||||
("libtool" ,libtool)
|
||||
("intltool" ,intltool)))
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)))
|
||||
(propagated-inputs
|
||||
;; colord.pc refers to all these.
|
||||
`(("glib" ,glib)
|
||||
("udev" ,eudev)
|
||||
("lcms" ,lcms)))
|
||||
("lcms" ,lcms)
|
||||
("udev" ,eudev)))
|
||||
(inputs
|
||||
`(("dbus-glib" ,dbus-glib)
|
||||
("gusb" ,gusb)
|
||||
("libgudev" ,libgudev)
|
||||
("libusb" ,libusb)
|
||||
("sqlite" ,sqlite)
|
||||
("polkit" ,polkit)
|
||||
("python" ,python-wrapper)
|
||||
("sqlite" ,sqlite)
|
||||
("sane-backends" ,sane-backends)))
|
||||
(home-page "https://www.freedesktop.org/software/colord/")
|
||||
(synopsis "Color management service")
|
||||
@ -3449,12 +3472,20 @@ both a traditional UI or a modern UI with a GtkHeaderBar.")
|
||||
(base32
|
||||
"036sddvhs0blqpc2ixmjdl9vxynvkn5jpgn0jxr1fxcm4rh3q07a"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "meson_post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("itstool" ,itstool)
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("glib:bin" ,glib "bin") ; for glib-mkmenus
|
||||
("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("amtk" ,amtk)
|
||||
@ -3916,7 +3947,6 @@ for application developers.")
|
||||
("desktop-file-utils" ,desktop-file-utils)
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("glib:bin" ,glib "bin") ;for 'glib-mkenums'
|
||||
("gtk:bin" ,gtk+ "bin") ;for 'gtk-update-icon-cache'
|
||||
("intltool" ,intltool)
|
||||
("itstool" ,itstool)
|
||||
("xmllint" ,libxml2)))
|
||||
@ -3972,6 +4002,12 @@ for application developers.")
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "meson_post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t))
|
||||
(add-before
|
||||
'install 'disable-cache-generation
|
||||
(lambda _
|
||||
@ -4105,6 +4141,12 @@ supports playlists, song ratings, and any codecs installed through gstreamer.")
|
||||
(assoc-ref %outputs "out") "/lib/eog"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "meson_post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t))
|
||||
(add-after 'install 'wrap-eog
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
@ -4118,7 +4160,6 @@ supports playlists, song ratings, and any codecs installed through gstreamer.")
|
||||
`(("intltool" ,intltool)
|
||||
("itstool" ,itstool)
|
||||
("glib" ,glib "bin")
|
||||
("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("pkg-config" ,pkg-config)
|
||||
("xmllint" ,libxml2)))
|
||||
@ -4288,12 +4329,14 @@ DAV, and others.")
|
||||
(name "gusb")
|
||||
(version "0.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/hughsie/libgusb/archive/"
|
||||
version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/hughsie/libgusb.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wa9787ww7s1kl9jml6kiyrjgimlgagq4jmgdj7xcpsx83w10qxk"))))
|
||||
"002pg0p4qzzk5dkyiynm483ir26zxrn4k71c7f6j85mfsdzbgli7"))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs
|
||||
`(("gobject-introspection" ,gobject-introspection)
|
||||
@ -4318,54 +4361,41 @@ USB transfers with your high-level application or system daemon.")
|
||||
(define-public simple-scan
|
||||
(package
|
||||
(name "simple-scan")
|
||||
(version "3.24.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://launchpad.net/simple-scan/"
|
||||
(version-major+minor version) "/"
|
||||
version "/+download/simple-scan-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1czg21cdbd2fgqylxfnzfhhzy69gycf816d5bbaq6hb62hmq7bjy"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(version "3.34.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/simple-scan/"
|
||||
(version-major+minor version) "/"
|
||||
"simple-scan-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "0glzskxdc7p9z7nwcakqc7qzij4l79adlvvb2cj5fmis731zw9yq"))))
|
||||
(build-system meson-build-system)
|
||||
;; TODO: Fix icons in home screen, About dialogue, and scan menu.
|
||||
(arguments
|
||||
'(#:glib-or-gtk? #t))
|
||||
(inputs
|
||||
`(("gtk" ,gtk+)
|
||||
("zlib" ,zlib)
|
||||
("cairo" ,cairo)
|
||||
("colord" ,colord)
|
||||
("gdk-pixbuf" ,gdk-pixbuf)
|
||||
("gusb" ,gusb)
|
||||
("libsane" ,sane-backends)))
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("itstool" ,itstool)
|
||||
("colord" ,colord)
|
||||
("glib" ,glib "bin") ; glib-compile-schemas, etc.
|
||||
("glib" ,glib "bin") ; glib-compile-schemas, etc.
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)
|
||||
("xmllint" ,libxml2)))
|
||||
(arguments
|
||||
'(#:configure-flags '("--disable-packagekit")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'clean
|
||||
(lambda _
|
||||
;; Remove a left-over reference to PackageKit.
|
||||
|
||||
;; https://bugs.launchpad.net/simple-scan/+bug/1462769
|
||||
|
||||
;; There are some generated C files erroneously
|
||||
;; included in the source distribution, and this
|
||||
;; one breaks the build by referring to a
|
||||
;; non-existent header (packagekit.h)
|
||||
(delete-file "src/ui.c"))))))
|
||||
(home-page "https://launchpad.net/simple-scan")
|
||||
(home-page "https://gitlab.gnome.org/GNOME/simple-scan")
|
||||
(synopsis "Document and image scanner")
|
||||
(description "Simple Scan is an easy-to-use application, designed to let
|
||||
users connect their scanner and quickly have the image/document in an
|
||||
appropriate format. Simple Scan is basically a frontend for SANE - which is
|
||||
the same backend as XSANE uses. This means that all existing scanners will
|
||||
work and the interface is well tested.")
|
||||
(description
|
||||
"Document Scanner is an easy-to-use application that lets you connect your
|
||||
scanner and quickly capture images and documents in an appropriate format. It
|
||||
supports any scanner for which a suitable SANE driver is available, which is
|
||||
almost all of them.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public eolie
|
||||
@ -4385,6 +4415,12 @@ work and the interface is well tested.")
|
||||
`(#:glib-or-gtk? #t
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "meson_post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t))
|
||||
(add-after 'wrap 'wrap-more
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
@ -4407,8 +4443,7 @@ work and the interface is well tested.")
|
||||
("itstool" ,itstool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python)
|
||||
("glib:bin" ,glib "bin")
|
||||
("gtk+" ,gtk+ "bin")))
|
||||
("glib:bin" ,glib "bin")))
|
||||
(inputs
|
||||
`(("gobject-introspection" ,gobject-introspection)
|
||||
("glib-networking" ,glib-networking)
|
||||
@ -4454,6 +4489,14 @@ a secret password store, an adblocker, and a modern UI.")
|
||||
;; FAIL
|
||||
'(#:tests? #f
|
||||
#:glib-or-gtk? #t
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'skip-gtk-update-icon-cache
|
||||
;; Don't create 'icon-theme.cache'.
|
||||
(lambda _
|
||||
(substitute* "post_install.py"
|
||||
(("gtk-update-icon-cache") "true"))
|
||||
#t)))
|
||||
#:configure-flags
|
||||
;; Otherwise, the RUNPATH will lack the final 'epiphany' path component.
|
||||
(list (string-append "-Dc_link_args=-Wl,-rpath="
|
||||
@ -4463,7 +4506,6 @@ a secret password store, an adblocker, and a modern UI.")
|
||||
(native-inputs
|
||||
`(("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
|
||||
("glib:bin" ,glib "bin") ; for glib-mkenums
|
||||
("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
|
||||
("intltool" ,intltool)
|
||||
("itstool" ,itstool)
|
||||
("pkg-config" ,pkg-config)
|
||||
@ -4995,15 +5037,15 @@ powerful general purpose text editor.")
|
||||
(define-public zenity
|
||||
(package
|
||||
(name "zenity")
|
||||
(version "3.30.0")
|
||||
(version "3.32.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(uri (string-append "mirror://gnome/sources/zenity/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
"zenity-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wipnp46pd238z9ck5rsckbaw7yla6c936fswq5w94k4c6bgcplr"))))
|
||||
"15fdh8xfdhnwcynyh4byx3mrjxbyprqnwxzi7qn3g5wwaqryg1p7"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
@ -5486,7 +5528,8 @@ services.")
|
||||
(define-public network-manager-openvpn
|
||||
(package
|
||||
(name "network-manager-openvpn")
|
||||
(version "1.8.4")
|
||||
;; Updating? Check whether network-manager-applet still needs libnm_gtk.
|
||||
(version "1.8.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -5495,7 +5538,7 @@ services.")
|
||||
"/NetworkManager-openvpn-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gyrv46h9k17qym48qacq4zpxbap6hi17shn921824zm98m2bdvr"))))
|
||||
"1vri49yff4lj13dnzkpq9nx3a4z1bmbrv807r151plj8m1mwhg5g"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--enable-absolute-paths" "--localstatedir=/var")
|
||||
@ -5633,7 +5676,12 @@ Compatible with Cisco VPN concentrators configured to use IPsec.")
|
||||
to @acronym{VPNs, virtual private networks} via OpenConnect, an open client for
|
||||
Cisco's AnyConnect SSL VPN.")
|
||||
(license license:gpl2+)
|
||||
(properties `((upstream-name . "NetworkManager-openconnect")))))
|
||||
(properties `((upstream-name . "NetworkManager-openconnect")
|
||||
|
||||
;; The 'etc/dbus-1/system.d/nm-openconnect-service.conf'
|
||||
;; file refers to account "nm-openconnect". Specify it here
|
||||
;; so that 'network-manager-service-type' creates it.
|
||||
(user-accounts . ("nm-openconnect"))))))
|
||||
|
||||
(define-public mobile-broadband-provider-info
|
||||
(package
|
||||
@ -5659,18 +5707,21 @@ Cisco's AnyConnect SSL VPN.")
|
||||
(define-public network-manager-applet
|
||||
(package
|
||||
(name "network-manager-applet")
|
||||
(version "1.8.18")
|
||||
(version "1.8.24")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(uri (string-append "mirror://gnome/sources/network-manager-applet/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
"network-manager-applet-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0y31g0lxr93370xi74hbpvcy9m81n5wdkdhq8xy2nqp0y4219p13"))))
|
||||
"1gzvz4wfqfsfclqg56y954al8x6fmz71cnxlx1i4nqr7a25bp2qi"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:glib-or-gtk? #t))
|
||||
'(#:configure-flags
|
||||
;; ‘Nobody should be using this’ but network-manager-openvpn 1.8.10 does.
|
||||
(list "-Dlibnm_gtk=true")
|
||||
#:glib-or-gtk? #t))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("glib:bin" ,glib "bin") ; for glib-compile-resources, etc.
|
||||
@ -6670,6 +6721,7 @@ associations for GNOME.")
|
||||
("gnome-default-applications" ,gnome-default-applications)
|
||||
("gnome-keyring" ,gnome-keyring)
|
||||
("gnome-online-accounts" ,gnome-online-accounts)
|
||||
("gnome-screenshot" ,gnome-screenshot)
|
||||
("gnome-session" ,gnome-session)
|
||||
("gnome-settings-daemon" ,gnome-settings-daemon)
|
||||
("gnome-shell" ,gnome-shell)
|
||||
@ -7062,42 +7114,10 @@ functionality and behavior.")
|
||||
(home-page "https://extensions.gnome.org/")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public numix-theme
|
||||
(package
|
||||
(name "numix-theme")
|
||||
(version "2.6.7")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/numixproject/numix-gtk-theme.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"12mw0kr0kkvg395qlbsvkvaqccr90cmxw5rrsl236zh43kj8grb7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(delete 'check))))
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas
|
||||
("gnome-shell" ,gnome-shell)
|
||||
("gtk+" ,gtk+)
|
||||
("xmllint" ,libxml2)
|
||||
("ruby-sass" ,ruby-sass)))
|
||||
(synopsis "Flat theme with light and dark elements")
|
||||
(description "Numix is a modern flat theme with a combination of light and
|
||||
dark elements. It supports GNOME, Unity, Xfce, and Openbox.")
|
||||
(home-page "https://numixproject.github.io")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public arc-theme
|
||||
(package
|
||||
(name "arc-theme")
|
||||
(version "20181022")
|
||||
(version "20190917")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -7106,7 +7126,7 @@ dark elements. It supports GNOME, Unity, Xfce, and Openbox.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"08951dk1irfadwpr3p323a4fprmxg53rk2r2niwq3v62ryhi3663"))))
|
||||
"1qgpk4p2hi5hd4yy0hj93kq1vs0b32wb8qkaj1wi90c8gwddq5wa"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
@ -7679,7 +7699,7 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).")
|
||||
(define-public gspell
|
||||
(package
|
||||
(name "gspell")
|
||||
(version "1.8.1")
|
||||
(version "1.8.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
@ -7687,7 +7707,7 @@ that support the Assistive Technology Service Provider Interface (AT-SPI).")
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rdv873ixhwr15jwgc2z6k6y0hj353fqnwsy7zkh0c30qwiiv6l1"))
|
||||
"1miybm1z5cl91i25l7mfqlxhv7j8yy8rcgi0s1bgbb2vm71rb4dv"))
|
||||
(patches (search-patches "gspell-dash-test.patch"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
@ -7782,16 +7802,15 @@ views can be printed as PDF or PostScript files, or exported to HTML.")
|
||||
(define-public lollypop
|
||||
(package
|
||||
(name "lollypop")
|
||||
(version "1.1.3.1")
|
||||
(version "1.2.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gitlab.gnome.org/World/lollypop/uploads/"
|
||||
"5a7cd7c72b6d83ae08d0c54c4691f9df/"
|
||||
name "-" version ".tar.xz"))
|
||||
"08f973788c7ca46d9285eec2ac818edb/"
|
||||
"lollypop-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1r5wn0bja9psz6nr1rcaysdkkwz84rbyzpdfw66cxa6wiy52pkjm"))))
|
||||
(base32 "0hvq6m4i62i0m63bg4gzpfb9rv1fk6vq5jl2g3ppcgm4srmfm77j"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:imported-modules ((guix build python-build-system)
|
||||
@ -7807,8 +7826,10 @@ views can be printed as PDF or PostScript files, or exported to HTML.")
|
||||
(wrap-program (string-append out "/bin/lollypop")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))
|
||||
#t))
|
||||
(add-after 'install 'wrap
|
||||
(@@ (guix build python-build-system) wrap)))))
|
||||
(add-after 'install 'wrap-python
|
||||
(@@ (guix build python-build-system) wrap))
|
||||
(add-after 'install 'wrap-glib-or-gtk
|
||||
(@@ (guix build glib-or-gtk-build-system) wrap-all-programs)))))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("itstool" ,itstool)
|
||||
@ -7817,6 +7838,7 @@ views can be printed as PDF or PostScript files, or exported to HTML.")
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("gobject-introspection" ,gobject-introspection)
|
||||
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||
("gst-plugins-base" ,gst-plugins-base)
|
||||
("libnotify" ,libnotify)
|
||||
("libsecret" ,libsecret)
|
||||
@ -7826,7 +7848,7 @@ views can be printed as PDF or PostScript files, or exported to HTML.")
|
||||
("python-gst" ,python-gst)
|
||||
("python-pil" ,python-pillow)
|
||||
("python-pycairo" ,python-pycairo)
|
||||
("python-pygobject" ,python-pygobject)
|
||||
("python-pygobject" ,python-pygobject-3.34)
|
||||
("python-pylast" ,python-pylast)
|
||||
("totem-pl-parser" ,totem-pl-parser)
|
||||
("webkitgtk" ,webkitgtk)))
|
||||
@ -8395,3 +8417,107 @@ access library. It only implements the core plumbing functions, not really the
|
||||
higher level porcelain stuff.")
|
||||
(home-page "https://wiki.gnome.org/Projects/Libgit2-glib")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gitg
|
||||
(package
|
||||
(name "gitg")
|
||||
(version "3.32.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0npg4kqpwl992fgjd2cn3fh84aiwpdp9kd8z7rw2xaj2iazsm914"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:glib-or-gtk? #t
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-post-install-partially
|
||||
(lambda _
|
||||
(substitute* "meson_post_install.py"
|
||||
(("'python'") ; there are no python sources to compile
|
||||
(string-append "'" (which "true") "'"))
|
||||
(("gtk-update-icon-cache") (which "true")))
|
||||
#t))
|
||||
(add-after 'unpack 'fix-test-sources
|
||||
(lambda _
|
||||
(substitute* "tests/libgitg/test-commit.vala"
|
||||
(("/bin/bash") (which "bash")))
|
||||
#t))
|
||||
(add-after 'glib-or-gtk-wrap 'wrap-typelib
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((prog (string-append (assoc-ref outputs "out")
|
||||
"/bin/gitg")))
|
||||
(wrap-program prog
|
||||
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH"))))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("glib" ,glib)
|
||||
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||
("gtk+" ,gtk+)
|
||||
("gtkspell3" ,gtkspell3)
|
||||
("gtksourceview" ,gtksourceview-3)
|
||||
("json-glib" ,json-glib)
|
||||
("libdazzle" ,libdazzle)
|
||||
("libgee" ,libgee)
|
||||
("libgit2" ,libgit2) ; propagated by libgit2-glib
|
||||
("libgit2-glib" ,libgit2-glib)
|
||||
("libpeas" ,libpeas)
|
||||
("libsecret" ,libsecret)
|
||||
("libsoup" ,libsoup)
|
||||
("libxml2" ,libxml2)))
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin")
|
||||
("gtk+:bin" ,gtk+ "bin")
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)))
|
||||
(synopsis "Graphical user interface for git")
|
||||
(description
|
||||
"gitg is a graphical user interface for git. It aims at being a small,
|
||||
fast and convenient tool to visualize the history of git repositories.
|
||||
Besides visualization, gitg also provides several utilities to manage your
|
||||
repository and commit your work.")
|
||||
(home-page "https://wiki.gnome.org/Apps/Gitg")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gnome-mahjongg
|
||||
(package
|
||||
(name "gnome-mahjongg")
|
||||
(version "3.35.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.gnome.org/GNOME/gnome-mahjongg.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"019a66a4m5w4kkb0sm6gxj0wi54n06zdxdlmyqw7h8kbakjizv7l"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:glib-or-gtk? #t))
|
||||
(native-inputs
|
||||
`(("appstream-glib" ,appstream-glib)
|
||||
("gettext" ,gettext-minimal)
|
||||
("glib:bin" ,glib "bin") ;; For glib-compile-resources
|
||||
("gtk+" ,gtk+ "bin") ;; For gtk-update-icon-cache
|
||||
("itstool" ,itstool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)))
|
||||
(propagated-inputs
|
||||
`(("dconf" ,dconf)))
|
||||
(inputs
|
||||
`(("glib" ,glib)
|
||||
("gtk+" ,gtk+)
|
||||
("librsvg" ,librsvg)))
|
||||
(synopsis "Mahjongg tile-matching game")
|
||||
(description "GNOME Mahjongg is a game based on the classic Chinese
|
||||
tile-matching game Mahjong. It features multiple board layouts, tile themes,
|
||||
and a high score table.")
|
||||
(home-page "https://wiki.gnome.org/Apps/Mahjongg")
|
||||
(license license:gpl2+)))
|
||||
|
@ -147,14 +147,14 @@ tool to extract metadata from a file and print the results.")
|
||||
(define-public libmicrohttpd
|
||||
(package
|
||||
(name "libmicrohttpd")
|
||||
(version "0.9.66")
|
||||
(version "0.9.68")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"06xblz77bnn29y7sl43avxbcrjbw486x3416plpr3x3l2pdx8rjf"))))
|
||||
"0q8bc4hrxn6llml7w2vam6n833x8injs39wgdkhwkawr50m6wwf5"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("curl" ,curl)
|
||||
|
@ -66,6 +66,7 @@
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages tor)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
@ -907,8 +908,6 @@ software.")))
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
,@(package-inputs pinentry-tty)))
|
||||
(arguments
|
||||
`(#:configure-flags '("CXXFLAGS=-std=gnu++11")))
|
||||
(description
|
||||
"Pinentry provides a console and a Qt GUI that allows users to enter a
|
||||
passphrase when @code{gpg} is run and needs it.")))
|
||||
@ -1038,7 +1037,7 @@ files, to verify signatures, and to manage the private and public keys.")
|
||||
(define-public parcimonie
|
||||
(package
|
||||
(name "parcimonie")
|
||||
(version "0.10.3")
|
||||
(version "0.11.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gaffer.boum.org/intrigeri/files/"
|
||||
@ -1046,10 +1045,10 @@ files, to verify signatures, and to manage the private and public keys.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1kf891117s1f3k6lxvbjdb21va9gxh29vlp9bd664ssgw266rcyb"))))
|
||||
"14pvapvzrxh1yh8zgcj1llmc2dd8g1fgzskxlja21gmw8c88aqdk"))))
|
||||
(build-system perl-build-system)
|
||||
(inputs
|
||||
`(("gnupg" ,gnupg-1) ; This is the version used by perl-gnupg-interface
|
||||
`(("gnupg" ,gnupg)
|
||||
("perl-config-general" ,perl-config-general)
|
||||
("perl-clone" ,perl-clone)
|
||||
("perl-data" ,perl-data)
|
||||
@ -1069,10 +1068,12 @@ files, to verify signatures, and to manage the private and public keys.")
|
||||
("perl-moox-handlesvia" ,perl-moox-handlesvia)
|
||||
("perl-moox-late" ,perl-moox-late)
|
||||
("perl-moox-options" ,perl-moox-options)
|
||||
("perl-moox-strictconstructor" ,perl-moox-strictconstructor)
|
||||
("perl-namespace-clean" ,perl-namespace-clean)
|
||||
("perl-net-dbus" ,perl-net-dbus)
|
||||
("perl-net-dbus-glib" ,perl-net-dbus-glib)
|
||||
("perl-path-tiny" ,perl-path-tiny)
|
||||
("perl-strictures" ,perl-strictures-2)
|
||||
("perl-test-most" ,perl-test-most)
|
||||
("perl-test-trap" ,perl-test-trap)
|
||||
("perl-time-duration" ,perl-time-duration)
|
||||
@ -1084,24 +1085,29 @@ files, to verify signatures, and to manage the private and public keys.")
|
||||
("perl-xml-parser" ,perl-xml-parser)
|
||||
("perl-xml-twig" ,perl-xml-twig)
|
||||
("torsocks" ,torsocks)))
|
||||
(native-inputs
|
||||
`(("xorg-server" ,xorg-server)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Needed for using gpg-connect-agent during tests.
|
||||
(add-before 'check 'set-HOME
|
||||
(lambda _ (setenv "HOME" "/tmp") #t))
|
||||
(add-before 'check 'prepare-for-tests
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((xorg-server (assoc-ref inputs "xorg-server")))
|
||||
(system (string-append xorg-server "/bin/Xvfb :1 &"))
|
||||
(setenv "DISPLAY" ":1")
|
||||
(setenv "HOME" "/tmp")
|
||||
;; These tests are known to fail
|
||||
(delete-file "t/32-keyserver_defined_on_command_line.t")
|
||||
(delete-file "t/33-checkGpgHasDefinedKeyserver.t")
|
||||
;; The applet is deprecated upstream.
|
||||
(delete-file "t/00-load_all.t")
|
||||
#t)))
|
||||
(add-before 'install 'fix-references
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* "lib/App/Parcimonie/GnuPG/Interface.pm"
|
||||
(("gpg2") "gpg")
|
||||
;; Skip check whether dependencies are in the PATH
|
||||
(("defined which.*") "")
|
||||
(("call\\('parcimonie-torified-gpg'\\)")
|
||||
(string-append "call('" (assoc-ref outputs "out")
|
||||
"/bin/parcimonie-torified-gpg')")))
|
||||
(substitute* "bin/parcimonie-torified-gpg"
|
||||
(("torsocks") (string-append (assoc-ref inputs "torsocks")
|
||||
"/bin/torsocks")))
|
||||
(("defined which.*") ""))
|
||||
#t))
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
|
@ -34,6 +34,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix hg-download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix monads)
|
||||
@ -64,10 +65,12 @@
|
||||
#:use-module (gnu packages pulseaudio)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages node)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages gl)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages rust)
|
||||
#:use-module (gnu packages rust-cbindgen)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages nss)
|
||||
#:use-module (gnu packages icu4c)
|
||||
@ -404,6 +407,127 @@ in C/C++.")
|
||||
("pkg-config" ,pkg-config)
|
||||
("python" ,python-2)))))
|
||||
|
||||
(define mozilla-compare-locales
|
||||
(origin
|
||||
(method hg-fetch)
|
||||
(uri (hg-reference
|
||||
(url "https://hg.mozilla.org/l10n/compare-locales/")
|
||||
(changeset "RELEASE_3_3_0")))
|
||||
(file-name "mozilla-compare-locales")
|
||||
(sha256 (base32 "0biazbq7vbi99b99rfn4szwyx032dkpi09c9z4zs6f1br0f86iy1"))))
|
||||
|
||||
(define (mozilla-locale locale changeset hash-string)
|
||||
(origin
|
||||
(method hg-fetch)
|
||||
(uri (hg-reference
|
||||
(url (string-append "https://hg.mozilla.org/l10n-central/"
|
||||
locale))
|
||||
(changeset changeset)))
|
||||
(file-name (string-append "mozilla-locale-" locale))
|
||||
(sha256 (base32 hash-string))))
|
||||
|
||||
(define-syntax-rule (mozilla-locales (hash-string changeset locale) ...)
|
||||
(list (mozilla-locale locale changeset hash-string)
|
||||
...))
|
||||
|
||||
(define all-mozilla-locales
|
||||
(mozilla-locales
|
||||
;; sha256 changeset locale
|
||||
;;---------------------------------------------------------------------------
|
||||
("0pybx6j2ycbrr1xmv0spv19sd8a1dyzcs8kf6pzn71w8y6kiagcf" "35959cf2343c" "ach")
|
||||
("0dixmkha738w7fkx20nx95xkfyrqb9vczpy6m03qnqfvb76xaxj5" "e8dc1010f909" "af")
|
||||
("124j09va25gwfxdzyfixrli0skxv53c7niagjyp7g3a3kcv2lbhc" "4c67f6b96a7b" "an")
|
||||
("0flgqll3xx0ym0zj0w9j2jw3fmhs6h9m4l5da6m0bpnk5ff80r06" "34cbea5f44a5" "ar")
|
||||
("0kdb1yqfbfz508f4p77z3p1v6fwy190vs5ipj58hgdixjgbxkqay" "b4790b27633c" "ast")
|
||||
("1vm5xw6wg12pygswd3p0qpkaxyryah6nif5n15chb4sb42c1gqcm" "96d341bf49d4" "az")
|
||||
("1j2qrrws51qij6haz5b77n5vzqhsxgs1ppqqw4mdrkacwvz4ciwh" "4adaede00646" "be")
|
||||
("0ydr8f9lbd51prgcbjb5yacb461j8va0s5bqfs0rnglkvhmk6ard" "d1140972aefe" "bg")
|
||||
("0wyw90zjp8kpd1gljng00in9wr2cf59ww6z002lgx5k4gibnqcfd" "2b3ce92c2310" "bn")
|
||||
("0kkq621h1qdmimyrmms9g5p70m54z2ddw4cd962nqbkrnmabq9vn" "426896350893" "br")
|
||||
("0vibhnb3cbpbgf10db04g6vm372kb9i27p0jkwif019f7qprswd8" "7463f339ce07" "bs")
|
||||
("1l8cn2fqfvx7bswzfy9vavv8cd32ha9ygdxxdbxi64wcgw0f80bf" "dab3f05125e4" "ca")
|
||||
("0fik17y8zyg9w82lq501ic73a53c0q9r8v4zgn9bnzgsygig8qpq" "ebb9d989275a" "cak")
|
||||
("0sj29v6144h39wzb4rvxph3cwgvs4gzkgpr0463d3fcs6jdi0kjs" "522352780348" "cs")
|
||||
("1nz8jlx62l69jcdi59hlk8jysm15sh3d1cxqginjmx7w351wsidm" "0791b954c333" "cy")
|
||||
("1vc01q1vlq26xm1vm1x0119jawxxp975p9k8ashmiwncl1bvqb48" "121f5f876f4c" "da")
|
||||
("1iqny61rg57banfbbskc2y3pr6d35fabnxmynv7vxm9jd86pndz3" "95fb3e99a2bc" "de")
|
||||
("06v9j8acx5h8za7m65v6qm0wjbkx6vm46m8sigcp69phyg3fjc96" "90e681b74587" "dsb")
|
||||
("0lbk90x2dxdbh63fycqxspx6jqq2zlzys6grg45balw8yyvzqrkz" "58ba4c13fd42" "el")
|
||||
("0c2ypvy0z8g78s5158v6h9khckq1xps34r5wbiiciix289m43dgl" "8953d8c98a30" "en-CA")
|
||||
("0z3riz3w2z6p710p90ridmwwam4snnz5mn90gd4jc1h2n7vc9mr0" "5a2b9bca3f52" "en-GB")
|
||||
("102gn3h4ap8c3x1p7vfc88vapkfiz6264y6byhxy1axxjk3x3a77" "e87cb1c61d6e" "eo")
|
||||
("148wj6wsx0aq7cpaxk8njj7cb1wfjr2m96dgxq6b3qcv781ldvjn" "5db15fdf95d5" "es-AR")
|
||||
("0r11d8vzvbyz17n371byvkrnszcv1zhr7rg64i58xra3y6d7is7n" "ce2ee0e51a92" "es-CL")
|
||||
("1xmqa8p7lpqvkgg879hfnmf6kxcpawjk8z31cdzfp1hrdlmxg8n7" "7346617620f3" "es-ES")
|
||||
("0jxv3jh2018lnybr9mzqrffvwmr87yab9bh8lxqjj294fxw1hrxm" "687f05eb0c58" "es-MX")
|
||||
("1rpgv7pajv4xldsn1xxsia5j72vn3x8zl5wmbzkyw56lvn9fckvf" "839a5029c496" "et")
|
||||
("0hxp4fr3y05rkpamdb1hlmybn6d3bv3rcawjm3axbpqxbyfdpfzc" "54e8d87230c9" "eu")
|
||||
("1y50knymnmcihw8bhvahicc386mjm6dx4hx0j6fv8sl23wzx2h9m" "c5ffca960f9c" "fa")
|
||||
("0pj9zgi0c3yl3myhvb5afiijayp2lqzhlk630ahxn5hgjgkz0lx7" "75c000a8538d" "ff")
|
||||
("199jg0zv7wp1cq0ik2hf84j99jx5vq2jwac0gaayvjzkh2z83jqr" "f11b2e689e7b" "fi")
|
||||
("1vxkiwwni7470ywy99arxxa56ljkhjrhxslsp1l1l61g6gdbbspr" "49ec4f791806" "fr")
|
||||
("0d8gwdcj0jpjv03nhjds8jrg86pg371xpylaibwri76wlyl7m54i" "faa761a5cfdc" "fy-NL")
|
||||
("0nipbxx11a2sjadzhbi88vgknw5hzr4nqy2722q3kc1212jbi754" "5bd9466f9f9d" "ga-IE")
|
||||
("0bay8mrm65cvmnvqpwqgzr0h3cb18ifzg5kbsbxcvdfm9xv0zi9g" "a4f6a47e82dd" "gd")
|
||||
("00kn5w3nnpw1pxg6hhrn9asf9hgpjd6ia4038iwzcqs68w887qcy" "6c2aa01ada4e" "gl")
|
||||
("0jj13i0ach85c975vaz2rr83mibs29ipssa7qsjkb0y2ch6xya1k" "c2d607e36cb5" "gn")
|
||||
("1nhqbgzilcb0pr7941dxkhg079bf8v7ldikp1s5xli34wf9sabm2" "f34465d6ac1c" "gu-IN")
|
||||
("11bh0541d996cfin1zy72l66753q94i4idgv2waf0h40h9g3z1bm" "c2ecb2762274" "he")
|
||||
("1lslji7hh5lx5ig1xgfjh4cdindsgh3n2a7qlvzwz96gda43lvv4" "94d2bb10ee03" "hi-IN")
|
||||
("1nx5yw00l25i3m3grdm29mi9mi7h0cy5qx02pypir754pk3hiwcc" "08df0d94edd5" "hr")
|
||||
("19yc9dk2pwqycynmx58d1ik6x4mnyfxscgr6sg676dpl613xd7nq" "21b614e77025" "hsb")
|
||||
("0l3z64jlx6b6ivk1b5hwqyx9hm1m5721ywnb2m4zmg3g9fw4vn7f" "f82cad7170af" "hu")
|
||||
("1sn0dxbbf2zwcpybwcw77qb4p0hf6fxapnsnn4avaab5g55dlgz4" "d94c30920396" "hy-AM")
|
||||
("0c92cqxrhv4317kirmhpjk7mrq44yn6fp3v6syxnhz7xwxnhshjm" "6a5f176b0626" "ia")
|
||||
("03gyg9gqsd6pwb9nydglhm46fi2wk2p2qygmhmrf8hnav3ba7n0r" "94e4302e0f85" "id")
|
||||
("0ky8aaps92mn56rvkwn0i13wg8av8hzi1fvr0ahqhjcpj5sfgdwq" "eca348a59888" "is")
|
||||
("01py0sfg7nljcsgpivryrvai4p4wzbcvhgc2ymr19r579nv1vw7g" "d541a6197359" "it")
|
||||
("0iv7vmj43njmi7g1gjzsv68ax4j502d2wnkvbfz1rx11lrqs7yw1" "a5ab3a1d95b7" "ja")
|
||||
("1sr9ccshcw6agbj4hbnpblxixb1jz0m36glas6f9ahxmi7m605si" "63763ffa5a94" "ja-JP-mac")
|
||||
("1as33pzcsdkynrj16dv7w642vl6plbhk650am4l5djwm64f2rgms" "aa83e8555ddc" "ka")
|
||||
("1jwaqb5qps3i5y9iw8l2hrwa0n8lfnx1k9x0p54y3jkh6p3q3fzc" "0e0e25c26247" "kab")
|
||||
("0cjfiwv0q5i8d7fpwb4m2w5ahq687dqjlwlicgpa443yi2zsxr4s" "33117723ceb1" "kk")
|
||||
("0k5b56cv39aaxf9r0p9c27f3fp6yq2ffd4w6qmd0ibpl69sm629d" "aff7b2a7825e" "km")
|
||||
("1a0zg96jgq4zn9cz0h2qwc0vv1fbkfzs5qrgabg62wqgz286jvvv" "ea91638cb1dd" "kn")
|
||||
("0jhmv2n3yx55r6fg3myg7j1c1nhsv25g016m6lh2j023xbr723gp" "88821009b5b3" "ko")
|
||||
("06bybgv4m4i7r9p0qld65j31vbrnljhsdj649dl93msv2r69ilif" "88685d5f07b3" "lij")
|
||||
("1bzjf8smw6ngi88j5g3fawrg54m8fifbhshwjbgkpj7rnrpjgh4w" "e046c7ffa7d0" "lt")
|
||||
("18dmzmpavijb7fwzffas0j5nb6byqp8h6ki7hhf6qb35diqgfq6n" "c520ef4f576c" "lv")
|
||||
("055zf7xj5h1h8mzxj1cjzhngpcvg2p5vs2dmffsa5zfprj02d0dm" "9e43723f18ad" "mk")
|
||||
("1496fbyyzcl075gzcd3xy50h9jyhnzgb544k1scji56yhyfajacb" "ce615fef92c1" "mr")
|
||||
("1wc1q8ksry181pvnysqsq4dhhsg5adw5vgqafmmq5sf6i2bwn2z0" "4fefe88cfaee" "ms")
|
||||
("0awf6mrdwdhy2yvxynssvp1zg1nc2fqbmg2d2bhjcib69zx944xw" "3987a06866fd" "my")
|
||||
("1hycvz7i4jd40hfs5abx6sgfdkafg0jhdgqih9b7lb08aqcl35pj" "2b3b8997d9a1" "nb-NO")
|
||||
("048z1ib46izwryyy8l1x71kq4775n7l2ilbskhsyrbxqryma13k8" "f25324281615" "ne-NP")
|
||||
("1qkxqpyr4la9bn1bqsgc2h9869arglh9n2kwpkq6722jzdbynkz2" "04c7d32c57f6" "nl")
|
||||
("08gnmdll55dbqj7qs63gq1kljbvg24nzns6q4m0av3sszsic0jv5" "5587520e5019" "nn-NO")
|
||||
("1yh2p4ipj5p2b7gh0xxj0n7ndvwn5bw2773ibrh7vz932mkzhhjn" "499386b02695" "oc")
|
||||
("0kjbnixjzv9hvyba4ll20gs76vx84pviy134fvpjp9lfjpnpib55" "31c01c325675" "pa-IN")
|
||||
("0g61imvr4639bbydyi0kwc1il7l1gzlfij4ywx7hdcmq2x6vgb9v" "fb5f3b8dea09" "pl")
|
||||
("13n68d7z94d7943m6fwl4kizbqm3wp82xz69vng4w9vyqlvv7d41" "9a541cbdc748" "pt-BR")
|
||||
("1j8afvrl1afmj2zixrp91rrhag5w4xw90raca1ic6mxyih9kvdi4" "edc959a685c2" "pt-PT")
|
||||
("0wf4a6q9nvcmam2g8ksbymjdnrz59pdr5nirfpjprfhifjmxx4nn" "d2699db715cd" "rm")
|
||||
("1k9qalir5pbh490w1mxyq31yhy9hbxsyrrk11hwlwlgn6syp9nvp" "b5460a9017bc" "ro")
|
||||
("1avy6wyfa5lbvy36wai6mwhhh6x1y8a0jyjk8hvjn52yfxj1gypk" "59ffa8ad047a" "ru")
|
||||
("1cakhm4jxcw1ij0l1vhxw74hsp5wg68i3319dkdncyyc5a2s1qv9" "8b3c8a7ebdfa" "si")
|
||||
("0s534r09bqdfvw3q17y9b1035kzzlafjv656v73mqhyz3fkffsx5" "cb39dc77980e" "sk")
|
||||
("1s58vgmnb9aiaiaqwwcivq3iyzpzj527w2aqh2nrh6xmaw7f43sr" "17d7969b1d9a" "sl")
|
||||
("147qm7x5z8rkf24jpqvkdlqg0fjz1l3zwnaxvkh9y2jpzv7m0x7z" "c55b0e9ff99d" "son")
|
||||
("0nn4r1rxi8cy7x9nmn5ljd8gcsn2rjl2ma2j7waxkafkm4rs6n20" "2bb3808072da" "sq")
|
||||
("0jsb01b94z7qbm59yaj56nb7yx7a6hpgw8v6nzwhbvmnmcsird4p" "c323c0d02d61" "sr")
|
||||
("1n7vv9y4sk3gig56rgfd2jk8jr2160grxk31bd1wkm7fvbndd259" "4220ce487cbc" "sv-SE")
|
||||
("06270mq7gajxfrsb8gqd25v2dac68ask5vvlh6kkkp3hrgy02vid" "6a1dbc2fe1d3" "ta")
|
||||
("10az7pd3npa7n8wq0qywvsj2qrx9592i2wffs3rnc1fviv1i1q0y" "028505b5ecd1" "te")
|
||||
("0yj0c3iyibb3jyypvyiyhbr9asxa48v0nq21kcf9gphi8fnyp5if" "e44d38b6a67b" "th")
|
||||
("1qc4nvhw834lx7p304fxma0fjdr4xfj4lf69dhh6biqz795lx45p" "1e0771d95708" "tr")
|
||||
("1g4y2yq5xp61ncy7c08j7fqqr1jc0m1hjxmbg5659wzif3b3dkg4" "e3c96943e98f" "uk")
|
||||
("1zbi28z1c3p5il7ndixyjsv4nrimzq36zjvlmq10am38ycqr9df8" "f35da1b02691" "ur")
|
||||
("1jrxjjj8k771y0wljqbadxdj4pasg0771jmg4l3hvpgs929i3j9g" "6fd2084b3efe" "uz")
|
||||
("1f8sqgxzgqmw6vzjv3f49lg43q09i3j62f471864vr71815agl8n" "33b5dfd0cd63" "vi")
|
||||
("0ssnsbxw3q5k88fa081gkn1mbqn4j7bm6vb7yvz6h44j214xkz9x" "2d87c0740715" "xh")
|
||||
("0kd3mrvvgczhsmw4rvpxxxc71bb469ayr8r4azf7gc0y5nmlm950" "a2b6625688d3" "zh-CN")
|
||||
("0qy1asyfplkyc89z3g3gfm7b32aka92350b3ayv9d9dcgwxmfdwz" "4d6e959a13d1" "zh-TW")))
|
||||
|
||||
(define (mozilla-patch file-name changeset hash)
|
||||
"Return an origin for CHANGESET from the mozilla-esr60 repository."
|
||||
(origin
|
||||
@ -426,7 +550,8 @@ from forcing GEXP-PROMISE."
|
||||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
|
||||
(define %icecat-version "60.9.0-guix1")
|
||||
(define %icecat-version "68.2.0-guix0-preview3")
|
||||
(define %icecat-build-id "20191031000000") ;must be of the form YYYYMMDDhhmmss
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
@ -448,35 +573,26 @@ from forcing GEXP-PROMISE."
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gy5x2rnnbkqmjd9sq93s3q5na9nkba68xwpizild7k6qn63qicz"))))
|
||||
"0f3gf5gwhxabm6xs29nlxmfqdw3fs7v458vq1fydrglfyvmc5wc5"))))
|
||||
|
||||
(upstream-icecat-base-version "60.7.0") ; maybe older than base-version
|
||||
(upstream-icecat-gnu-version "1")
|
||||
(upstream-icecat-version (string-append upstream-icecat-base-version
|
||||
"-gnu"
|
||||
upstream-icecat-gnu-version))
|
||||
(upstream-icecat-source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://gnu/gnuzilla/" upstream-icecat-base-version
|
||||
"/icecat-" upstream-icecat-version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"09xqdfd8rwbn2n6m7n059qf1psbrj5v5kfzm7gg5xng22ddxawv8"))))
|
||||
|
||||
(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
|
||||
(upstream-icecat-base-version "68.2.0") ; maybe older than base-version
|
||||
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
|
||||
(gnuzilla-commit "930298e1efff3e40721659d8fd7118cdd2477bd4")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "git://git.savannah.gnu.org/gnuzilla.git")
|
||||
(commit gnuzilla-commit)))
|
||||
(file-name (git-file-name "gnuzilla" upstream-icecat-base-version))
|
||||
(file-name (git-file-name "gnuzilla"
|
||||
;;upstream-icecat-base-version
|
||||
(string-take gnuzilla-commit 8)))
|
||||
(sha256
|
||||
(base32
|
||||
"1vqhb0py28hnwcynbaad304ziciz1kn5bv1qg2q4f7g13js3b1hf"))))
|
||||
"14g57b0262qq5s0w8b1lrk8wkvg7m068dfi0ilvhg2q5jrxk3cd0"))))
|
||||
|
||||
(gnuzilla-fixes-patch
|
||||
(local-file (search-patch "icecat-gnuzilla-fixes.patch")))
|
||||
(makeicecat-patch
|
||||
(local-file (search-patch "icecat-makeicecat.patch"))))
|
||||
|
||||
@ -492,9 +608,7 @@ from forcing GEXP-PROMISE."
|
||||
(let ((firefox-dir
|
||||
(string-append "firefox-" #$base-version))
|
||||
(icecat-dir
|
||||
(string-append "icecat-" #$%icecat-version))
|
||||
(old-icecat-dir
|
||||
(string-append "icecat-" #$upstream-icecat-base-version)))
|
||||
(string-append "icecat-" #$%icecat-version)))
|
||||
|
||||
(mkdir "/tmp/bin")
|
||||
(set-path-environment-variable
|
||||
@ -524,6 +638,8 @@ from forcing GEXP-PROMISE."
|
||||
|
||||
(with-directory-excursion "/tmp/gnuzilla"
|
||||
(make-file-writable "makeicecat")
|
||||
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
||||
"-p1" "--input" #+gnuzilla-fixes-patch)
|
||||
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
||||
"-p1" "--input" #+makeicecat-patch)
|
||||
(patch-shebang "makeicecat")
|
||||
@ -540,9 +656,6 @@ from forcing GEXP-PROMISE."
|
||||
(string-append "FFMINOR=" #$minor-version "\n"))
|
||||
(("^FFSUB=.*")
|
||||
(string-append "FFSUB=" #$sub-version "\n"))
|
||||
(("^GNUVERSION=.*")
|
||||
(string-append "GNUVERSION="
|
||||
#$upstream-icecat-gnu-version "\n"))
|
||||
(("^DATA=.*")
|
||||
"DATA=/tmp/gnuzilla/data\n")
|
||||
(("^find extensions/gnu/ ")
|
||||
@ -556,19 +669,39 @@ from forcing GEXP-PROMISE."
|
||||
(rename-file firefox-dir icecat-dir)
|
||||
|
||||
(with-directory-excursion icecat-dir
|
||||
(format #t "Populating l10n directory...~%")
|
||||
(force-output)
|
||||
(mkdir "l10n")
|
||||
(with-directory-excursion "l10n"
|
||||
(for-each
|
||||
(lambda (locale-dir)
|
||||
(let ((locale
|
||||
(string-drop (basename locale-dir)
|
||||
(+ 32 ; length of hash
|
||||
(string-length "-mozilla-locale-")))))
|
||||
(format #t " ~a~%" locale)
|
||||
(force-output)
|
||||
(copy-recursively locale-dir locale
|
||||
#:log (%make-void-port "w"))
|
||||
(for-each make-file-writable (find-files locale))
|
||||
(with-directory-excursion locale
|
||||
(when (file-exists? ".hgtags")
|
||||
(delete-file ".hgtags"))
|
||||
(mkdir-p "browser/chrome/browser/preferences")
|
||||
(call-with-output-file
|
||||
"browser/chrome/browser/preferences/advanced-scripts.dtd"
|
||||
(lambda (port) #f)))))
|
||||
'#+all-mozilla-locales)
|
||||
(copy-recursively #+mozilla-compare-locales
|
||||
"compare-locales"
|
||||
#:log (%make-void-port "w"))
|
||||
(delete-file "compare-locales/.gitignore")
|
||||
(delete-file "compare-locales/.hgignore")
|
||||
(delete-file "compare-locales/.hgtags"))
|
||||
|
||||
(format #t "Running makeicecat script...~%")
|
||||
(force-output)
|
||||
(invoke "bash" "/tmp/gnuzilla/makeicecat")
|
||||
(delete-file-recursively "l10n"))
|
||||
|
||||
(format #t (string-append "Unpacking l10n/* from"
|
||||
" upstream IceCat tarball...~%"))
|
||||
(force-output)
|
||||
(unless (string=? icecat-dir old-icecat-dir)
|
||||
(symlink icecat-dir old-icecat-dir))
|
||||
(invoke "tar" "xf" #+upstream-icecat-source
|
||||
(string-append old-icecat-dir "/l10n"))
|
||||
(invoke "bash" "/tmp/gnuzilla/makeicecat"))
|
||||
|
||||
(format #t "Packing new IceCat tarball...~%")
|
||||
(force-output)
|
||||
@ -605,7 +738,6 @@ from forcing GEXP-PROMISE."
|
||||
("pango" ,pango)
|
||||
("freetype" ,freetype)
|
||||
("harfbuzz" ,harfbuzz)
|
||||
("hunspell" ,hunspell)
|
||||
("libcanberra" ,libcanberra)
|
||||
("libgnome" ,libgnome)
|
||||
("libjpeg-turbo" ,libjpeg-turbo)
|
||||
@ -640,24 +772,28 @@ from forcing GEXP-PROMISE."
|
||||
;; and therefore we prefer to leave them out of 'source', which should be
|
||||
;; a tarball suitable for compilation on any system that IceCat supports.
|
||||
;; (Bug fixes and security fixes, however, should go in 'source').
|
||||
`(("icecat-avoid-bundled-libraries.patch"
|
||||
,(search-patch "icecat-avoid-bundled-libraries.patch"))
|
||||
("icecat-use-system-graphite2+harfbuzz.patch"
|
||||
,(search-patch "icecat-use-system-graphite2+harfbuzz.patch"))
|
||||
("icecat-use-system-media-libs.patch"
|
||||
,(search-patch "icecat-use-system-media-libs.patch"))
|
||||
`(;; XXX TODO: Adapt these patches to IceCat 68.
|
||||
;; ("icecat-avoid-bundled-libraries.patch"
|
||||
;; ,(search-patch "icecat-avoid-bundled-libraries.patch"))
|
||||
;; ("icecat-use-system-graphite2+harfbuzz.patch"
|
||||
;; ,(search-patch "icecat-use-system-graphite2+harfbuzz.patch"))
|
||||
;; ("icecat-use-system-media-libs.patch"
|
||||
;; ,(search-patch "icecat-use-system-media-libs.patch"))
|
||||
|
||||
("patch" ,(canonical-package patch))
|
||||
|
||||
;; Icecat 60 checks for rust>=1.24
|
||||
("rust" ,rust-1.24)
|
||||
("cargo" ,rust-1.24 "cargo")
|
||||
("llvm" ,llvm-3.9.1)
|
||||
("clang" ,clang-3.9.1)
|
||||
("rust" ,rust)
|
||||
("cargo" ,rust "cargo")
|
||||
("rust-cbindgen" ,rust-cbindgen)
|
||||
("llvm" ,llvm)
|
||||
("clang" ,clang)
|
||||
("perl" ,perl)
|
||||
("python" ,python-2) ; Python 3 not supported
|
||||
("node" ,node)
|
||||
("python" ,python)
|
||||
("python-2" ,python-2)
|
||||
("python2-pysqlite" ,python2-pysqlite)
|
||||
("yasm" ,yasm)
|
||||
("nasm" ,nasm) ; XXX FIXME: only needed on x86_64 and i686
|
||||
("pkg-config" ,pkg-config)
|
||||
("autoconf" ,autoconf-2.13)
|
||||
("which" ,which)))
|
||||
@ -681,7 +817,6 @@ from forcing GEXP-PROMISE."
|
||||
"--disable-tests"
|
||||
"--disable-updater"
|
||||
"--disable-crashreporter"
|
||||
"--disable-maintenance-service"
|
||||
"--disable-eme"
|
||||
"--disable-gconf"
|
||||
|
||||
@ -712,11 +847,11 @@ from forcing GEXP-PROMISE."
|
||||
"--with-system-zlib"
|
||||
"--with-system-bz2"
|
||||
"--with-system-jpeg" ; must be libjpeg-turbo
|
||||
"--with-system-libevent"
|
||||
"--with-system-ogg"
|
||||
"--with-system-vorbis"
|
||||
;; "--with-system-theora" ; wants theora-1.2, not yet released
|
||||
"--with-system-libvpx"
|
||||
;; UNBUNDLE-ME! "--with-system-libevent"
|
||||
;; UNBUNDLE-ME! "--with-system-ogg"
|
||||
;; UNBUNDLE-ME! "--with-system-vorbis"
|
||||
;; UNBUNDLE-ME! "--with-system-theora" ; wants theora-1.2, not yet released
|
||||
;; UNBUNDLE-ME! "--with-system-libvpx"
|
||||
"--with-system-icu"
|
||||
|
||||
;; See <https://bugs.gnu.org/32833>
|
||||
@ -725,12 +860,11 @@ from forcing GEXP-PROMISE."
|
||||
;; UNBUNDLE-ME! "--with-system-nspr"
|
||||
;; UNBUNDLE-ME! "--with-system-nss"
|
||||
|
||||
"--with-system-harfbuzz"
|
||||
"--with-system-graphite2"
|
||||
;; UNBUNDLE-ME! "--with-system-harfbuzz"
|
||||
;; UNBUNDLE-ME! "--with-system-graphite2"
|
||||
"--enable-system-pixman"
|
||||
"--enable-system-ffi"
|
||||
"--enable-system-hunspell"
|
||||
"--enable-system-sqlite"
|
||||
;; UNBUNDLE-ME! "--enable-system-sqlite"
|
||||
|
||||
;; Fails with "--with-system-png won't work because
|
||||
;; the system's libpng doesn't have APNG support".
|
||||
@ -748,6 +882,8 @@ from forcing GEXP-PROMISE."
|
||||
#:modules ((ice-9 ftw)
|
||||
(ice-9 rdelim)
|
||||
(ice-9 match)
|
||||
(srfi srfi-34)
|
||||
(srfi srfi-35)
|
||||
,@%gnu-build-system-modules)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
@ -802,18 +938,18 @@ from forcing GEXP-PROMISE."
|
||||
;;
|
||||
"modules/freetype2"
|
||||
"modules/zlib"
|
||||
"modules/libbz2"
|
||||
"ipc/chromium/src/third_party/libevent"
|
||||
"media/libjpeg"
|
||||
"media/libvpx"
|
||||
"media/libogg"
|
||||
"media/libvorbis"
|
||||
;; "media/libtheora" ; wants theora-1.2, not yet released
|
||||
"media/libtremor"
|
||||
"gfx/harfbuzz"
|
||||
"gfx/graphite2"
|
||||
;; "media/libjpeg" ; needed for now, because media/libjpeg/moz.build is referenced from config/external/moz.build
|
||||
;; UNBUNDLE-ME! "ipc/chromium/src/third_party/libevent"
|
||||
;; UNBUNDLE-ME! "media/libvpx"
|
||||
;; UNBUNDLE-ME! "media/libogg"
|
||||
;; UNBUNDLE-ME! "media/libvorbis"
|
||||
;; UNBUNDLE-ME! "media/libtheora" ; wants theora-1.2, not yet released
|
||||
;; UNBUNDLE-ME! "media/libtremor"
|
||||
;; UNBUNDLE-ME! "gfx/harfbuzz"
|
||||
;; UNBUNDLE-ME! "gfx/graphite2"
|
||||
"js/src/ctypes/libffi"
|
||||
"db/sqlite3"))
|
||||
;; UNBUNDLE-ME! "db/sqlite3"
|
||||
))
|
||||
#t))
|
||||
(add-after 'remove-bundled-libraries 'link-libxul-with-libraries
|
||||
(lambda _
|
||||
@ -840,7 +976,7 @@ from forcing GEXP-PROMISE."
|
||||
(lambda _
|
||||
(use-modules (guix build cargo-utils))
|
||||
(let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
|
||||
(substitute* '("Cargo.lock" "servo/Cargo.lock")
|
||||
(substitute* '("Cargo.lock" "gfx/wr/Cargo.lock")
|
||||
(("(\"checksum .* = )\".*\"" all name)
|
||||
(string-append name "\"" null-hash "\"")))
|
||||
(for-each
|
||||
@ -883,6 +1019,7 @@ from forcing GEXP-PROMISE."
|
||||
(setenv "CONFIG_SHELL" bash)
|
||||
(setenv "AUTOCONF" (which "autoconf")) ; must be autoconf-2.13
|
||||
(setenv "CC" "gcc") ; apparently needed when Stylo is enabled
|
||||
(setenv "MOZ_BUILD_DATE" ,%icecat-build-id) ; avoid timestamp
|
||||
(mkdir "../build")
|
||||
(chdir "../build")
|
||||
(format #t "build directory: ~s~%" (getcwd))
|
||||
@ -890,6 +1027,22 @@ from forcing GEXP-PROMISE."
|
||||
(apply invoke bash
|
||||
(string-append srcdir "/configure")
|
||||
flags))))
|
||||
(replace 'build
|
||||
;; The build system often spuriously fails. See
|
||||
;; <https://bugs.gentoo.org/show_bug.cgi?id=680934>. To
|
||||
;; work around this, we try the standard 'build' phase up
|
||||
;; to 5 times.
|
||||
(lambda args
|
||||
(let ((build (assoc-ref %standard-phases 'build)))
|
||||
(let retry ((remaining-attempts 5))
|
||||
(if (= remaining-attempts 1)
|
||||
(apply build args)
|
||||
(guard (c ((invoke-error? c)
|
||||
(format #t "~%Retrying build! (~a attempts remaining)~%~%"
|
||||
(- remaining-attempts 1))
|
||||
(force-output)
|
||||
(retry (- remaining-attempts 1))))
|
||||
(apply build args)))))))
|
||||
(add-before 'configure 'install-desktop-entry
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Install the '.desktop' file.
|
||||
@ -925,16 +1078,23 @@ from forcing GEXP-PROMISE."
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(lib (string-append out "/lib"))
|
||||
(gtk (assoc-ref inputs "gtk+"))
|
||||
(gtk-share (string-append gtk "/share")))
|
||||
(gtk-share (string-append gtk "/share"))
|
||||
(pulseaudio (assoc-ref inputs "pulseaudio"))
|
||||
(pulseaudio-lib (string-append pulseaudio "/lib")))
|
||||
(wrap-program (car (find-files lib "^icecat$"))
|
||||
`("XDG_DATA_DIRS" ":" prefix (,gtk-share)))
|
||||
`("XDG_DATA_DIRS" prefix (,gtk-share))
|
||||
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib)))
|
||||
#t))))))
|
||||
(home-page "https://www.gnu.org/software/gnuzilla/")
|
||||
(synopsis "Entirely free browser derived from Mozilla Firefox")
|
||||
(description
|
||||
"IceCat is the GNU version of the Firefox browser. It is entirely free
|
||||
software, which does not recommend non-free plugins and addons. It also
|
||||
features built-in privacy-protecting features.")
|
||||
features built-in privacy-protecting features.
|
||||
|
||||
WARNING: IceCat 68 has not yet been released by the upstream IceCat project.
|
||||
This is a preview release, and does not currently meet the privacy-respecting
|
||||
standards of the IceCat project.")
|
||||
(license license:mpl2.0) ;and others, see toolkit/content/license.html
|
||||
(properties
|
||||
`((ftp-directory . "/gnu/gnuzilla")
|
||||
|
@ -47,9 +47,7 @@
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
'("CXXFLAGS=-std=c++11") ; required by libsigc++
|
||||
#:phases
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'update-gnutls-api
|
||||
(lambda _
|
||||
@ -88,9 +86,6 @@
|
||||
`(("libsigc++" ,libsigc++)
|
||||
("gnutls" ,gnutls)
|
||||
("libnet6" ,libnet6)))
|
||||
(arguments
|
||||
;; Required by libsigc++.
|
||||
`(#:configure-flags '("CXXFLAGS=-std=c++11")))
|
||||
(home-page "https://gobby.github.io/")
|
||||
(synopsis "Library for building collaborative editors")
|
||||
(description
|
||||
|
@ -216,192 +216,11 @@ in the style of communicating sequential processes (@dfn{CSP}).")
|
||||
(supported-systems '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux"))
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-1.11
|
||||
(package
|
||||
(inherit go-1.4)
|
||||
(name "go")
|
||||
(version "1.11.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://storage.googleapis.com/golang/"
|
||||
name version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09k9zmq7hhgg0bf1y7rwa0kn7q1vkkr94cmg2iv9lq3najh5nykd"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-1.4)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(replace 'prebuild
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib"))
|
||||
(ld (string-append (assoc-ref inputs "libc") "/lib"))
|
||||
(loader (car (find-files ld "^ld-linux.+")))
|
||||
(net-base (assoc-ref inputs "net-base"))
|
||||
(tzdata-path
|
||||
(string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))
|
||||
(output (assoc-ref outputs "out")))
|
||||
|
||||
(for-each delete-file
|
||||
;; Removing net/ tests, which fail when attempting to access
|
||||
;; network resources not present in the build container.
|
||||
'("net/listen_test.go"
|
||||
"net/parse_test.go"
|
||||
"net/cgo_unix_test.go"
|
||||
;; A side effect of these test scripts is testing
|
||||
;; cgo. Attempts at using cgo flags and
|
||||
;; directives with these scripts as specified
|
||||
;; here (https://golang.org/cmd/cgo/) have not
|
||||
;; worked. The tests continue to state that they
|
||||
;; can not find crt1.o despite being present.
|
||||
"cmd/go/testdata/script/list_compiled_imports.txt"
|
||||
"cmd/go/testdata/script/mod_case_cgo.txt"
|
||||
;; https://github.com/golang/go/issues/24884
|
||||
"os/user/user_test.go"))
|
||||
|
||||
(substitute* "os/os_test.go"
|
||||
(("/usr/bin") (getcwd))
|
||||
(("/bin/pwd") (which "pwd"))
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
(substitute* "cmd/vendor/golang.org/x/sys/unix/syscall_unix_test.go"
|
||||
(("/usr/bin") "/tmp"))
|
||||
|
||||
;; Add libgcc to runpath
|
||||
(substitute* "cmd/link/internal/ld/lib.go"
|
||||
(("!rpath.set") "true"))
|
||||
(substitute* "cmd/go/internal/work/gccgo.go"
|
||||
(("cgoldflags := \\[\\]string\\{\\}")
|
||||
(string-append "cgoldflags := []string{"
|
||||
"\"-rpath=" gcclib "\""
|
||||
"}"))
|
||||
(("\"-lgcc_s\", ")
|
||||
(string-append
|
||||
"\"-Wl,-rpath=" gcclib "\", \"-lgcc_s\", ")))
|
||||
(substitute* "cmd/go/internal/work/gc.go"
|
||||
(("ldflags = setextld\\(ldflags, compiler\\)")
|
||||
(string-append
|
||||
"ldflags = setextld(ldflags, compiler)\n"
|
||||
"ldflags = append(ldflags, \"-r\")\n"
|
||||
"ldflags = append(ldflags, \"" gcclib "\")\n")))
|
||||
|
||||
;; Disable failing tests: these tests attempt to access
|
||||
;; commands or network resources which are neither available
|
||||
;; nor necessary for the build to succeed.
|
||||
(for-each
|
||||
(match-lambda
|
||||
((file regex)
|
||||
(substitute* file
|
||||
((regex all before test_name)
|
||||
(string-append before "Disabled" test_name)))))
|
||||
'(("net/net_test.go" "(.+)(TestShutdownUnix.+)")
|
||||
("net/dial_test.go" "(.+)(TestDialTimeout.+)")
|
||||
("os/os_test.go" "(.+)(TestHostname.+)")
|
||||
("time/format_test.go" "(.+)(TestParseInSydney.+)")
|
||||
("time/format_test.go" "(.+)(TestParseInLocation.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestEcho.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestCommandRelativeName.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestCatStdin.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestCatGoodAndBadFile.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExitStatus.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestPipes.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestStdinClose.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestIgnorePipeErrorOnSuccess.+)")
|
||||
("syscall/syscall_unix_test.go" "(.+)(TestPassFD\\(.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExtraFiles/areturn.+)")
|
||||
("cmd/go/go_test.go" "(.+)(TestCoverageWithCgo.+)")
|
||||
("cmd/go/go_test.go" "(.+)(TestTwoPkgConfigs.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestOutputStderrCapture.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExtraFiles.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExtraFilesRace.+)")
|
||||
("net/lookup_test.go" "(.+)(TestLookupPort.+)")
|
||||
("syscall/exec_linux_test.go"
|
||||
"(.+)(TestCloneNEWUSERAndRemapNoRootDisableSetgroups.+)")))
|
||||
|
||||
;; fix shebang for testar script
|
||||
;; note the target script is generated at build time.
|
||||
(substitute* "../misc/cgo/testcarchive/carchive_test.go"
|
||||
(("#!/usr/bin/env") (string-append "#!" (which "env"))))
|
||||
|
||||
(substitute* "net/lookup_unix.go"
|
||||
(("/etc/protocols") (string-append net-base "/etc/protocols")))
|
||||
(substitute* "net/port_unix.go"
|
||||
(("/etc/services") (string-append net-base "/etc/services")))
|
||||
(substitute* "time/zoneinfo_unix.go"
|
||||
(("/usr/share/zoneinfo/") tzdata-path))
|
||||
(substitute* (find-files "cmd" "\\.go")
|
||||
(("/lib(64)?/ld-linux.*\\.so\\.[0-9]") loader))
|
||||
#t)))
|
||||
(add-before 'build 'set-bootstrap-variables
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
;; Tell the build system where to find the bootstrap Go.
|
||||
(let ((go (assoc-ref inputs "go")))
|
||||
(setenv "GOROOT_BOOTSTRAP" go)
|
||||
(setenv "GOGC" "400")
|
||||
#t)))
|
||||
(replace 'build
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; FIXME: Some of the .a files are not bit-reproducible.
|
||||
(let* ((output (assoc-ref outputs "out")))
|
||||
(setenv "CC" (which "gcc"))
|
||||
(setenv "GOOS" "linux")
|
||||
(setenv "GOROOT" (dirname (getcwd)))
|
||||
(setenv "GOROOT_FINAL" output)
|
||||
(setenv "CGO_ENABLED" "1")
|
||||
(invoke "sh" "all.bash"))))
|
||||
|
||||
(replace 'install
|
||||
;; TODO: Most of this could be factorized with Go 1.4.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((output (assoc-ref outputs "out"))
|
||||
(doc_out (assoc-ref outputs "doc"))
|
||||
(docs (string-append doc_out "/share/doc/" ,name "-" ,version))
|
||||
(src (string-append
|
||||
(assoc-ref outputs "tests") "/share/" ,name "-" ,version)))
|
||||
(delete-file-recursively "../pkg/bootstrap")
|
||||
;; Prevent installation of the build cache, which contains
|
||||
;; store references to most of the tools used to build Go and
|
||||
;; would unnecessarily increase the size of Go's closure if it
|
||||
;; was installed.
|
||||
(delete-file-recursively "../pkg/obj")
|
||||
|
||||
(mkdir-p src)
|
||||
(copy-recursively "../test" (string-append src "/test"))
|
||||
(delete-file-recursively "../test")
|
||||
(mkdir-p docs)
|
||||
(copy-recursively "../api" (string-append docs "/api"))
|
||||
(delete-file-recursively "../api")
|
||||
(copy-recursively "../doc" (string-append docs "/doc"))
|
||||
(delete-file-recursively "../doc")
|
||||
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(let* ((filein (string-append "../" file))
|
||||
(fileout (string-append docs "/" file)))
|
||||
(copy-file filein fileout)
|
||||
(delete-file filein)))
|
||||
;; Note the slightly different file names compared to 1.4.
|
||||
'("README.md" "CONTRIBUTORS" "AUTHORS" "PATENTS"
|
||||
"LICENSE" "VERSION" "CONTRIBUTING.md" "robots.txt"))
|
||||
|
||||
(copy-recursively "../" output)
|
||||
#t)))))))
|
||||
(native-inputs
|
||||
`(("go" ,go-1.4)
|
||||
,@(match (%current-system)
|
||||
((or "armhf-linux" "aarch64-linux")
|
||||
`(("gold" ,binutils-gold)))
|
||||
(_ `()))
|
||||
,@(package-native-inputs go-1.4)))
|
||||
(supported-systems %supported-systems)))
|
||||
|
||||
|
||||
(define-public go-1.12
|
||||
(package
|
||||
(inherit go-1.4)
|
||||
(name "go")
|
||||
(version "1.12.7")
|
||||
(version "1.12.13")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@ -409,7 +228,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
|
||||
name version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"04rvwj69gmw3bz8pw5pf10r21ar0pgpnswp15nkddf04dxyl9s4m"))))
|
||||
"19zmrhydd52vhdnzlhxqklzg1mnav434dcgw9wl4iajbvfwd70sk"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-1.4)
|
||||
((#:phases phases)
|
||||
@ -841,182 +660,18 @@ Go programming language.")
|
||||
".*\\.gz$"))
|
||||
#t)))))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-cpu" ,go-golang-org-x-sys-cpu)))
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(synopsis "Supplementary cryptographic libraries in Go")
|
||||
(description "This package provides supplementary cryptographic libraries
|
||||
for the Go language.")
|
||||
(home-page "https://go.googlesource.com/crypto/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-crypto-bcrypt
|
||||
(let ((commit "b7391e95e576cacdcdd422573063bc057239113d")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-crypto-bcrypt")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/crypto")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-crypto-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jqfh81mhgwcc6b9l0bs6rb0707s01qpvn7896i5bsmig46lc7zm"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/bcrypt"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Bcrypt in Go")
|
||||
(description "This package provides a Go implementation of the bcrypt
|
||||
password hashing function.")
|
||||
(home-page "https://go.googlesource.com/crypto/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-crypto-blowfish
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-blowfish")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/blowfish"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Blowfish in Go")
|
||||
(description "This package provides a Go implementation of the Blowfish
|
||||
symmetric-key block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-pbkdf2
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-pbkdf2")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/pbkdf2"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "PBKDF2 in Go")
|
||||
(description "This package provides a Go implementation of the PBKDF2 key
|
||||
derivation function.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-tea
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-tea")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/tea"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Tiny Encryption Algorithm (TEA) in Go")
|
||||
(description "This package provides a Go implementation of the Tiny Encryption
|
||||
Algorithm (TEA) block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-salsa20
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-salsa20")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/salsa20"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Salsa20 in Go")
|
||||
(description "This package provides a Go implementation of the Salsa20
|
||||
stream cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-cast5
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-cast5")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/cast5"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Cast5 in Go")
|
||||
(description "This package provides a Go implementation of the Cast5
|
||||
symmetric-key block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-twofish
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-twofish")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/twofish"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Twofish in Go")
|
||||
(description "This package provides a Go implementation of the Twofish
|
||||
symmetric-key block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-xtea
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-xtea")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/xtea"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "eXtended Tiny Encryption Algorithm (XTEA) in Go")
|
||||
(description "This package provides a Go implementation of the eXtended
|
||||
Tiny Encryption Algorithm (XTEA) block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-ed25519
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-ed25519")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/ed25519"
|
||||
#:unpack-path "golang.org/x/crypto"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(map (lambda (file)
|
||||
(make-file-writable file))
|
||||
(find-files
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/src/golang.org/x/crypto/ed25519/testdata")
|
||||
".*\\.gz$"))
|
||||
#t)))))
|
||||
(synopsis "ED25519 in Go")
|
||||
(description "This package provides a Go implementation of the ED25519
|
||||
signature algorithm.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-ripemd160
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-ripemd160")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt)
|
||||
((#:import-path _)
|
||||
"golang.org/x/crypto/ripemd160")))
|
||||
(synopsis "RIPEMD-160 in Go")
|
||||
(description "This package provides a Go implementation of the RIPEMD-160
|
||||
hash algorithm.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-blake2s
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-blake2s")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt)
|
||||
((#:import-path _)
|
||||
"golang.org/x/crypto/blake2s")))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-cpu" ,go-golang-org-x-sys-cpu)))
|
||||
(synopsis "BLAKE2s in Go")
|
||||
(description "This package provides a Go implementation of the BLAKE2s
|
||||
hash algorithm.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-sha3
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-sha3")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt)
|
||||
((#:import-path _)
|
||||
"golang.org/x/crypto/sha3")))
|
||||
(synopsis "SHA-3 in Go")
|
||||
(description "This package provides a Go implementation of the SHA-3
|
||||
fixed-output-length hash functions and the SHAKE variable-output-length hash
|
||||
functions defined by FIPS-202.")))
|
||||
|
||||
(define-public go-golang-org-x-net-ipv4
|
||||
(define-public go-golang-org-x-net
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-ipv4")
|
||||
(name "go-golang-org-x-net")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@ -1029,208 +684,22 @@ functions defined by FIPS-202.")))
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/ipv4"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "Go IPv4 support")
|
||||
(description "This package provides @code{ipv4}, which implements IP-level
|
||||
socket options for the Internet Protocol version 4.")
|
||||
`(#:import-path "golang.org/x/net"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Go supplemental networking libraries")
|
||||
(description "This package provides supplemental Go networking libraries.")
|
||||
(home-page "https://go.googlesource.com/net")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-bpf
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-bpf")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/bpf"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "Berkeley Packet Filters (BPF) in Go")
|
||||
(description "This package provides a Go implementation of the Berkeley
|
||||
Packet Filter (BPF) virtual machine.")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-context
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-context")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/context"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(synopsis "Golang Context type")
|
||||
(description "This package provides @code{context}, which defines the
|
||||
Context type, which carries deadlines, cancellation signals, and other
|
||||
request-scoped values across API boundaries and between processes.")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-internal-socks
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-internal-socks")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/internal/socks"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(synopsis "")
|
||||
(description "")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-internal-socket
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-internal-socket")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/internal/socket"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "")
|
||||
(description "")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-internal-iana
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-internal-iana")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/internal/iana"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(synopsis "Go support for assigned numbers (IANA)")
|
||||
(description "This package provides @code{iana}, which provides protocol
|
||||
number resources managed by the Internet Assigned Numbers Authority (IANA).")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-ipv6
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-ipv6")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/ipv6"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "Go IPv6 support")
|
||||
(description "This package provides @code{ipv6}, which implements
|
||||
IP-level socket options for the Internet Protocol version 6.")
|
||||
(home-page "https://go.googlesource.com/net")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-proxy
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-proxy")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/proxy"
|
||||
#:unpack-path "golang.org/x/net/"))
|
||||
(synopsis "Go support for network proxies")
|
||||
(description "This package provides @code{proxy}, which provides support
|
||||
for a variety of protocols to proxy network data.")
|
||||
(home-page "https://go.googlesource.com/net")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-sys-unix
|
||||
(define-public go-golang-org-x-sys
|
||||
(let ((commit "04f50cda93cbb67f2afa353c52f342100e80e625")
|
||||
(revision "4"))
|
||||
(package
|
||||
(name "go-golang-org-x-sys-unix")
|
||||
(name "go-golang-org-x-sys")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@ -1243,28 +712,21 @@ for a variety of protocols to proxy network data.")
|
||||
"0hmfsz9y1ingwsn482hlzzmzs7kr3cklm0ana0mbdk70isw2bxnw"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/sys/unix"
|
||||
#:unpack-path "golang.org/x/sys"))
|
||||
`(#:import-path "golang.org/x/sys"
|
||||
;; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Go support for low-level system interaction")
|
||||
(description "This package provides @code{unix}, which offers Go support
|
||||
for low-level interaction with the operating system.")
|
||||
(description "This package provides supplemental libraries offering Go
|
||||
support for low-level interaction with the operating system.")
|
||||
(home-page "https://go.googlesource.com/sys")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-sys-cpu
|
||||
(define-public go-golang-org-x-text
|
||||
(package
|
||||
(inherit go-golang-org-x-sys-unix)
|
||||
(name "go-golang-org-x-sys-cpu")
|
||||
(arguments
|
||||
'(#:import-path "golang.org/x/sys/cpu"
|
||||
#:unpack-path "golang.org/x/sys"))
|
||||
(synopsis "CPU feature detection")
|
||||
(description "Thi spackage provides @code{cpu}, which offers tools for CPU
|
||||
feature detection in Go.")))
|
||||
|
||||
(define-public go-golang-org-x-text-encoding
|
||||
(package
|
||||
(name "go-golang-org-x-text-encoding")
|
||||
(name "go-golang-org-x-text")
|
||||
(version "0.3.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@ -1278,45 +740,23 @@ feature detection in Go.")))
|
||||
"0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/text/encoding"
|
||||
#:unpack-path "golang.org/x/text"))
|
||||
(synopsis "Interface for character encodings for conversion to and from
|
||||
UTF-8")
|
||||
(description "This package defines an interface for character encodings.
|
||||
Specific implementations of encoding for CJK text as well as simple character
|
||||
encodings are provided in subpackages.")
|
||||
`(#:import-path "golang.org/x/text"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Supplemental Go text processing libraries")
|
||||
(description "This package provides supplemental Go libraries for text
|
||||
processing.")
|
||||
(home-page "https://go.googlesource.com/text")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-golang-org-x-text-transform
|
||||
(package
|
||||
(inherit go-golang-org-x-text-encoding)
|
||||
(name "go-golang-org-x-text-transform")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/text/transform"
|
||||
#:unpack-path "golang.org/x/text"))
|
||||
(synopsis "Go text transformation")
|
||||
(description "This package provides @code{transform}, which provides
|
||||
reader and writer wrappers that transform the bytes passing through. Example
|
||||
transformations provided by other packages include normalization and conversion
|
||||
between character sets.")))
|
||||
|
||||
(define-public go-golang-org-x-text-unicode-norm
|
||||
(package
|
||||
(inherit go-golang-org-x-text-encoding)
|
||||
(name "go-golang-org-x-text-unicode-norm")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/text/unicode/norm"
|
||||
#:unpack-path "golang.org/x/text"))
|
||||
(synopsis "Unicode normalization in Go")
|
||||
(description "This package provides @code{norm}, which contains types and
|
||||
functions for normalizing Unicode strings.")))
|
||||
|
||||
(define-public go-golang-org-x-time-rate
|
||||
(define-public go-golang-org-x-time
|
||||
(let ((commit "6dc17368e09b0e8634d71cac8168d853e869a0c7")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "go-golang-org-x-time-rate")
|
||||
(name "go-golang-org-x-time")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
@ -1329,29 +769,20 @@ functions for normalizing Unicode strings.")))
|
||||
"1fx4cf5fpdz00g3c7vxzy92hdcg0vh4yqw00qp5s52j72qixynbk"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/time/rate"
|
||||
#:unpack-path "golang.org/x/time"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-net-context" ,go-golang-org-x-net-context)))
|
||||
(synopsis "Rate limiting in Go")
|
||||
(description "This package provides @{rate}, which implements rate
|
||||
limiting in Go.")
|
||||
`(#:import-path "golang.org/x/time"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
; (propagated-inputs
|
||||
; `(("go-golang-org-x-net" ,go-golang-org-x-net)))
|
||||
(synopsis "Supplemental Go time libraries")
|
||||
(description "This package provides supplemental Go libraries related to
|
||||
time.")
|
||||
(home-page "https://godoc.org/golang.org/x/time/rate")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-crypto-ssh-terminal
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-ssh-terminal")
|
||||
(inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/ssh/terminal"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Terminal functions for Go")
|
||||
(description "This package provides @{terminal}, which implements support
|
||||
functions for dealing with terminals, as commonly found on UNIX systems.")))
|
||||
|
||||
(define-public go-github-com-burntsushi-toml
|
||||
(package
|
||||
(name "go-github-com-burntsushi-toml")
|
||||
@ -1735,17 +1166,17 @@ GNU extensions} to the POSIX recommendations for command-line options.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/sirupsen/logrus.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name 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-golang-org-x-crypto"
|
||||
,go-golang-org-x-crypto)
|
||||
("go-github-com-stretchr-testify"
|
||||
,go-github-com-stretchr-testify)
|
||||
("go-golang-org-x-sys-unix"
|
||||
,go-golang-org-x-sys-unix)))
|
||||
("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(arguments
|
||||
'(#:tests? #f ;FIXME missing dependencies
|
||||
#:import-path "github.com/sirupsen/logrus"))
|
||||
@ -1834,12 +1265,11 @@ SysVinit, and more.")
|
||||
"1yg2zrikn3vkvkx5mn51p6bfjk840qdkn7ahhhvvcsc8mpigrjc6"))))
|
||||
(build-system go-build-system)
|
||||
(native-inputs
|
||||
`(("go-golang-org-x-sys-unix"
|
||||
,go-golang-org-x-sys-unix)
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)
|
||||
("go-github-com-sirupsen-logrus"
|
||||
,go-github-com-sirupsen-logrus)
|
||||
("go-golang-org-x-crypto-ssh-terminal"
|
||||
,go-golang-org-x-crypto-ssh-terminal)))
|
||||
("go-golang-org-x-crypto"
|
||||
,go-golang-org-x-crypto)))
|
||||
(arguments
|
||||
'(#:import-path "github.com/docker/distribution"
|
||||
#:phases
|
||||
@ -2011,7 +1441,7 @@ values.")
|
||||
"1i77aq4gf9as03m8fpfh8fq49n4z9j7548blrcsidm1xhslzk5xd"))))
|
||||
(build-system go-build-system)
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(arguments
|
||||
'(#:import-path "github.com/mattn/go-isatty"))
|
||||
(home-page "https://github.com/mattn/go-isatty")
|
||||
@ -2350,7 +1780,7 @@ and lookup requests. Browse requests are not supported yet.")
|
||||
("taglib" ,taglib)))
|
||||
(arguments
|
||||
`(#:import-path "github.com/wtolson/go-taglib"
|
||||
;; Tests don't pass "vet" on go-1.11. See
|
||||
;; Tests don't pass "vet" on Go since 1.11. See
|
||||
;; https://github.com/wtolson/go-taglib/issues/12.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
@ -2379,8 +1809,12 @@ and lookup requests. Browse requests are not supported yet.")
|
||||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/gogo/protobuf/proto"
|
||||
#:unpack-path "github.com/gogo/protobuf"))
|
||||
`(#:import-path "github.com/gogo/protobuf"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Protocol Buffers for Go with Gadgets")
|
||||
(description "Gogoprotobuf is a fork of golang/protobuf with extra code
|
||||
generation features. This code generation is used to achieve:
|
||||
@ -2395,86 +1829,6 @@ generation features. This code generation is used to achieve:
|
||||
(home-page "https://github.com/gogo/protobuf")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-gogo-protobuf-protoc-gen-gogo
|
||||
(package
|
||||
(name "go-github-com-gogo-protobuf-protoc-gen-gogo")
|
||||
(version "1.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gogo/protobuf")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/gogo/protobuf/protoc-gen-gogo"
|
||||
#:unpack-path "github.com/gogo/protobuf"
|
||||
#:tests? #f)) ; Requires the unpackaged 'protoc-min-version'
|
||||
(synopsis "Protocol Buffers for Go with Gadgets")
|
||||
(description "Gogoprotobuf is a fork of golang/protobuf with extra code
|
||||
generation features. This code generation is used to achieve:
|
||||
@itemize
|
||||
@item fast marshalling and unmarshalling
|
||||
@item more canonical Go structures
|
||||
@item goprotobuf compatibility
|
||||
@item less typing by optionally generating extra helper code
|
||||
@item peace of mind by optionally generating test and benchmark code
|
||||
@item other serialization formats
|
||||
@end itemize")
|
||||
(home-page "https://github.com/gogo/protobuf")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-gogo-protobuf-gogoproto
|
||||
(package
|
||||
(name "go-github-com-gogo-protobuf-gogoproto")
|
||||
(version "1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gogo/protobuf.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:unpack-path "github.com/gogo/protobuf"
|
||||
#:import-path "github.com/gogo/protobuf/gogoproto"))
|
||||
(home-page "https://github.com/gogo/protobuf")
|
||||
(synopsis "Extensions to protocol buffers")
|
||||
(description "This package provides extensions to the Gogo protocol buffers
|
||||
implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-gogo-protobuf-proto
|
||||
(package
|
||||
(name "go-github-com-gogo-protobuf-proto")
|
||||
(version "1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gogo/protobuf.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:unpack-path "github.com/gogo/protobuf"
|
||||
#:import-path "github.com/gogo/protobuf/proto"))
|
||||
(home-page "https://github.com/gogo/protobuf")
|
||||
(synopsis "Protocol buffers component")
|
||||
(description "This is a component of the Gogo protocol buffers
|
||||
implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-libp2p-go-flow-metrics
|
||||
(let ((commit "7e5a55af485341567f98d6847a373eb5ddcdcd43")
|
||||
(revision "0"))
|
||||
@ -2663,9 +2017,9 @@ Architecture Processors\" by J. Guilford et al.")
|
||||
(arguments
|
||||
'(#:import-path "github.com/libp2p/go-libp2p-crypto"))
|
||||
(native-inputs
|
||||
`(("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
`(("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)))
|
||||
(home-page
|
||||
"https://github.com/libp2p/go-libp2p-crypto")
|
||||
@ -2811,8 +2165,7 @@ required by Go's standard Hash interface.")
|
||||
("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/multiformats/go-multihash")
|
||||
(synopsis "Multihash implementation in Go")
|
||||
(description "Multihash implementation in Go.")
|
||||
@ -2839,7 +2192,7 @@ required by Go's standard Hash interface.")
|
||||
'(#:import-path "github.com/libp2p/go-libp2p-peer"))
|
||||
(native-inputs
|
||||
`(("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
@ -2847,9 +2200,7 @@ required by Go's standard Hash interface.")
|
||||
("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash)
|
||||
("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)
|
||||
("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/libp2p/go-libp2p-peer")
|
||||
(synopsis "PKI based identities for use in go-libp2p")
|
||||
(description "PKI based identities for use in @command{go-libp2p}.")
|
||||
@ -2907,14 +2258,12 @@ required by Go's standard Hash interface.")
|
||||
("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
|
||||
("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg)
|
||||
("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)
|
||||
("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/libp2p/go-libp2p-metrics")
|
||||
(synopsis "Connection wrapper for go-libp2p that provides bandwidth metrics")
|
||||
(description "A connection wrapper for @command{go-libp2p} that provides bandwidth
|
||||
@ -2987,8 +2336,7 @@ cross-compilation.")
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/multiformats/go-multiaddr")
|
||||
(synopsis "Composable and future-proof network addresses")
|
||||
(description "Multiaddr is a standard way to represent addresses that
|
||||
@ -3032,8 +2380,7 @@ does the following:
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/multiformats/go-multiaddr-net")
|
||||
(synopsis "Multiaddress net tools")
|
||||
(description "This package provides Multiaddr specific versions of
|
||||
@ -3388,8 +2735,7 @@ colorspaces.")
|
||||
(arguments
|
||||
'(#:import-path "github.com/gdamore/encoding"))
|
||||
(inputs
|
||||
`(("go-golang-org-x-text-encoding" ,go-golang-org-x-text-encoding)
|
||||
("go-golang-org-x-text-transform" ,go-golang-org-x-text-transform)))
|
||||
`(("go-golang-org-x-text" ,go-golang-org-x-text)))
|
||||
(home-page "https://github.com/gdamore/encoding")
|
||||
(synopsis "Provide encodings missing from Go")
|
||||
(description "This package provides useful encodings not included in the
|
||||
@ -3430,8 +2776,7 @@ non-UTF-friendly sources.")
|
||||
(inputs
|
||||
`(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth)
|
||||
("go-golang-org-colorful" ,go-golang-org-colorful)
|
||||
("go-golang-org-x-text-encoding" ,go-golang-org-x-text-encoding)
|
||||
("go-golang-org-x-text-transform" ,go-golang-org-x-text-transform)
|
||||
("go-golang-org-x-text" ,go-golang-org-x-text)
|
||||
("go-github-com-gdamore-encoding" ,go-github-com-gdamore-encoding)))
|
||||
(home-page "https://github.com/gdamore/tcell")
|
||||
(synopsis "Provide a cell-based view for text terminals")
|
||||
@ -3678,6 +3023,7 @@ a cron spec parser and job runner.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/shirou/gopsutil")
|
||||
(commit commit))) ; XXX
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x1g4r32q4201nr2b754xnrrndmwsrhfr7zg37spya86qrmijnws"))))
|
||||
|
@ -171,7 +171,7 @@ coordinates as well as partial support for adjustments in global coordinate syst
|
||||
(define-public gpxsee
|
||||
(package
|
||||
(name "gpxsee")
|
||||
(version "7.12")
|
||||
(version "7.16")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@ -180,7 +180,7 @@ coordinates as well as partial support for adjustments in global coordinate syst
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0c3axs3mm6xzabwbvy9vgq1sryjpi4h91nwzy9iyv9zjxz7phgzc"))))
|
||||
"1mkfhb2c9qafjpva600nyn6yik49l4q1k6id1xvrci37wsn6ijav"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
@ -389,7 +389,7 @@ contains supporting code for evaluation and parameter tuning.")
|
||||
PYTHONCFLAGS =-I~a/include/python~am/ -I~a/lib/python~a/site-packages/numpy/core/include
|
||||
LIBS = -lpython~am -lfaiss
|
||||
SHAREDFLAGS = -shared -fopenmp
|
||||
CXXFLAGS = -fpermissive -std=c++11 -fopenmp -fPIC
|
||||
CXXFLAGS = -fpermissive -fopenmp -fPIC
|
||||
CPUFLAGS = ~{~a ~}~%"
|
||||
(assoc-ref inputs "python*") python-version
|
||||
(assoc-ref inputs "python-numpy") python-version
|
||||
|
@ -291,7 +291,7 @@ more.")
|
||||
(define-public cgal
|
||||
(package
|
||||
(name "cgal")
|
||||
(version "4.8.1")
|
||||
(version "4.14.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@ -299,19 +299,15 @@ more.")
|
||||
"CGAL-" version "/CGAL-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1c41yzl2jg3d6zx5k0iccwqwibp950q7dr7z7pp4xi9wlph3c87s"))))
|
||||
"08lrp3hfwdypggz4138bnkh6bjxn441zg2y9xnq5mrjfc5ini6w1"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(;; "RelWithDebInfo" is not supported.
|
||||
#:build-type "Release"
|
||||
|
||||
;; No 'test' target.
|
||||
#:tests? #f))
|
||||
'(#:tests? #f)) ; no test target
|
||||
(inputs
|
||||
`(("mpfr" ,mpfr)
|
||||
("gmp" ,gmp)
|
||||
("boost" ,boost)))
|
||||
(home-page "http://cgal.org/")
|
||||
(home-page "https://www.cgal.org/")
|
||||
(synopsis "Computational geometry algorithms library")
|
||||
(description
|
||||
"CGAL provides easy access to efficient and reliable geometric algorithms
|
||||
@ -433,23 +429,31 @@ graphics.")
|
||||
#t))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'change-directory
|
||||
(lambda _
|
||||
(chdir "OpenEXR")
|
||||
#t))
|
||||
(add-after 'change-directory 'disable-broken-test
|
||||
;; This test fails on i686. Upstream developers suggest that
|
||||
;; this test is broken on i686 and can be safely disabled:
|
||||
;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748
|
||||
(add-before 'check 'increase-test-timeout
|
||||
(lambda _
|
||||
(substitute* "IlmImfTest/main.cpp"
|
||||
(("#include \"testOptimizedInterleavePatterns.h\"")
|
||||
"//#include \"testOptimizedInterleavePatterns.h\"")
|
||||
(("TEST \\(testOptimizedInterleavePatterns")
|
||||
"//TEST (testOptimizedInterleavePatterns"))
|
||||
#t)))))
|
||||
;; On armhf-linux, we need to override the CTest default
|
||||
;; timeout of 1500 seconds for the OpenEXR.IlmImf test.
|
||||
(setenv "CTEST_TEST_TIMEOUT" "2000")
|
||||
#t))
|
||||
,@(if (not (target-64bit?))
|
||||
`((add-after 'change-directory 'disable-broken-test
|
||||
;; This test fails on i686. Upstream developers suggest that
|
||||
;; this test is broken on i686 and can be safely disabled:
|
||||
;; https://github.com/openexr/openexr/issues/67#issuecomment-21169748
|
||||
(lambda _
|
||||
(substitute* "IlmImfTest/main.cpp"
|
||||
((".*testOptimizedInterleavePatterns.*") "")
|
||||
;; This test is broken in 2.4.0 and will be fixed in a later
|
||||
;; release: <https://github.com/openexr/openexr/issues/571>.
|
||||
((".*testLargeDataWindowOffsets.*") ""))
|
||||
#t)))
|
||||
'()))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(propagated-inputs
|
||||
@ -665,7 +669,6 @@ virtual reality, scientific visualization and modeling.")
|
||||
(list "COMPILED_BY=Guix"
|
||||
(string-append "--with-boost-libdir="
|
||||
(assoc-ref %build-inputs "boost") "/lib")
|
||||
"CXXFLAGS=-std=c++11"
|
||||
"--disable-optimiz-arch")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
@ -1026,12 +1029,13 @@ requirements.")
|
||||
(define-public opensubdiv
|
||||
(package
|
||||
(name "opensubdiv")
|
||||
(version "3_4_0")
|
||||
(version "3.4.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/PixarAnimationStudios/OpenSubdiv")
|
||||
(commit (string-append "v" version))))
|
||||
(url "https://github.com/PixarAnimationStudios/OpenSubdiv")
|
||||
(commit (string-append "v" (string-join (string-split version #\.)
|
||||
"_")))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
|
@ -44,6 +44,7 @@
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system perl)
|
||||
@ -1093,7 +1094,7 @@ toolkit.")
|
||||
(define-public gtkmm
|
||||
(package
|
||||
(name "gtkmm")
|
||||
(version "3.24.0")
|
||||
(version "3.24.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
@ -1101,7 +1102,7 @@ toolkit.")
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hxaq4x9jqj8vvnv3sb6nwapz83v8lclbm887qqci0g50llcjpyg"))))
|
||||
"1hxdnhavjyvbcpxhd5z17l9fj4182028s66lc0s16qqqrldhjwbd"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
("glib" ,glib "bin") ;for 'glib-compile-resources'
|
||||
@ -1319,14 +1320,14 @@ produces identical output on all those targets.")
|
||||
(define-public perl-gtk2
|
||||
(package
|
||||
(name "perl-gtk2")
|
||||
(version "1.24992")
|
||||
(version "1.24993")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/X/XA/XAOC/Gtk2-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1044rj3wbfmgaif2jb0k28m2aczli6ai2n5yvn6pr7zjyw16kvd2"))))
|
||||
"0ry9jfvfgdwzalxcvwsgr7plhk3agx7p40l0fqdf3vrf7ds47i29"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-extutils-depends" ,perl-extutils-depends)
|
||||
@ -1737,7 +1738,7 @@ independent of your desktop environment, and supports global key bindings.")
|
||||
(define-public yad
|
||||
(package
|
||||
(name "yad")
|
||||
(version "0.41.0")
|
||||
(version "5.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@ -1746,24 +1747,24 @@ independent of your desktop environment, and supports global key bindings.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1hkxiich898sbacpg3jflf6i8l4hkfnc0zh10rr376v0mnzbn6jn"))))
|
||||
(build-system gnu-build-system)
|
||||
(base32 "07rd61hvilsxxrj7lf8c9k0a8glj07s48m7ya8d45030r90g3lvc"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
'("--with-gtk=gtk3"
|
||||
"--enable-html"
|
||||
"--enable-gio"
|
||||
"--enable-spell"
|
||||
"--enable-icon-browser")
|
||||
;; Passing --enable-foo will silently disable foo if prerequisite
|
||||
;; inputs are missing, not abort the build as one might expect.
|
||||
;; ‘--enable-html’ adds a huge webkitgtk dependency. It was never
|
||||
;; present in the past and nobody complained.
|
||||
'("--enable-icon-browser"
|
||||
"--enable-spell") ; gspell checking support
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
(add-after 'bootstrap 'intltoolize
|
||||
(lambda _
|
||||
(invoke "autoreconf" "-vif")
|
||||
(invoke "intltoolize" "--force" "--automake")
|
||||
#t)))))
|
||||
(invoke "intltoolize" "--force" "--automake"))))))
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+)))
|
||||
`(("gspell" ,gspell)
|
||||
("gtk+" ,gtk+)))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
|
@ -41,6 +41,7 @@
|
||||
(define-module (gnu packages guile-xyz)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages aspell)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
@ -778,6 +779,7 @@ messaging library.")
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jerry40/guile-kernel")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0aj04853bqm47ivfcmrgpb7w3wkis847kc7qrwsa5zcn9h38qh2f"))))
|
||||
@ -1594,14 +1596,14 @@ many readers as needed).")
|
||||
(define-public guile-ncurses
|
||||
(package
|
||||
(name "guile-ncurses")
|
||||
(version "2.2")
|
||||
(version "3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/guile-ncurses/guile-ncurses-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wvggbr4xv8idh1hzd8caj4xfp4pln78a7w1wqzd4zgzwmnzxr2f"))))
|
||||
"038xbffalhymg26lvmzgf7ljilxz2f2zmqg5r5nfzbipfbprwjhf"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("ncurses" ,ncurses)
|
||||
("guile" ,guile-2.2)))
|
||||
@ -1856,11 +1858,14 @@ interface for reading articles in any format.")
|
||||
(version "1.3.0")
|
||||
(home-page "https://github.com/aconchillo/guile-redis")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append home-page "/archive/" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1li70a2716my9q9zfq0qn2x5d1cir9k2vx0jm9glm464yaf1vj39"))))
|
||||
"14izs8daxh7pb7vwpxi5g427qa31137jkaxrb1cy5rpjkwchy723"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
@ -1974,6 +1979,7 @@ format is also supported.")
|
||||
(uri (git-reference
|
||||
(url "https://git.elephly.net/software/guile-picture-language.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ydvw9dvssdvlvhh1dr8inyzy2x6m41qgp8hsivca1xysr4gc23a"))))
|
||||
@ -1994,40 +2000,38 @@ The picture values can directly be displayed in Geiser.")
|
||||
(license license:lgpl3+))))
|
||||
|
||||
(define-public guile-studio
|
||||
(let ((commit "4d63f3d684f61bf83566745e8572496cdf6daad0")
|
||||
(revision "2"))
|
||||
(let ((commit "98fbbbd08de396cd8a0e45f2a4badf1c733a5772")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "guile-studio")
|
||||
(version (git-version "0" revision commit))
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.elephly.net/software/guile-studio.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1d3hhw3c3mk5i87xvfqa643674f08j1jd1rc1pl534gydz529vd5"))))
|
||||
"0rxl5gv2mavycwkl33lcwyb3z71j2f4zyzk60k7vl3hzszpr08iq"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; there are none
|
||||
#:make-flags
|
||||
(list (string-append "ICONS_DIR="
|
||||
(assoc-ref %build-inputs "adwaita-icon-theme")
|
||||
"/share/icons/Adwaita/")
|
||||
(string-append "PICT_DIR="
|
||||
(assoc-ref %build-inputs "guile-picture-language"))
|
||||
(string-append "EMACS_DIR="
|
||||
(assoc-ref %build-inputs "emacs"))
|
||||
(string-append "GUILE_DIR="
|
||||
(assoc-ref %build-inputs "guile"))
|
||||
(string-join (cons "INPUTS=" (map cdr %build-inputs)))
|
||||
(string-append "PREFIX=" (assoc-ref %outputs "out")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'build
|
||||
(lambda* (#:key source inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin/"))
|
||||
(share (string-append out "/share/")))
|
||||
(mkdir-p share)
|
||||
(mkdir-p bin)
|
||||
(apply invoke "guile" "-s" "guile-studio-configure.scm"
|
||||
out
|
||||
(assoc-ref inputs "emacs")
|
||||
(assoc-ref inputs "guile-picture-language")
|
||||
(string-append (assoc-ref inputs "adwaita-icon-theme")
|
||||
"/share/icons/Adwaita/")
|
||||
(map cdr inputs))
|
||||
#t)))
|
||||
(delete 'install))))
|
||||
(inputs
|
||||
`(("guile" ,guile-2.2)
|
||||
@ -2039,6 +2043,8 @@ The picture values can directly be displayed in Geiser.")
|
||||
("emacs-smart-mode-line" ,emacs-smart-mode-line)
|
||||
("emacs-paren-face" ,emacs-paren-face)
|
||||
("adwaita-icon-theme" ,adwaita-icon-theme)))
|
||||
(native-inputs
|
||||
`(("texinfo" ,texinfo)))
|
||||
(home-page "https://gnu.org/software/guile")
|
||||
(synopsis "IDE for Guile")
|
||||
(description
|
||||
@ -2609,3 +2615,47 @@ bindings to Vigra C (a C wrapper to most of the Vigra functionality) and is
|
||||
enriched with pure Guile Scheme algorithms, all accessible through a nice,
|
||||
clean and easy to use high level API.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public guile-ffi-fftw
|
||||
(let ((commit "95d7ffb55860f3163c5283ecec1ef43bc3d174dd")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "guile-ffi-fftw")
|
||||
(version (git-version "0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/lloda/guile-ffi-fftw.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "guile-ffi-fftw" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0v9vk9cr4x9gn36lihi9gfkxyiqak0i598v5li6qw8bg95004p49"))))
|
||||
(build-system guile-build-system)
|
||||
(arguments
|
||||
`(#:source-directory "mod"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'prepare-build
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "mod/ffi/fftw.scm"
|
||||
(("\\(getenv \"GUILE_FFI_FFTW_LIBFFTW3_PATH\"\\)")
|
||||
(format #f "\"~a/lib\"" (assoc-ref inputs "fftw"))))
|
||||
#t))
|
||||
(add-after 'build 'check
|
||||
(lambda _
|
||||
(invoke "guile" "-L" "mod"
|
||||
"-s" "test/test-ffi-fftw.scm"))))))
|
||||
(inputs
|
||||
`(("fftw" ,fftw)
|
||||
("guile" ,guile-2.2)))
|
||||
(home-page "https://github.com/lloda/guile-ffi-fftw/")
|
||||
(synopsis "Access FFTW through Guile's FFI")
|
||||
(description "This is a minimal set of Guile FFI bindings for the FFTW
|
||||
library's ‘guru interface’. It provides two functions: @code{fftw-dft! rank
|
||||
sign in out} and @code{fftw-dft rank sign in}. These bindings being minimal,
|
||||
there is no support for computing & reusing plans, or split r/i transforms, or
|
||||
anything other than straight complex DFTs.")
|
||||
;; TODO: This might actually be LGPLv3+
|
||||
;; See https://github.com/lloda/guile-ffi-fftw/issues/1
|
||||
(license license:gpl3+))))
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user