Merge branch 'master' into staging
This commit is contained in:
commit
86990eeda2
2
README
2
README
|
@ -20,7 +20,7 @@ Guix is based on the [[https://nixos.org/nix/][Nix]] package manager.
|
|||
|
||||
GNU Guix currently depends on the following packages:
|
||||
|
||||
- [[https://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.9 or later
|
||||
- [[https://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.13 or later
|
||||
- [[https://gnupg.org/][GNU libgcrypt]]
|
||||
- [[https://www.gnu.org/software/make/][GNU Make]]
|
||||
- [[https://www.gnutls.org][GnuTLS]] compiled with guile support enabled.
|
||||
|
|
|
@ -132,16 +132,11 @@ if test "x$guix_build_daemon" = "xyes"; then
|
|||
AC_DEFINE_UNQUOTED([GUIX_SUBSTITUTE_URLS], ["$guix_substitute_urls"],
|
||||
[Default list of substitute URLs used by 'guix-daemon'.])
|
||||
|
||||
dnl Check whether the 'offload' build hook can be built (uses
|
||||
dnl 'restore-file-set', which requires unbuffered custom binary input
|
||||
dnl ports from Guile >= 2.0.10.)
|
||||
GUIX_CHECK_UNBUFFERED_CBIP
|
||||
|
||||
dnl Check for Guile-SSH, which is required by 'guix offload'.
|
||||
GUIX_CHECK_GUILE_SSH
|
||||
|
||||
case "x$ac_cv_guix_cbips_support_setvbuf$guix_cv_have_recent_guile_ssh" in
|
||||
xyesyes)
|
||||
case "x$guix_cv_have_recent_guile_ssh" in
|
||||
xyes)
|
||||
guix_build_daemon_offload="yes"
|
||||
AC_DEFINE([HAVE_DAEMON_OFFLOAD_HOOK], [1],
|
||||
[Define if the daemon's 'offload' build hook is being built (requires Guile-SSH).])
|
||||
|
|
|
@ -98,7 +98,7 @@ if test "x$GUILD" = "x"; then
|
|||
fi
|
||||
|
||||
if test "x$GUILE_EFFECTIVE_VERSION" = "x2.0"; then
|
||||
PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.9])
|
||||
PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.13])
|
||||
fi
|
||||
|
||||
dnl Installation directories for .scm and .go files.
|
||||
|
|
964
doc/guix.texi
964
doc/guix.texi
|
@ -45,7 +45,8 @@ Copyright @copyright{} 2017 George Clemmer@*
|
|||
Copyright @copyright{} 2017 Andy Wingo@*
|
||||
Copyright @copyright{} 2017, 2018 Arun Isaac@*
|
||||
Copyright @copyright{} 2017 nee@*
|
||||
Copyright @copyright{} 2018 Rutger Helling
|
||||
Copyright @copyright{} 2018 Rutger Helling@*
|
||||
Copyright @copyright{} 2018 Oleg Pykhalov
|
||||
|
||||
Permission is granted to copy, distribute and/or modify this document
|
||||
under the terms of the GNU Free Documentation License, Version 1.3 or
|
||||
|
@ -601,7 +602,7 @@ in the Guix source tree for additional details.
|
|||
GNU Guix depends on the following packages:
|
||||
|
||||
@itemize
|
||||
@item @url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.9 or
|
||||
@item @url{http://gnu.org/software/guile/, GNU Guile}, version 2.0.13 or
|
||||
later, including 2.2.x;
|
||||
@item @url{http://gnupg.org/, GNU libgcrypt};
|
||||
@item
|
||||
|
@ -18542,55 +18543,930 @@ By default, Cgit can be accessed on port 80 (@code{http://localhost:80}).
|
|||
(service cgit-service-type)
|
||||
@end example
|
||||
|
||||
@deftp {Data Type} cgit-configuration
|
||||
Data type representing the configuration of Cgit.
|
||||
This type has the following parameters:
|
||||
@c %start of fragment
|
||||
|
||||
@table @asis
|
||||
@item @code{config-file} (default: @code{(cgit-configuration-file)})
|
||||
The configuration file to use for Cgit. This can be set to a
|
||||
@dfn{cgit-configuration-file} record value, or any gexp
|
||||
(@pxref{G-Expressions}).
|
||||
Available @code{cgit-configuration} fields are:
|
||||
|
||||
For example, to instead use a local file, the @code{local-file} function
|
||||
can be used:
|
||||
@deftypevr {@code{cgit-configuration} parameter} package package
|
||||
The CGIT package.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} nginx-server-configuration-list nginx
|
||||
NGINX configuration.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string about-filter
|
||||
Specifies a command which will be invoked to format the content of about
|
||||
pages (both top-level and for each repository).
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string agefile
|
||||
Specifies a path, relative to each repository path, which can be used to
|
||||
specify the date and time of the youngest commit in the repository.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string auth-filter
|
||||
Specifies a command that will be invoked for authenticating repository
|
||||
access.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string branch-sort
|
||||
Flag which, when set to @samp{age}, enables date ordering in the branch
|
||||
ref list, and when set @samp{name} enables ordering by branch name.
|
||||
|
||||
Defaults to @samp{"name"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string cache-root
|
||||
Path used to store the cgit cache entries.
|
||||
|
||||
Defaults to @samp{"/var/cache/cgit"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-static-ttl
|
||||
Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of repository pages accessed with a fixed SHA1.
|
||||
|
||||
Defaults to @samp{-1}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-dynamic-ttl
|
||||
Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of repository pages accessed without a fixed SHA1.
|
||||
|
||||
Defaults to @samp{5}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-repo-ttl
|
||||
Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of the repository summary page.
|
||||
|
||||
Defaults to @samp{5}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-root-ttl
|
||||
Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of the repository index page.
|
||||
|
||||
Defaults to @samp{5}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-scanrc-ttl
|
||||
Number which specifies the time-to-live, in minutes, for the result of
|
||||
scanning a path for Git repositories.
|
||||
|
||||
Defaults to @samp{15}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-about-ttl
|
||||
Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of the repository about page.
|
||||
|
||||
Defaults to @samp{15}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-snapshot-ttl
|
||||
Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of snapshots.
|
||||
|
||||
Defaults to @samp{5}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer cache-size
|
||||
The maximum number of entries in the cgit cache. When set to @samp{0},
|
||||
caching is disabled.
|
||||
|
||||
Defaults to @samp{0}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean case-sensitive-sort?
|
||||
Sort items in the repo list case sensitively.
|
||||
|
||||
Defaults to @samp{#t}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} list clone-prefix
|
||||
List of common prefixes which, when combined with a repository URL,
|
||||
generates valid clone URLs for the repository.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} list clone-url
|
||||
List of @code{clone-url} templates.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string commit-filter
|
||||
Command which will be invoked to format commit messages.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string commit-sort
|
||||
Flag which, when set to @samp{date}, enables strict date ordering in the
|
||||
commit log, and when set to @samp{topo} enables strict topological
|
||||
ordering.
|
||||
|
||||
Defaults to @samp{"git log"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string css
|
||||
URL which specifies the css document to include in all cgit pages.
|
||||
|
||||
Defaults to @samp{"/share/cgit/cgit.css"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string email-filter
|
||||
Specifies a command which will be invoked to format names and email
|
||||
address of committers, authors, and taggers, as represented in various
|
||||
places throughout the cgit interface.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean embedded?
|
||||
Flag which, when set to @samp{#t}, will make cgit generate a HTML
|
||||
fragment suitable for embedding in other HTML pages.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-commit-graph?
|
||||
Flag which, when set to @samp{#t}, will make cgit print an ASCII-art
|
||||
commit history graph to the left of the commit messages in the
|
||||
repository log page.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-filter-overrides?
|
||||
Flag which, when set to @samp{#t}, allows all filter settings to be
|
||||
overridden in repository-specific cgitrc files.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-follow-links?
|
||||
Flag which, when set to @samp{#t}, allows users to follow a file in the
|
||||
log view.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-http-clone?
|
||||
If set to @samp{#t}, cgit will act as an dumb HTTP endpoint for Git
|
||||
clones.
|
||||
|
||||
Defaults to @samp{#t}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-index-links?
|
||||
Flag which, when set to @samp{#t}, will make cgit generate extra links
|
||||
"summary", "commit", "tree" for each repo in the repository index.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-index-owner?
|
||||
Flag which, when set to @samp{#t}, will make cgit display the owner of
|
||||
each repo in the repository index.
|
||||
|
||||
Defaults to @samp{#t}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-log-filecount?
|
||||
Flag which, when set to @samp{#t}, will make cgit print the number of
|
||||
modified files for each commit on the repository log page.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-log-linecount?
|
||||
Flag which, when set to @samp{#t}, will make cgit print the number of
|
||||
added and removed lines for each commit on the repository log page.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-remote-branches?
|
||||
Flag which, when set to @code{#t}, will make cgit display remote
|
||||
branches in the summary and refs views.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-subject-links?
|
||||
Flag which, when set to @code{1}, will make cgit use the subject of the
|
||||
parent commit as link text when generating links to parent commits in
|
||||
commit view.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-html-serving?
|
||||
Flag which, when set to @samp{#t}, will make cgit use the subject of the
|
||||
parent commit as link text when generating links to parent commits in
|
||||
commit view.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-tree-linenumbers?
|
||||
Flag which, when set to @samp{#t}, will make cgit generate linenumber
|
||||
links for plaintext blobs printed in the tree view.
|
||||
|
||||
Defaults to @samp{#t}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean enable-git-config?
|
||||
Flag which, when set to @samp{#f}, will allow cgit to use Git config to
|
||||
set any repo specific settings.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string favicon
|
||||
URL used as link to a shortcut icon for cgit.
|
||||
|
||||
Defaults to @samp{"/favicon.ico"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string footer
|
||||
The content of the file specified with this option will be included
|
||||
verbatim at the bottom of all pages (i.e. it replaces the standard
|
||||
"generated by..." message).
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string head-include
|
||||
The content of the file specified with this option will be included
|
||||
verbatim in the HTML HEAD section on all pages.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string header
|
||||
The content of the file specified with this option will be included
|
||||
verbatim at the top of all pages.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string include
|
||||
Name of a configfile to include before the rest of the current config-
|
||||
file is parsed.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string index-header
|
||||
The content of the file specified with this option will be included
|
||||
verbatim above the repository index.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string index-info
|
||||
The content of the file specified with this option will be included
|
||||
verbatim below the heading on the repository index page.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean local-time?
|
||||
Flag which, if set to @samp{#t}, makes cgit print commit and tag times
|
||||
in the servers timezone.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string logo
|
||||
URL which specifies the source of an image which will be used as a logo
|
||||
on all cgit pages.
|
||||
|
||||
Defaults to @samp{"/share/cgit/cgit.png"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string logo-link
|
||||
URL loaded when clicking on the cgit logo image.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string owner-filter
|
||||
Command which will be invoked to format the Owner column of the main
|
||||
page.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer max-atom-items
|
||||
Number of items to display in atom feeds view.
|
||||
|
||||
Defaults to @samp{10}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer max-commit-count
|
||||
Number of entries to list per page in "log" view.
|
||||
|
||||
Defaults to @samp{50}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer max-message-length
|
||||
Number of commit message characters to display in "log" view.
|
||||
|
||||
Defaults to @samp{80}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer max-repo-count
|
||||
Specifies the number of entries to list per page on the repository index
|
||||
page.
|
||||
|
||||
Defaults to @samp{50}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer max-repodesc-length
|
||||
Specifies the maximum number of repo description characters to display
|
||||
on the repository index page.
|
||||
|
||||
Defaults to @samp{80}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer max-blob-size
|
||||
Specifies the maximum size of a blob to display HTML for in KBytes.
|
||||
|
||||
Defaults to @samp{0}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string max-stats
|
||||
Maximum statistics period. Valid values are @samp{week},@samp{month},
|
||||
@samp{quarter} and @samp{year}.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} mimetype-alist mimetype
|
||||
Mimetype for the specified filename extension.
|
||||
|
||||
Defaults to @samp{((gif "image/gif") (html "text/html") (jpg
|
||||
"image/jpeg") (jpeg "image/jpeg") (pdf "application/pdf") (png
|
||||
"image/png") (svg "image/svg+xml"))}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string mimetype-file
|
||||
Specifies the file to use for automatic mimetype lookup.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string module-link
|
||||
Text which will be used as the formatstring for a hyperlink when a
|
||||
submodule is printed in a directory listing.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean nocache?
|
||||
If set to the value @samp{#t} caching will be disabled.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean noplainemail?
|
||||
If set to @samp{#t} showing full author email addresses will be
|
||||
disabled.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean noheader?
|
||||
Flag which, when set to @samp{#t}, will make cgit omit the standard
|
||||
header on all pages.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string readme
|
||||
Text which will be used as default value for @code{cgit-repo-readme}.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean remove-suffix?
|
||||
If set to @code{#t} and @code{repository-directory} is enabled, if any
|
||||
repositories are found with a suffix of @code{.git}, this suffix will be
|
||||
removed for the URL and name.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer renamelimit
|
||||
Maximum number of files to consider when detecting renames.
|
||||
|
||||
Defaults to @samp{-1}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string repository-sort
|
||||
The way in which repositories in each section are sorted.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} robots-list robots
|
||||
Text used as content for the @code{robots} meta-tag.
|
||||
|
||||
Defaults to @samp{("noindex" "nofollow")}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string root-desc
|
||||
Text printed below the heading on the repository index page.
|
||||
|
||||
Defaults to @samp{"a fast webinterface for the git dscm"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string root-readme
|
||||
The content of the file specified with this option will be included
|
||||
verbatim below thef "about" link on the repository index page.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string root-title
|
||||
Text printed as heading on the repository index page.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean scan-hidden-path
|
||||
If set to @samp{#t} and repository-directory is enabled,
|
||||
repository-directory will recurse into directories whose name starts
|
||||
with a period. Otherwise, repository-directory will stay away from such
|
||||
directories, considered as "hidden". Note that this does not apply to
|
||||
the ".git" directory in non-bare repos.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} list snapshots
|
||||
Text which specifies the default set of snapshot formats that cgit
|
||||
generates links for.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} repository-directory repository-directory
|
||||
Name of the directory to scan for repositories (represents
|
||||
@code{scan-path}).
|
||||
|
||||
Defaults to @samp{"/srv/git"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string section
|
||||
The name of the current repository section - all repositories defined
|
||||
after this option will inherit the current section name.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string section-sort
|
||||
Flag which, when set to @samp{1}, will sort the sections on the
|
||||
repository listing by name.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer section-from-path
|
||||
A number which, if defined prior to repository-directory, specifies how
|
||||
many path elements from each repo path to use as a default section name.
|
||||
|
||||
Defaults to @samp{0}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} boolean side-by-side-diffs?
|
||||
If set to @samp{#t} shows side-by-side diffs instead of unidiffs per
|
||||
default.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string source-filter
|
||||
Specifies a command which will be invoked to format plaintext blobs in
|
||||
the tree view.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer summary-branches
|
||||
Specifies the number of branches to display in the repository "summary"
|
||||
view.
|
||||
|
||||
Defaults to @samp{10}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer summary-log
|
||||
Specifies the number of log entries to display in the repository
|
||||
"summary" view.
|
||||
|
||||
Defaults to @samp{10}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} integer summary-tags
|
||||
Specifies the number of tags to display in the repository "summary"
|
||||
view.
|
||||
|
||||
Defaults to @samp{10}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string strict-export
|
||||
Filename which, if specified, needs to be present within the repository
|
||||
for cgit to allow access to that repository.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} string virtual-root
|
||||
URL which, if specified, will be used as root for all cgit links.
|
||||
|
||||
Defaults to @samp{"/"}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} repository-cgit-configuration-list repositories
|
||||
A list of @dfn{cgit-repo} records to use with config.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
Available @code{repository-cgit-configuration} fields are:
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-list snapshots
|
||||
A mask of snapshot formats for this repo that cgit generates links for,
|
||||
restricted by the global @code{snapshots} setting.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string source-filter
|
||||
Override the default @code{source-filter}.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string url
|
||||
The relative URL used to access the repository.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string about-filter
|
||||
Override the default @code{about-filter}.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string branch-sort
|
||||
Flag which, when set to @samp{age}, enables date ordering in the branch
|
||||
ref list, and when set to @samp{name} enables ordering by branch name.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-list clone-url
|
||||
A list of URLs which can be used to clone repo.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string commit-filter
|
||||
Override the default @code{commit-filter}.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string commit-sort
|
||||
Flag which, when set to @samp{date}, enables strict date ordering in the
|
||||
commit log, and when set to @samp{topo} enables strict topological
|
||||
ordering.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string defbranch
|
||||
The name of the default branch for this repository. If no such branch
|
||||
exists in the repository, the first branch name (when sorted) is used as
|
||||
default instead. By default branch pointed to by HEAD, or "master" if
|
||||
there is no suitable HEAD.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string desc
|
||||
The value to show as repository description.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string homepage
|
||||
The value to show as repository homepage.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string email-filter
|
||||
Override the default @code{email-filter}.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean enable-commit-graph?
|
||||
A flag which can be used to disable the global setting
|
||||
@code{enable-commit-graph?}.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean enable-log-filecount?
|
||||
A flag which can be used to disable the global setting
|
||||
@code{enable-log-filecount?}.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean enable-log-linecount?
|
||||
A flag which can be used to disable the global setting
|
||||
@code{enable-log-linecount?}.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean enable-remote-branches?
|
||||
Flag which, when set to @code{#t}, will make cgit display remote
|
||||
branches in the summary and refs views.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean enable-subject-links?
|
||||
A flag which can be used to override the global setting
|
||||
@code{enable-subject-links?}.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean enable-html-serving?
|
||||
A flag which can be used to override the global setting
|
||||
@code{enable-html-serving?}.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean hide?
|
||||
Flag which, when set to @code{#t}, hides the repository from the
|
||||
repository index.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-boolean ignore?
|
||||
Flag which, when set to @samp{#t}, ignores the repository.
|
||||
|
||||
Defaults to @samp{#f}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string logo
|
||||
URL which specifies the source of an image which will be used as a logo
|
||||
on this repo’s pages.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string logo-link
|
||||
URL loaded when clicking on the cgit logo image.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string owner-filter
|
||||
Override the default @code{owner-filter}.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string module-link
|
||||
Text which will be used as the formatstring for a hyperlink when a
|
||||
submodule is printed in a directory listing. The arguments for the
|
||||
formatstring are the path and SHA1 of the submodule commit.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} module-link-path module-link-path
|
||||
Text which will be used as the formatstring for a hyperlink when a
|
||||
submodule with the specified subdirectory path is printed in a directory
|
||||
listing.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string max-stats
|
||||
Override the default maximum statistics period.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string name
|
||||
The value to show as repository name.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string owner
|
||||
A value used to identify the owner of the repository.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string path
|
||||
An absolute path to the repository directory.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string readme
|
||||
A path (relative to repo) which specifies a file to include verbatim as
|
||||
the "About" page for this repo.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-string section
|
||||
The name of the current repository section - all repositories defined
|
||||
after this option will inherit the current section name.
|
||||
|
||||
Defaults to @samp{""}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{repository-cgit-configuration} parameter} repo-list extra-options
|
||||
Extra options will be appended to cgitrc file.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{cgit-configuration} parameter} list extra-options
|
||||
Extra options will be appended to cgitrc file.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
|
||||
@end deftypevr
|
||||
|
||||
@c %end of fragment
|
||||
|
||||
However, it could be that you just want to get a @code{cgitrc} up and
|
||||
running. In that case, you can pass an @code{opaque-cgit-configuration}
|
||||
as a record to @code{cgit-service-type}. As its name indicates, an
|
||||
opaque configuration does not have easy reflective capabilities.
|
||||
|
||||
Available @code{opaque-cgit-configuration} fields are:
|
||||
|
||||
@deftypevr {@code{opaque-cgit-configuration} parameter} package cgit
|
||||
The cgit package.
|
||||
@end deftypevr
|
||||
|
||||
@deftypevr {@code{opaque-cgit-configuration} parameter} string string
|
||||
The contents of the @code{cgitrc}, as a string.
|
||||
@end deftypevr
|
||||
|
||||
For example, if your @code{cgitrc} is just the empty string, you
|
||||
could instantiate a cgit service like this:
|
||||
|
||||
@example
|
||||
(service cgit-service-type
|
||||
(cgit-configuration
|
||||
(config-file (local-file "./my-cgitrc.conf"))))
|
||||
(opaque-cgit-configuration
|
||||
(cgitrc "")))
|
||||
@end example
|
||||
|
||||
@item @code{package} (default: @code{cgit})
|
||||
The Cgit package to use.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@deftp {Data Type} cgit-configuration-file
|
||||
Data type representing the configuration options for Cgit.
|
||||
This type has the following parameters:
|
||||
|
||||
@table @asis
|
||||
@item @code{css} (default: @code{"/share/cgit/cgit.css"})
|
||||
URL which specifies the css document to include in all Cgit pages.
|
||||
|
||||
@item @code{logo} (default: @code{"/share/cgit/cgit.png"})
|
||||
URL which specifies the source of an image which will be used as a logo
|
||||
on all Cgit pages.
|
||||
|
||||
@item @code{virtual-root} (default: @code{"/"})
|
||||
URL which, if specified, will be used as root for all Cgit links.
|
||||
|
||||
@item @code{repository-directory} (default: @code{"/srv/git"})
|
||||
Name of the directory to scan for repositories.
|
||||
|
||||
@item @code{robots} (default: @code{(list "noindex" "nofollow")})
|
||||
Text used as content for the ``robots'' meta-tag.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@node Setuid Programs
|
||||
@subsection Setuid Programs
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -180,10 +180,6 @@ success, false otherwise. When RECURSIVE? is true, load its dependencies
|
|||
first (à la 'modprobe'.) The actual files containing modules depended on are
|
||||
obtained by calling LOOKUP-MODULE with the module name. Modules whose name
|
||||
appears in BLACK-LIST are not loaded."
|
||||
(define (slurp module)
|
||||
;; TODO: Use 'finit_module' to reduce memory usage.
|
||||
(call-with-input-file file get-bytevector-all))
|
||||
|
||||
(define (black-listed? module)
|
||||
(let ((result (member module black-list)))
|
||||
(when result
|
||||
|
@ -200,16 +196,20 @@ appears in BLACK-LIST are not loaded."
|
|||
(and (not (black-listed? (file-name->module-name file)))
|
||||
(or (not recursive?)
|
||||
(load-dependencies file))
|
||||
(begin
|
||||
(let ((fd #f))
|
||||
(format (current-module-debugging-port)
|
||||
"loading Linux module from '~a'...~%" file)
|
||||
|
||||
(catch 'system-error
|
||||
(lambda ()
|
||||
(load-linux-module (slurp file)))
|
||||
(set! fd (open-fdes file O_RDONLY))
|
||||
(load-linux-module/fd fd)
|
||||
(close-fdes fd)
|
||||
#t)
|
||||
(lambda args
|
||||
;; If this module was already loaded and we're in modprobe style, ignore
|
||||
;; the error.
|
||||
(when fd (close-fdes fd))
|
||||
(or (and recursive? (= EEXIST (system-error-errno args)))
|
||||
(apply throw args)))))))
|
||||
|
||||
|
|
11
gnu/local.mk
11
gnu/local.mk
|
@ -4,7 +4,7 @@
|
|||
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||
# Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
|
||||
# Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
|
||||
# Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
|
||||
# Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||
# Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
|
||||
# Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
|
@ -52,6 +52,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/packages/acl.scm \
|
||||
%D%/packages/admin.scm \
|
||||
%D%/packages/adns.scm \
|
||||
%D%/packages/agda.scm \
|
||||
%D%/packages/algebra.scm \
|
||||
%D%/packages/aidc.scm \
|
||||
%D%/packages/android.scm \
|
||||
|
@ -453,6 +454,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/services/avahi.scm \
|
||||
%D%/services/base.scm \
|
||||
%D%/services/certbot.scm \
|
||||
%D%/services/cgit.scm \
|
||||
%D%/services/configuration.scm \
|
||||
%D%/services/cuirass.scm \
|
||||
%D%/services/cups.scm \
|
||||
|
@ -608,7 +610,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/cursynth-wave-rand.patch \
|
||||
%D%/packages/patches/cvs-2017-12836.patch \
|
||||
%D%/packages/patches/cyrus-sasl-CVE-2013-4122.patch \
|
||||
%D%/packages/patches/dblatex-remove-multirow.patch \
|
||||
%D%/packages/patches/dbus-helper-search-path.patch \
|
||||
%D%/packages/patches/deja-dup-use-ref-keyword-for-iter.patch \
|
||||
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
|
||||
|
@ -617,7 +618,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \
|
||||
%D%/packages/patches/doc++-include-directives.patch \
|
||||
%D%/packages/patches/doc++-segfault-fix.patch \
|
||||
%D%/packages/patches/dovecot-CVE-2017-15132.patch \
|
||||
%D%/packages/patches/doxygen-test.patch \
|
||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||
%D%/packages/patches/eigen-arm-neon-fixes.patch \
|
||||
|
@ -971,7 +971,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \
|
||||
%D%/packages/patches/perl-deterministic-ordering.patch \
|
||||
%D%/packages/patches/perl-finance-quote-unuse-mozilla-ca.patch \
|
||||
%D%/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch \
|
||||
%D%/packages/patches/perl-io-socket-ssl-openssl-1.0.2f-fix.patch \
|
||||
%D%/packages/patches/perl-net-amazon-s3-moose-warning.patch \
|
||||
%D%/packages/patches/perl-net-dns-resolver-programmable-fix.patch \
|
||||
|
@ -1030,13 +1029,13 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \
|
||||
%D%/packages/patches/python-networkx2-reproducible-build.patch \
|
||||
%D%/packages/patches/python-nose-timer-drop-ordereddict.patch \
|
||||
%D%/packages/patches/python-parse-too-many-fields.patch \
|
||||
%D%/packages/patches/python-pillow-fix-failing-tests.patch \
|
||||
%D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \
|
||||
%D%/packages/patches/python-statsmodels-fix-tests.patch \
|
||||
%D%/packages/patches/python-scikit-learn-fix-test-non-determinism.patch \
|
||||
%D%/packages/patches/python-configobj-setuptools.patch \
|
||||
%D%/packages/patches/python-faker-fix-build-32bit.patch \
|
||||
%D%/packages/patches/python-mox3-python3.6-compat.patch \
|
||||
%D%/packages/patches/python-paste-remove-website-test.patch \
|
||||
%D%/packages/patches/python-paste-remove-timing-test.patch \
|
||||
%D%/packages/patches/python-pygit2-disable-network-tests.patch \
|
||||
|
@ -1142,6 +1141,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/vsearch-unbundle-cityhash.patch \
|
||||
%D%/packages/patches/vte-CVE-2012-2738-pt1.patch \
|
||||
%D%/packages/patches/vte-CVE-2012-2738-pt2.patch \
|
||||
%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/weechat-python.patch \
|
||||
|
@ -1160,6 +1160,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/wpa-supplicant-fix-zeroed-keys.patch \
|
||||
%D%/packages/patches/wpa-supplicant-fix-nonce-reuse.patch \
|
||||
%D%/packages/patches/wpa-supplicant-krack-followups.patch \
|
||||
%D%/packages/patches/wxmaxima-do-not-use-old-gnuplot-parameters.patch \
|
||||
%D%/packages/patches/xboing-CVE-2004-0149.patch \
|
||||
%D%/packages/patches/xcb-proto-python3-print.patch \
|
||||
%D%/packages/patches/xcb-proto-python3-whitespace.patch \
|
||||
|
|
|
@ -2373,7 +2373,7 @@ make it a perfect utility on modern distros.")
|
|||
(define-public thermald
|
||||
(package
|
||||
(name "thermald")
|
||||
(version "1.6")
|
||||
(version "1.7.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2381,7 +2381,7 @@ make it a perfect utility on modern distros.")
|
|||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256 (base32
|
||||
"14klz9fnvi9jdlaqwrp61xa5nh051n8ykrs1fh1wxd7j66qf2fn6"))))
|
||||
"0isgmav3z3nb5bsdya8m3haqhzj1lyfjx7i812cqfjrh2a9msin4"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
|
@ -2389,6 +2389,7 @@ make it a perfect utility on modern distros.")
|
|||
'unpack 'autogen.sh-and-fix-paths
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
;; XXX this can probably be removed after version 1.7.1.
|
||||
;; upstartconfir is hardcoded to /etc/init and the build
|
||||
;; system tries to mkdir that. We don't even need upstart
|
||||
;; files at all; this is a fast and kludgy workaround
|
||||
|
@ -2397,7 +2398,8 @@ make it a perfect utility on modern distros.")
|
|||
(string-append "upstartconfdir = "
|
||||
out "/etc/init")))
|
||||
;; Now run autogen
|
||||
(zero? (system* "sh" "autogen.sh"))))))
|
||||
(invoke "sh" "autogen.sh")
|
||||
#t))))
|
||||
#:configure-flags
|
||||
(let ((out (assoc-ref %outputs "out")))
|
||||
(list (string-append "--sysconfdir="
|
||||
|
|
|
@ -0,0 +1,86 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Alex ter Weele <alex.ter.weele@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages agda)
|
||||
#:use-module (gnu packages haskell)
|
||||
#:use-module (gnu packages haskell-check)
|
||||
#:use-module (gnu packages haskell-web)
|
||||
#:use-module (guix build-system haskell)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages))
|
||||
|
||||
(define-public agda
|
||||
(package
|
||||
(name "agda")
|
||||
(version "2.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/Agda/Agda-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r80vw7vnvbgq47y50v050malv7zvv2p2kg6f47i04r0b2ix855a"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("cpphs" ,cpphs)
|
||||
("ghc-alex" ,ghc-alex)
|
||||
("ghc-async" ,ghc-async)
|
||||
("ghc-blaze-html" ,ghc-blaze-html)
|
||||
("ghc-boxes" ,ghc-boxes)
|
||||
("ghc-data-hash" ,ghc-data-hash)
|
||||
("ghc-edisoncore" ,ghc-edisoncore)
|
||||
("ghc-edit-distance" ,ghc-edit-distance)
|
||||
("ghc-equivalence" ,ghc-equivalence)
|
||||
("ghc-geniplate-mirror" ,ghc-geniplate-mirror)
|
||||
("ghc-gitrev" ,ghc-gitrev)
|
||||
("ghc-happy" ,ghc-happy)
|
||||
("ghc-hashable" ,ghc-hashable)
|
||||
("ghc-hashtables" ,ghc-hashtables)
|
||||
("ghc-ieee754" ,ghc-ieee754)
|
||||
("ghc-monadplus" ,ghc-monadplus)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-murmur-hash" ,ghc-murmur-hash)
|
||||
("ghc-uri-encode" ,ghc-uri-encode)
|
||||
("ghc-parallel" ,ghc-parallel)
|
||||
("ghc-regex-tdfa" ,ghc-regex-tdfa)
|
||||
("ghc-stm" ,ghc-stm)
|
||||
("ghc-strict" ,ghc-strict)
|
||||
("ghc-text" ,ghc-text)
|
||||
("ghc-unordered-containers" ,ghc-unordered-containers)
|
||||
("ghc-zlib" ,ghc-zlib)))
|
||||
(home-page "http://wiki.portal.chalmers.se/agda/")
|
||||
(synopsis
|
||||
"Dependently typed functional programming language and proof assistant")
|
||||
(description
|
||||
"Agda is a dependently typed functional programming language: it has
|
||||
inductive families, which are similar to Haskell's GADTs, but they can be
|
||||
indexed by values and not just types. It also has parameterised modules,
|
||||
mixfix operators, Unicode characters, and an interactive Emacs interface (the
|
||||
type checker can assist in the development of your code). Agda is also a
|
||||
proof assistant: it is an interactive system for writing and checking proofs.
|
||||
Agda is based on intuitionistic type theory, a foundational system for
|
||||
constructive mathematics developed by the Swedish logician Per Martin-Löf. It
|
||||
has many similarities with other proof assistants based on dependent types,
|
||||
such as Coq, Epigram and NuPRL.")
|
||||
;; Agda is distributed under the MIT license, and a couple of
|
||||
;; source files are BSD-3. See LICENSE for details.
|
||||
(license (list license:expat license:bsd-3))))
|
|
@ -1030,7 +1030,7 @@ follower.")
|
|||
(define-public fluidsynth
|
||||
(package
|
||||
(name "fluidsynth")
|
||||
(version "1.1.9")
|
||||
(version "1.1.10")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -1039,14 +1039,15 @@ follower.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0krvmb1idnf95l2ydzfcb08ayyx3n4m71hf9fgwv3srzaikvpf3q"))))
|
||||
"04jlgq1d1hd8r9cnmkl3lgf1fgm7kgy4hh9nfddap41fm1wp121p"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check phase
|
||||
'(#:tests? #f ; no check target
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-libdir
|
||||
(lambda _
|
||||
;; Install libraries to /lib, not /lib64.
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("LIB_SUFFIX \\$\\{_init_lib_suffix\\}")
|
||||
"LIB_SUFFIX \"\""))
|
||||
|
@ -2377,7 +2378,8 @@ stretching and pitch scaling of audio. This package contains the library.")
|
|||
(method url-fetch)
|
||||
(uri (string-append "http://www.wavpack.com/"
|
||||
name "-" version ".tar.bz2"))
|
||||
(patches (search-patches "wavpack-CVE-2018-7253.patch"
|
||||
(patches (search-patches "wavpack-CVE-2018-6767.patch"
|
||||
"wavpack-CVE-2018-7253.patch"
|
||||
"wavpack-CVE-2018-7254.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
|
@ -2536,7 +2538,7 @@ can play and record audio files.")
|
|||
(define-public soxr
|
||||
(package
|
||||
(name "soxr")
|
||||
(version "0.1.2")
|
||||
(version "0.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2544,7 +2546,7 @@ can play and record audio files.")
|
|||
(string-append "mirror://sourceforge/soxr/soxr-" version
|
||||
"-Source.tar.xz"))
|
||||
(sha256
|
||||
(base32 "0xf2w3piwz9gfr1xqyrj4k685q5dy53kq3igv663i4f4y4sg9rjl"))))
|
||||
(base32 "12aql6svkplxq5fjycar18863hcq84c5kx8g6f4rj0lcvigw24di"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments '(#:tests? #f)) ;no 'check' target
|
||||
(home-page "https://sourceforge.net/p/soxr/wiki/Home/")
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
|
||||
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
;;; Copyright © 2015, 2017 Mark H Weaver <mhw@netris.org>
|
||||
|
@ -315,6 +315,21 @@ intuitive format and then Automake works with Autoconf to produce a robust
|
|||
Makefile, simplifying the entire process for the developer.")
|
||||
(license gpl2+))) ; some files are under GPLv3+
|
||||
|
||||
(define-public automake-1.16
|
||||
;; Make this the default on the next rebuild cycle.
|
||||
(package
|
||||
(inherit automake)
|
||||
(version "1.16")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/automake/automake-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12jvcmkcmd5p14b41w9f7ixd3sca97pymd6lqbkwnl8qn6bjv3zr"))
|
||||
(patches
|
||||
(search-patches "automake-skip-amhello-tests.patch"))))))
|
||||
|
||||
(define-public libtool
|
||||
(package
|
||||
(name "libtool")
|
||||
|
|
|
@ -547,7 +547,10 @@ detection, and lossless compression.")
|
|||
("lz4" ,lz4)
|
||||
("openssl" ,openssl)
|
||||
("python-llfuse" ,python-llfuse)
|
||||
("python-msgpack" ,python-msgpack)
|
||||
;; The Python msgpack library changed its name so Borg requires this
|
||||
;; transitional package for now:
|
||||
;; <https://bugs.gnu.org/30662>
|
||||
("python-msgpack" ,python-msgpack-transitional)
|
||||
("zstd" ,zstd)))
|
||||
(synopsis "Deduplicated, encrypted, authenticated and compressed backups")
|
||||
(description "Borg is a deduplicating backup program. Optionally, it
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 ng0 <ng0@n0.is>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -360,14 +360,15 @@ capacity is user-selectable.")
|
|||
"0lwc0hn94m9r8fi07sjqz3fr618l6lnw3zsakxw7nlgnxbjsk7pi"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list (string-append "XMLTO="
|
||||
(assoc-ref %build-inputs "xmlto")
|
||||
"/bin/xmlto"
|
||||
" --searchpath "
|
||||
(assoc-ref %build-inputs "docbook-xsl")
|
||||
"/xml/xsl/docbook-xsl-1.79.1/htmlhelp:"
|
||||
(assoc-ref %build-inputs "docbook-xml")
|
||||
"/xml/dtd/docbook"))
|
||||
`(#:configure-flags
|
||||
(list (string-append "XMLTO="
|
||||
(assoc-ref %build-inputs "xmlto")
|
||||
"/bin/xmlto --searchpath "
|
||||
(assoc-ref %build-inputs "docbook-xsl")
|
||||
"/xml/xsl/docbook-xsl-" ,(package-version docbook-xsl)
|
||||
"/htmlhelp:"
|
||||
(assoc-ref %build-inputs "docbook-xml")
|
||||
"/xml/dtd/docbook"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-program
|
||||
|
|
|
@ -834,146 +834,231 @@ subprocess and see the output as well as any file modifications.")
|
|||
(define-public python2-scripttest
|
||||
(package-with-python2 python-scripttest))
|
||||
|
||||
(define-public python-testtools
|
||||
(define-public python-testtools-bootstrap
|
||||
(package
|
||||
(name "python-testtools")
|
||||
(version "1.4.0")
|
||||
(name "python-testtools-bootstrap")
|
||||
(version "2.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "testtools" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1vw8yljnd75d396hhw6s2hrf4cclzy845ifd5am0lxsl235z3i8c"))))
|
||||
"0n8519lk8aaa91vymz842831181wf7fss98hyllhygi3z1nfq9sq"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-module-imports
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("'unittest2>=0.8.0',") ""))
|
||||
(substitute* '("testtools/testcase.py"
|
||||
"testtools/testsuite.py"
|
||||
"testtools/run.py"
|
||||
"testtools/tests/test_run.py"
|
||||
"testtools/tests/test_testsuite.py"
|
||||
"testtools/tests/test_deferredruntest.py")
|
||||
;; unittest2 is a backport of Python2.7 features to Python 2.4.
|
||||
(("import unittest2 as unittest") "import unittest")
|
||||
(("import unittest2") "import unittest as unittest2")
|
||||
(("from unittest2 import") "from unittest import"))
|
||||
(substitute* "testtools/tests/test_testresult.py"
|
||||
;; NUL in source code is not allowed (raises ValueError).
|
||||
(("\\x00\\x04") "\\x04"))
|
||||
#t)))))
|
||||
(arguments '(#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python-mimeparse" ,python-mimeparse)
|
||||
("python-extras" ,python-extras)))
|
||||
`(("python-extras" ,python-extras)
|
||||
("python-fixtures" ,python-fixtures-bootstrap)
|
||||
("python-mimeparse" ,python-mimeparse)
|
||||
("python-pbr" ,python-pbr-minimal)
|
||||
("python-six" ,python-six)
|
||||
("python-traceback2" ,python-traceback2)
|
||||
("python-unittest2" ,python-unittest2)))
|
||||
(home-page "https://github.com/testing-cabal/testtools")
|
||||
(synopsis
|
||||
"Extensions to the Python standard library unit testing framework")
|
||||
(description
|
||||
"This package is only for bootstrapping. Do not use this.")
|
||||
(license license:psfl)))
|
||||
|
||||
(define-public python2-testtools-bootstrap
|
||||
(package-with-python2 python-testtools-bootstrap))
|
||||
|
||||
(define-public python-testtools
|
||||
(package
|
||||
(inherit python-testtools-bootstrap)
|
||||
(name "python-testtools")
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "python" "-m" "testtools.run"
|
||||
"testtools.tests.test_suite"))))))
|
||||
(propagated-inputs
|
||||
`(("python-extras" ,python-extras)
|
||||
("python-fixtures" ,python-fixtures)
|
||||
("python-mimeparse" ,python-mimeparse)
|
||||
("python-pbr" ,python-pbr)
|
||||
("python-six" ,python-six)
|
||||
("python-traceback2" ,python-traceback2)
|
||||
("python-unittest2" ,python-unittest2)))
|
||||
(native-inputs
|
||||
`(("python-testscenarios" ,python-testscenarios-bootstrap)))
|
||||
(description
|
||||
"Testtools extends the Python standard library unit testing framework to
|
||||
provide matchers, more debugging information, and cross-Python
|
||||
compatibility.")
|
||||
(license license:psfl)))
|
||||
compatibility.")))
|
||||
|
||||
(define-public python2-testtools
|
||||
(package-with-python2 python-testtools))
|
||||
|
||||
(define-public python-testscenarios
|
||||
(define-public python-testscenarios-bootstrap
|
||||
(package
|
||||
(name "python-testscenarios")
|
||||
(version "0.4")
|
||||
(name "python-testscenarios-bootstrap")
|
||||
(version "0.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/t/testscenarios/testscenarios-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "testscenarios" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1671jvrvqlmbnc42j7pc5y6vc37q44aiwrq0zic652pxyy2fxvjg"))))
|
||||
"1dm2aydqpv76vnsk1pw7k8n42hq58cfi4n1ixy7nyzpaj1mwnmy2"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "python" "-m" "testtools.run"
|
||||
"testscenarios.test_suite"))))))
|
||||
(propagated-inputs
|
||||
`(("python-testtools" ,python-testtools)))
|
||||
`(("python-pbr" ,python-pbr-minimal)
|
||||
("python-testtools" ,python-testtools-bootstrap)))
|
||||
(home-page "https://launchpad.net/testscenarios")
|
||||
(synopsis "Pyunit extension for dependency injection")
|
||||
(description
|
||||
"Testscenarios provides clean dependency injection for Python unittest
|
||||
style tests.")
|
||||
"This package is only for bootstrapping. Don't use this.")
|
||||
(license (list license:bsd-3 license:asl2.0)))) ; at the user's option
|
||||
|
||||
(define-public python2-testscenarios-bootstrap
|
||||
(package-with-python2 python-testscenarios-bootstrap))
|
||||
|
||||
(define-public python-testscenarios
|
||||
(package
|
||||
(inherit python-testscenarios-bootstrap)
|
||||
(name "python-testscenarios")
|
||||
(propagated-inputs
|
||||
`(("python-pbr" ,python-pbr)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(description
|
||||
"Testscenarios provides clean dependency injection for Python unittest
|
||||
style tests.")))
|
||||
|
||||
(define-public python2-testscenarios
|
||||
(package-with-python2 python-testscenarios))
|
||||
|
||||
(define-public python-testresources
|
||||
;; Testresources requires python-pbr at runtime, but pbr needs it for its
|
||||
;; own tests. Hence this bootstrap variant.
|
||||
(define-public python-testresources-bootstrap
|
||||
(package
|
||||
(name "python-testresources")
|
||||
(version "0.2.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/t/testresources/testresources-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cbj3plbllyz42c4b5xxgwaa7mml54lakslrn4kkhinxhdri22md"))))
|
||||
(name "python-testresources-bootstrap")
|
||||
(version "2.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "testresources" version))
|
||||
(sha256
|
||||
(base32
|
||||
"05s4dsli9g17m1r3b1gvwicbbgq011hnpb2b9qnj27ja2n11k7gf"))))
|
||||
(build-system python-build-system)
|
||||
(arguments '(#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python-pbr" ,python-pbr-minimal)))
|
||||
(home-page "https://launchpad.net/testresources")
|
||||
(synopsis
|
||||
"Pyunit extension for managing test resources")
|
||||
(description
|
||||
"Testresources is an extension to Python's unittest to allow declarative
|
||||
use of resources by test cases.")
|
||||
"This package is only here for bootstrapping purposes. Use the regular
|
||||
testresources package instead.")
|
||||
(license (list license:bsd-3 license:asl2.0)))) ; at the user's option
|
||||
|
||||
(define-public python2-testresources-bootstrap
|
||||
(package-with-python2 python-testresources-bootstrap))
|
||||
|
||||
(define-public python-testresources
|
||||
(package
|
||||
(inherit python-testresources-bootstrap)
|
||||
(name "python-testresources")
|
||||
(propagated-inputs
|
||||
`(("python-pbr" ,python-pbr)))
|
||||
(arguments '())
|
||||
(native-inputs
|
||||
`(("python-fixtures" ,python-fixtures)
|
||||
("python-testtols" ,python-testtools)))
|
||||
(description
|
||||
"Testresources is an extension to Python's unittest to allow declarative
|
||||
use of resources by test cases.")))
|
||||
|
||||
(define-public python2-testresources
|
||||
(package-with-python2 python-testresources))
|
||||
|
||||
(define-public python-subunit
|
||||
(define-public python-subunit-bootstrap
|
||||
(package
|
||||
(name "python-subunit")
|
||||
(version "0.0.21")
|
||||
(name "python-subunit-bootstrap")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/p/python-subunit/python-subunit-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "python-subunit" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nkw9wfbvizmpajbj3in8ns07g7lwkiv8hip14jjlwk3cacls6jv"))))
|
||||
"1yii2gx3z6323as3iraj1yphj76dy7i3h6kj63pnc5y0hwjs5sgx"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-extras" ,python-extras)
|
||||
("python-mimeparse" ,python-mimeparse)))
|
||||
("python-testtools" ,python-testtools-bootstrap)))
|
||||
(native-inputs
|
||||
`(("python-testscenarios" ,python-testscenarios)))
|
||||
`(("python-fixtures" ,python-fixtures-bootstrap)
|
||||
("python-hypothesis" ,python-hypothesis)
|
||||
("python-testscenarios" ,python-testscenarios-bootstrap)))
|
||||
(home-page "http://launchpad.net/subunit")
|
||||
(synopsis "Python implementation of the subunit protocol")
|
||||
(description
|
||||
"Python-subunit is a Python implementation of the subunit test streaming
|
||||
protocol.")
|
||||
"This package is here for bootstrapping purposes only. Use the regular
|
||||
python-subunit package instead.")
|
||||
(license (list license:bsd-3 license:asl2.0)))) ; at the user's option
|
||||
|
||||
(define-public python2-subunit-bootstrap
|
||||
(package-with-python2 python-subunit-bootstrap))
|
||||
|
||||
(define-public python-subunit
|
||||
(package
|
||||
(inherit python-subunit-bootstrap)
|
||||
(name "python-subunit")
|
||||
(propagated-inputs
|
||||
`(("python-extras" ,python-extras)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(native-inputs
|
||||
`(("python-fixtures" ,python-fixtures)
|
||||
("python-hypothesis" ,python-hypothesis)
|
||||
("python-testscenarios" ,python-testscenarios)))
|
||||
(description
|
||||
"Python-subunit is a Python implementation of the subunit test streaming
|
||||
protocol.")))
|
||||
|
||||
(define-public python2-subunit
|
||||
(package-with-python2 python-subunit))
|
||||
|
||||
;; Fixtures requires python-pbr at runtime, but pbr uses fixtures for its
|
||||
;; own tests. Hence this bootstrap variant.
|
||||
(define-public python-fixtures-bootstrap
|
||||
(package
|
||||
(name "python-fixtures-bootstrap")
|
||||
(version "3.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "fixtures" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1vxj29bzz3rd4pcy51d05wng9q9dh4jq6wx92yklsm7i6h1ddw7w"))))
|
||||
(build-system python-build-system)
|
||||
(arguments `(#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python-pbr-minimal" ,python-pbr-minimal)
|
||||
("python-six" ,python-six)))
|
||||
(home-page "https://launchpad.net/python-fixtures")
|
||||
(synopsis "Python test fixture library")
|
||||
(description
|
||||
"This package is only used for bootstrapping. Use the regular
|
||||
python-fixtures package instead.")
|
||||
(license (list license:bsd-3 license:asl2.0)))) ; at user's option
|
||||
|
||||
(define-public python2-fixtures-bootstrap
|
||||
(package-with-python2 python-fixtures-bootstrap))
|
||||
|
||||
(define-public python-fixtures
|
||||
(package
|
||||
(inherit python-fixtures-bootstrap)
|
||||
(name "python-fixtures")
|
||||
(version "1.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "fixtures" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0djxvdwm8s60dbfn7bhf40x6g818p3b3mlwijm1c3bqg7msn271y"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
|
@ -982,25 +1067,23 @@ protocol.")
|
|||
(zero? (system* "python" "-m" "testtools.run"
|
||||
"fixtures.test_suite")))))))
|
||||
(propagated-inputs
|
||||
`(("python-six" ,python-six)))
|
||||
;; Fixtures uses pbr at runtime to check versions, etc.
|
||||
`(("python-pbr" ,python-pbr)
|
||||
("python-six" ,python-six)))
|
||||
(native-inputs
|
||||
`(("python-mock" ,python-mock)
|
||||
("python-pbr-minimal" ,python-pbr-minimal)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(home-page "https://launchpad.net/python-fixtures")
|
||||
(synopsis "Python test fixture library")
|
||||
("python-testtools" ,python-testtools-bootstrap)))
|
||||
(description
|
||||
"Fixtures provides a way to create reusable state, useful when writing
|
||||
Python tests.")
|
||||
(license (list license:bsd-3 license:asl2.0)))) ; at user's option
|
||||
Python tests.")))
|
||||
|
||||
(define-public python2-fixtures
|
||||
(package-with-python2 python-fixtures))
|
||||
|
||||
(define-public python-testrepository
|
||||
(define-public python-testrepository-bootstrap
|
||||
(package
|
||||
(name "python-testrepository")
|
||||
(version "0.0.20")
|
||||
(name "python-testrepository-bootstrap")
|
||||
(version "0.0.20")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1011,6 +1094,26 @@ Python tests.")
|
|||
(base32
|
||||
"1ssqb07c277010i6gzzkbdd46gd9mrj0bi0i8vn560n2k2y4j93m"))))
|
||||
(build-system python-build-system)
|
||||
(arguments '(#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python-fixtures" ,python-fixtures-bootstrap)
|
||||
("python-subunit" ,python-subunit-bootstrap)
|
||||
("python-testtools" ,python-testtools-bootstrap)))
|
||||
(native-inputs
|
||||
`(("python-mimeparse" ,python-mimeparse)))
|
||||
(home-page "https://launchpad.net/testrepository")
|
||||
(synopsis "Database for Python test results")
|
||||
(description
|
||||
"Bootstrap package for python-testrepository. Don't use this.")
|
||||
(license (list license:bsd-3 license:asl2.0)))) ; at user's option
|
||||
|
||||
(define-public python2-testrepository-bootstrap
|
||||
(package-with-python2 python-testrepository-bootstrap))
|
||||
|
||||
(define-public python-testrepository
|
||||
(package
|
||||
(inherit python-testrepository-bootstrap)
|
||||
(name "python-testrepository")
|
||||
(arguments
|
||||
;; FIXME: Many tests are failing.
|
||||
'(#:tests? #f))
|
||||
|
@ -1019,14 +1122,10 @@ Python tests.")
|
|||
("python-subunit" ,python-subunit)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(native-inputs
|
||||
`(("python-pbr-minimal" ,python-pbr-minimal) ;; same as for building fixture
|
||||
("python-mimeparse" ,python-mimeparse)))
|
||||
(home-page "https://launchpad.net/testrepository")
|
||||
(synopsis "Database for Python test results")
|
||||
`(("python-mimeparse" ,python-mimeparse)))
|
||||
(description "Testrepository provides a database of test results which can
|
||||
be used as part of a developer's workflow to check things such as what tests
|
||||
have failed since the last commit or what tests are currently failing.")
|
||||
(license (list license:bsd-3 license:asl2.0)))) ; at user's option
|
||||
have failed since the last commit or what tests are currently failing.")))
|
||||
|
||||
(define-public python2-testrepository
|
||||
(package-with-python2 python-testrepository))
|
||||
|
@ -1629,18 +1728,20 @@ backported from Python 2.7 for Python 2.4+.")
|
|||
(define-public behave
|
||||
(package
|
||||
(name "behave")
|
||||
(version "1.2.5")
|
||||
(version "1.2.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "behave" version ".tar.bz2"))
|
||||
(uri (pypi-uri "behave" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1iypp6z46r19n4xmgx6m1lwmlpfjh8vapq8izigrqlaarvp2y64c"))))
|
||||
"11hsz365qglvpp1m1w16239c3kiw15lw7adha49lqaakm8kj6rmr"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-mock" ,python-mock)
|
||||
("python-nose" ,python-nose)
|
||||
("python-pyhamcrest" ,python-pyhamcrest)))
|
||||
("python-pathpy" ,python-pathpy)
|
||||
("python-pyhamcrest" ,python-pyhamcrest)
|
||||
("python-pytest" ,python-pytest)))
|
||||
(propagated-inputs
|
||||
`(("python-six" ,python-six)
|
||||
("python-parse" ,python-parse)
|
||||
|
|
|
@ -187,8 +187,8 @@ their dependencies.")
|
|||
(license l:gpl3+))))
|
||||
|
||||
(define-public cuirass
|
||||
(let ((commit "4ab2f2c3f084ffd9d0f77134cc1af0f8cf0e13be")
|
||||
(revision "12"))
|
||||
(let ((commit "aa4c7784940581b5e271b9c7c4ac80b6ee1ee309")
|
||||
(revision "13"))
|
||||
(package
|
||||
(name "cuirass")
|
||||
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
|
||||
|
@ -200,7 +200,7 @@ their dependencies.")
|
|||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1r97z5lkzg6vx014rfmv1pp3x3bl1shb6wkcgnlncwqf56a9bzi1"))))
|
||||
"1827vgk47rcgm2x0cxzvg79ni6vazjzr8hr9pljlvbd9awzr7hxp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils)
|
||||
|
|
|
@ -66,6 +66,15 @@
|
|||
;;; To avoid circular dependencies, this module should not be imported
|
||||
;;; directly from anywhere.
|
||||
;;;
|
||||
;;; Below, we frequently use "inherit" to create modified packages. The
|
||||
;;; reason why we use "inherit" instead of "package/inherit" is because we do
|
||||
;;; not want these commencement packages to inherit grafts. By definition,
|
||||
;;; these packages are not depended on at run time by any of the packages we
|
||||
;;; use. Thus it does not make sense to inherit grafts. Furthermore, those
|
||||
;;; grafts would often lead to extra overhead for users who would end up
|
||||
;;; downloading those "-boot0" packages just to build package replacements
|
||||
;;; that are in fact not going to be used.
|
||||
;;;
|
||||
;;; Code:
|
||||
|
||||
(define gnu-make-boot0
|
||||
|
|
|
@ -2240,17 +2240,21 @@ SQLAlchemy Database Toolkit for Python.")
|
|||
(define-public python-pickleshare
|
||||
(package
|
||||
(name "python-pickleshare")
|
||||
(version "0.5")
|
||||
(version "0.7.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/p/"
|
||||
"pickleshare/pickleshare-" version ".tar.gz"))
|
||||
(uri (pypi-uri "pickleshare" version))
|
||||
(sha256
|
||||
(base32 "11ljr90j3p6qswdrbl7p4cjb2i93f6vn0vx9anzpshsx0d2mggn0"))))
|
||||
(base32 "0yvk14dzxk7g6qpr7iw23vzqbsr0dh4ij4xynkhnzpfz4xr2bac4"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-pathpy" ,python-pathpy)))
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "pytest"))))))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(home-page "https://github.com/vivainio/pickleshare")
|
||||
(synopsis "Tiny key value database with concurrency support")
|
||||
(description
|
||||
|
@ -2261,10 +2265,15 @@ value in database is immediately visible to other processes accessing the same
|
|||
database. Concurrency is possible because the values are stored in separate
|
||||
files. Hence the “database” is a directory where all files are governed by
|
||||
PickleShare.")
|
||||
(properties `((python2-variant . ,(delay python2-pickleshare))))
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python2-pickleshare
|
||||
(package-with-python2 python-pickleshare))
|
||||
(let ((pickleshare (package-with-python2
|
||||
(strip-python2-variant python-pickleshare))))
|
||||
(package (inherit pickleshare)
|
||||
(propagated-inputs `(("python2-pathlib2" ,python2-pathlib2)
|
||||
,@(package-propagated-inputs pickleshare))))))
|
||||
|
||||
(define-public python-apsw
|
||||
(package
|
||||
|
|
|
@ -36,16 +36,19 @@
|
|||
(define-public python-django
|
||||
(package
|
||||
(name "python-django")
|
||||
(version "1.10.8")
|
||||
(version "1.11.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Django" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fwqqh2zbcy9dy0lnvk338s11llnnfz2k56bf84w0wv56ayq7vyl"))))
|
||||
"1ndc7axr7cz8jwhr4mz16fvwd0jcd6i81q2wi9nl172s71kkaf12"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
'(#:modules ((srfi srfi-1)
|
||||
(guix build python-build-system)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'set-tzdir
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
|
@ -56,9 +59,19 @@
|
|||
"/share/zoneinfo"))
|
||||
#t))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append ".:" (getenv "PYTHONPATH")))
|
||||
(substitute* "tests/admin_scripts/tests.py"
|
||||
(("python_path = \\[")
|
||||
(string-append "python_path = ['"
|
||||
(find (lambda (entry)
|
||||
(string-prefix?
|
||||
(assoc-ref inputs "python-pytz")
|
||||
entry))
|
||||
(string-split (getenv "PYTHONPATH")
|
||||
#\:))
|
||||
"', ")))
|
||||
(zero? (system* "python" "tests/runtests.py")))))))
|
||||
;; TODO: Install extras/django_bash_completion.
|
||||
(native-inputs
|
||||
|
@ -75,10 +88,11 @@
|
|||
("python-numpy" ,python-numpy)
|
||||
("python-pillow" ,python-pillow)
|
||||
("python-pyyaml" ,python-pyyaml)
|
||||
("python-pytz" ,python-pytz)
|
||||
;; optional for tests: ("python-selenium" ,python-selenium)
|
||||
("python-sqlparse" ,python-sqlparse)
|
||||
("python-tblib" ,python-tblib)))
|
||||
(propagated-inputs
|
||||
`(("python-pytz" ,python-pytz)))
|
||||
(home-page "http://www.djangoproject.com/")
|
||||
(synopsis "High-level Python Web framework")
|
||||
(description
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
;;; Copyright © 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -176,7 +177,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
|||
(define-public dblatex
|
||||
(package
|
||||
(name "dblatex")
|
||||
(version "0.3.9")
|
||||
(version "0.3.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/dblatex/dblatex/"
|
||||
|
@ -184,8 +185,7 @@ by no means limited to these applications.) This package provides XML DTDs.")
|
|||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0pdizc5rjywwzxa1qqhdmba5zr35pbmdwbysalsid7xw87w3kq06"))
|
||||
(patches (search-patches "dblatex-remove-multirow.patch"))))
|
||||
"1yicd861rqz78i2khl35j7nvc0ccv4jx4hzqrbhll17082vrdmkg"))))
|
||||
(build-system python-build-system)
|
||||
;; TODO: Add xfig/transfig for fig2dev utility
|
||||
(inputs
|
||||
|
|
|
@ -14,7 +14,7 @@
|
|||
;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
|
||||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2016, 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com>
|
||||
;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
|
||||
|
@ -2990,14 +2990,14 @@ package provides a light and a dark variant.")
|
|||
(define-public emacs-ahungry-theme
|
||||
(package
|
||||
(name "emacs-ahungry-theme")
|
||||
(version "1.8.0")
|
||||
(version "1.10.0")
|
||||
(source
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/ahungry-theme-"
|
||||
version ".tar"))
|
||||
(sha256
|
||||
(base32
|
||||
"14dhnrlbjzrxk5ligf0z2im5bgnxpjqqzqcrmqg5355xrgpbpb7v"))))
|
||||
"14q5yw56n82qph09bk7wmj5b1snhh9w0nk5s1l7yn9ldg71xq6pm"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/ahungry/color-theme-ahungry")
|
||||
(synopsis "Ahungry color theme for Emacs")
|
||||
|
@ -4492,14 +4492,14 @@ passive voice.")
|
|||
(name "emacs-org")
|
||||
;; emacs-org-contrib inherits from this package. Please update its sha256
|
||||
;; checksum as well.
|
||||
(version "20180103")
|
||||
(version "20180226")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://orgmode.org/elpa/org-"
|
||||
version ".tar"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hyw9sigcv9wn37y2icmhf1czf0s3dgvsmn36355l95zsw7hnvgj"))))
|
||||
"0jqvry6gah1bwnryha4asynj13jyds3qim0xcy7s01rxk99m2ziy"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://orgmode.org/")
|
||||
(synopsis "Outline-based notes management and organizer")
|
||||
|
@ -4519,7 +4519,7 @@ reproducible research.")
|
|||
(package-version emacs-org) ".tar"))
|
||||
(sha256
|
||||
(base32
|
||||
"164i2asqh34p1g3iqsn7rziyxbi1ys8fwdmn7nsw5xph8qszv9zj"))))
|
||||
"034wp70hcqnpidji5k1k80mj35iyyy098nbvc2sl7i2aca4m03zc"))))
|
||||
(arguments
|
||||
`(#:modules ((guix build emacs-build-system)
|
||||
(guix build utils)
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
;;; Copyright © 2016, 2017 Theodoros Foradis <theodoros@foradis.org>
|
||||
;;; Copyright © 2016 David Craven <david@craven.ch>
|
||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -696,7 +697,7 @@ upload binaries to a Parallax Propeller micro-controller.")
|
|||
(define-public spin2cpp
|
||||
(package
|
||||
(name "spin2cpp")
|
||||
(version "3.6.3")
|
||||
(version "3.6.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/totalspectrum/spin2cpp/"
|
||||
|
@ -704,7 +705,7 @@ upload binaries to a Parallax Propeller micro-controller.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0v5vzh69bp1r2byrpz12rql1w24ff2v9msr31596zq6hd6n82lnh"))))
|
||||
"05qak187sn0xg7vhrxw27b19xhmid1b8ab8kax3gv0faavzablfw"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;; The tests assume that a micro-controller is connected.
|
||||
|
|
|
@ -290,7 +290,7 @@ high quality, anti-aliased and subpixel rendered text on a display.")
|
|||
; The exact license is more X11-style than BSD-style.
|
||||
(license (license:non-copyleft "file://COPYING"
|
||||
"See COPYING in the distribution."))
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/fontconfig")))
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/fontconfig")))
|
||||
|
||||
(define-public t1lib
|
||||
(package
|
||||
|
|
|
@ -409,7 +409,7 @@ manager for the current system.")
|
|||
`(("shared-mime-info" ,shared-mime-info) ;for tests
|
||||
("hicolor-icon-theme" ,hicolor-icon-theme) ;for tests
|
||||
("python-nose" ,python-nose)))
|
||||
(home-page "http://freedesktop.org/wiki/Software/pyxdg")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/pyxdg")
|
||||
(synopsis "Implementations of freedesktop.org standards in Python")
|
||||
(description
|
||||
"PyXDG is a collection of implementations of freedesktop.org standards in
|
||||
|
@ -740,7 +740,7 @@ message bus.")
|
|||
(inputs
|
||||
`(("shadow" ,shadow)
|
||||
("polkit" ,polkit)))
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/AccountsService/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/AccountsService/")
|
||||
(synopsis "D-Bus interface for user account query and manipulation")
|
||||
(description
|
||||
"The AccountService project provides a set of D-Bus interfaces for querying
|
||||
|
@ -840,7 +840,7 @@ which speak the Qualcomm MSM Interface (QMI) protocol.")
|
|||
("libqmi" ,libqmi)
|
||||
("polkit" ,polkit)))
|
||||
(synopsis "Mobile broadband modems manager")
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/ModemManager/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/ModemManager/")
|
||||
(description
|
||||
"ModemManager is a DBus-activated daemon which controls mobile
|
||||
broadband (2G/3G/4G) devices and connections. Whether built-in devices, USB
|
||||
|
@ -882,7 +882,7 @@ modems and setup connections with them.")
|
|||
("sqlite" ,sqlite)
|
||||
("telepathy-glib" ,telepathy-glib)))
|
||||
(synopsis "Telepathy logger library")
|
||||
(home-page "http://telepathy.freedesktop.org/")
|
||||
(home-page "https://telepathy.freedesktop.org/")
|
||||
(description
|
||||
"Telepathy logger is a headless observer client that logs information
|
||||
received by the Telepathy framework. It features pluggable backends to log
|
||||
|
@ -909,7 +909,7 @@ different sorts of messages in different formats.")
|
|||
("python-dbus" ,python2-dbus)))
|
||||
(propagated-inputs
|
||||
`(("telepathy-glib" ,telepathy-glib)))
|
||||
(home-page "http://telepathy.freedesktop.org/")
|
||||
(home-page "https://telepathy.freedesktop.org/")
|
||||
(synopsis "Telepathy IRC connection manager")
|
||||
(description
|
||||
"Idle is an IRC connection manager for the Telepathy framework. This
|
||||
|
@ -971,7 +971,7 @@ share connections to real-time communication services without conflicting.")
|
|||
`(("colord" ,colord)
|
||||
("gtk+" ,gtk+)))
|
||||
(synopsis "GTK integration for libcolord")
|
||||
(home-page "http://www.freedesktop.org/software/colord/")
|
||||
(home-page "https://www.freedesktop.org/software/colord/")
|
||||
(description
|
||||
"This is a GTK+ convenience library for interacting with colord. It is
|
||||
useful for both applications which need colour management and applications that
|
||||
|
@ -1068,7 +1068,7 @@ to applications simultaneously competing for fingerprint readers.")
|
|||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("glib" ,glib)))
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/desktop-file-utils/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/desktop-file-utils/")
|
||||
(synopsis "Utilities for working with desktop entries")
|
||||
(description
|
||||
"This package contains a few command line utilities for working with
|
||||
|
|
|
@ -26,15 +26,16 @@
|
|||
(define-public fribidi
|
||||
(package
|
||||
(name "fribidi")
|
||||
(version "0.19.7")
|
||||
(version "1.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "http://fribidi.org/download/" name "-" version
|
||||
(string-append "https://github.com/fribidi/fribidi/releases"
|
||||
"/download/v" version "/fribidi-" version
|
||||
".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "13jsb5qadlhsaxkbrb49nqslmbh904vvzhsm5mm2ghmv29i2l8h8"))))
|
||||
(base32 "1r3ll7apx4b8bhvdkwi71y06df9kvr4q3asvajswvdlh0pbq5cf1"))))
|
||||
|
||||
(build-system gnu-build-system)
|
||||
(synopsis "Implementation of the Unicode bidirectional algorithm")
|
||||
|
@ -42,5 +43,5 @@
|
|||
"GNU FriBidi is an implementation of the Unicode Bidirectional
|
||||
Algorithm. This algorithm is used to properly display text in left-to-right
|
||||
or right-to-left ordering as necessary.")
|
||||
(home-page "http://fribidi.org/")
|
||||
(home-page "https://github.com/fribidi/fribidi")
|
||||
(license lgpl2.1+)))
|
||||
|
|
|
@ -173,7 +173,7 @@ as required.")
|
|||
(define-public libfilezilla
|
||||
(package
|
||||
(name "libfilezilla")
|
||||
(version "0.12.0")
|
||||
(version "0.12.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -181,7 +181,7 @@ as required.")
|
|||
name "/" name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"14zag4mhwp5mbir63j1k01jys973kmrivznmm78v6qa92l64jn0a"))))
|
||||
"1gbqm42dd0m3fvqz3bk53889479dvn8679zp6ba8a9q2br2wkvv0"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("cppunit" ,cppunit)
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017 Julian Graham <joolean@gmail.com>
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
|
||||
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
|
||||
|
@ -547,7 +547,15 @@ archive on a per-file basis.")
|
|||
"love-" version "-linux-src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"11x346pw0gqad8nmkmywzx4xpcbfc3dslbrdw5x94n1i25mk0sxj"))))
|
||||
"11x346pw0gqad8nmkmywzx4xpcbfc3dslbrdw5x94n1i25mk0sxj"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Build with luajit 2.1.0-beta3. Fixed in love 0.11.
|
||||
;; See <https://bitbucket.org/rude/love/issues/1277>.
|
||||
(substitute* "src/libraries/luasocket/libluasocket/lua.h"
|
||||
(("> 501") ">= 501"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -1056,7 +1064,7 @@ games.")
|
|||
(define-public godot
|
||||
(package
|
||||
(name "godot")
|
||||
(version "3.0")
|
||||
(version "3.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
|
@ -1065,7 +1073,7 @@ games.")
|
|||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jhp269n1a7c663v2555444icbjwzscj4r8cq4rrrap7r7dr4hyc"))))
|
||||
"0k8c12nzhl98i9il9s3awbwdamkrwxk0s47jr7n8a3z93rpszd2p"))))
|
||||
(build-system scons-build-system)
|
||||
(arguments
|
||||
`(#:scons ,scons-python2
|
||||
|
@ -1108,16 +1116,16 @@ games.")
|
|||
(if (file-exists? "godot.x11.tools.64")
|
||||
(rename-file "godot.x11.tools.64" "godot")
|
||||
(rename-file "godot.x11.tools.32" "godot"))
|
||||
(install-file "godot" bin)))))
|
||||
(install-file "godot" bin))
|
||||
#t)))
|
||||
(add-after 'install 'install-godot-desktop
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(desktop (string-append out "/share/applications"))
|
||||
(icon-dir (string-append out "/share/pixmaps")))
|
||||
(mkdir-p desktop)
|
||||
(mkdir-p icon-dir)
|
||||
(rename-file "icon.png" "godot.png")
|
||||
(install-file "godot.png" icon-dir)
|
||||
(mkdir-p desktop)
|
||||
(with-output-to-file
|
||||
(string-append desktop "/godot.desktop")
|
||||
(lambda _
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -93,45 +94,27 @@ most common applications of GD involve website development.")
|
|||
(define-public perl-gd
|
||||
(package
|
||||
(name "perl-gd")
|
||||
(version "2.56")
|
||||
(version "2.68")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/L/LD/LDS/"
|
||||
(uri (string-append "mirror://cpan/authors/id/R/RU/RURBAN/"
|
||||
"GD-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ya8f9hpiax8j29vwaiwlvvgah0vkyvpzva28r8231nyk0f3s40z"))
|
||||
(patches (search-patches
|
||||
"perl-gd-options-passthrough-and-fontconfig.patch"))))
|
||||
"0p2ya641nl5cvcqgw829xgabh835qijfd6vq2ba12862946xx8va"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-module-build" ,perl-module-build))) ;needs Module::Build >= 0.42
|
||||
(inputs
|
||||
`(("gd" ,gd)
|
||||
("zlib" ,zlib)
|
||||
("png" ,libpng)
|
||||
("ft" ,freetype)
|
||||
("jpeg" ,libjpeg)
|
||||
("fontconfig" ,fontconfig)))
|
||||
`(("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("gd" ,gd)
|
||||
("libpng" ,libpng)
|
||||
("libjpeg" ,libjpeg)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
;; We must use Build.PL for building because Makefile.PL fails to build
|
||||
;; the XS source.
|
||||
`(#:module-build-flags (map (lambda (i)
|
||||
(string-append "--lib_" i "_path="
|
||||
(assoc-ref %build-inputs i)))
|
||||
'("zlib" "png" "ft" "jpeg" "fontconfig"))
|
||||
#:tests? #f ;; Failed 1/2 test programs. 1/12 subtests failed.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'configure 'clear-autogenerated-files
|
||||
(lambda _
|
||||
;; This file is autogenerated by its .PLS script at build
|
||||
;; time, but file creation fails because that file already
|
||||
;; exists in the distribution with non-writable
|
||||
;; permissions, so delete it first.
|
||||
(delete-file "bdf_scripts/bdf2gdfont.pl")
|
||||
#t)))))
|
||||
`(#:make-maker-flags
|
||||
(list (string-append "--lib_jpeg_path="
|
||||
(assoc-ref %build-inputs "libjpeg")))))
|
||||
(home-page "http://search.cpan.org/dist/GD")
|
||||
(synopsis "Perl interface to the GD graphics library")
|
||||
(description "GD.pm is an autoloadable interface module for libgd, a
|
||||
|
|
|
@ -362,4 +362,4 @@ Ghostscript. It currently includes the 35 standard PostScript fonts.")
|
|||
It provides a convenient easy to use API for handling and rendering
|
||||
Postscript documents.")
|
||||
(license license:gpl2+)
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/libspectre")))
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/libspectre")))
|
||||
|
|
|
@ -8,6 +8,7 @@
|
|||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017 Petter <petter@mykolab.ch>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -124,7 +125,7 @@
|
|||
;; '--autolaunch'.
|
||||
("libx11" ,libx11)))
|
||||
|
||||
(home-page "http://dbus.freedesktop.org/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/dbus/")
|
||||
(synopsis "Message bus for inter-process communication (IPC)")
|
||||
(description
|
||||
"D-Bus is a message bus system, a simple way for applications to
|
||||
|
@ -461,7 +462,7 @@ translated.")
|
|||
(native-inputs
|
||||
`(("glib" ,glib "bin")
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "http://dbus.freedesktop.org/doc/dbus-glib/")
|
||||
(home-page "https://dbus.freedesktop.org/doc/dbus-glib/")
|
||||
(synopsis "D-Bus GLib bindings")
|
||||
(description
|
||||
"GLib bindings for D-Bus. The package is obsolete and superseded
|
||||
|
@ -622,6 +623,33 @@ useful for C++.")
|
|||
("python-pycairo" ,python2-pycairo)
|
||||
("gobject-introspection" ,gobject-introspection)))))
|
||||
|
||||
(define-public perl-glib
|
||||
(package
|
||||
(name "perl-glib")
|
||||
(version "1.326")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://cpan/authors/id/X/XA/XAOC/Glib-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0prn9kkdpwjq9qmzqashbhk3pq4gvlrmvm3b10xf1dhc48406382"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-extutils-depends" ,perl-extutils-depends)
|
||||
("perl-extutils-pkgconfig" ,perl-extutils-pkgconfig)))
|
||||
(inputs
|
||||
`(("glib" ,glib)))
|
||||
(home-page "http://search.cpan.org/dist/Glib/")
|
||||
(synopsis "Perl wrappers for the GLib utility and Object libraries")
|
||||
(description "This module provides perl access to GLib and GLib's GObject
|
||||
libraries. GLib is a portability and utility library; GObject provides a
|
||||
generic type system with inheritance and a powerful signal system. Together
|
||||
these libraries are used as the foundation for many of the libraries that make
|
||||
up the Gnome environment, and are used in many unrelated projects.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define telepathy-glib
|
||||
(package
|
||||
(name "telepathy-glib")
|
||||
|
@ -662,7 +690,7 @@ useful for C++.")
|
|||
`(("dbus" ,dbus)
|
||||
("dbus-glib" ,dbus-glib)
|
||||
("glib" ,glib)))
|
||||
(home-page "http://telepathy.freedesktop.org/wiki/")
|
||||
(home-page "https://telepathy.freedesktop.org/wiki/")
|
||||
(synopsis "GLib Real-time communications framework over D-Bus")
|
||||
(description "Telepathy is a flexible, modular communications framework
|
||||
that enables real-time communication over D-Bus via pluggable protocol
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 David Thompson <davet@gnu.org>
|
||||
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||
;;; Copyright © 2016, 2017, 2018 Rene Saavedra <pacoon@protonmail.com>
|
||||
;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
|
||||
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
|
@ -947,7 +947,7 @@ guidelines.")
|
|||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "http://freedesktop.org/wiki/Software/shared-mime-info")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/shared-mime-info")
|
||||
(synopsis "Database of common MIME types")
|
||||
(description
|
||||
"The shared-mime-info package contains the core database of common types
|
||||
|
@ -972,7 +972,7 @@ database is translated at Transifex.")
|
|||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; no check target
|
||||
(home-page "http://icon-theme.freedesktop.org/releases/")
|
||||
(home-page "https://icon-theme.freedesktop.org/releases/")
|
||||
(synopsis
|
||||
"Freedesktop icon theme")
|
||||
(description
|
||||
|
@ -2324,7 +2324,7 @@ and objects.")
|
|||
("libxkbfile" ,libxkbfile)
|
||||
("xkbcomp" ,xkbcomp)
|
||||
("xkeyboard-config" ,xkeyboard-config)))
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/LibXklavier/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/LibXklavier/")
|
||||
(synopsis "High-level API for X Keyboard Extension")
|
||||
(description
|
||||
"LibXklavier is a library providing high-level API for X Keyboard
|
||||
|
@ -2830,7 +2830,7 @@ keyboard shortcuts.")
|
|||
("sqlite" ,sqlite)
|
||||
("polkit" ,polkit)
|
||||
("sane-backends" ,sane-backends)))
|
||||
(home-page "http://www.freedesktop.org/software/colord/")
|
||||
(home-page "https://www.freedesktop.org/software/colord/")
|
||||
(synopsis "Color management service")
|
||||
(description "Colord is a system service that makes it easy to manage,
|
||||
install and generate color profiles to accurately color manage input and
|
||||
|
@ -2966,7 +2966,7 @@ faster results and to avoid unnecessary server load.")
|
|||
`(("dbus-glib" ,dbus-glib)
|
||||
("libgudev" ,libgudev)
|
||||
("libusb" ,libusb)))
|
||||
(home-page "http://upower.freedesktop.org/")
|
||||
(home-page "https://upower.freedesktop.org/")
|
||||
(synopsis "System daemon for managing power devices")
|
||||
(description
|
||||
"UPower is an abstraction for enumerating power devices,
|
||||
|
@ -5729,7 +5729,7 @@ shared object databases, search tools and indexing.")
|
|||
(define-public nautilus
|
||||
(package
|
||||
(name "nautilus")
|
||||
(version "3.24.2.1")
|
||||
(version "3.26.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
|
@ -5737,16 +5737,17 @@ shared object databases, search tools and indexing.")
|
|||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1cv138z04qx0fh1a2z2hvxy4p1x15vdv5gmkx5f3hb6c3w2rsz9m"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
"1d0l4vgcjqj4671hb6s2a56baqlasbxn3wl6vfrpdsk5qq299jbr"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
'("--disable-selinux") ; XXX: not packaged
|
||||
'(#:glib-or-gtk? #t
|
||||
;; XXX: FAIL: check-nautilus
|
||||
;; Settings schema 'org.gnome.nautilus.preferences' is not installed
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
|
||||
`(("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database
|
||||
("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
|
||||
("gtk+:bin" ,gtk+ "bin") ; for gtk-update-icon-cache
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
|
@ -5756,7 +5757,8 @@ shared object databases, search tools and indexing.")
|
|||
("exempi" ,exempi)
|
||||
("gnome-desktop" ,gnome-desktop)
|
||||
("gnome-autoar" ,gnome-autoar)
|
||||
("nettle" ,nettle) ; XXX required by libarchive.pc via gnome-autoar
|
||||
("libselinux" ,libselinux)
|
||||
("nettle" ,nettle) ; XXX required by libarchive.pc via gnome-autoar
|
||||
("tracker" ,tracker)
|
||||
;; XXX: gtk+ is required by libnautilus-extension.pc
|
||||
;;
|
||||
|
|
|
@ -187,7 +187,11 @@
|
|||
(inputs
|
||||
`(("tzdata" ,tzdata)
|
||||
("pcre" ,pcre)
|
||||
("gcc:lib" ,gcc "lib")))
|
||||
;; Building Go 1.10 with the Go 1.4 bootstrap, Thread Sanitizer from GCC
|
||||
;; 5 finds a data race during the the test suite of Go 1.10. With GCC 6,
|
||||
;; the race doesn't seem to be present:
|
||||
;; https://github.com/golang/go/issues/24046
|
||||
("gcc:lib" ,gcc-6 "lib")))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,%pkg-config)
|
||||
("which" ,which)
|
||||
|
@ -372,6 +376,119 @@ in the style of communicating sequential processes (@dfn{CSP}).")
|
|||
,@(package-native-inputs go-1.4)))
|
||||
(supported-systems %supported-systems)))
|
||||
|
||||
(define-public go-1.10
|
||||
(package
|
||||
(inherit go-1.9)
|
||||
(name "go")
|
||||
(version "1.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://storage.googleapis.com/golang/"
|
||||
name version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"093z1h0gmi458kv7smpx0ph6jm7ss9mzxa432kysbz85jhl4kppk"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-1.9)
|
||||
((#: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")))
|
||||
|
||||
;; Removing net/ tests, which fail when attempting to access
|
||||
;; network resources not present in the build container.
|
||||
(for-each delete-file
|
||||
'("net/listen_test.go"
|
||||
"net/parse_test.go"
|
||||
"net/cgo_unix_test.go"))
|
||||
|
||||
(substitute* "os/os_test.go"
|
||||
(("/usr/bin") (getcwd))
|
||||
(("/bin/pwd") (which "pwd"))
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
;; 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.+)")
|
||||
("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)))
|
||||
(replace '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")
|
||||
;; Go 1.10 tries to write to $HOME in a test
|
||||
(setenv "HOME" "/tmp")
|
||||
#t)))))))))
|
||||
|
||||
(define-public go go-1.9)
|
||||
|
||||
(define-public go-github-com-alsm-ioprogress
|
||||
|
|
|
@ -87,7 +87,7 @@
|
|||
"testsuite/exec_opcodes_sys.c")
|
||||
(("if \\(error\\) return 1;")
|
||||
"if (error) return 77;")))))))
|
||||
(home-page "http://gstreamer.freedesktop.org/modules/orc.html")
|
||||
(home-page "https://gstreamer.freedesktop.org/modules/orc.html")
|
||||
(synopsis "Oil runtime compiler")
|
||||
(description
|
||||
"Orc is a just-in-time compiler implemented as a library and set of
|
||||
|
@ -405,7 +405,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.")
|
|||
("ffmpeg" ,ffmpeg)
|
||||
("orc" ,orc)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "http://gstreamer.freedesktop.org/")
|
||||
(home-page "https://gstreamer.freedesktop.org/")
|
||||
(synopsis "Plugins for the GStreamer multimedia library")
|
||||
(description
|
||||
"This GStreamer plugin supports a large number of audio and video
|
||||
|
|
|
@ -17,6 +17,7 @@
|
|||
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -40,6 +41,7 @@
|
|||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system perl)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system waf)
|
||||
#:use-module (gnu packages)
|
||||
|
@ -1237,6 +1239,95 @@ targeted at GTK 2.x, and can be used in conjunction with gnome-python to
|
|||
write GNOME applications.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public perl-cairo
|
||||
(package
|
||||
(name "perl-cairo")
|
||||
(version "1.106")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://cpan/authors/id/X/XA/XAOC/Cairo-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1i25kks408c54k2zxskvg54l5k3qadzm8n72ffga9jy7ic0h6j76"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-extutils-depends" ,perl-extutils-depends)
|
||||
("perl-extutils-pkgconfig" ,perl-extutils-pkgconfig)))
|
||||
(inputs
|
||||
`(("cairo" ,cairo)))
|
||||
(home-page "http://search.cpan.org/dist/Cairo/")
|
||||
(synopsis "Perl interface to the cairo 2d vector graphics library")
|
||||
(description "Cairo provides Perl bindings for the vector graphics library
|
||||
cairo. It supports multiple output targets, including PNG, PDF and SVG. Cairo
|
||||
produces identical output on all those targets.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public perl-gtk2
|
||||
(package
|
||||
(name "perl-gtk2")
|
||||
(version "1.24992")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/X/XA/XAOC/Gtk2-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1044rj3wbfmgaif2jb0k28m2aczli6ai2n5yvn6pr7zjyw16kvd2"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-extutils-depends" ,perl-extutils-depends)
|
||||
("perl-extutils-pkgconfig" ,perl-extutils-pkgconfig)))
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+-2)))
|
||||
(propagated-inputs
|
||||
`(("perl-pango" ,perl-pango)))
|
||||
(home-page "http://search.cpan.org/dist/Gtk2/")
|
||||
(synopsis "Perl interface to the 2.x series of the Gimp Toolkit library")
|
||||
(description "Perl bindings to the 2.x series of the Gtk+ widget set.
|
||||
This module allows you to write graphical user interfaces in a Perlish and
|
||||
object-oriented way, freeing you from the casting and memory management in C,
|
||||
yet remaining very close in spirit to original API.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public perl-pango
|
||||
(package
|
||||
(name "perl-pango")
|
||||
(version "1.227")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/X/XA/XAOC/Pango-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wdcidnfnb6nm79fzfs39ivawj3x8m98a147fmcxgv1zvwia9c1l"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-extutils-depends" ,perl-extutils-depends)
|
||||
("perl-extutils-pkgconfig" ,perl-extutils-pkgconfig)))
|
||||
(inputs
|
||||
`(("pango" ,pango)))
|
||||
(propagated-inputs
|
||||
`(("perl-cairo" ,perl-cairo)
|
||||
("perl-glib" ,perl-glib)))
|
||||
(home-page "http://search.cpan.org/dist/Pango/")
|
||||
(synopsis "Layout and render international text")
|
||||
(description "Pango is a library for laying out and rendering text, with an
|
||||
emphasis on internationalization. Pango can be used anywhere that text layout
|
||||
is needed, but using Pango in conjunction with Cairo and/or Gtk2 provides a
|
||||
complete solution with high quality text handling and graphics rendering.
|
||||
|
||||
Dynamically loaded modules handle text layout for particular combinations of
|
||||
script and font backend. Pango provides a wide selection of modules, including
|
||||
modules for Hebrew, Arabic, Hangul, Thai, and a number of Indic scripts.
|
||||
Virtually all of the world's major scripts are supported.
|
||||
|
||||
In addition to the low level layout rendering routines, Pango includes
|
||||
@code{Pango::Layout}, a high level driver for laying out entire blocks of text,
|
||||
and routines to assist in editing internationalized text.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public girara
|
||||
(package
|
||||
(name "girara")
|
||||
|
|
|
@ -866,3 +866,26 @@ of a JSON value into a @code{Data.Aeson.Value}.")
|
|||
(description
|
||||
"HTTP multipart split out of the cgi package, for Haskell.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-uri-encode
|
||||
(package
|
||||
(name "ghc-uri-encode")
|
||||
(version "1.5.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/uri-encode/uri-encode-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"11miwb5vvnn17m92ykz1pzg9x6s8fbpz3mmsyqs2s4b3mn55haz8"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-text" ,ghc-text)
|
||||
("ghc-utf8-string" ,ghc-utf8-string)
|
||||
("ghc-network-uri" ,ghc-network-uri)))
|
||||
(home-page "https://hackage.haskell.org/package/uri-encode")
|
||||
(synopsis "Unicode aware uri-encoding")
|
||||
(description "Unicode aware uri-encoding for Haskell.")
|
||||
(license license:bsd-3)))
|
||||
|
|
|
@ -5755,6 +5755,8 @@ representations of current time.")
|
|||
(sha256
|
||||
(base32 "0jkca97zyv23yyilp3jydcrzxqhyk27swhzh82llvban5zp8b21y"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "--allow-newer=QuickCheck")))
|
||||
(inputs
|
||||
`(("ghc-random" ,ghc-random)
|
||||
("ghc-test-framework" ,ghc-test-framework)
|
||||
|
@ -7358,6 +7360,8 @@ Haskell, using gnuplot for rendering.")
|
|||
(sha256
|
||||
(base32 "1b6w9xznk42732vpd8ili60k12yq190xnajgga0iwbdpyg424lgg"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "--allow-newer=vector")))
|
||||
(inputs
|
||||
`(("ghc-hashable" ,ghc-hashable)
|
||||
("ghc-primitive" ,ghc-primitive)
|
||||
|
|
|
@ -59,7 +59,7 @@
|
|||
(define-public feh
|
||||
(package
|
||||
(name "feh")
|
||||
(version "2.23.2")
|
||||
(version "2.24")
|
||||
(home-page "https://feh.finalrewind.org/")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
|
@ -67,7 +67,7 @@
|
|||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hw9xhhmm404ircmd7aw9n51n23wzjxzmav272ldk1pxb2jk3hcn"))))
|
||||
"148qbxkk5m7i3cxymnfwi7aikqjyfxr306dlqm9ndp6x932js5wq"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (modify-phases %standard-phases (delete 'configure))
|
||||
|
|
|
@ -7,9 +7,8 @@
|
|||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||
;;; Copyright © 2015 Amirouche Boubekki <amirouche@hypermove.net>
|
||||
;;; Copyright © 2014, 2017 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017, 2018 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net>
|
||||
|
@ -633,7 +632,7 @@ compose, and analyze GIF images.")
|
|||
(define-public imlib2
|
||||
(package
|
||||
(name "imlib2")
|
||||
(version "1.4.10")
|
||||
(version "1.5.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -641,7 +640,7 @@ compose, and analyze GIF images.")
|
|||
"/imlib2-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wm2q2xlkbm71k7mw2jyzbxgzylrkcj5yh6nq58w5gybhp98qs9z"))))
|
||||
"0kg28b5wp886hiy12v7abdybrvlymb7g3nvg0ysn2y8h883s5w8m"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkgconfig" ,pkg-config)))
|
||||
|
@ -1230,3 +1229,24 @@ medical image data, e.g. magnetic resonance image (MRI) and functional MRI
|
|||
(synopsis "Color picker")
|
||||
(description "Gpick is an advanced color picker and palette editing tool.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public libiptcdata
|
||||
(package
|
||||
(name "libiptcdata")
|
||||
(version "1.0.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/" name "/" name "/"
|
||||
version "/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"03pfvkmmx762iydq0q207x2028d275pbdysfsgpmrr0ywy63pxkr"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://libiptcdata.sourceforge.net/")
|
||||
(synopsis "IPTC metadata manipulation library")
|
||||
(description "Libiptcdata is a C library for manipulating the International
|
||||
Press Telecommunications Council (IPTC) metadata stored within multimedia files
|
||||
such as images. This metadata can include captions and keywords, often used by
|
||||
popular photo management applications. The library provides routines for
|
||||
parsing, viewing, modifying, and saving this metadata.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
|
|
@ -47,14 +47,14 @@
|
|||
;; The 7 release series has an incompatible API, while the 6 series is still
|
||||
;; maintained. Don't update to 7 until we've made sure that the ImageMagick
|
||||
;; users are ready for the 7-series API.
|
||||
(version "6.9.9-35")
|
||||
(version "6.9.9-36")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://imagemagick/ImageMagick-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09c8298v7112y579mfp0bgsa3gsmcx2l5zbgfkwply4ihszprh0i"))))
|
||||
"1nhv3cmg4npqibhchp3qgm9pld3n94xwwzv5hgn2s7lqz0zc0vd8"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch")
|
||||
|
|
|
@ -2018,6 +2018,72 @@ debugging, etc.")
|
|||
(delete-file-recursively "lib") #t))
|
||||
(replace 'install (install-jars "bin/lib")))))))
|
||||
|
||||
;; This is the last 3.x release of ECJ
|
||||
(define-public java-ecj-3
|
||||
(package
|
||||
(name "java-ecj")
|
||||
(version "3.8.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://archive.eclipse.org/eclipse/"
|
||||
"downloads/drops/R-" version
|
||||
"-201301310800/ecjsrc-" version ".jar"))
|
||||
(sha256
|
||||
(base32
|
||||
"01mdj14jw11g1jfnki4fi8229p0c6zzckd38zqy2w4m3cjcvsx04"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; none included
|
||||
#:jdk ,icedtea-7 ; doesn't build with JDK8+
|
||||
#:make-flags (list "-f" "src/build.xml")
|
||||
#:build-target "build"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-manifest
|
||||
(lambda _
|
||||
;; Record the main class to make ecj executable.
|
||||
(with-atomic-file-replacement "src/META-INF/MANIFEST.MF"
|
||||
(lambda (in out)
|
||||
(display "Manifest-Version: 1.0
|
||||
Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
|
||||
out)))))
|
||||
(replace 'install (install-jars ".")))))
|
||||
(home-page "https://eclipse.org")
|
||||
(synopsis "Eclipse Java development tools core batch compiler")
|
||||
(description "This package provides the Eclipse Java core batch compiler.")
|
||||
(license license:epl1.0)))
|
||||
|
||||
;; This is needed for java-cisd-args4j
|
||||
(define-public java-ecj-3.5
|
||||
(package (inherit java-ecj-3)
|
||||
(version "3.5.1")
|
||||
(source (origin
|
||||
(method url-fetch/zipbomb)
|
||||
(uri (string-append "http://archive.eclipse.org/eclipse/"
|
||||
"downloads/drops/R-" version
|
||||
"-200909170800/ecjsrc-" version ".zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vnl2mavisc567bip736xzsvvbjif5279wc4a7pbdik5wlir8qr7"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; none included
|
||||
#:jdk ,icedtea-7 ; doesn't build with JDK8+
|
||||
#:build-target "build"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-manifest
|
||||
(lambda _
|
||||
;; Record the main class to make ecj executable.
|
||||
(with-atomic-file-replacement "META-INF/MANIFEST.MF"
|
||||
(lambda (in out)
|
||||
(dump-port in out)
|
||||
(display "Main-Class: org.eclipse.jdt.internal.compiler.batch.Main\n"
|
||||
out)))))
|
||||
(replace 'install (install-jars ".")))))
|
||||
(native-inputs
|
||||
`(("unzip" ,unzip)))))
|
||||
|
||||
(define-public java-classpathx-servletapi
|
||||
(package
|
||||
(name "java-classpathx-servletapi")
|
||||
|
@ -2483,7 +2549,7 @@ mechanism of Java. It is especially useful for dynamic loading of application
|
|||
components.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-plexus-container-default-bootstrap
|
||||
(define java-plexus-container-default-bootstrap
|
||||
(package
|
||||
(name "java-plexus-container-default-bootstrap")
|
||||
(version "1.7.1")
|
||||
|
@ -2660,6 +2726,418 @@ archives (jar).")
|
|||
`(("archiver" ,java-plexus-archiver)
|
||||
("hamcrest" ,java-hamcrest-core)))))
|
||||
|
||||
(define-public java-plexus-component-annotations
|
||||
(package
|
||||
(inherit java-plexus-container-default)
|
||||
(name "java-plexus-component-annotations")
|
||||
(arguments
|
||||
`(#:jar-name "plexus-component-annotations.jar"
|
||||
#:source-dir "plexus-component-annotations/src/main/java"
|
||||
#:tests? #f)); no tests
|
||||
(inputs '())
|
||||
(native-inputs '())
|
||||
(synopsis "Plexus descriptors generator")
|
||||
(description "This package is a Maven plugin to generate Plexus descriptors
|
||||
from source tags and class annotations.")))
|
||||
|
||||
(define-public java-plexus-cipher
|
||||
(package
|
||||
(name "java-plexus-cipher")
|
||||
(version "1.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/codehaus-plexus/plexus-cipher"
|
||||
"/archive/plexus-cipher-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1j3r8xzlxlk340snkjp6lk2ilkxlkn8qavsfiq01f43xmvv8ymk3"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "plexus-cipher.jar"
|
||||
#:source-dir "src/main/java"
|
||||
#:jdk ,icedtea-8
|
||||
#:tests? #f; FIXME: requires sisu-inject-bean
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'copy-resources
|
||||
(lambda _
|
||||
(copy-recursively "src/main/resources" "build/classes")
|
||||
(mkdir-p "build/classes/META-INF/sisu")
|
||||
(with-output-to-file "build/classes/META-INF/sisu/javax.inject.Named"
|
||||
(lambda _
|
||||
(display "org.sonatype.plexus.components.cipher.DefaultPlexusCipher\n")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-cdi-api" ,java-cdi-api)
|
||||
("java-javax-inject" ,java-javax-inject)))
|
||||
(home-page "https://github.com/sonatype/plexus-cipher")
|
||||
(synopsis "Encryption/decryption Component")
|
||||
(description "Plexus-cipher contains a component to deal with encryption
|
||||
and decryption.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-plexus-compiler-api
|
||||
(package
|
||||
(name "java-plexus-compiler-api")
|
||||
(version "2.8.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/codehaus-plexus/plexus-compiler"
|
||||
"/archive/plexus-compiler-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0g3x26pymcdnfnwv2a1i57pd5s26f5zqfi1rdy98z1bn01klx25k"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "plexus-compiler-api.jar"
|
||||
#:source-dir "plexus-compiler-api/src/main/java"
|
||||
#:jdk ,icedtea-8
|
||||
#:test-dir "plexus-compiler-api/src/test"))
|
||||
(inputs
|
||||
`(("java-plexus-container-default" ,java-plexus-container-default)
|
||||
("java-plexus-util" ,java-plexus-utils)))
|
||||
(native-inputs
|
||||
`(("java-junit" ,java-junit)))
|
||||
(home-page "https://github.com/codehaus-plexus/plexus-compiler")
|
||||
(synopsis "Plexus Compilers component's API to manipulate compilers")
|
||||
(description "This package contains the API used by components to manipulate
|
||||
compilers.")
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define-public java-plexus-compiler-javac
|
||||
(package
|
||||
(inherit java-plexus-compiler-api)
|
||||
(name "java-plexus-compiler-javac")
|
||||
(arguments
|
||||
`(#:jar-name "plexus-compiler-javac.jar"
|
||||
#:source-dir "plexus-compilers/plexus-compiler-javac/src/main/java"
|
||||
#:jdk ,icedtea-8
|
||||
#:tests? #f; depends on compiler-test -> maven-core -> ... -> this package.
|
||||
#:test-dir "plexus-compilers/plexus-compiler-javac/src/test"))
|
||||
(inputs
|
||||
`(("java-plexus-compiler-api" ,java-plexus-compiler-api)
|
||||
("java-plexus-utils" ,java-plexus-utils)
|
||||
("java-plexus-container-default" ,java-plexus-container-default)))
|
||||
(native-inputs
|
||||
`(("java-junit" ,java-junit)))
|
||||
(synopsis "Javac Compiler support for Plexus Compiler component")
|
||||
(description "This package contains the Javac Compiler support for Plexus
|
||||
Compiler component.")))
|
||||
|
||||
(define-public java-plexus-sec-dispatcher
|
||||
(package
|
||||
(name "java-plexus-sec-dispatcher")
|
||||
(version "1.4") ;; Newest release listed at the Maven Central Repository.
|
||||
(source (origin
|
||||
;; This project doesn't tag releases or publish tarballs, so we take
|
||||
;; the "prepare release plexus-sec-dispatcher-1.4" git commit.
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/sonatype/plexus-sec-dispatcher/"
|
||||
"archive/7db8f88048.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1smfrk4n7xbrsxpxcp2j4i0j8q86j73w0w6xg7qz83dp6dagdjgp"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
(arguments
|
||||
`(#:jar-name "plexus-sec-dispatcher.jar"
|
||||
#:source-dir "src/main/java"
|
||||
#:jdk ,icedtea-8
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'generate-models
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(define (modello-single-mode file version mode)
|
||||
(zero? (system* "java"
|
||||
"org.codehaus.modello.ModelloCli"
|
||||
file mode "src/main/java" version
|
||||
"false" "true")))
|
||||
(let ((file "src/main/mdo/settings-security.mdo"))
|
||||
(and
|
||||
(modello-single-mode file "1.0.0" "java")
|
||||
(modello-single-mode file "1.0.0" "xpp3-reader")
|
||||
(modello-single-mode file "1.0.0" "xpp3-writer")))))
|
||||
(add-before 'build 'generate-components.xml
|
||||
(lambda _
|
||||
(mkdir-p "build/classes/META-INF/plexus")
|
||||
(with-output-to-file "build/classes/META-INF/plexus/components.xml"
|
||||
(lambda _
|
||||
(display
|
||||
"<component-set>\n
|
||||
<components>\n
|
||||
<component>\n
|
||||
<role>org.sonatype.plexus.components.sec.dispatcher.SecDispatcher</role>\n
|
||||
<role-hint>default</role-hint>\n
|
||||
<implementation>org.sonatype.plexus.components.sec.dispatcher.DefaultSecDispatcher</implementation>\n
|
||||
<description></description>\n
|
||||
<requirements>\n
|
||||
<requirement>\n
|
||||
<role>org.sonatype.plexus.components.cipher.PlexusCipher</role>\n
|
||||
<field-name>_cipher</field-name>\n
|
||||
</requirement>\n
|
||||
<requirement>\n
|
||||
<role>org.sonatype.plexus.components.sec.dispatcher.PasswordDecryptor</role>\n
|
||||
<field-name>_decryptors</field-name>\n
|
||||
</requirement>\n
|
||||
</requirements>\n
|
||||
<configuration>\n
|
||||
<_configuration-file>~/.settings-security.xml</_configuration-file>\n
|
||||
</configuration>\n
|
||||
</component>\n
|
||||
</components>\n
|
||||
</component-set>\n")))))
|
||||
(add-before 'check 'fix-paths
|
||||
(lambda _
|
||||
(copy-recursively "src/test/resources" "target"))))))
|
||||
(inputs
|
||||
`(("java-plexus-cipher" ,java-plexus-cipher)))
|
||||
(native-inputs
|
||||
`(("java-modello-core" ,java-modello-core)
|
||||
;; for modello:
|
||||
("java-plexus-container-default" ,java-plexus-container-default)
|
||||
("java-plexus-classworlds" ,java-plexus-classworlds)
|
||||
("java-plexus-utils" ,java-plexus-utils)
|
||||
("java-guava" ,java-guava)
|
||||
("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect)
|
||||
("java-sisu-build-api" ,java-sisu-build-api)
|
||||
;; modello plugins:
|
||||
("java-modellop-plugins-java" ,java-modello-plugins-java)
|
||||
("java-modellop-plugins-xml" ,java-modello-plugins-xml)
|
||||
("java-modellop-plugins-xpp3" ,java-modello-plugins-xpp3)
|
||||
;; for tests
|
||||
("java-junit" ,java-junit)))
|
||||
(build-system ant-build-system)
|
||||
(home-page "https://github.com/sonatype/plexus-sec-dispatcher")
|
||||
(synopsis "Plexus Security Dispatcher Component")
|
||||
(description "This package is the Plexus Security Dispatcher Component.
|
||||
This component decrypts a string passed to it.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-sisu-build-api
|
||||
(package
|
||||
(name "java-sisu-build-api")
|
||||
(version "0.0.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/sonatype/sisu-build-api/"
|
||||
"archive/plexus-build-api-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1c3rrpma3x634xp2rm2p5iskfhzdyc7qfbhjzr70agrl1jwghgy2"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "sisu-build-api.jar"
|
||||
#:source-dir "src/main/java"
|
||||
#:jdk ,icedtea-8
|
||||
#:tests? #f; FIXME: how to run the tests?
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'copy-resources
|
||||
(lambda _
|
||||
(copy-recursively "src/main/resources" "build/classes")
|
||||
(substitute* (find-files "build/classes")
|
||||
(("\\$\\{project.version\\}") ,version))
|
||||
#t))
|
||||
(add-before 'build 'generate-plexus-compontent
|
||||
(lambda _
|
||||
(mkdir-p "build/classes/META-INF/plexus")
|
||||
;; This file is required for plexus to inject this package.
|
||||
;; FIXME: how is it generated?
|
||||
(with-output-to-file "build/classes/META-INF/plexus/components.xml"
|
||||
(lambda _
|
||||
(display
|
||||
"<component-set>\n
|
||||
<components>\n
|
||||
<component>\n
|
||||
<role>org.sonatype.plexus.build.incremental.BuildContext</role>\n
|
||||
<role-hint>default</role-hint>\n
|
||||
<implementation>org.sonatype.plexus.build.incremental.DefaultBuildContext</implementation>\n
|
||||
<description>Filesystem based non-incremental build context implementation\n
|
||||
which behaves as if all files were just created.</description>\n
|
||||
</component>\n
|
||||
</components>\n
|
||||
</component-set>\n")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-plexus-utils" ,java-plexus-utils)
|
||||
("java-plexus-container-default" ,java-plexus-container-default)))
|
||||
(home-page "https://github.com/sonatype/sisu-build-api/")
|
||||
(synopsis "Base build API for maven")
|
||||
(description "This package contains the base build API for maven and
|
||||
a default implementation of it. This API is about scanning files in a
|
||||
project and determining what files need to be rebuilt.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-modello-core
|
||||
(package
|
||||
(name "java-modello-core")
|
||||
(version "1.9.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/codehaus-plexus/modello"
|
||||
"/archive/modello-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0l2pvns8pmlrmjm3iknp7gpg3654y1m8qhy55b19sdwdchdcyxfh"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "modello-core.jar"
|
||||
#:source-dir "modello-core/src/main/java"
|
||||
#:test-dir "modello-core/src/test"
|
||||
#:main-class "org.codehaus.modello.ModelloCli"
|
||||
#:jdk ,icedtea-8
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'copy-resources
|
||||
(lambda _
|
||||
(mkdir-p "build/classes/META-INF/plexus")
|
||||
(copy-file "modello-core/src/main/resources/META-INF/plexus/components.xml"
|
||||
"build/classes/META-INF/plexus/components.xml")
|
||||
#t))
|
||||
(add-before 'check 'fix-tests
|
||||
(lambda _
|
||||
(with-directory-excursion "modello-core/src/test/java/org/codehaus"
|
||||
(substitute* '("modello/core/DefaultModelloCoreTest.java"
|
||||
"modello/core/io/ModelReaderTest.java")
|
||||
(("src/test") "modello-core/src/test")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-plexus-utils" ,java-plexus-utils)
|
||||
("java-plexus-container-default" ,java-plexus-container-default)
|
||||
("java-sisu-build-api" ,java-sisu-build-api)))
|
||||
(native-inputs
|
||||
`(("java-junit" ,java-junit)
|
||||
("java-plexus-classworlds" ,java-plexus-classworlds)
|
||||
("java-geronimo-xbean-reflect" ,java-geronimo-xbean-reflect)
|
||||
("java-guava" ,java-guava)))
|
||||
(home-page "http://codehaus-plexus.github.io/modello/")
|
||||
(synopsis "Framework for code generation from a simple model")
|
||||
(description "Modello is a framework for code generation from a simple model.
|
||||
|
||||
Modello generates code from a simple model format: based on a plugin
|
||||
architecture, various types of code and descriptors can be generated from the
|
||||
single model, including Java POJOs, XML/JSON/YAML marshallers/unmarshallers,
|
||||
XSD and documentation.")
|
||||
(license (list
|
||||
license:expat
|
||||
;; Although this package uses only files licensed under expat,
|
||||
;; other parts of the source are licensed under different
|
||||
;; licenses. We include them to be inherited by other packages.
|
||||
license:asl2.0
|
||||
;; Some files in modello-plugin-java are licensed under a
|
||||
;; 5-clause BSD license.
|
||||
(license:non-copyleft
|
||||
(string-append "file:///modello-plugins/modello-plugin-java/"
|
||||
"src/main/java/org/codehaus/modello/plugin/"
|
||||
"java/javasource/JNaming.java"))))))
|
||||
|
||||
(define-public java-modello-plugins-java
|
||||
(package
|
||||
(inherit java-modello-core)
|
||||
(name "java-modello-plugins-java")
|
||||
(arguments
|
||||
`(#:jar-name "modello-plugins-java.jar"
|
||||
#:source-dir "modello-plugins/modello-plugin-java/src/main/java"
|
||||
#:test-dir "modello-plugins/modello-plugin-java/src/test"
|
||||
#:jdk ,icedtea-8
|
||||
#:tests? #f; requires maven-model, which depends on this package
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'copy-resources
|
||||
(lambda _
|
||||
(mkdir-p "build/classes")
|
||||
(copy-recursively "modello-plugins/modello-plugin-java/src/main/resources"
|
||||
"build/classes")
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-modello-core" ,java-modello-core)
|
||||
,@(package-inputs java-modello-core)))
|
||||
(synopsis "Modello Java Plugin")
|
||||
(description "Modello Java Plugin generates Java objects for the model.")))
|
||||
|
||||
(define-public java-modello-plugins-xml
|
||||
(package
|
||||
(inherit java-modello-core)
|
||||
(name "java-modello-plugins-xml")
|
||||
(arguments
|
||||
`(#:jar-name "modello-plugins-xml.jar"
|
||||
#:source-dir "modello-plugins/modello-plugin-xml/src/main/java"
|
||||
#:test-dir "modello-plugins/modello-plugin-xml/src/test"
|
||||
#:jdk ,icedtea-8
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'copy-resources
|
||||
(lambda _
|
||||
(mkdir-p "build/classes")
|
||||
(copy-recursively
|
||||
"modello-plugins/modello-plugin-xml/src/main/resources"
|
||||
"build/classes")
|
||||
#t))
|
||||
(add-before 'check 'fix-paths
|
||||
(lambda _
|
||||
(with-directory-excursion "modello-plugins/modello-plugin-xml/src/test"
|
||||
(substitute*
|
||||
"java/org/codehaus/modello/plugins/xml/XmlModelloPluginTest.java"
|
||||
(("src/test") "modello-plugins/modello-plugin-xml/src/test"))))))))
|
||||
(inputs
|
||||
`(("java-modello-core" ,java-modello-core)
|
||||
("java-modello-plugins-java" ,java-modello-plugins-java)
|
||||
,@(package-inputs java-modello-core)))
|
||||
(synopsis "Modello XML Plugin")
|
||||
(description "Modello XML Plugin contains shared code for every plugins
|
||||
working on XML representation of the model.")))
|
||||
|
||||
(define-public java-modello-test
|
||||
(package
|
||||
(inherit java-modello-core)
|
||||
(name "java-modello-test")
|
||||
(arguments
|
||||
`(#:jar-name "modello-test.jar"
|
||||
#:source-dir "modello-test/src/main/java"
|
||||
#:tests? #f; no tests
|
||||
#:jdk ,icedtea-8))
|
||||
(inputs
|
||||
`(("java-plexus-utils" ,java-plexus-utils)
|
||||
("java-plexus-compiler-api" ,java-plexus-compiler-api)
|
||||
("java-plexus-compiler-javac" ,java-plexus-compiler-javac)
|
||||
("java-plexus-container-default" ,java-plexus-container-default)))
|
||||
(synopsis "Modello test package")
|
||||
(description "The modello test package contains the basis to create
|
||||
Modello generator unit-tests, including sample models and xml files to test
|
||||
every feature for every plugin.")))
|
||||
|
||||
(define-public java-modello-plugins-xpp3
|
||||
(package
|
||||
(inherit java-modello-core)
|
||||
(name "java-modello-plugins-xpp3")
|
||||
(arguments
|
||||
`(#:jar-name "modello-plugins-xpp3.jar"
|
||||
#:source-dir "modello-plugins/modello-plugin-xpp3/src/main/java"
|
||||
#:test-dir "modello-plugins/modello-plugin-xpp3/src/test"
|
||||
;; One of the test dependencies is maven-model which depends on this package.
|
||||
#:tests? #f
|
||||
#:jdk ,icedtea-8
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'copy-resources
|
||||
(lambda _
|
||||
(mkdir-p "build/classes")
|
||||
(copy-recursively "modello-plugins/modello-plugin-xpp3/src/main/resources"
|
||||
"build/classes")
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-modello-core" ,java-modello-core)
|
||||
("java-modello-plugins-java" ,java-modello-plugins-java)
|
||||
("java-modello-plugins-xml" ,java-modello-plugins-xml)
|
||||
,@(package-inputs java-modello-core)))
|
||||
(native-inputs
|
||||
`(("java-xmlunit" ,java-xmlunit)
|
||||
("java-modello-test" ,java-modello-test)
|
||||
,@(package-native-inputs java-modello-core)))
|
||||
(synopsis "Modello XPP3 Plugin")
|
||||
(description "The modello XPP3 plugin generates XML readers and writers based
|
||||
on the XPP3 API (XML Pull Parser).")))
|
||||
|
||||
(define-public java-asm
|
||||
(package
|
||||
(name "java-asm")
|
||||
|
@ -5188,7 +5666,6 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
|
|||
(define antlr3-3.1
|
||||
(package
|
||||
(inherit antlr3)
|
||||
(name "antlr3-3.1")
|
||||
(version "3.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
|
@ -5199,7 +5676,7 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
|
|||
(base32
|
||||
"0sfimc9cpbgrihz4giyygc8afgpma2c93yqpwb951giriri6x66z"))))
|
||||
(arguments
|
||||
`(#:jar-name (string-append ,name "-" ,version ".jar")
|
||||
`(#:jar-name (string-append "antlr3-" ,version ".jar")
|
||||
#:source-dir "src:runtime/Java/src"
|
||||
#:tests? #f
|
||||
#:phases
|
||||
|
@ -5231,12 +5708,13 @@ import org.antlr.grammar.v2.ANTLRTreePrinter;"))
|
|||
(for-each (lambda (file)
|
||||
(display file)
|
||||
(newline)
|
||||
(system* "antlr" "-o" dir (string-append dir file)))
|
||||
(invoke "antlr" "-o" dir (string-append dir file)))
|
||||
'("antlr.g" "antlr.print.g" "assign.types.g"
|
||||
"buildnfa.g" "define.g")))
|
||||
(format #t "codegen.g\n")
|
||||
(system* "antlr" "-o" "src/org/antlr/codegen"
|
||||
"src/org/antlr/codegen/codegen.g")))
|
||||
(invoke "antlr" "-o" "src/org/antlr/codegen"
|
||||
"src/org/antlr/codegen/codegen.g")
|
||||
#t))
|
||||
(add-before 'build 'fix-build-xml
|
||||
(lambda _
|
||||
(substitute* "build.xml"
|
||||
|
@ -6959,7 +7437,7 @@ those in Perl and JavaScript.")
|
|||
(define-public java-testng
|
||||
(package
|
||||
(name "java-testng")
|
||||
(version "6.14.2")
|
||||
(version "6.14.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -6968,7 +7446,7 @@ those in Perl and JavaScript.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ngj88dpbqqdx9084cmiasmn9q3v5dgx45qbvxpip47nxc5x14xy"))))
|
||||
"0y6vq30i5g276kw0v2bhbvci22ijg7ax49ap2611yqlhbs4d6dqv"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jdk ,icedtea-8; java.util.function
|
||||
|
@ -7033,54 +7511,55 @@ to use.")
|
|||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-jnacl
|
||||
(package
|
||||
(name "java-jnacl")
|
||||
(version "0.1.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/neilalexander/jnacl")
|
||||
(commit "40c322e0a42637ab17cdf941138eeaf2494055f8")))
|
||||
(sha256
|
||||
(base32
|
||||
"1pspnmp44q61a2q4bpslpxw86rfn8s5l0xgvyrikqgdvg7ypx597"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "java-jnacl.jar"
|
||||
#:source-dir "src/main/java"
|
||||
#:jdk ,icedtea-8
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'fix-tests
|
||||
(lambda _
|
||||
(substitute* "src/test/java/com/neilalexander/jnacl/NaClTest.java"
|
||||
(("assertions.Assertions") "assertions.api.Assertions"))
|
||||
(substitute* "src/test/java/com/neilalexander/jnacl/NaclSecretBoxTest.java"
|
||||
(("assertions.Assertions") "assertions.api.Assertions"))
|
||||
#t))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(system* "ant" "compile-tests")
|
||||
(and
|
||||
(zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH")
|
||||
":build/classes"
|
||||
":build/test-classes")
|
||||
"org.testng.TestNG" "-testclass"
|
||||
"build/test-classes/com/neilalexander/jnacl/NaclSecretBoxTest.class"))
|
||||
(zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH")
|
||||
":build/classes"
|
||||
":build/test-classes")
|
||||
"org.testng.TestNG" "-testclass"
|
||||
"build/test-classes/com/neilalexander/jnacl/NaClTest.class"))))))))
|
||||
(native-inputs
|
||||
`(("java-testng" ,java-testng)
|
||||
("java-fest-util" ,java-fest-util)
|
||||
("java-fest-assert" ,java-fest-assert)))
|
||||
(home-page "https://github.com/neilalexander/jnacl")
|
||||
(synopsis "Java implementation of NaCl")
|
||||
(description "Pure Java implementation of the NaCl: Networking and
|
||||
(let ((commit "094e819afdd63ea81a499b3bcb42a271006bebd9")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "java-jnacl")
|
||||
(version (string-append "0.1.0-" revision "." (string-take commit 7)))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/neilalexander/jnacl.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1d6g6xhn83byv5943n7935wwjsk0ibk0qdvqgr699qqgqqmwisbb"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "jnacl.jar"
|
||||
#:source-dir "src/main/java"
|
||||
#:jdk ,icedtea-8
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'fix-tests
|
||||
(lambda _
|
||||
(substitute* '("src/test/java/com/neilalexander/jnacl/NaClTest.java"
|
||||
"src/test/java/com/neilalexander/jnacl/NaclSecretBoxTest.java")
|
||||
(("assertions.Assertions") "assertions.api.Assertions"))
|
||||
#t))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "ant" "compile-tests")
|
||||
(invoke "java" "-cp" (string-append (getenv "CLASSPATH")
|
||||
":build/classes"
|
||||
":build/test-classes")
|
||||
"org.testng.TestNG" "-testclass"
|
||||
"build/test-classes/com/neilalexander/jnacl/NaclSecretBoxTest.class")
|
||||
(invoke "java" "-cp" (string-append (getenv "CLASSPATH")
|
||||
":build/classes"
|
||||
":build/test-classes")
|
||||
"org.testng.TestNG" "-testclass"
|
||||
"build/test-classes/com/neilalexander/jnacl/NaClTest.class")
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("java-testng" ,java-testng)
|
||||
("java-fest-util" ,java-fest-util)
|
||||
("java-fest-assert" ,java-fest-assert)))
|
||||
(home-page "https://github.com/neilalexander/jnacl")
|
||||
(synopsis "Java implementation of NaCl")
|
||||
(description "Pure Java implementation of the NaCl: Networking and
|
||||
Cryptography library.")
|
||||
(license license:mpl2.0)))
|
||||
(license license:bsd-2))))
|
||||
|
||||
(define-public java-mvel2
|
||||
(package
|
||||
|
@ -7175,8 +7654,9 @@ configuration and string construction.")
|
|||
(add-before 'build 'run-javacc
|
||||
(lambda _
|
||||
(with-directory-excursion "src/main/java/org/apache/commons/jexl2/parser/"
|
||||
(and (zero? (system* "java" "jjtree" "Parser.jjt"))
|
||||
(zero? (system* "java" "javacc" "Parser.jj")))))))))
|
||||
(invoke "java" "jjtree" "Parser.jjt")
|
||||
(invoke "java" "javacc" "Parser.jj"))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-commons-logging-minimal" ,java-commons-logging-minimal)))
|
||||
(native-inputs
|
||||
|
@ -7216,7 +7696,8 @@ by technical operatives or consultants working with enterprise platforms.")
|
|||
(add-before 'configure 'generate-source
|
||||
(lambda _
|
||||
(with-directory-excursion "src/build/source_templates"
|
||||
(zero? (system* "mvel2" "../gen_sources.mvel" "../../java"))))))))
|
||||
(invoke "mvel2" "../gen_sources.mvel" "../../java"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("mvel" ,java-mvel2)))
|
||||
(home-page "https://jpountz.github.io/lz4-java")
|
||||
|
@ -7246,7 +7727,8 @@ algorithms and xxHash hashing algorithm.")
|
|||
(lambda _
|
||||
(mkdir-p "src")
|
||||
(with-directory-excursion "src"
|
||||
(zero? (system* "unzip" "../src.zip"))))))))
|
||||
(invoke "unzip" "../src.zip"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("unzip" ,unzip)
|
||||
("junit" ,java-junit)))
|
||||
|
@ -7277,7 +7759,8 @@ for the Java programming language.")
|
|||
(lambda _
|
||||
(mkdir-p "src")
|
||||
(with-directory-excursion "src"
|
||||
(zero? (system* "unzip" "../src.zip"))))))))
|
||||
(invoke "unzip" "../src.zip"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("unzip" ,unzip)
|
||||
("junit" ,java-junit)))
|
||||
|
@ -7904,26 +8387,23 @@ including pre-existing objects that you do not have source-code of.")
|
|||
(modify-phases %standard-phases
|
||||
(add-before 'build 'build-native
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(with-directory-excursion "hawtjni-generator/src/main/resources/"
|
||||
(and
|
||||
(system* "gcc" "-c" "hawtjni.c" "-o" "hawtjni.o"
|
||||
"-fPIC" "-O2"
|
||||
(string-append "-I" (assoc-ref inputs "jdk") "/include/linux"))
|
||||
(system* "gcc" "-c" "hawtjni-callback.c" "-o" "hawtjni-callback.o"
|
||||
"-fPIC" "-O2"
|
||||
(string-append "-I" (assoc-ref inputs "jdk") "/include/linux"))
|
||||
(system* "gcc" "-o" "libhawtjni.so" "-shared"
|
||||
"hawtjni.o" "hawtjni-callback.o")))))
|
||||
(let ((include (string-append "-I" (assoc-ref inputs "jdk") "/include/linux")))
|
||||
(with-directory-excursion "hawtjni-generator/src/main/resources/"
|
||||
(invoke "gcc" "-c" "hawtjni.c" "-o" "hawtjni.o"
|
||||
"-fPIC" "-O2" include)
|
||||
(invoke "gcc" "-c" "hawtjni-callback.c" "-o" "hawtjni-callback.o"
|
||||
"-fPIC" "-O2" include)
|
||||
(invoke "gcc" "-o" "libhawtjni.so" "-shared"
|
||||
"hawtjni.o" "hawtjni-callback.o")))
|
||||
#t))
|
||||
(add-after 'install 'install-native
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(lib (string-append out "/lib"))
|
||||
(inc (string-append out "/include")))
|
||||
(mkdir-p lib)
|
||||
(mkdir-p inc)
|
||||
(with-directory-excursion "hawtjni-generator/src/main/resources/"
|
||||
(copy-file "libhawtjni.so" (string-append lib "/libhawtjni.so"))
|
||||
(copy-file "hawtjni.h" (string-append inc "/hawtjni.h"))))
|
||||
(install-file "libhawtjni.so" lib)
|
||||
(install-file "hawtjni.h" inc)))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-commons-cli" ,java-commons-cli)
|
||||
|
@ -7960,14 +8440,14 @@ that is part of the SWT Tools project.")
|
|||
(with-directory-excursion "src/main/native-package/src"
|
||||
(substitute* "jansi_ttyname.c"
|
||||
(("#include \"jansi_.*") ""))
|
||||
(and
|
||||
(system* "gcc" "-c" "jansi_ttyname.c" "-o" "jansi_ttyname.o"
|
||||
(string-append "-I" (assoc-ref inputs "java-hawtjni")
|
||||
"/include")
|
||||
(string-append "-I" (assoc-ref inputs "jdk")
|
||||
"/include/linux")
|
||||
"-fPIC" "-O2")
|
||||
(system* "gcc" "-o" "libjansi.so" "-shared" "jansi_ttyname.o")))))
|
||||
(invoke "gcc" "-c" "jansi_ttyname.c" "-o" "jansi_ttyname.o"
|
||||
(string-append "-I" (assoc-ref inputs "java-hawtjni")
|
||||
"/include")
|
||||
(string-append "-I" (assoc-ref inputs "jdk")
|
||||
"/include/linux")
|
||||
"-fPIC" "-O2")
|
||||
(invoke "gcc" "-o" "libjansi.so" "-shared" "jansi_ttyname.o")
|
||||
#t)))
|
||||
(add-before 'build 'install-native
|
||||
(lambda _
|
||||
(let ((dir (string-append "build/classes/META-INF/native/"
|
||||
|
@ -7980,7 +8460,6 @@ that is part of the SWT Tools project.")
|
|||
#t))
|
||||
(add-after 'install 'install-native
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(mkdir-p (string-append (assoc-ref outputs "out") "/include"))
|
||||
(install-file "src/main/native-package/src/jansi.h"
|
||||
(string-append (assoc-ref outputs "out") "/include"))
|
||||
#t)))))
|
||||
|
@ -7988,8 +8467,9 @@ that is part of the SWT Tools project.")
|
|||
`(("java-hawtjni" ,java-hawtjni)))
|
||||
(home-page "https://fusesource.github.io/jansi/")
|
||||
(synopsis "Native library for jansi")
|
||||
(description "Java-jansi-native contains the native library for the jansi
|
||||
frobnication library/framework.")
|
||||
(description "This package provides the native library for jansi, a small
|
||||
Java library that allows you to use ANSI escape sequences to format your
|
||||
console output.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-jansi
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2016,2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
;;; Copyright © 2016 David Craven <david@craven.ch>
|
||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -140,7 +141,7 @@ common build settings used in software produced by the KDE community.")
|
|||
(define-public phonon
|
||||
(package
|
||||
(name "phonon")
|
||||
(version "4.9.1")
|
||||
(version "4.10.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -149,7 +150,7 @@ common build settings used in software produced by the KDE community.")
|
|||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"177647r2jqfm32hqcz2nqfqv6v48hn5ab2vc31svba2wz23fkgk7"))))
|
||||
"0gyhlnwamzfw31kw4qh0v6rj0m47k9wfygd6h07klg9ggp60xhg2"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
;; TODO: Think about adding pulseaudio. Is it required for sound?
|
||||
|
|
|
@ -128,7 +128,7 @@ generator library for C++.")
|
|||
;; of the standard build process. To make things easier, we bootstrap
|
||||
;; and patch shebangs here, so we don't have to worry about it later.
|
||||
(define libdvdnav/kodi
|
||||
(let ((commit "981488f7f27554b103cca10c1fbeba027396c94a"))
|
||||
(let ((commit "6.0.0-Leia-Alpha-1"))
|
||||
(package
|
||||
(name "libdvdnav-bootstrapped")
|
||||
(version commit)
|
||||
|
@ -140,7 +140,7 @@ generator library for C++.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"089pswc51l3avh95zl4cpsh7gh1innh7b2y4xgx840mcmy46ycr8"))))
|
||||
"1xiyfgf8v8aknlxlzsvk6pbzkhclz0hbh3s1b0w6ivkng2k310j9"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
|
@ -165,7 +165,7 @@ generator library for C++.")
|
|||
(license license:gpl2+))))
|
||||
|
||||
(define libdvdread/kodi
|
||||
(let ((commit "17d99db97e7b8f23077b342369d3c22a6250affd"))
|
||||
(let ((commit "6.0.0-Leia-Alpha-1"))
|
||||
(package
|
||||
(name "libdvdread-bootstrapped")
|
||||
(version commit)
|
||||
|
@ -177,7 +177,7 @@ generator library for C++.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1gr5aq1cjr3as9mnwrw29cxn4m6f6pfrxdahkdcjy70q3ldg90sl"))))
|
||||
"1c3g18n2vwhgcfz3dka1pmw58bnv2ram7xjvizfiykb3sgi9zfwp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
|
@ -202,7 +202,7 @@ generator library for C++.")
|
|||
(license (list license:gpl2+ license:lgpl2.1+)))))
|
||||
|
||||
(define libdvdcss/kodi
|
||||
(let ((commit "2f12236bc1c92f73c21e973363f79eb300de603f"))
|
||||
(let ((commit "1.4.1-Leia-Alpha-1"))
|
||||
(package
|
||||
(name "libdvdcss-bootstrapped")
|
||||
(version commit)
|
||||
|
@ -214,7 +214,7 @@ generator library for C++.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"198r0q73i55ga1dvyqq9nfcri0zq08b94hy8671lg14i3izx44dd"))))
|
||||
"0adafwsawxssj3nilkql447v0l4a2584rdpmy5rfjmznh91lykgh"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
|
@ -241,20 +241,20 @@ generator library for C++.")
|
|||
(define-public kodi
|
||||
;; We package the git version because the current released
|
||||
;; version was cut while the cmake transition was in turmoil.
|
||||
(let ((commit "67fd70f01a363002881f3519b50765b756716e3b")
|
||||
(revision "7"))
|
||||
(let ((commit "ec16dbca4dcf2923f53f819695a6d47c52e68d74")
|
||||
(revision "8"))
|
||||
(package
|
||||
(name "kodi")
|
||||
(version (string-append "18.0_alpha-" revision "-" (string-take commit 7)))
|
||||
(version (git-version "18.0_alpha" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xbmc/xbmc.git")
|
||||
(commit commit)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"12975n4r982kmxc0r9w24n3lrj7aj3cs4fjkdjnn0r9jbnvfxhs3"))
|
||||
"1rxg752cl59124cfpfwmyjldn6qpq5jginxddpzvgagfadf10i4d"))
|
||||
(snippet
|
||||
'(begin
|
||||
(use-modules (guix build utils))
|
||||
|
@ -267,7 +267,6 @@ generator library for C++.")
|
|||
;; "tools/depend/native/TexturePacker"
|
||||
;; "lib/gtest"
|
||||
;; "lib/cpluff"
|
||||
;; "lib/libexif"
|
||||
;; "lib/libUPnP"
|
||||
"lib/libUPnP/Neptune/ThirdParty"
|
||||
"project/Win32BuildSetup/tools/7z"))
|
||||
|
@ -318,7 +317,7 @@ generator library for C++.")
|
|||
;; to make them writable before the build process starts.
|
||||
(("autoreconf -vif") "chmod -R u+w ."))
|
||||
|
||||
(substitute* "xbmc/linux/LinuxTimezone.cpp"
|
||||
(substitute* "xbmc/platform/linux/LinuxTimezone.cpp"
|
||||
(("/usr/share/zoneinfo")
|
||||
(string-append (assoc-ref inputs "tzdata")
|
||||
"/share/zoneinfo")))
|
||||
|
@ -420,7 +419,7 @@ generator library for C++.")
|
|||
(description "Kodi is a media center application for playing videos,
|
||||
music, games, etc. Kodi is highly customizable and features a theme and
|
||||
plug-in system.")
|
||||
(home-page "http://kodi.tv")
|
||||
(home-page "https://kodi.tv")
|
||||
;; XBMC is largely GPL2+, with some library components as LGPL2.1+, but
|
||||
;; there are some other licenses spread throughout.
|
||||
(license (list license:gpl2+ license:lgpl2.1+
|
||||
|
|
|
@ -130,7 +130,7 @@ sounds for various system events.")
|
|||
;; The license of the various sounds is given in the 'CREDITS' file.
|
||||
(license (list cc-by-sa4.0 cc-by3.0 gpl2 gpl2+))
|
||||
|
||||
(home-page "http://www.freedesktop.org/wiki/Specifications/sound-theme-spec/")))
|
||||
(home-page "https://www.freedesktop.org/wiki/Specifications/sound-theme-spec/")))
|
||||
|
||||
(define-public python-pycanberra
|
||||
(package
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017 Ben Woodcroft <donttrustben@gmail.com>
|
||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -79,13 +80,13 @@ conversions for values passed between the two languages.")
|
|||
(define-public python-cffi
|
||||
(package
|
||||
(name "python-cffi")
|
||||
(version "1.11.2")
|
||||
(version "1.11.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cffi" version))
|
||||
(sha256
|
||||
(base32 "19h0wwz9cww74gw8cyq0izj8zkhjyzjw2d3ks1c3f1y4q28xv1xb"))))
|
||||
(base32 "07fiy4wqg8g08x38r04ydjr8n6g0g74gb8si8b6jhymijalq746z"))))
|
||||
(build-system python-build-system)
|
||||
(outputs '("out" "doc"))
|
||||
(inputs
|
||||
|
@ -121,7 +122,8 @@ conversions for values passed between the two languages.")
|
|||
"linker_so='gcc -shared')")))
|
||||
(substitute* "testing/cffi0/test_ownlib.py"
|
||||
(("'cc testownlib") "'gcc testownlib"))
|
||||
(zero? (system* "py.test" "-v" "c/" "testing/"))))
|
||||
(invoke "py.test" "-v" "c/" "testing/")
|
||||
#t))
|
||||
(add-before 'check 'disable-failing-test
|
||||
;; This is assumed to be a libffi issue:
|
||||
;; https://bitbucket.org/cffi/cffi/issues/312/tests-failed-with-armv8
|
||||
|
@ -130,15 +132,14 @@ conversions for values passed between the two languages.")
|
|||
(("ret.left") "ownlib.left"))
|
||||
#t))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((data (string-append (assoc-ref outputs "doc") "/share"))
|
||||
(doc (string-append data "/doc/" ,name "-" ,version))
|
||||
(lambda* (#:key outputs (make-flags '()) #:allow-other-keys)
|
||||
(let* ((doc (string-append (assoc-ref outputs "doc")
|
||||
"/share/doc/" ,name "-" ,version))
|
||||
(html (string-append doc "/html")))
|
||||
(with-directory-excursion "doc"
|
||||
(system* "make" "html")
|
||||
(apply invoke "make" "html" make-flags)
|
||||
(mkdir-p html)
|
||||
(copy-recursively "build/html" html))
|
||||
(copy-file "LICENSE" (string-append doc "/LICENSE"))
|
||||
#t))))))
|
||||
(home-page "https://cffi.readthedocs.org")
|
||||
(synopsis "Foreign function interface for Python")
|
||||
|
@ -152,13 +153,13 @@ conversions for values passed between the two languages.")
|
|||
(define-public ruby-ffi
|
||||
(package
|
||||
(name "ruby-ffi")
|
||||
(version "1.9.18")
|
||||
(version "1.9.22")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "ffi" version))
|
||||
(sha256
|
||||
(base32
|
||||
"034f52xf7zcqgbvwbl20jwdyjwznvqnwpbaps9nk18v9lgb1dpx0"))))
|
||||
"17lvnpmllg4mlzf25lxbmfzk4l6rsddlxwwdkbs4d9v5gv154529"))))
|
||||
(build-system ruby-build-system)
|
||||
;; FIXME: Before running tests the build system attempts to build libffi
|
||||
;; from sources.
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -27,7 +28,7 @@
|
|||
(define-public libftdi
|
||||
(package
|
||||
(name "libftdi")
|
||||
(version "1.1")
|
||||
(version "1.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -35,7 +36,7 @@
|
|||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"088yh8pxd6q53ssqndydcw1dkq51cjqyahc03lm6iip22cdazcf0"))))
|
||||
"0x0vncf6i92slgrn0h7ghkskqbglbs534220qa84d0qg114zndpc"))))
|
||||
(build-system cmake-build-system)
|
||||
(propagated-inputs
|
||||
`(("libusb" ,libusb))) ; required by libftdi1.pc
|
||||
|
|
|
@ -190,7 +190,7 @@ into other word processors.")
|
|||
(define-public libe-book
|
||||
(package
|
||||
(name "libe-book")
|
||||
(version "0.1.2")
|
||||
(version "0.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -198,7 +198,7 @@ into other word processors.")
|
|||
version "/libe-book-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1v48pd32r2pfysr3a3igc4ivcf6vvb26jq4pdkcnq75p70alp2bz"))))
|
||||
"1yg1vws1wggzhjw672bpgh2x541g5i9wryf67g51m0r79zrqz3by"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("cppunit" ,cppunit)
|
||||
|
@ -206,6 +206,7 @@ into other word processors.")
|
|||
("pkg-config" ,pkg-config)))
|
||||
(propagated-inputs ; in Requires or Requires.private field of .pkg
|
||||
`(("icu4c" ,icu4c)
|
||||
("liblangtag" ,liblangtag)
|
||||
("librevenge" ,librevenge)
|
||||
("libxml2" ,libxml2)))
|
||||
(inputs
|
||||
|
@ -295,14 +296,14 @@ as Alfresco or Nuxeo.")
|
|||
(define-public libabw
|
||||
(package
|
||||
(name "libabw")
|
||||
(version "0.1.1")
|
||||
(version "0.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
|
||||
(uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256 (base32
|
||||
"0zi1zj4fpxgpglbbb5n1kg3dmhqq5rpf46lli89r5daavp19iing"))))
|
||||
"11949iscdb99f2jplxjd39282jxcrf2fw0sqbh5dl7gqb96r8whb"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
|
@ -428,7 +429,7 @@ standard 21.0.2.")
|
|||
(sha256 (base32
|
||||
"1j6sjwkyhqvsgyw938bxxfwkzzi1mahk66g5342lv6j89jfvrz8k"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/libexttextcat/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/libexttextcat/")
|
||||
(synopsis "Text Categorization library")
|
||||
(description "Libexttextcat is an N-Gram-Based Text Categorization
|
||||
library primarily intended for language guessing.")
|
||||
|
@ -468,14 +469,14 @@ Aldus/Macromedia/Adobe FreeHand documents.")
|
|||
(define-public libmspub
|
||||
(package
|
||||
(name "libmspub")
|
||||
(version "0.1.2")
|
||||
(version "0.1.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
|
||||
(uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256 (base32
|
||||
"03sn6lxpr49sdq6j8q7fw7yjybyfahhs03z80388mh105pwapfmh"))))
|
||||
"1fhkn013gzg59f4z7rldpbi0nj7lgdqzxanspsqa6axvmahw2dpg"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
|
@ -495,14 +496,14 @@ Microsoft Publisher documents of all versions.")
|
|||
(define-public libpagemaker
|
||||
(package
|
||||
(name "libpagemaker")
|
||||
(version "0.0.3")
|
||||
(version "0.0.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
|
||||
(uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256 (base32
|
||||
"1minj0q14d44qfas81a8lkpgj288h5xlkjp084sfx17xv9axr5nq"))))
|
||||
"17ai8ajffr0ixxmmcv3k5vgjlcsix38ldb4fw2arild70pbsrbb6"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
|
|
|
@ -383,8 +383,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
;; supports qemu "virt" machine and possibly a large number of ARM boards.
|
||||
;; See : https://wiki.debian.org/DebianKernel/ARMMP.
|
||||
|
||||
(define %linux-libre-version "4.15.5")
|
||||
(define %linux-libre-hash "1vrqya5zkhzl37fpj5v0v1igm7jf2gi13apkpak90l51xiw592cs")
|
||||
(define %linux-libre-version "4.15.6")
|
||||
(define %linux-libre-hash "13mv6wrhwjw2wll918c1r9l872wzzanvyi8rk6gv0k6cg0f56jal")
|
||||
|
||||
(define-public linux-libre
|
||||
(make-linux-libre %linux-libre-version
|
||||
|
@ -392,8 +392,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
%linux-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define %linux-libre-4.14-version "4.14.21")
|
||||
(define %linux-libre-4.14-hash "07d27mph514jxxkzil4b3c848ywfd4r4js0wl5wsfy7a3j757278")
|
||||
(define %linux-libre-4.14-version "4.14.22")
|
||||
(define %linux-libre-4.14-hash "1lhswcvgl077kzsln3nxmrdbnlc3b8mphjjmkqz0f2663wa6rhcv")
|
||||
|
||||
(define-public linux-libre-4.14
|
||||
(make-linux-libre %linux-libre-4.14-version
|
||||
|
@ -402,14 +402,14 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.9
|
||||
(make-linux-libre "4.9.83"
|
||||
"09mw2r2fbn0g6xfhyxk0n54c7sg0vk9nlp7k2ca3v0v24n7lrfza"
|
||||
(make-linux-libre "4.9.84"
|
||||
"08bgdcysva2igz4rc55slyz7nbzwz5skakh5c2iahsklg343pwbw"
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.4
|
||||
(make-linux-libre "4.4.117"
|
||||
"1mlq9npyriwj0wpj24zah55bkxil31l182ypbn6b3x4yvmr8lhz0"
|
||||
(make-linux-libre "4.4.118"
|
||||
"0di91awl8ii1fxrfyqbpfpn134apcc98fas7yisjg87f16bn4azl"
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
|
|
|
@ -435,7 +435,7 @@ statistical profiler, a code coverage tool, and many other extensions.")
|
|||
(define-public ccl
|
||||
(package
|
||||
(name "ccl")
|
||||
(version "1.11")
|
||||
(version "1.11.5")
|
||||
(source #f)
|
||||
(build-system gnu-build-system)
|
||||
;; CCL consists of a "lisp kernel" and "heap image", both of which are
|
||||
|
@ -448,7 +448,7 @@ statistical profiler, a code coverage tool, and many other extensions.")
|
|||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"ftp://ftp.clozure.com/pub/release/" version
|
||||
"https://github.com/Clozure/ccl/releases/download/v" version
|
||||
"/ccl-" version "-"
|
||||
(match (%current-system)
|
||||
((or "i686-linux" "x86_64-linux") "linuxx86")
|
||||
|
@ -461,9 +461,9 @@ statistical profiler, a code coverage tool, and many other extensions.")
|
|||
(base32
|
||||
(match (%current-system)
|
||||
((or "i686-linux" "x86_64-linux")
|
||||
"0w3dmj7q9kqyra3yrf1lxclnjz151yvf5s5q8ayllvmvqbl8bs08")
|
||||
"0hs1f3z7crgzvinpj990kv9gvbsipxvcvwbmk54n51nasvc5025q")
|
||||
("armhf-linux"
|
||||
"1x487aaz2rqcb6k301sy2p39a1m4qdhg6z9p9fb76ssipqgr38b4")
|
||||
"0p0l1dzsygb6i1xxgbipjpxkn46xhq3jm41a34ga1qqp4x8lkr62")
|
||||
(_ ""))))))))
|
||||
(native-inputs
|
||||
`(("m4" ,m4)
|
||||
|
@ -484,6 +484,8 @@ statistical profiler, a code coverage tool, and many other extensions.")
|
|||
;; Enter the source directory for the current platform's lisp
|
||||
;; kernel, and run 'make clean' to remove the precompiled one.
|
||||
(lambda _
|
||||
(substitute* "lisp-kernel/m4macros.m4"
|
||||
(("/bin/pwd") (which "pwd")))
|
||||
(chdir (string-append
|
||||
"lisp-kernel/"
|
||||
,(match (or (%current-target-system) (%current-system))
|
||||
|
@ -726,27 +728,29 @@ interactive development model in mind.")
|
|||
(sbcl-package->ecl-package sbcl-fiveam))
|
||||
|
||||
(define-public sbcl-bordeaux-threads
|
||||
(package
|
||||
(name "sbcl-bordeaux-threads")
|
||||
(version "0.8.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/sionescu/bordeaux-threads/archive/v"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "10ryrcx832fwqdawb6jmknymi7wpdzhi30qzx7cbrk0cpnka71w2"))
|
||||
(file-name
|
||||
(string-append "bordeaux-threads-" version ".tar.gz"))))
|
||||
(inputs `(("alexandria" ,sbcl-alexandria)))
|
||||
(native-inputs `(("fiveam" ,sbcl-fiveam)))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(synopsis "Portable shared-state concurrency library for Common Lisp")
|
||||
(description "BORDEAUX-THREADS is a proposed standard for a minimal
|
||||
(let ((commit "354abb0ae9f1d9324001e1a8abab3128d7420e0e")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "sbcl-bordeaux-threads")
|
||||
(version (git-version "0.8.5" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/sionescu/bordeaux-threads.git")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32 "1hcfp21l6av1xj6z7r77sp6h4mwf9vvx4s745803sysq2qy2mwnq"))
|
||||
(file-name
|
||||
(git-file-name "bordeaux-threads" version))))
|
||||
(inputs `(("alexandria" ,sbcl-alexandria)))
|
||||
(native-inputs `(("fiveam" ,sbcl-fiveam)))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(synopsis "Portable shared-state concurrency library for Common Lisp")
|
||||
(description "BORDEAUX-THREADS is a proposed standard for a minimal
|
||||
MP/Threading interface. It is similar to the CLIM-SYS threading and lock
|
||||
support.")
|
||||
(home-page "https://common-lisp.net/project/bordeaux-threads/")
|
||||
(license license:x11)))
|
||||
(home-page "https://common-lisp.net/project/bordeaux-threads/")
|
||||
(license license:x11))))
|
||||
|
||||
(define-public cl-bordeaux-threads
|
||||
(sbcl-package->cl-source-package sbcl-bordeaux-threads))
|
||||
|
|
|
@ -296,7 +296,7 @@ operating systems.")
|
|||
(define-public neomutt
|
||||
(package
|
||||
(name "neomutt")
|
||||
(version "20171215")
|
||||
(version "20180223")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -304,7 +304,7 @@ operating systems.")
|
|||
"/archive/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1df1c2ynvivna42ifj1lxmgb0bbfih0ggn1afyniadzjm6cnxdvz"))))
|
||||
"1fr7158xhrhasylyxp709g9mdbggdmni3qn3baxvczfg2w003fhh"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("cyrus-sasl" ,cyrus-sasl)
|
||||
|
@ -325,7 +325,7 @@ operating systems.")
|
|||
("gettext-minimal" ,gettext-minimal)
|
||||
("pkg-config" ,pkg-config)
|
||||
("docbook-xsl" ,docbook-xsl)
|
||||
("docbook-xml" ,docbook-xml)
|
||||
("docbook-xml" ,docbook-xml-4.2)
|
||||
("w3m" ,w3m)
|
||||
("tcl" ,tcl)))
|
||||
(arguments
|
||||
|
@ -368,18 +368,6 @@ operating systems.")
|
|||
(modify-phases %standard-phases
|
||||
;; TODO: autosetup is meant to be included in the source,
|
||||
;; but we should package autosetup and use our own version of it.
|
||||
(add-before 'configure 'fix-docbook
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* '("doc/chunk.xsl" "doc/manual.xml.tail"
|
||||
"doc/html.xsl" "doc/manual.xml.head")
|
||||
(("http://docbook.sourceforge.net/release/xsl/current/")
|
||||
(string-append (assoc-ref inputs "docbook-xsl")
|
||||
"/xml/xsl/docbook-xsl-"
|
||||
,(package-version docbook-xsl) "/"))
|
||||
(("http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd")
|
||||
(string-append (assoc-ref inputs "docbook-xml")
|
||||
"/xml/dtd/docbook/docbookx.dtd")))
|
||||
#t))
|
||||
(add-before 'configure 'fix-sasl-test
|
||||
(lambda _
|
||||
;; Upstream suggestion to fix the failing sasl autosetup test.
|
||||
|
@ -1192,16 +1180,15 @@ facilities for checking incoming mail.")
|
|||
(define-public dovecot
|
||||
(package
|
||||
(name "dovecot")
|
||||
(version "2.3.0")
|
||||
(version "2.3.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.dovecot.org/releases/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.gz"))
|
||||
(patches (search-patches "dovecot-CVE-2017-15132.patch"))
|
||||
(sha256 (base32
|
||||
"10c5myzgys866c3x6jdr1s9x9pqnjd5vpyz8z384sph21m3wnq6y"))))
|
||||
"0lzisrdgrj5qqwjb7bv99mf2aljm568r6g108yisp0s644z2nxxb"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -197,6 +197,18 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
|
|||
(("/bin/sh") "sh")
|
||||
(("execv ") "execvp "))
|
||||
#t)))))))
|
||||
;; We don't want to retain a reference to /gnu/store in the bootstrap
|
||||
;; versions of egrep/fgrep, so we remove the custom phase added since
|
||||
;; grep@2.25. The effect is 'egrep' and 'fgrep' look for 'grep' in
|
||||
;; $PATH.
|
||||
(grep (package
|
||||
(inherit grep)
|
||||
(inputs '()) ;remove PCRE, which is optional
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments grep)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(delete 'fix-egrep-and-fgrep)))))))
|
||||
(finalize (compose static-package
|
||||
package-with-relocatable-glibc)))
|
||||
`(,@(map (match-lambda
|
||||
|
@ -209,17 +221,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
|
|||
("patch" ,patch)
|
||||
("coreutils" ,coreutils)
|
||||
("sed" ,sed)
|
||||
;; We don't want to retain a reference to /gnu/store in the
|
||||
;; bootstrap versions of egrep/fgrep, so we remove the custom
|
||||
;; phase added since grep@2.25. The effect is 'egrep' and
|
||||
;; 'fgrep' look for 'grep' in $PATH.
|
||||
("grep" ,(package
|
||||
(inherit grep)
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments grep)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(delete 'fix-egrep-and-fgrep)))))))
|
||||
("grep" ,grep)
|
||||
("gawk" ,gawk)))
|
||||
("bash" ,static-bash))))
|
||||
|
||||
|
@ -530,6 +532,13 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
|
|||
''("LDFLAGS=-ldl"))
|
||||
((#:phases phases '%standard-phases)
|
||||
`(modify-phases ,phases
|
||||
|
||||
;; Do not record the absolute file name of 'sh' in
|
||||
;; (ice-9 popen). This makes 'open-pipe' unusable in
|
||||
;; a build chroot ('open-pipe*' is fine) but avoids
|
||||
;; keeping a reference to Bash.
|
||||
(delete 'pre-configure)
|
||||
|
||||
(add-before 'configure 'static-guile
|
||||
(lambda _
|
||||
(substitute* "libguile/Makefile.in"
|
||||
|
@ -555,7 +564,9 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
|
|||
(name "guile-static-stripped")
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
;; The end result should depend on nothing but itself.
|
||||
`(#:allowed-references ("out")
|
||||
#:modules ((guix build utils))
|
||||
#:builder
|
||||
(let ()
|
||||
(use-modules (guix build utils))
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2015 Fabian Harfert <fhmgufs@web.de>
|
||||
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
|
||||
|
@ -259,14 +259,14 @@ routines that have been extracted from the V8 JavaScript engine.")
|
|||
(define-public dionysus
|
||||
(package
|
||||
(name "dionysus")
|
||||
(version "1.3.0")
|
||||
(version "1.4.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/dionysus/dionysus-" version
|
||||
".tar.gz"))
|
||||
".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1aqnvw6z33bzqgd1ga571pnx6vq2zrkckm1cz91grv45h4jr9vgs"))))
|
||||
"194pzs1mlsj4ww6v37qq3961h5hckm5h805cv0r14xj3g9wfx2sk"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("tcl" ,tcl))) ;for 'tclsh'
|
||||
(synopsis "Local search for universal constants and scientific values")
|
||||
|
@ -2489,7 +2489,7 @@ point numbers.")
|
|||
(define-public wxmaxima
|
||||
(package
|
||||
(name "wxmaxima")
|
||||
(version "17.10.1")
|
||||
(version "18.02.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2498,12 +2498,12 @@ point numbers.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qlzc31cqkwpfgrb9cif9bcnkj3rq487plg4rns7jxv6pq4609v1"))))
|
||||
(build-system gnu-build-system)
|
||||
"03kr2rgfp4hcf3is8m8d8f9hj660c3xgrc50vrrfpixx4syh6wvj"))
|
||||
(patches
|
||||
(search-patches "wxmaxima-do-not-use-old-gnuplot-parameters.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("gettext" ,gettext-minimal)))
|
||||
`(("gettext" ,gettext-minimal)))
|
||||
(inputs
|
||||
`(("wxwidgets" ,wxwidgets)
|
||||
("maxima" ,maxima)
|
||||
|
@ -2512,11 +2512,9 @@ point numbers.")
|
|||
("gtk+" ,gtk+)
|
||||
("shared-mime-info" ,shared-mime-info)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(#:tests? #f ; no check target
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'autoconf
|
||||
(lambda _
|
||||
(zero? (system* "sh" "bootstrap"))))
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(wrap-program (string-append (assoc-ref outputs "out")
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -20,6 +21,7 @@
|
|||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages openstack)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages python)
|
||||
|
@ -39,27 +41,37 @@
|
|||
(define-public python-bandit
|
||||
(package
|
||||
(name "python-bandit")
|
||||
(version "0.13.2")
|
||||
(version "1.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/b/bandit/bandit-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "bandit" version))
|
||||
(sha256
|
||||
(base32
|
||||
"03g3cflvrc99ncjd611iy5nnnscsc2vgnrx4mjaqyx8glbfw8y7g"))))
|
||||
"1m5bm42120zyazky4k0lp3d9r0jwhjmp6sb108xfr0vz952p15yb"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Tests require the 'bandit' executable in PATH.
|
||||
;; It's only built during install time.
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(setenv "PATH" (string-append (assoc-ref outputs "out")
|
||||
"/bin:" (getenv "PATH")))
|
||||
(invoke "python" "setup.py" "testr"))))))
|
||||
(propagated-inputs
|
||||
`(("python-appdirs" ,python-appdirs)
|
||||
`(("python-gitpython" ,python-gitpython)
|
||||
("python-pyyaml" ,python-pyyaml)
|
||||
("python-six" ,python-six)
|
||||
("python-stevedore" ,python-stevedore)))
|
||||
(native-inputs
|
||||
`(("python-pbr" ,python-pbr)
|
||||
;; Tests
|
||||
`(;; Tests.
|
||||
("python-beautifulsoup4" ,python-beautifulsoup4)
|
||||
("python-fixtures" ,python-fixtures)
|
||||
("python-mock" ,python-mock)
|
||||
("python-subunit" ,python-subunit)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testscenarios" ,python-testscenarios)
|
||||
("python-testtools" ,python-testtools)))
|
||||
|
@ -70,50 +82,50 @@
|
|||
To do this Bandit processes each file, builds an AST from it, and runs
|
||||
appropriate plugins against the AST nodes. Once Bandit has finished scanning
|
||||
all the files it generates a report.")
|
||||
(properties `((python2-variant . ,(delay python2-bandit))))
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-bandit
|
||||
(package (inherit (package-with-python2
|
||||
(strip-python2-variant python-bandit)))
|
||||
(arguments
|
||||
`(#:python ,python-2
|
||||
;; FIXME: 'subunit.run discover: error: no such option: --list'
|
||||
#:tests? #f))))
|
||||
(package-with-python2 python-bandit))
|
||||
|
||||
(define-public python-debtcollector
|
||||
(package
|
||||
(name "python-debtcollector")
|
||||
(version "1.0.0")
|
||||
(version "1.19.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "debtcollector" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0g4dfskaiy47rhsh4gh66l5vmdsrgq0qk68pl3ix1cj3ffvfndzv"))))
|
||||
"06c7vyn184y9f0lsrwaz13aq63hdz5fjrd191b8nifx6acsni42f"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ;FIXME: Requires packaging python-doc8.
|
||||
(propagated-inputs
|
||||
`(("python-six" ,python-six)
|
||||
`(("python-pbr" ,python-pbr)
|
||||
("python-six" ,python-six)
|
||||
("python-wrapt" ,python-wrapt)))
|
||||
(native-inputs
|
||||
`(("python-babel" ,python-babel)
|
||||
("python-pbr" ,python-pbr)
|
||||
;; Tests.
|
||||
("python-oslotest" ,python-oslotest)))
|
||||
`(;; Tests.
|
||||
("python-subunit" ,python-subunit)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(home-page "https://www.openstack.org/")
|
||||
(synopsis
|
||||
"Find deprecated patterns and strategies in Python code")
|
||||
"Find deprecated patterns and strategies in Python code")
|
||||
(description
|
||||
"This package provides a collection of Python deprecation patterns and
|
||||
strategies that help you collect your technical debt in a non-destructive
|
||||
manner.")
|
||||
(properties `((python2-variant . ,(delay python2-debtcollector))))
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-debtcollector
|
||||
(package-with-python2 python-debtcollector))
|
||||
(let ((base (package-with-python2 (strip-python2-variant
|
||||
python-debtcollector))))
|
||||
(package
|
||||
(inherit base)
|
||||
(propagated-inputs
|
||||
`(("python2-funcsigs" ,python2-funcsigs)
|
||||
,@(package-propagated-inputs base))))))
|
||||
|
||||
(define-public python-hacking
|
||||
(package
|
||||
|
@ -155,36 +167,66 @@ guidelines}.")
|
|||
(define-public python-mox3
|
||||
(package
|
||||
(name "python-mox3")
|
||||
(version "0.14.0")
|
||||
(version "0.24.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mox3" version))
|
||||
(patches (search-patches "python-mox3-python3.6-compat.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"0njmh40i1lg5mzn9hc2ax83adj6dli455j6xifilrw27c4wlkjzx"))))
|
||||
"0w58adwv7q9wzvmq9mlrk2asfk73myq9fpwy7mjkzsz3baa95zf5"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; TODO: Resolve dependency cycle and re-enable.
|
||||
'(#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python-fixtures" ,python-fixtures)
|
||||
("python-pbr" ,python-pbr)))
|
||||
(native-inputs
|
||||
`(("python-fixtures" ,python-fixtures)
|
||||
; TODO re-add ("python-oslosphinx" ,python-oslosphinx)
|
||||
("python-pbr" ,python-pbr)
|
||||
("python-sphinx" ,python-sphinx)
|
||||
`(("python-openstackdocstheme" ,python-openstackdocstheme)
|
||||
("python-sphinx" ,python-sphinx-1.6)
|
||||
("python-subunit" ,python-subunit)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(home-page "https://www.openstack.org/")
|
||||
(synopsis "Mock object framework for Python")
|
||||
(description
|
||||
"Mox3 is an unofficial port of the @uref{https://code.google.com/p/pymox/,
|
||||
Google mox framework} to Python 3. It was meant to be as compatible
|
||||
with mox as possible, but small enhancements have been made. The library was
|
||||
tested on Python versions 3.2, 2.7, and 2.6.")
|
||||
with mox as possible, but small enhancements have been made.")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-mox3
|
||||
(package-with-python2 python-mox3))
|
||||
|
||||
(define-public python-openstackdocstheme
|
||||
(package
|
||||
(name "python-openstackdocstheme")
|
||||
(version "1.18.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "openstackdocstheme" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ki5204rjdqjvr8xr9w2qc1z6b6d2i5jas0i70xzkf9njlzjzv2r"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; FIXME: Tests require an old version of python-hacking, which in
|
||||
;; turn depends on mox3 which depends on this package.
|
||||
`(#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python-dulwich" ,python-dulwich)
|
||||
("python-pbr" ,python-pbr)))
|
||||
(native-inputs
|
||||
`(("python-sphinx" ,python-sphinx-1.6)))
|
||||
(home-page "https://docs.openstack.org/openstackdocstheme/latest/")
|
||||
(synopsis "OpenStack Docs Theme")
|
||||
(description
|
||||
"This package provides themes and extensions for Sphinx for publishing
|
||||
to docs.openstack.org and developer.openstack.org.")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-openstackdocstheme
|
||||
(package-with-python2 python-openstackdocstheme))
|
||||
|
||||
(define-public python-os-client-config
|
||||
(package
|
||||
(name "python-os-client-config")
|
||||
|
@ -257,27 +299,22 @@ tested on Python versions 3.2, 2.7, and 2.6.")
|
|||
(define-public python-stevedore
|
||||
(package
|
||||
(name "python-stevedore")
|
||||
(version "1.12.0")
|
||||
(version "1.28.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "stevedore" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0999zvawaapzg6givjhn7vjscdwblcs73wf28wq1wb4g5mbb5phv"))))
|
||||
(base32
|
||||
"02ynfgwma84g59834dmvzr39mcppy5s229zf1w23c0qngf753izi"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-six" ,python-six)))
|
||||
`(("python-pbr" ,python-pbr)
|
||||
("python-six" ,python-six)))
|
||||
(native-inputs
|
||||
`(("python-pbr" ,python-pbr)
|
||||
;; Tests
|
||||
("python-discover" ,python-discover)
|
||||
("python-docutils" ,python-docutils)
|
||||
("python-mock" ,python-mock)
|
||||
("python-oslosphinx" ,python-oslosphinx)
|
||||
("python-oslotest" ,python-oslotest)
|
||||
("python-sphinx" ,python-sphinx)
|
||||
("python-testrepository" ,python-testrepository)))
|
||||
`(("python-mock" ,python-mock)
|
||||
("python-sphinx" ,python-sphinx-1.6)
|
||||
("python-testrepository" ,python-testrepository)))
|
||||
(home-page "https://github.com/dreamhost/stevedore")
|
||||
(synopsis "Manage dynamic plugins for Python applications")
|
||||
(description
|
||||
|
@ -289,16 +326,10 @@ mechanism by building on top of setuptools entry points. The code for managing
|
|||
entry points tends to be repetitive, though, so stevedore provides manager
|
||||
classes for implementing common patterns for using dynamically loaded
|
||||
extensions.")
|
||||
(properties `((python2-variant . ,(delay python2-stevedore))))
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-stevedore
|
||||
(package (inherit (package-with-python2
|
||||
(strip-python2-variant python-stevedore)))
|
||||
(arguments
|
||||
`(#:python ,python-2
|
||||
;; FIXME: 'subunit.run discover: error: no such option: --list'
|
||||
#:tests? #f))))
|
||||
(package-with-python2 python-stevedore))
|
||||
|
||||
(define-public python-tempest-lib
|
||||
(package
|
||||
|
@ -349,31 +380,35 @@ common features used in Tempest.")
|
|||
(define-public python-oslo.config
|
||||
(package
|
||||
(name "python-oslo.config")
|
||||
(version "2.4.0")
|
||||
(version "5.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/o/oslo.config/oslo.config-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (pypi-uri "oslo.config" version))
|
||||
(sha256
|
||||
(base32
|
||||
"13r778jfb0fhna37c2pd1f2xipnsbd7zli7qhn96acrzymrwj5k1"))))
|
||||
"0ymf7jxbq29fifyvkwhfiys1qvljqfxdw8ajwzwaf3yiqidgpxqd"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; FIXME: Requires packaging python-argparse.
|
||||
(propagated-inputs
|
||||
`(("python-netaddr" ,python-netaddr)
|
||||
("python-six" ,python-six)
|
||||
("python-stevedore" ,python-stevedore)))
|
||||
`(("python-debtcollector" ,python-debtcollector)
|
||||
("python-netaddr" ,python-netaddr)
|
||||
("python-oslo.i18n" ,python-oslo.i18n)
|
||||
("python-pbr" ,python-pbr)
|
||||
("python-rfc3986" ,python-rfc3986)
|
||||
("python-six" ,python-six)
|
||||
("python-stevedore" ,python-stevedore)
|
||||
("python-pyyaml" ,python-pyyaml)))
|
||||
(native-inputs
|
||||
`(("python-pbr" ,python-pbr)
|
||||
;; Tests
|
||||
("python-oslo.i18n" ,python-oslo.i18n)
|
||||
("python-mock" ,python-mock)
|
||||
("python-oslotest" ,python-oslotest)
|
||||
("python-testscenarios" ,python-testscenarios)))
|
||||
`(("python-bandit" ,python-bandit)
|
||||
("python-coverage" ,python-coverage)
|
||||
("python-mock" ,python-mock)
|
||||
("python-openstackdocstheme" ,python-openstackdocstheme)
|
||||
("python-oslotest" ,python-oslotest)
|
||||
("python-reno" ,python-reno)
|
||||
("python-sphinx" ,python-sphinx-1.6)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testscenarios" ,python-testscenarios)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(home-page "https://launchpad.net/oslo")
|
||||
(synopsis "Oslo Configuration API")
|
||||
(description
|
||||
|
@ -387,28 +422,22 @@ common features used in Tempest.")
|
|||
(define-public python-oslo.context
|
||||
(package
|
||||
(name "python-oslo.context")
|
||||
(version "1.0.0")
|
||||
(version "2.20.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "oslo.context" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kvha0rs9295njyl2z6n6zm5dapi5mrl5zwjm0m6ldqrvccyf8c3"))))
|
||||
"0iiq9rpwg6wrdqnhf3d8z8g0g7fjhs5zn6qw6igvxplz2c3rbvvx"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; FIXME: Requires python-mock >= 1.2.
|
||||
(propagated-inputs
|
||||
`(("python-debtcollector" ,python-debtcollector)
|
||||
("python-pbr" ,python-pbr)))
|
||||
(native-inputs
|
||||
`(("python-babel" ,python-babel)
|
||||
("python-pbr" ,python-pbr)
|
||||
;; Tests.
|
||||
("python-coverage" ,python-coverage)
|
||||
("python-hacking" ,python-hacking)
|
||||
("python-mock" ,python-mock)
|
||||
("python-os-client-config" ,python-os-client-config)
|
||||
("python-oslotest" ,python-oslotest)
|
||||
("python-oslosphinx" ,python-oslosphinx)
|
||||
("python-sphinx" ,python-sphinx)))
|
||||
`(("python-fixtures" ,python-fixtures)
|
||||
("python-hacking" ,python-hacking)
|
||||
("python-oslotest" ,python-oslotest)))
|
||||
(home-page "https://launchpad.net/oslo")
|
||||
(synopsis "Oslo context library")
|
||||
(description
|
||||
|
@ -423,17 +452,15 @@ pipeline and used by various modules such as logging.")
|
|||
(define-public python-oslo.i18n
|
||||
(package
|
||||
(name "python-oslo.i18n")
|
||||
(version "3.0.0")
|
||||
(version "3.19.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "oslo.i18n" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0bpb1c20sm8my650gl824nzaip83bfn8hr91s65k5ncmyh8hb6pl"))))
|
||||
"18lbfq55cqrbmwm5p6vci9mkjfzr0zwz54ax3ysa463wba5m84cp"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; FIXME: Circular dependency on python-oslo.config.
|
||||
(propagated-inputs
|
||||
`(("python-babel" ,python-babel)
|
||||
("python-six" ,python-six)))
|
||||
|
@ -458,34 +485,33 @@ in an application or library.")
|
|||
(define-public python-oslo.log
|
||||
(package
|
||||
(name "python-oslo.log")
|
||||
(version "1.6.0")
|
||||
(version "3.36.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/o/oslo.log/oslo.log-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (pypi-uri "oslo.log" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fhy6yvbd565nv4x4i3ppyrlbmz3yy9d0xsvw5nkqsa7g43nmf8z"))))
|
||||
"0h7hplf1h8k24v75m3mq1jlrl74x5ynyr4hwgffsg5campxnza4x"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; FIXME: Requires oslo.utils >= 3.2.0.
|
||||
(propagated-inputs
|
||||
`(("python-debtcollector" ,python-debtcollector)
|
||||
`(("python-dateutil" ,python-dateutil)
|
||||
("python-debtcollector" ,python-debtcollector)
|
||||
("python-monotonic" ,python-monotonic)
|
||||
("python-oslo.config" ,python-oslo.config)
|
||||
("python-oslo.context" ,python-oslo.context)
|
||||
("python-oslo.i18n" ,python-oslo.i18n)
|
||||
("python-oslo.utils" ,python-oslo.utils)
|
||||
("python-oslo.serialization" ,python-oslo.serialization)
|
||||
("python-pbr" ,python-pbr)
|
||||
("python-pyinotify" ,python-pyinotify)
|
||||
("python-six" ,python-six)))
|
||||
(native-inputs
|
||||
`(("python-babel" ,python-babel)
|
||||
("python-iso8601" ,python-iso8601)
|
||||
("python-mock" ,python-mock)
|
||||
`(("python-mock" ,python-mock)
|
||||
("python-oslotest" ,python-oslotest)
|
||||
("python-pbr" ,python-pbr)))
|
||||
("python-subunit" ,python-subunit)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(home-page "https://launchpad.net/oslo")
|
||||
(synopsis "Python logging library of the Oslo project")
|
||||
(description
|
||||
|
@ -500,27 +526,23 @@ handlers and support for context specific logging (like resource id’s etc).")
|
|||
(define-public python-oslo.serialization
|
||||
(package
|
||||
(name "python-oslo.serialization")
|
||||
(version "2.2.0")
|
||||
(version "2.24.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "oslo.serialization" version))
|
||||
(sha256
|
||||
(base32
|
||||
"00s03krhf833gs76aw5ns32w9m1i4hx6x6d9g82m0j5wyqk0sci4"))))
|
||||
"08bxkp98c617y58x630xq44iiffm7f0f3cwh6zbnlkgq0zgh7jk1"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; FIXME: Requires python-oslo.utils >= 3.2.0.
|
||||
(propagated-inputs
|
||||
`(("python-iso8601" ,python-iso8601)
|
||||
`(("python-msgpack" ,python-msgpack)
|
||||
("python-netaddr" ,python-netaddr)
|
||||
("python-oslo.utils" ,python-oslo.utils)
|
||||
("python-simplejson" ,python-simplejson)
|
||||
("python-six" ,python-six)
|
||||
("python-pytz" ,python-pytz)))
|
||||
(native-inputs
|
||||
`(("python-babel" ,python-babel)
|
||||
("python-pbr" ,python-pbr)
|
||||
`(("python-pbr" ,python-pbr)
|
||||
;; Tests.
|
||||
("python-mock" ,python-mock)
|
||||
("python-oslo.i18n" ,python-oslo.i18n)
|
||||
|
@ -530,21 +552,28 @@ handlers and support for context specific logging (like resource id’s etc).")
|
|||
(description
|
||||
"The oslo.serialization library provides support for representing objects
|
||||
in transmittable and storable formats, such as JSON and MessagePack.")
|
||||
(properties `((python2-variant . ,(delay python2-oslo.serialization))))
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-oslo.serialization
|
||||
(package-with-python2 python-oslo.serialization))
|
||||
(let ((base (package-with-python2 (strip-python2-variant
|
||||
python-oslo.serialization))))
|
||||
(package
|
||||
(inherit base)
|
||||
(native-inputs
|
||||
`(("python2-ipaddress" ,python2-ipaddress)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public python-reno
|
||||
(package
|
||||
(name "python-reno")
|
||||
(version "2.0.3")
|
||||
(version "2.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "reno" version))
|
||||
(sha256
|
||||
(base32 "1i2wnn5fnm3jm5774pahg000q0lma5i913hml91bbbm2mybphndd"))))
|
||||
(base32 "0gwzi5dvacqx43smxl3rd1z33npn7gfhm50bvgmq90fib2q431wc"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
@ -554,33 +583,27 @@ in transmittable and storable formats, such as JSON and MessagePack.")
|
|||
;; reno expects a git repo
|
||||
(zero? (system* "git" "init")))))))
|
||||
(propagated-inputs
|
||||
`(("python-babel" ,python-babel)
|
||||
("python-dulwich" ,python-dulwich)
|
||||
`(("python-dulwich" ,python-dulwich)
|
||||
("python-pbr" ,python-pbr)
|
||||
("python-pyyaml" ,python-pyyaml)
|
||||
("python-six" ,python-six)))
|
||||
(native-inputs
|
||||
`(("python-testtools" ,python-testtools)
|
||||
("python-pbr" ,python-pbr)
|
||||
("python-testscenarios" ,python-testscenarios)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-mock" ,python-mock)
|
||||
("python-oslotest" ,python-oslotest)
|
||||
("python-docutils" ,python-docutils)
|
||||
("python-sphinx" ,python-sphinx)
|
||||
("gnupg" ,gnupg)
|
||||
("git" ,git)))
|
||||
(home-page "http://docs.openstack.org/developer/reno/")
|
||||
(synopsis "Release notes manager")
|
||||
(description "Reno is a tool for storing release notes in a git repository
|
||||
and building documentation from them.")
|
||||
(properties `((python2-variant . ,(delay python2-reno))))
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-reno
|
||||
(package (inherit (package-with-python2
|
||||
(strip-python2-variant python-reno)))
|
||||
(arguments
|
||||
`(#:python ,python-2
|
||||
;; FIXME: 'subunit.run discover: error: no such option: --list'
|
||||
#:tests? #f))))
|
||||
(package-with-python2 python-reno))
|
||||
|
||||
(define-public python-oslosphinx
|
||||
(package
|
||||
|
@ -623,65 +646,49 @@ from the OpenStack project.")
|
|||
(define-public python-oslotest
|
||||
(package
|
||||
(name "python-oslotest")
|
||||
(version "1.10.0")
|
||||
(version "3.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/o/oslotest/oslotest-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (pypi-uri "oslotest" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0l3ny48ddz5xbf0v4r0jv1yhbdzinc2vy0lybhdkmx3xy0b886fs"))))
|
||||
"1xay6wjxzqm4bg87fahqas84dhvhgf1gghzldkcczsfx897mqdkh"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-fixtures" ,python-fixtures)
|
||||
("python-mock" ,python-mock)
|
||||
("python-mox3" ,python-mox3)
|
||||
("python-six" ,python-six)))
|
||||
(native-inputs
|
||||
`(("python-pbr" ,python-pbr)
|
||||
("python-os-client-config" ,python-os-client-config)
|
||||
("python-six" ,python-six)
|
||||
("python-subunit" ,python-subunit)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testscenarios" ,python-testscenarios)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(native-inputs
|
||||
`(("python-pbr" ,python-pbr)
|
||||
("python-testscenarios" ,python-testscenarios)))
|
||||
(home-page "https://launchpad.net/oslo")
|
||||
(synopsis "Oslo test framework")
|
||||
(description
|
||||
"The Oslo Test framework provides common fixtures, support for debugging,
|
||||
and better support for mocking results.")
|
||||
(properties `((python2-variant . ,(delay python2-oslotest))))
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-oslotest
|
||||
(package (inherit (package-with-python2
|
||||
(strip-python2-variant python-oslotest)))
|
||||
(arguments
|
||||
`(#:python ,python-2
|
||||
;; FIXME: 'subunit.run discover: error: no such option: --list'
|
||||
#:tests? #f))))
|
||||
(package-with-python2 python-oslotest))
|
||||
|
||||
(define-public python-oslo.utils
|
||||
(package
|
||||
(name "python-oslo.utils")
|
||||
(version "3.0.0")
|
||||
(version "3.35.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "oslo.utils" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1c4jrbvfs4hs37fics8frqlyhmsv7v92ncv2cpbm0av9x0ic6pnj"))
|
||||
(snippet
|
||||
'(begin
|
||||
;; FIXME: setuptools fails to import this file during the test
|
||||
;; phase.
|
||||
(delete-file "oslo_utils/tests/test_netutils.py")))))
|
||||
"1ai9yyasyh1563khsri6ryk6iqdprmyiashg377m9h4nmv700ybx"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; FIXME: Requires oslo.config >= 2.7.0.
|
||||
(propagated-inputs
|
||||
`(("python-debtcollector" ,python-debtcollector)
|
||||
("python-oslo.i18n" ,python-oslo.i18n)
|
||||
|
@ -689,18 +696,21 @@ and better support for mocking results.")
|
|||
("python-monotonic" ,python-monotonic)
|
||||
("python-netaddr" ,python-netaddr)
|
||||
("python-netifaces" ,python-netifaces)
|
||||
("python-pyparsing" ,python-pyparsing)
|
||||
("python-pytz" ,python-pytz)
|
||||
("python-six" ,python-six)))
|
||||
(native-inputs
|
||||
`(("python-babel" ,python-babel)
|
||||
("python-pbr" ,python-pbr)
|
||||
`(("python-pbr" ,python-pbr)
|
||||
;; Tests.
|
||||
("python-bandit" ,python-bandit)
|
||||
("python-ddt" ,python-ddt)
|
||||
("python-fixtures" ,python-fixtures)
|
||||
("python-oslo.config" ,python-oslo.config)
|
||||
("python-oslotest" ,python-oslotest)
|
||||
("python-mock" ,python-mock)
|
||||
("python-mox3" ,python-mox3)
|
||||
("python-testscenarios" ,python-testscenarios)))
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testscenarios" ,python-testscenarios)
|
||||
("python-testtools" ,python-testtools)))
|
||||
(home-page "https://launchpad.net/oslo")
|
||||
(synopsis "Oslo utility library")
|
||||
(description
|
||||
|
@ -827,25 +837,16 @@ data that best fit this type of storage model are virtual machine images, photo
|
|||
storage, email storage and backup archiving. Having no central \"brain\" or
|
||||
master point of control provides greater scalability, redundancy and
|
||||
permanence.")
|
||||
(license asl2.0)))
|
||||
(properties `((python2-variant . ,(delay python2-swiftclient))))
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public python2-swiftclient
|
||||
(let ((swiftclient (package-with-python2 python-swiftclient)))
|
||||
(let ((swiftclient (package-with-python2
|
||||
(strip-python2-variant python-swiftclient))))
|
||||
(package (inherit swiftclient)
|
||||
(arguments
|
||||
`(#:python ,python-2
|
||||
;; FIXME: subunit.run discover: error: no such option: --list
|
||||
#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python2-futures" ,python2-futures)
|
||||
("python2-requests" ,python2-requests)
|
||||
,@(alist-delete "python-requests"
|
||||
(package-propagated-inputs swiftclient))))
|
||||
(native-inputs
|
||||
`(("python2-keystoneclient" ,python2-keystoneclient)
|
||||
("python2-oslosphinx" ,python2-oslosphinx)
|
||||
,@(fold alist-delete (package-native-inputs swiftclient)
|
||||
'("python-keystoneclient" "python-oslosphinx")))))))
|
||||
,@(package-propagated-inputs swiftclient))))))
|
||||
|
||||
(define-public python-git-review
|
||||
(package
|
||||
|
|
|
@ -791,14 +791,23 @@ on top of GNU Guix.")
|
|||
(define-public gcab
|
||||
(package
|
||||
(name "gcab")
|
||||
(version "1.0")
|
||||
(version "1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
version "/" name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ji8j8pnxqaycbp9ydi2zq7gcr02c2vw4qnc198i6jwy9zkh2x19"))))
|
||||
"0l19sr6pg0cfcddmi5n79d08mjjbhn427ip5jlsy9zddq9r24aqr"))
|
||||
;; gcab 1.1 has a hard dependency on git — even when building
|
||||
;; from a tarball. Remove it early so ‘guix environment gcab’
|
||||
;; can actually build what ‘guix build --source gcab’ returns.
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(substitute* "meson.build"
|
||||
(("git_version = .*$") "git_version = []\n"))
|
||||
#t))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-mkenums
|
||||
|
|
|
@ -9,13 +9,14 @@
|
|||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
|
||||
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -44,6 +45,8 @@
|
|||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gnupg)
|
||||
|
@ -89,7 +92,7 @@ human.")
|
|||
(define-public keepassxc
|
||||
(package
|
||||
(name "keepassxc")
|
||||
(version "2.2.4")
|
||||
(version "2.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -98,10 +101,17 @@ human.")
|
|||
version "-src.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pfkq1m5vb90kx67vyw70s1hc4ivjsvq2535vm6wdwwsncna6bz5"))))
|
||||
"1v6v59fnbbsssbwy4is6hh2l4qqwy3ddb6dp2jk8clx0xbd5hn7c"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("-DWITH_XC_NETWORKING=YES"
|
||||
"-DWITH_XC_BROWSER=YES"
|
||||
"-DWITH_XC_SSHAGENT=YES")))
|
||||
(inputs
|
||||
`(("libgcrypt" ,libgcrypt)
|
||||
`(("argon2" ,argon2)
|
||||
("curl" ,curl) ; XC_NETWORKING
|
||||
("libgcrypt" ,libgcrypt)
|
||||
("libsodium" ,libsodium) ; XC_BROWSER
|
||||
("libxi" ,libxi)
|
||||
("libxtst" ,libxtst)
|
||||
("qtbase" ,qtbase)
|
||||
|
@ -271,7 +281,7 @@ random passwords that pass the checks.")
|
|||
(define-public assword
|
||||
(package
|
||||
(name "assword")
|
||||
(version "0.10")
|
||||
(version "0.11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list
|
||||
|
@ -280,7 +290,7 @@ random passwords that pass the checks.")
|
|||
"assword_" version ".orig.tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0l6170y6my1gprqkazvzabgjkrkr9v2q7z48vjflna4r323yqira"))))
|
||||
"03gkb6kvsghznbcw5l7nmrc6mn3ixkjd5jcs96ni4zs9l47jf7yp"))))
|
||||
(arguments
|
||||
`(;; irritatingly, tests do run but not there are two problems:
|
||||
;; - "import gtk" fails for unknown reasons here despite it the
|
||||
|
@ -603,3 +613,31 @@ password hash types most commonly found on various Unix systems, supported out
|
|||
of the box are Windows LM hashes, plus lots of other hashes and ciphers. This
|
||||
is the community-enhanced, \"jumbo\" version of John the Ripper.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public sala
|
||||
(package
|
||||
(name "sala")
|
||||
(version "1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "sala" version))
|
||||
(sha256
|
||||
(base32
|
||||
"13qgmc3i2a0cqp8jqrfl93lnphfagb32pgfikc1gza2a14asxzi8"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; Sala is supposed to work with Python 3.2 or higher,
|
||||
;; but it doesn't work with Python 3.6. Better stick
|
||||
;; to Python 2, which works fine.
|
||||
`(#:python ,python-2))
|
||||
(propagated-inputs
|
||||
`(("gnupg" ,gnupg)
|
||||
("pwgen" ,pwgen)))
|
||||
(home-page "http://www.digip.org/sala/")
|
||||
(synopsis "Encrypted plaintext password store")
|
||||
(description
|
||||
"Store passwords and other bits of sensitive plain-text information
|
||||
to encrypted files on a directory hierarchy. The information is protected
|
||||
by GnuPG's symmetrical encryption.")
|
||||
(license license:expat)))
|
||||
|
|
|
@ -1,30 +0,0 @@
|
|||
This patch is needed to fix dblatex with newer versions of TeX Live.
|
||||
It was taken from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=840189
|
||||
|
||||
--- a/latex/style/dbk_table.sty Sun Oct 02 23:21:03 2016 +0200
|
||||
+++ b/latex/style/dbk_table.sty Mon Oct 10 21:31:00 2016 +0200
|
||||
@@ -9,7 +9,6 @@
|
||||
\usepackage{longtable}
|
||||
\usepackage{lscape}
|
||||
\usepackage{colortbl}
|
||||
-\usepackage{multirow}
|
||||
\usepackage{calc}
|
||||
\usepackage{hhline}
|
||||
|
||||
@@ -21,16 +20,6 @@
|
||||
\expandafter[\expandafter3\expandafter]\expandafter{%
|
||||
\multicolumn{#1}{#2}{#3}}
|
||||
|
||||
-% Make \@xmultirow long
|
||||
-\expandafter\long\expandafter\def%
|
||||
-\expandafter\@xmultirow%
|
||||
-\expandafter#\expandafter1%
|
||||
-\expandafter[\expandafter#\expandafter2\expandafter]%
|
||||
-\expandafter#\expandafter3%
|
||||
-\expandafter[\expandafter#\expandafter4\expandafter]%
|
||||
-\expandafter#\expandafter5%
|
||||
-\expandafter{\@xmultirow{#1}[#2]{#3}[#4]{#5}}
|
||||
-
|
||||
% For the newtbl code
|
||||
\newdimen\newtblstarfactor%
|
||||
\newdimen\newtblsparewidth%
|
|
@ -1,36 +0,0 @@
|
|||
Fix CVE-2017-15132:
|
||||
|
||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-15132
|
||||
|
||||
Patch copied from upstream source repository:
|
||||
|
||||
https://github.com/dovecot/core/commit/1a29ed2f96da1be22fa5a4d96c7583aa81b8b060
|
||||
|
||||
From 1a29ed2f96da1be22fa5a4d96c7583aa81b8b060 Mon Sep 17 00:00:00 2001
|
||||
From: Timo Sirainen <timo.sirainen@dovecot.fi>
|
||||
Date: Mon, 18 Dec 2017 16:50:51 +0200
|
||||
Subject: [PATCH] lib-auth: Fix memory leak in auth_client_request_abort()
|
||||
|
||||
This caused memory leaks when authentication was aborted. For example
|
||||
with IMAP:
|
||||
|
||||
a AUTHENTICATE PLAIN
|
||||
*
|
||||
|
||||
Broken by 9137c55411aa39d41c1e705ddc34d5bd26c65021
|
||||
---
|
||||
src/lib-auth/auth-client-request.c | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/src/lib-auth/auth-client-request.c b/src/lib-auth/auth-client-request.c
|
||||
index 480fb42b30..046f7c307d 100644
|
||||
--- a/src/lib-auth/auth-client-request.c
|
||||
+++ b/src/lib-auth/auth-client-request.c
|
||||
@@ -186,6 +186,7 @@ void auth_client_request_abort(struct auth_client_request **_request)
|
||||
|
||||
auth_client_send_cancel(request->conn->client, request->id);
|
||||
call_callback(request, AUTH_REQUEST_STATUS_ABORT, NULL, NULL);
|
||||
+ pool_unref(&request->pool);
|
||||
}
|
||||
|
||||
unsigned int auth_client_request_get_id(struct auth_client_request *request)
|
|
@ -3,17 +3,21 @@ This patch adds bindings to Linux syscalls for which glibc has symbols.
|
|||
Using the FFI would have been nice, but that's not an option when using
|
||||
a statically-linked Guile in an initrd that doesn't have libc.so around.
|
||||
|
||||
--- guile-2.0.11/libguile/posix.c.orig 2014-02-28 15:01:27.000000000 -0500
|
||||
+++ guile-2.0.11/libguile/posix.c 2015-06-21 14:28:23.624251038 -0400
|
||||
@@ -2245,6 +2245,295 @@
|
||||
diff --git a/libguile/posix.c b/libguile/posix.c
|
||||
index b0fcad5fd..1343186e3 100644
|
||||
--- a/libguile/posix.c
|
||||
+++ b/libguile/posix.c
|
||||
@@ -2341,6 +2341,335 @@ scm_init_popen (void)
|
||||
}
|
||||
#endif
|
||||
#endif /* HAVE_START_CHILD */
|
||||
|
||||
+
|
||||
+/* Linux! */
|
||||
+#ifdef __linux__
|
||||
+
|
||||
+#include <sys/mount.h>
|
||||
+#include <sys/syscall.h>
|
||||
+
|
||||
+#include "libguile/foreign.h"
|
||||
+#include "libguile/bytevectors.h"
|
||||
+
|
||||
|
@ -91,6 +95,16 @@ a statically-linked Guile in an initrd that doesn't have libc.so around.
|
|||
+ ARGS, a space-separated list of options. */
|
||||
+extern long init_module (void *module, unsigned long len, const char *args);
|
||||
+
|
||||
+/* Load a kernel module from FD. FLAGS must be a bitwise or of
|
||||
+ MODULE_INIT_* constants. The GNU libc doesn't provide a wrapper for
|
||||
+ this one so we use 'syscall'. */
|
||||
+static int
|
||||
+finit_module (int fd, const char *args, int flags)
|
||||
+{
|
||||
+ return syscall (SYS_finit_module, fd, args, flags);
|
||||
+}
|
||||
+
|
||||
+
|
||||
+SCM_DEFINE (scm_load_linux_module, "load-linux-module", 1, 1, 0,
|
||||
+ (SCM data, SCM options),
|
||||
+ "Load the Linux kernel module whose contents are in bytevector "
|
||||
|
@ -121,6 +135,34 @@ a statically-linked Guile in an initrd that doesn't have libc.so around.
|
|||
+}
|
||||
+#undef FUNC_NAME
|
||||
+
|
||||
+SCM_DEFINE (scm_load_linux_module_fd, "load-linux-module/fd", 1, 2, 0,
|
||||
+ (SCM fd, SCM options, SCM flags),
|
||||
+ "Load the Linux kernel module from the file at FD, "
|
||||
+ "with the arguments from the OPTIONS string, and "
|
||||
+ "optionally the given FLAGS.")
|
||||
+#define FUNC_NAME s_scm_load_linux_module_fd
|
||||
+{
|
||||
+ long err;
|
||||
+ int c_fd, c_flags;
|
||||
+ char *c_options;
|
||||
+
|
||||
+ c_fd = scm_to_int (fd);
|
||||
+ c_options =
|
||||
+ scm_to_locale_string (SCM_UNBNDP (options) ? scm_nullstr : options);
|
||||
+ c_flags = SCM_UNBNDP (flags) ? 0 : scm_to_int (flags);
|
||||
+
|
||||
+ err = finit_module (c_fd, c_options, c_flags);
|
||||
+
|
||||
+ free (c_options);
|
||||
+
|
||||
+ if (err != 0)
|
||||
+ SCM_SYSERROR;
|
||||
+
|
||||
+ return SCM_UNSPECIFIED;
|
||||
+}
|
||||
+#undef FUNC_NAME
|
||||
+
|
||||
+
|
||||
+/* Rebooting, halting, and all that. */
|
||||
+
|
||||
+#include <sys/reboot.h>
|
||||
|
|
|
@ -1,53 +0,0 @@
|
|||
This patch (adapted from nixpkgs for Build.PL) configures Getopt::Long to pass
|
||||
options so they will be available at the second GetOptions call.
|
||||
|
||||
Also an option to specify the search path for libfontconfig is added.
|
||||
|
||||
--- GD-2.56/Build.PL 2014-10-27 20:34:54.000000000 -0500
|
||||
+++ GD-2.56/Build.PL 2015-02-22 10:08:12.569973657 -0600
|
||||
@@ -2,14 +2,14 @@
|
||||
|
||||
use strict;
|
||||
use Module::Build;
|
||||
-use Getopt::Long;
|
||||
+use Getopt::Long qw(:config pass_through);
|
||||
use Config;
|
||||
|
||||
# =====> PATHS: CHECK AND ADJUST <=====
|
||||
my (@INC,@LIBPATH,@LIBS);
|
||||
my $AUTOCONFIG = 0; # global set by try_to_autoconfigure() below
|
||||
|
||||
-my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path);
|
||||
+my ($options,$lib_gd_path,$lib_ft_path,$lib_png_path,$lib_jpeg_path,$lib_xpm_path,$lib_zlib_path,$lib_fontconfig_path);
|
||||
|
||||
unless (try_to_autoconfigure(\$options,\$lib_gd_path,\@INC,\@LIBPATH,\@LIBS)) {
|
||||
die <<END;
|
||||
@@ -38,6 +38,7 @@
|
||||
"lib_jpeg_path=s" => \$lib_jpeg_path,
|
||||
"lib_xpm_path=s" => \$lib_xpm_path,
|
||||
"lib_zlib_path=s" => \$lib_zlib_path,
|
||||
+ "lib_fontconfig_path=s" => \$lib_fontconfig_path,
|
||||
);
|
||||
unless ($result) {
|
||||
die <<END;
|
||||
@@ -53,6 +54,7 @@
|
||||
-lib_jpeg_path path path to libjpeg
|
||||
-lib_xpm_path path path to libxpm
|
||||
-lib_zlib_path path path to libpng
|
||||
+ -lib_fontconfig_path path path to fontconfig
|
||||
-ignore_missing_gd Ignore missing or old libgd installations and try to compile anyway
|
||||
|
||||
If no options are passed on the command line. The program will
|
||||
@@ -100,6 +102,12 @@
|
||||
@INC = ("-I$lib_zlib_path/include", @INC);
|
||||
@LIBPATH = ("-L$lib_zlib_path/lib", @LIBPATH);
|
||||
}
|
||||
+if( defined($lib_fontconfig_path) )
|
||||
+{
|
||||
+ print "Fontconfig library used from: $lib_fontconfig_path\n";
|
||||
+ @INC = ("-I$lib_fontconfig_path/include", @INC);
|
||||
+ @LIBPATH = ("-L$lib_fontconfig_path/lib", @LIBPATH);
|
||||
+}
|
||||
#############################################################################################
|
||||
|
||||
if ($^O eq 'VMS'){
|
|
@ -0,0 +1,43 @@
|
|||
Fix regex so that it works with Python 3.6.
|
||||
|
||||
See <https://docs.python.org/3/library/re.html#re.LOCALE>.
|
||||
|
||||
Copied from upstream bug report:
|
||||
https://bugs.launchpad.net/python-mox3/+bug/1665266
|
||||
|
||||
From 05064cdb6ea7a16450c6beae2b6f7c6074212a69 Mon Sep 17 00:00:00 2001
|
||||
From: Zac Medico <zmedico@gentoo.org>
|
||||
Date: Thu, 16 Feb 2017 00:24:10 -0800
|
||||
Subject: [PATCH] RegexTest: python3.6 compatibility
|
||||
|
||||
These fixes are backward-compatible with older python versions:
|
||||
|
||||
* raw strings fix invalid escape sequences
|
||||
* flags=8 fixes ValueError: cannot use LOCALE flag with a str pattern
|
||||
---
|
||||
mox3/tests/test_mox.py | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/mox3/tests/test_mox.py b/mox3/tests/test_mox.py
|
||||
index 15ac565..3a1af17 100644
|
||||
--- a/mox3/tests/test_mox.py
|
||||
+++ b/mox3/tests/test_mox.py
|
||||
@@ -312,12 +312,12 @@ class RegexTest(testtools.TestCase):
|
||||
def testReprWithoutFlags(self):
|
||||
"""repr should return the regular expression pattern."""
|
||||
self.assertTrue(
|
||||
- repr(mox.Regex(r"a\s+b")) == "<regular expression 'a\s+b'>")
|
||||
+ repr(mox.Regex(r"a\s+b")) == r"<regular expression 'a\s+b'>")
|
||||
|
||||
def testReprWithFlags(self):
|
||||
"""repr should return the regular expression pattern and flags."""
|
||||
- self.assertTrue(repr(mox.Regex(r"a\s+b", flags=4)) ==
|
||||
- "<regular expression 'a\s+b', flags=4>")
|
||||
+ self.assertTrue(repr(mox.Regex(r"a\s+b", flags=8)) ==
|
||||
+ r"<regular expression 'a\s+b', flags=8>")
|
||||
|
||||
|
||||
class IsTest(testtools.TestCase):
|
||||
--
|
||||
2.10.2
|
||||
|
|
@ -1,52 +0,0 @@
|
|||
From 32f15cfefb7c7b6476360ac65cba807aa3dfccfa Mon Sep 17 00:00:00 2001
|
||||
From: David King <dking@redhat.com>
|
||||
Date: Mon, 14 Dec 2015 09:58:19 +0000
|
||||
Subject: [PATCH] Fix test_too_many_fields with Python 3.5
|
||||
|
||||
taken from https://github.com/r1chardj0n3s/parse/pull/34
|
||||
|
||||
Python versions before 3.5 had a limit of 100 groups in regular
|
||||
expressions. This limit was removed during 3.5 development:
|
||||
|
||||
http://bugs.python.org/issue22437
|
||||
https://hg.python.org/cpython/rev/0b85ea4bd1af
|
||||
|
||||
The test_too_many_fields test asserts that the limit exists by
|
||||
attempting to parse a string with 15 fields, which triggers the 100
|
||||
named groups limit.
|
||||
|
||||
Adjust the test so that if first checks to see whether the limit of 100
|
||||
named groups exists, and only assert that parsing 15 fields fails if
|
||||
that is the case.
|
||||
---
|
||||
test_parse.py | 10 ++++++++--
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test_parse.py b/test_parse.py
|
||||
index c524349..1d50568 100755
|
||||
--- a/test_parse.py
|
||||
+++ b/test_parse.py
|
||||
@@ -6,6 +6,7 @@
|
||||
|
||||
import unittest
|
||||
from datetime import datetime, time
|
||||
+import re
|
||||
|
||||
import parse
|
||||
|
||||
@@ -624,8 +625,13 @@ def test_mixed_type_variant(self):
|
||||
self.assertEqual(r.fixed[21], 'spam')
|
||||
|
||||
def test_too_many_fields(self):
|
||||
- p = parse.compile('{:ti}' * 15)
|
||||
- self.assertRaises(parse.TooManyFields, p.parse, '')
|
||||
+ # Python 3.5 removed the limit of 100 named groups in a regular expression,
|
||||
+ # so only test for the exception if the limit exists.
|
||||
+ try:
|
||||
+ re.compile("".join("(?P<n{n}>{n}-)".format(n=i) for i in range(101)))
|
||||
+ except AssertionError:
|
||||
+ p = parse.compile('{:ti}' * 15)
|
||||
+ self.assertRaises(parse.TooManyFields, p.parse, '')
|
||||
|
||||
|
||||
class TestSearch(unittest.TestCase):
|
|
@ -0,0 +1,119 @@
|
|||
Fix CVE-2018-6767:
|
||||
https://nvd.nist.gov/vuln/detail/CVE-2018-6767
|
||||
https://security-tracker.debian.org/tracker/CVE-2018-6767
|
||||
|
||||
Patch copied from upstream source repository:
|
||||
https://github.com/dbry/WavPack/commit/d5bf76b5a88d044a1be1d5656698e3ba737167e5
|
||||
|
||||
From d5bf76b5a88d044a1be1d5656698e3ba737167e5 Mon Sep 17 00:00:00 2001
|
||||
From: David Bryant <david@wavpack.com>
|
||||
Date: Sun, 4 Feb 2018 11:28:15 -0800
|
||||
Subject: [PATCH] issue #27, do not overwrite stack on corrupt RF64 file
|
||||
|
||||
---
|
||||
cli/riff.c | 39 ++++++++++++++++++++++++++++++++-------
|
||||
1 file changed, 32 insertions(+), 7 deletions(-)
|
||||
|
||||
diff --git a/cli/riff.c b/cli/riff.c
|
||||
index 8b1af45..de98c1e 100644
|
||||
--- a/cli/riff.c
|
||||
+++ b/cli/riff.c
|
||||
@@ -42,6 +42,7 @@ typedef struct {
|
||||
|
||||
#pragma pack(pop)
|
||||
|
||||
+#define CS64ChunkFormat "4D"
|
||||
#define DS64ChunkFormat "DDDL"
|
||||
|
||||
#define WAVPACK_NO_ERROR 0
|
||||
@@ -101,13 +102,13 @@ int ParseRiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
|
||||
|
||||
if (!strncmp (chunk_header.ckID, "ds64", 4)) {
|
||||
if (chunk_header.ckSize < sizeof (DS64Chunk) ||
|
||||
- !DoReadFile (infile, &ds64_chunk, chunk_header.ckSize, &bcount) ||
|
||||
- bcount != chunk_header.ckSize) {
|
||||
+ !DoReadFile (infile, &ds64_chunk, sizeof (DS64Chunk), &bcount) ||
|
||||
+ bcount != sizeof (DS64Chunk)) {
|
||||
error_line ("%s is not a valid .WAV file!", infilename);
|
||||
return WAVPACK_SOFT_ERROR;
|
||||
}
|
||||
else if (!(config->qmode & QMODE_NO_STORE_WRAPPER) &&
|
||||
- !WavpackAddWrapper (wpc, &ds64_chunk, chunk_header.ckSize)) {
|
||||
+ !WavpackAddWrapper (wpc, &ds64_chunk, sizeof (DS64Chunk))) {
|
||||
error_line ("%s", WavpackGetErrorMessage (wpc));
|
||||
return WAVPACK_SOFT_ERROR;
|
||||
}
|
||||
@@ -315,10 +316,11 @@ int ParseRiffHeaderConfig (FILE *infile, char *infilename, char *fourcc, Wavpack
|
||||
|
||||
int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples, int qmode)
|
||||
{
|
||||
- int do_rf64 = 0, write_junk = 1;
|
||||
+ int do_rf64 = 0, write_junk = 1, table_length = 0;
|
||||
ChunkHeader ds64hdr, datahdr, fmthdr;
|
||||
RiffChunkHeader riffhdr;
|
||||
DS64Chunk ds64_chunk;
|
||||
+ CS64Chunk cs64_chunk;
|
||||
JunkChunk junkchunk;
|
||||
WaveHeader wavhdr;
|
||||
uint32_t bcount;
|
||||
@@ -380,6 +382,7 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
|
||||
strncpy (riffhdr.formType, "WAVE", sizeof (riffhdr.formType));
|
||||
total_riff_bytes = sizeof (riffhdr) + wavhdrsize + sizeof (datahdr) + ((total_data_bytes + 1) & ~(int64_t)1);
|
||||
if (do_rf64) total_riff_bytes += sizeof (ds64hdr) + sizeof (ds64_chunk);
|
||||
+ total_riff_bytes += table_length * sizeof (CS64Chunk);
|
||||
if (write_junk) total_riff_bytes += sizeof (junkchunk);
|
||||
strncpy (fmthdr.ckID, "fmt ", sizeof (fmthdr.ckID));
|
||||
strncpy (datahdr.ckID, "data", sizeof (datahdr.ckID));
|
||||
@@ -394,11 +397,12 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
|
||||
|
||||
if (do_rf64) {
|
||||
strncpy (ds64hdr.ckID, "ds64", sizeof (ds64hdr.ckID));
|
||||
- ds64hdr.ckSize = sizeof (ds64_chunk);
|
||||
+ ds64hdr.ckSize = sizeof (ds64_chunk) + (table_length * sizeof (CS64Chunk));
|
||||
CLEAR (ds64_chunk);
|
||||
ds64_chunk.riffSize64 = total_riff_bytes;
|
||||
ds64_chunk.dataSize64 = total_data_bytes;
|
||||
ds64_chunk.sampleCount64 = total_samples;
|
||||
+ ds64_chunk.tableLength = table_length;
|
||||
riffhdr.ckSize = (uint32_t) -1;
|
||||
datahdr.ckSize = (uint32_t) -1;
|
||||
WavpackNativeToLittleEndian (&ds64hdr, ChunkHeaderFormat);
|
||||
@@ -409,6 +413,14 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
|
||||
datahdr.ckSize = (uint32_t) total_data_bytes;
|
||||
}
|
||||
|
||||
+ // this "table" is just a dummy placeholder for testing (normally not written)
|
||||
+
|
||||
+ if (table_length) {
|
||||
+ strncpy (cs64_chunk.ckID, "dmmy", sizeof (cs64_chunk.ckID));
|
||||
+ cs64_chunk.chunkSize64 = 12345678;
|
||||
+ WavpackNativeToLittleEndian (&cs64_chunk, CS64ChunkFormat);
|
||||
+ }
|
||||
+
|
||||
// write the RIFF chunks up to just before the data starts
|
||||
|
||||
WavpackNativeToLittleEndian (&riffhdr, ChunkHeaderFormat);
|
||||
@@ -418,8 +430,21 @@ int WriteRiffHeader (FILE *outfile, WavpackContext *wpc, int64_t total_samples,
|
||||
|
||||
if (!DoWriteFile (outfile, &riffhdr, sizeof (riffhdr), &bcount) || bcount != sizeof (riffhdr) ||
|
||||
(do_rf64 && (!DoWriteFile (outfile, &ds64hdr, sizeof (ds64hdr), &bcount) || bcount != sizeof (ds64hdr))) ||
|
||||
- (do_rf64 && (!DoWriteFile (outfile, &ds64_chunk, sizeof (ds64_chunk), &bcount) || bcount != sizeof (ds64_chunk))) ||
|
||||
- (write_junk && (!DoWriteFile (outfile, &junkchunk, sizeof (junkchunk), &bcount) || bcount != sizeof (junkchunk))) ||
|
||||
+ (do_rf64 && (!DoWriteFile (outfile, &ds64_chunk, sizeof (ds64_chunk), &bcount) || bcount != sizeof (ds64_chunk)))) {
|
||||
+ error_line ("can't write .WAV data, disk probably full!");
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
+ // again, this is normally not written except for testing
|
||||
+
|
||||
+ while (table_length--)
|
||||
+ if (!DoWriteFile (outfile, &cs64_chunk, sizeof (cs64_chunk), &bcount) || bcount != sizeof (cs64_chunk)) {
|
||||
+ error_line ("can't write .WAV data, disk probably full!");
|
||||
+ return FALSE;
|
||||
+ }
|
||||
+
|
||||
+
|
||||
+ if ((write_junk && (!DoWriteFile (outfile, &junkchunk, sizeof (junkchunk), &bcount) || bcount != sizeof (junkchunk))) ||
|
||||
!DoWriteFile (outfile, &fmthdr, sizeof (fmthdr), &bcount) || bcount != sizeof (fmthdr) ||
|
||||
!DoWriteFile (outfile, &wavhdr, wavhdrsize, &bcount) || bcount != wavhdrsize ||
|
||||
!DoWriteFile (outfile, &datahdr, sizeof (datahdr), &bcount) || bcount != sizeof (datahdr)) {
|
|
@ -0,0 +1,26 @@
|
|||
This fixes the wxplot2d plotting issue found at
|
||||
https://github.com/andrejv/wxmaxima/issues/973.
|
||||
|
||||
From 5a0693c97ceaa4935b908f1e478126896952f399 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Gunter=20K=C3=B6nigsmann?= <gunter@peterpall.de>
|
||||
Date: Mon, 19 Feb 2018 05:37:35 +0100
|
||||
Subject: [PATCH] Seems I accidentally made wxMaxima to default to parameters
|
||||
for old gnuplots. Resolves #973
|
||||
|
||||
---
|
||||
data/wxmathml.lisp.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/data/wxmathml.lisp.in b/data/wxmathml.lisp.in
|
||||
index a32e3fc3..4e19acaf 100644
|
||||
--- a/data/wxmathml.lisp.in
|
||||
+++ b/data/wxmathml.lisp.in
|
||||
@@ -43,7 +43,7 @@
|
||||
(defvar $wxsubscripts t
|
||||
"Recognize TeX-style subscripts")
|
||||
(defvar $wxplot_pngcairo nil "Use gnuplot's pngcairo terminal for new plots?")
|
||||
-(defmvar $wxplot_old_gnuplot t)
|
||||
+(defmvar $wxplot_old_gnuplot nil)
|
||||
|
||||
(defun $wxstatusbar (status)
|
||||
(format t "<statusbar>~a</statusbar>~%" status))
|
|
@ -1341,7 +1341,7 @@ supports XML, YAML, JSON, Apache-style configuration, and Perl code.")
|
|||
(define-public perl-config-autoconf
|
||||
(package
|
||||
(name "perl-config-autoconf")
|
||||
(version "0.309")
|
||||
(version "0.315")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1349,7 +1349,7 @@ supports XML, YAML, JSON, Apache-style configuration, and Perl code.")
|
|||
"Config-AutoConf-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1nqc7calfny12dwfhz7ylsvx55nf69kirdc5dbyvh3sjsqj8yvdq"))))
|
||||
"0h39x9rzrhhilpg8yxlzpka269qrzsjg0iy0c1b9xflqlvhx2g2b"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-capture-tiny" ,perl-capture-tiny)))
|
||||
|
@ -1720,7 +1720,7 @@ indentation and newlines plus sub deparsing.")
|
|||
(define-public perl-data-optlist
|
||||
(package
|
||||
(name "perl-data-optlist")
|
||||
(version "0.109")
|
||||
(version "0.110")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1729,7 +1729,7 @@ indentation and newlines plus sub deparsing.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1j44rm2spprlq3bc80cxni3dzs3gfjiqv1qc9q7820n1qj0wgmqw"))))
|
||||
"1hzmgr2imdg1fc3hmwx0d56fhsdfyrgmgx7jb4jkyiv6575ifq9n"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-sub-install" ,perl-sub-install)
|
||||
|
@ -2585,7 +2585,7 @@ based memory management, circular references will cause memory leaks.")
|
|||
(define-public perl-devel-globaldestruction
|
||||
(package
|
||||
(name "perl-devel-globaldestruction")
|
||||
(version "0.13")
|
||||
(version "0.14")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2593,7 +2593,7 @@ based memory management, circular references will cause memory leaks.")
|
|||
"Devel-GlobalDestruction-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qn4iszgylnxjdkb6430f6a3ci7bcx9ih1az6bd5cbij1pf2965j"))))
|
||||
"1aslj6myylsvzr0vpqry1cmmvzbmpbdcl4v9zrl18ccik7rabf1l"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-sub-exporter-progressive" ,perl-sub-exporter-progressive)))
|
||||
|
@ -3104,7 +3104,7 @@ extensions")
|
|||
(define-public perl-extutils-installpaths
|
||||
(package
|
||||
(name "perl-extutils-installpaths")
|
||||
(version "0.010")
|
||||
(version "0.011")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -3112,7 +3112,7 @@ extensions")
|
|||
"ExtUtils-InstallPaths-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0mi1px42in7i442jqncg3gmxd5zn7sw5b2s85h690rz433qvyk6i"))))
|
||||
"0z06y0fhx9hy9x01abb7s2xdbqrh9x4ps7avmlf4bwfwih2gl2bn"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-extutils-config" ,perl-extutils-config)))
|
||||
|
@ -3913,15 +3913,15 @@ variables.")
|
|||
(define-public perl-import-into
|
||||
(package
|
||||
(name "perl-import-into")
|
||||
(version "1.002004")
|
||||
(version "1.002005")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
|
||||
"Import-Into-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"110hifk3cj14lxgjq2vaa2qfja21gll4lpn8vbimy0gzqadjbjyy"))))
|
||||
"0rq5kz7c270q33jq6hnrv3xgkvajsc62ilqq7fs40av6zfipg7mx"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-module-runtime" ,perl-module-runtime)))
|
||||
|
@ -4580,7 +4580,7 @@ functionality on lists which is not going to go into List::Util.")
|
|||
(define-public perl-list-moreutils-xs
|
||||
(package
|
||||
(name "perl-list-moreutils-xs")
|
||||
(version "0.426")
|
||||
(version "0.428")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -4588,7 +4588,7 @@ functionality on lists which is not going to go into List::Util.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ss0a0f9yqs7gd9qamhaxq27mvn573ljg28ry1gy2pxbz56byzbc"))))
|
||||
"0bfndmnkqaaf3gffprak143bzplxd69c368jxgr7rzlx88hyd7wx"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-config-autoconf" ,perl-config-autoconf)
|
||||
|
@ -6557,7 +6557,7 @@ up inheritance from those modules at the same time.")
|
|||
(define-public perl-path-class
|
||||
(package
|
||||
(name "perl-path-class")
|
||||
(version "0.35")
|
||||
(version "0.37")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -6565,7 +6565,7 @@ up inheritance from those modules at the same time.")
|
|||
"Path-Class-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1viaj8jyshcj135la0kgfgzalaw06xnbsg9h54jx09v1342v69lj"))))
|
||||
"1kj8q8dmd8jci94w5arav59nkp0pkxrkliz4n8n6yf02hsa82iv5"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs `(("perl-module-build" ,perl-module-build)))
|
||||
(home-page "http://search.cpan.org/dist/Path-Class/")
|
||||
|
@ -7861,7 +7861,7 @@ and escapes.")
|
|||
(define-public perl-text-diff
|
||||
(package
|
||||
(name "perl-text-diff")
|
||||
(version "1.44")
|
||||
(version "1.45")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -7869,7 +7869,7 @@ and escapes.")
|
|||
"Text-Diff-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"041v92zla2acdc433f47giridf6p820sdczs7x5d71fhsyza1xsp"))))
|
||||
"013g13prdghxvrp5754gyc7rmv1syyxrhs33yc5f0lrz3dxs1fp8"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-algorithm-diff" ,perl-algorithm-diff)))
|
||||
|
@ -8041,7 +8041,7 @@ system.")
|
|||
(define-public perl-throwable
|
||||
(package
|
||||
(name "perl-throwable")
|
||||
(version "0.200012")
|
||||
(version "0.200013")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -8049,7 +8049,7 @@ system.")
|
|||
"Throwable-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cy8kza9pd9y5m7k5385asf4xqm54vdqnqm0am10z6j2mrxwr527"))))
|
||||
"184gdcwxqwnkrx5md968v1ny70pq6blzpkihccm3bpdxnpgd11wr"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-devel-stacktrace" ,perl-devel-stacktrace)))
|
||||
|
@ -8647,7 +8647,7 @@ built-in.")
|
|||
(define-public perl-variable-magic
|
||||
(package
|
||||
(name "perl-variable-magic")
|
||||
(version "0.61")
|
||||
(version "0.62")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -8655,7 +8655,7 @@ built-in.")
|
|||
"Variable-Magic-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mx6z36c3wk61x6lag6kyws5g1cba68cw20vrb92wan7ahpfkbxq"))))
|
||||
"0p31dclnj47k4hj35rzay9pzxasl3gq46kzwqalhdw1kgr8ii6iz"))))
|
||||
(build-system perl-build-system)
|
||||
(home-page "http://search.cpan.org/dist/Variable-Magic/")
|
||||
(synopsis "Associate user-defined magic to variables from Perl")
|
||||
|
@ -8721,15 +8721,15 @@ neither visible nor modifiable from Perl space).")
|
|||
(define-public perl-yaml
|
||||
(package
|
||||
(name "perl-yaml")
|
||||
(version "1.23")
|
||||
(version "1.24")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/I/IN/INGY/"
|
||||
(uri (string-append "mirror://cpan/authors/id/T/TI/TINITA/"
|
||||
"YAML-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0kf8mllrgnrmlvjijxc6srjj1y9i8rik5jpjvm8jh4yx70h9gn1a"))))
|
||||
"1dpzgnjbd8yvf94vf45cmyj5bc6vrm6bchhx9xqwxqd5f9d093dm"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-test-yaml" ,perl-test-yaml)))
|
||||
|
@ -8742,7 +8742,7 @@ on the YAML 1.0 specification.")
|
|||
(define-public perl-yaml-libyaml
|
||||
(package
|
||||
(name "perl-yaml-libyaml")
|
||||
(version "0.65")
|
||||
(version "0.69")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -8752,7 +8752,7 @@ on the YAML 1.0 specification.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0izhvz8f29x1f50hhwfgm0iq1lz7apjjvg77lmky949jr07hnwfv"))))
|
||||
"06msvj3vmjszl5zj1k7g47ll0kkds9gdb5sky0q27lh4zw1vlj33"))))
|
||||
(build-system perl-build-system)
|
||||
(home-page
|
||||
"http://search.cpan.org/dist/YAML-LibYAML/")
|
||||
|
@ -8961,7 +8961,7 @@ files, using JSON::PP and/or CPAN::Meta::YAML.")
|
|||
(define-public perl-scalar-list-utils
|
||||
(package
|
||||
(name "perl-scalar-list-utils")
|
||||
(version "1.47")
|
||||
(version "1.50")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -8969,7 +8969,7 @@ files, using JSON::PP and/or CPAN::Meta::YAML.")
|
|||
"Scalar-List-Utils-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qgg6zxqwziva5j1k5gjks4xmhmgklm551ni3zb74sd9f9rk90y4"))))
|
||||
"0x9n0617gjjcqa4nk5biiwkxdi90xpdfg6z07gjr009qjg3bkah6"))))
|
||||
(build-system perl-build-system)
|
||||
(home-page "http://search.cpan.org/dist/Scalar-List-Utils/")
|
||||
(synopsis "Common Scalar and List utility subroutines")
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -46,6 +47,7 @@
|
|||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages imagemagick)
|
||||
#:use-module (gnu packages libcanberra)
|
||||
#:use-module (gnu packages libusb)
|
||||
#:use-module (gnu packages llvm)
|
||||
#:use-module (gnu packages man)
|
||||
|
@ -67,14 +69,14 @@
|
|||
(define-public libraw
|
||||
(package
|
||||
(name "libraw")
|
||||
(version "0.18.7")
|
||||
(version "0.18.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.libraw.org/data/LibRaw-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wap67mb03fl2himbs20yncnnrr71mszsfm2v4spks58c714gqw7"))))
|
||||
"1qi0fkw2zmd0yplrf79z7lgpz0hxl45dj5rdgpaj7283jzys9b2n"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://www.libraw.org")
|
||||
(synopsis "Raw image decoder")
|
||||
|
@ -465,3 +467,57 @@ user interface. It can be used to assemble a mosaic of photographs into
|
|||
a complete panorama and stitch any series of overlapping pictures.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public rawtherapee
|
||||
(package
|
||||
(name "rawtherapee")
|
||||
(version "5.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://rawtherapee.com/shared/source/"
|
||||
"rawtherapee-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1y1ygxqmqfp4zg8rcgrlfdc1597cyr5zqgp5zjpldhvwdfa9r5cp"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no test suite
|
||||
#:configure-flags
|
||||
(list (string-append "-DLENSFUNDBDIR="
|
||||
(assoc-ref %build-inputs "lensfun")
|
||||
"/share/lensfun")
|
||||
"-DCMAKE_BUILD_TYPE=release"
|
||||
; Don't optimize the build for the host machine. See the file
|
||||
; 'ProcessorTargets.cmake' in the source distribution for more
|
||||
; information.
|
||||
"-DPROC_TARGET_NUMBER=1"
|
||||
; These flags are recommended by upstream for distributed packages.
|
||||
; See the file 'RELEASE_NOTES.txt' in the source distribution.
|
||||
"-O3"
|
||||
"-DCACHE_NAME_SUFFIX=\"\"")))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("expat" ,expat)
|
||||
("fftw" ,fftwf)
|
||||
("glib" ,glib)
|
||||
("glibmm" ,glibmm)
|
||||
("gtk+" ,gtk+)
|
||||
("gtkmm" ,gtkmm)
|
||||
("lcms" ,lcms)
|
||||
("lensfun" ,lensfun)
|
||||
("libcanberra" ,libcanberra)
|
||||
("libiptcdata" ,libiptcdata)
|
||||
("libjpeg" ,libjpeg)
|
||||
("libpng" ,libpng)
|
||||
("libsigc++" ,libsigc++)
|
||||
("libtiff" ,libtiff)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "http://rawtherapee.com")
|
||||
(synopsis "Raw image developing and processing")
|
||||
(description "RawTherapee is a raw image processing suite. It comprises a
|
||||
subset of image editing operations specifically aimed at non-destructive raw
|
||||
photo post-production and is primarily focused on improving a photographer's
|
||||
workflow by facilitating the handling of large numbers of images. Most raw
|
||||
formats are supported, including Pentax Pixel Shift, Canon Dual-Pixel, and those
|
||||
from Foveon and X-Trans sensors.")
|
||||
(license license:gpl3+)))
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Huang Ying <huang.ying.caritas@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -77,7 +78,8 @@
|
|||
;; Set the setuid helper's real location.
|
||||
(substitute* "src/polkitagent/polkitagentsession.c"
|
||||
(("PACKAGE_PREFIX \"/lib/polkit-1/polkit-agent-helper-1\"")
|
||||
"\"/run/setuid-programs/polkit-agent-helper-1\""))))))
|
||||
"\"/run/setuid-programs/polkit-agent-helper-1\""))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("expat" ,expat)
|
||||
|
@ -105,7 +107,8 @@
|
|||
(("@INTROSPECTION_GIRDIR@")
|
||||
(string-append out "/share/gir-1.0/"))
|
||||
(("@INTROSPECTION_TYPELIBDIR@")
|
||||
(string-append out "/lib/girepository-1.0/"))))))
|
||||
(string-append out "/lib/girepository-1.0/")))
|
||||
#t)))
|
||||
(replace
|
||||
'install
|
||||
(lambda* (#:key outputs (make-flags '()) #:allow-other-keys)
|
||||
|
@ -113,13 +116,13 @@
|
|||
;; to install in /etc, and to instead install the skeletons in the
|
||||
;; output directory.
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(zero? (apply system*
|
||||
"make" "install"
|
||||
(apply invoke "make" "install"
|
||||
(string-append "sysconfdir=" out "/etc")
|
||||
(string-append "polkit_actiondir="
|
||||
out "/share/polkit-1/actions")
|
||||
make-flags))))))))
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/polkit/")
|
||||
make-flags)
|
||||
#t))))))
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/polkit/")
|
||||
(synopsis "Authorization API for privilege management")
|
||||
(description "Polkit is an application-level toolkit for defining and
|
||||
handling the policy that allows unprivileged processes to speak to
|
||||
|
@ -183,5 +186,5 @@ easily with PolicyKit.")
|
|||
(description "PolicyKit-gnome provides a D-Bus session bus service
|
||||
that is used to bring up authentication dialogs used for obtaining
|
||||
privileges.")
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/polkit/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/polkit/")
|
||||
(license lgpl2.0+)))
|
||||
|
|
|
@ -220,7 +220,7 @@ sound server.")
|
|||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "http://freedesktop.org/software/pulseaudio/pavucontrol/")
|
||||
(home-page "https://www.freedesktop.org/software/pulseaudio/pavucontrol/")
|
||||
(synopsis "PulseAudio volume control")
|
||||
(description
|
||||
"PulseAudio Volume Control (pavucontrol) provides a GTK+
|
||||
|
|
|
@ -165,14 +165,14 @@ both of which are installed automatically if you install this library.")
|
|||
(define-public python-html5lib
|
||||
(package
|
||||
(name "python-html5lib")
|
||||
(version "1.0b10")
|
||||
(version "1.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "html5lib" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1yd068a5c00wd0ajq0hqimv7fd82lhrw0w3s01vbhy9bbd6xapqd"))))
|
||||
"0dipzfrycv6j1jw82v9b7d8lzggx3x8xngx6l4xrqkxwvg7hvjv6"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-six" ,python-six)
|
||||
|
@ -241,13 +241,13 @@ C, yielding parse times that can be a thirtieth of the html5lib parse times.")
|
|||
(define-public python-webencodings
|
||||
(package
|
||||
(name "python-webencodings")
|
||||
(version "0.5")
|
||||
(version "0.5.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "webencodings" version))
|
||||
(sha256
|
||||
(base32
|
||||
"015rw7662lkpb9aqiqah2hbizk6w531badqwjpz41rr47glmxid5"))))
|
||||
"08qrgrc4hrximb2gqnl69g01s93rhf2842jfxdjljc1dbwj1qsmk"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
|
|
@ -448,14 +448,14 @@ instead of @command{python3}.")))
|
|||
(define-public python-psutil
|
||||
(package
|
||||
(name "python-psutil")
|
||||
(version "4.3.0")
|
||||
(version "5.4.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "psutil" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1w4r09fvn6kd80m5mx4ws1wz100brkaq6hzzpwrns8cgjzjpl6c6"))))
|
||||
"063v69x7spyclyaxrd3gmzj3p16q5ayg97xqhwb1kyn22a9pwip2"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; FIXME: some tests does not return and times out.
|
||||
|
@ -470,10 +470,16 @@ limiting process resources and management of running processes. It implements
|
|||
many functionalities offered by command line tools such as: ps, top, lsof,
|
||||
netstat, ifconfig, who, df, kill, free, nice, ionice, iostat, iotop, uptime,
|
||||
pidof, tty, taskset, pmap.")
|
||||
(properties `((python2-variant . ,(delay python2-psutil))))
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python2-psutil
|
||||
(package-with-python2 python-psutil))
|
||||
(let ((base (package-with-python2 (strip-python2-variant python-psutil))))
|
||||
(package
|
||||
(inherit base)
|
||||
(propagated-inputs
|
||||
`(("python2-enum34" ,python2-enum34) ;optional
|
||||
,@(package-propagated-inputs base))))))
|
||||
|
||||
(define-public python-shapely
|
||||
(package
|
||||
|
@ -1386,26 +1392,15 @@ backported for previous versions of Python from 2.4 to 3.3.")
|
|||
(define-public python-parse-type
|
||||
(package
|
||||
(name "python-parse-type")
|
||||
(version "0.3.4")
|
||||
(version "0.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/p/"
|
||||
"parse_type/parse_type-" version ".tar.gz"))
|
||||
(uri (pypi-uri "parse_type" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0iv1c34npr4iynwpgv1vkjx9rjd18a85ir8c01gc5f7wp8iv7l1x"))))
|
||||
"0g3b6gsdwnm8dpkh2vn34q6dzxm9gl908ggyzcv31n9xbp3vv5pm"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-tests
|
||||
(lambda _
|
||||
(substitute* "tests/test_parse_type_parse.py"
|
||||
;; Newer Python versions don't have the problem this test tests.
|
||||
(("self[.]assertRaises[(]parse.TooManyFields, p.parse, ''[)]")
|
||||
""))
|
||||
#t)))))
|
||||
(propagated-inputs
|
||||
`(("python-six" ,python-six)
|
||||
("python-parse" ,python-parse)))
|
||||
|
@ -1431,21 +1426,20 @@ backported for previous versions of Python from 2.4 to 3.3.")
|
|||
(define-public python-parse
|
||||
(package
|
||||
(name "python-parse")
|
||||
(version "1.6.6")
|
||||
(version "1.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "parse" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0y31i3mwgv35qn0kzzjn9q8jqfdqmbi6sr6yfvn8rq4lqjm5lhvi"))
|
||||
(patches (search-patches "python-parse-too-many-fields.patch"))))
|
||||
"1lj9v1q4imszyhvipb6drsm3xdl35nan011mqxxas1yaypixsj40"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _ (zero? (system* "python" "test_parse.py")))))))
|
||||
(lambda _ (invoke "python" "test_parse.py"))))))
|
||||
(home-page "https://github.com/r1chardj0n3s/parse")
|
||||
(synopsis "Parse strings")
|
||||
(description
|
||||
|
@ -1512,19 +1506,17 @@ software.")
|
|||
(define-public python-extras
|
||||
(package
|
||||
(name "python-extras")
|
||||
(version "0.0.3")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/e/extras/extras-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "extras" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1h7zx4dfyclalg0fqnfjijpn0f793a9mx8sy3b27gd31nr6dhq3s"))))
|
||||
"0khvm08rcwm62wc47j8niyl6h13f8w51c8669ifivjdr23g3cbhk"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; error in setup.cfg: command 'test' has no such option 'buffer'
|
||||
;; FIXME: Circular dependency on testtools.
|
||||
'(#:tests? #f))
|
||||
(home-page "https://github.com/testing-cabal/extras")
|
||||
(synopsis "Useful extensions to the Python standard library")
|
||||
|
@ -1701,15 +1693,15 @@ code introspection, and logging.")
|
|||
(propagated-inputs
|
||||
`(("git" ,git))) ;; pbr actually uses the "git" binary.
|
||||
(native-inputs
|
||||
`(("python-fixtures" ,python-fixtures)
|
||||
`(("python-fixtures" ,python-fixtures-bootstrap)
|
||||
;; discover, coverage, hacking, subunit
|
||||
("python-mock" ,python-mock)
|
||||
("python-six" ,python-six)
|
||||
("python-sphinx" ,python-sphinx)
|
||||
("python-testrepository" ,python-testrepository)
|
||||
("python-testresources" ,python-testresources)
|
||||
("python-testscenarios" ,python-testscenarios)
|
||||
("python-testtools" ,python-testtools)
|
||||
("python-testrepository" ,python-testrepository-bootstrap)
|
||||
("python-testresources" ,python-testresources-bootstrap)
|
||||
("python-testscenarios" ,python-testscenarios-bootstrap)
|
||||
("python-testtools" ,python-testtools-bootstrap)
|
||||
("python-virtualenv" ,python-virtualenv)))
|
||||
(synopsis "Enhance the default behavior of Python’s setuptools")
|
||||
(description
|
||||
|
@ -2426,7 +2418,17 @@ sources.")
|
|||
`(("python-pytest" ,python-pytest)
|
||||
("imagemagick" ,imagemagick) ; for "convert"
|
||||
,@(package-native-inputs python-sphinx)))
|
||||
(properties '())))
|
||||
(properties `((python2-variant . ,(delay python2-sphinx-1.6))))))
|
||||
|
||||
(define-public python2-sphinx-1.6
|
||||
(let ((base (package-with-python2 (strip-python2-variant python-sphinx-1.6))))
|
||||
(package
|
||||
(inherit base)
|
||||
(propagated-inputs
|
||||
`(("python2-typing" ,python2-typing)
|
||||
,@(package-propagated-inputs base)))
|
||||
(native-inputs `(("python2-enum34" ,python2-enum34)
|
||||
,@(package-native-inputs base))))))
|
||||
|
||||
(define-public python-sphinx-1.5.3
|
||||
(package
|
||||
|
@ -4282,15 +4284,14 @@ them as the version argument or in a SCM managed file.")
|
|||
(define-public python-pathpy
|
||||
(package
|
||||
(name "python-pathpy")
|
||||
(version "8.1.1")
|
||||
(version "11.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/p/"
|
||||
"path.py/path.py-" version ".tar.gz"))
|
||||
(uri (pypi-uri "path.py" version))
|
||||
(sha256
|
||||
(base32 "1p8s1l2vfkqhqxdhqlj0g1jjw4f1as2frr35sjcpjjpd5a89y41f"))))
|
||||
(outputs '("out" "doc"))
|
||||
(base32 "12s84maimiz61980q065rjgi8ang6xw2wwm64m0lmfks51dlw4qn"))))
|
||||
;; (outputs '("out" "doc"))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-appdirs" ,python-appdirs)))
|
||||
|
@ -4301,22 +4302,24 @@ them as the version argument or in a SCM managed file.")
|
|||
("python-pytest" ,python-pytest)
|
||||
("python-pytest-runner" ,python-pytest-runner)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'build 'build-doc
|
||||
(lambda _
|
||||
(setenv "LANG" "en_US.UTF-8")
|
||||
(zero? (system* "python" "setup.py" "build_sphinx"))))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((data (string-append (assoc-ref outputs "doc") "/share"))
|
||||
(doc (string-append data "/doc/" ,name "-" ,version))
|
||||
(html (string-append doc "/html")))
|
||||
(mkdir-p html)
|
||||
(for-each (lambda (file)
|
||||
(copy-file file (string-append doc "/" file)))
|
||||
'("README.rst" "CHANGES.rst"))
|
||||
(copy-recursively "build/sphinx/html" html)))))))
|
||||
;; FIXME: Documentation and tests require "jaraco.packaging".
|
||||
`(#:tests? #f))
|
||||
;; #:phases
|
||||
;; (modify-phases %standard-phases
|
||||
;; (add-after 'build 'build-doc
|
||||
;; (lambda _
|
||||
;; (setenv "LANG" "en_US.UTF-8")
|
||||
;; (zero? (system* "python" "setup.py" "build_sphinx"))))
|
||||
;; (add-after 'install 'install-doc
|
||||
;; (lambda* (#:key outputs #:allow-other-keys)
|
||||
;; (let* ((data (string-append (assoc-ref outputs "doc") "/share"))
|
||||
;; (doc (string-append data "/doc/" ,name "-" ,version))
|
||||
;; (html (string-append doc "/html")))
|
||||
;; (mkdir-p html)
|
||||
;; (for-each (lambda (file)
|
||||
;; (copy-file file (string-append doc "/" file)))
|
||||
;; '("README.rst" "CHANGES.rst"))
|
||||
;; (copy-recursively "build/sphinx/html" html)))))))
|
||||
(home-page "https://github.com/jaraco/path.py")
|
||||
(synopsis "Python module wrapper for built-in os.path")
|
||||
(description
|
||||
|
@ -4507,13 +4510,13 @@ installing @code{kernelspec}s for use with Jupyter frontends.")
|
|||
(define-public python-ipython
|
||||
(package
|
||||
(name "python-ipython")
|
||||
(version "5.3.0")
|
||||
(version "5.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "ipython" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "079wyjir4a9qx6kvx096b1asm63djbidk65z3ykcbnlngmg62pmz"))))
|
||||
(base32 "03qmzpfy00if10i9k8fjkam1s4xg22j73f933x5d228z9n4rwik6"))))
|
||||
(build-system python-build-system)
|
||||
(outputs '("out" "doc"))
|
||||
(propagated-inputs
|
||||
|
@ -4773,7 +4776,7 @@ toolkit. Use it to build trees of widgets.")
|
|||
(synopsis "Python bindings for D-bus")
|
||||
(description "python-dbus provides bindings for libdbus, the reference
|
||||
implementation of D-Bus.")
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/DBusBindings/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/DBusBindings/")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python2-dbus
|
||||
|
@ -4859,20 +4862,16 @@ converts incoming documents to Unicode and outgoing documents to UTF-8.")
|
|||
(define-public python-netifaces
|
||||
(package
|
||||
(name "python-netifaces")
|
||||
(version "0.10.4")
|
||||
(version "0.10.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/n/netifaces/netifaces-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (pypi-uri "netifaces" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1plw237a4zib4z8s62g0mrs8gm3kjfrp5sxh6bbk9nl3rdls2mln"))))
|
||||
"1q7bi5k2r955rlcpspx4salvkkpk28jky67fjbpz2dkdycisak8c"))))
|
||||
(build-system python-build-system)
|
||||
(home-page
|
||||
"https://bitbucket.org/al45tair/netifaces")
|
||||
(home-page "https://github.com/al45tair/netifaces")
|
||||
(synopsis
|
||||
"Python module for portable network interface information")
|
||||
(description
|
||||
|
@ -5835,21 +5834,59 @@ should be stored on various operating systems.")
|
|||
(define-public python-msgpack
|
||||
(package
|
||||
(name "python-msgpack")
|
||||
(version "0.4.8")
|
||||
(version "0.5.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "msgpack-python" version))
|
||||
(uri (pypi-uri "msgpack" version))
|
||||
(sha256
|
||||
(base32
|
||||
"11pqk5braa6wndpnr1dhg64js82vjgxnm0lzy73rwl831zgijaqs"))))
|
||||
"1hz2dba1nvvn52afg34liijsm7kn65cmn06dl0xbwld6bb4cis0f"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils)
|
||||
(guix build python-build-system)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(let ((cwd (getcwd)))
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append cwd "/build/"
|
||||
(find (cut string-prefix? "lib" <>)
|
||||
(scandir (string-append cwd "/build")))
|
||||
":"
|
||||
(getenv "PYTHONPATH")))
|
||||
(invoke "pytest" "-v" "test")))))))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(synopsis "MessagePack (de)serializer")
|
||||
(description "MessagePack is a fast, compact binary serialization format,
|
||||
suitable for similar data to JSON. This package provides CPython bindings for
|
||||
reading and writing MessagePack data.")
|
||||
(home-page "https://pypi.python.org/pypi/msgpack-python/")
|
||||
(home-page "https://pypi.python.org/pypi/msgpack/")
|
||||
(license license:asl2.0)))
|
||||
|
||||
;; This msgpack library's name changed from "python-msgpack" to "msgpack" with
|
||||
;; release 0.5. Some packages like borg still call it by the old name for now.
|
||||
;; <https://bugs.gnu.org/30662>
|
||||
(define-public python-msgpack-transitional
|
||||
(package
|
||||
(inherit python-msgpack)
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments python-msgpack)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'configure-transitional
|
||||
(lambda _
|
||||
;; Keep using the old name.
|
||||
(substitute* "setup.py"
|
||||
(("TRANSITIONAL = False")
|
||||
"TRANSITIONAL = 1"))
|
||||
#t))))))))
|
||||
|
||||
(define-public python2-msgpack
|
||||
(package-with-python2 python-msgpack))
|
||||
|
||||
|
@ -5879,14 +5916,14 @@ and MAC network addresses.")
|
|||
(define-public python-wrapt
|
||||
(package
|
||||
(name "python-wrapt")
|
||||
(version "1.10.8")
|
||||
(version "1.10.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "wrapt" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wrcm1mydvfivbkzz0h81ygzdchnscshi6xvy5n3r21r9s0px8af"))))
|
||||
"1ip3dwib39xhp79kblskgvz3fjzcwxgx3fs3ahdixhpjg7a61mfl"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; Tests are not included in the tarball, they are only available in the
|
||||
|
@ -8072,21 +8109,22 @@ anymore.")
|
|||
(define-public python2-pathlib2
|
||||
(package
|
||||
(name "python2-pathlib2")
|
||||
(version "2.1.0")
|
||||
(version "2.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pathlib2" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0p050msg5c8d0kadv702jnfshaxrb0il765cpkgnhn6mq5hakcyy"))))
|
||||
"1cx5gs2v9j2vnzmcrbq5l8fq2mwrr1h6pyf1sjdji2w1bavm09fk"))))
|
||||
(build-system python-build-system)
|
||||
;; We only need the the Python 2 variant, since for Python 3 our minimum
|
||||
;; version is 3.4 which already includes this package as part of the
|
||||
;; standard library.
|
||||
(arguments
|
||||
`(#:python ,python-2))
|
||||
(native-inputs
|
||||
`(("python2-six" ,python2-six)))
|
||||
(propagated-inputs
|
||||
`(("python2-scandir" ,python2-scandir)
|
||||
("python2-six" ,python2-six)))
|
||||
(home-page "https://pypi.python.org/pypi/pathlib2/")
|
||||
(synopsis "Object-oriented file system paths - backport of standard
|
||||
pathlib module")
|
||||
|
@ -11093,14 +11131,19 @@ It supports both normal and Unicode strings.")
|
|||
(define-public python-scandir
|
||||
(package
|
||||
(name "python-scandir")
|
||||
(version "1.4")
|
||||
(version "1.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "scandir" version))
|
||||
(sha256
|
||||
(base32 "0yjrgp0mxp3d8bjkq2m1ac2ys8n76wykksvgyjrnil9gr3fx7a5d"))))
|
||||
(base32 "0gbnhjzg42rj87ljv9kb648rfxph69ly3c8r9841dxy4d7l5pmdj"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "python" "test/run_tests.py"))))))
|
||||
(home-page "https://github.com/benhoyt/scandir")
|
||||
(synopsis "Directory iteration function")
|
||||
(description
|
||||
|
@ -11108,7 +11151,9 @@ It supports both normal and Unicode strings.")
|
|||
returning a list of bare filenames, it yields DirEntry objects that include
|
||||
file type and stat information along with the name. Using scandir() increases
|
||||
the speed of os.walk() by 2-20 times (depending on the platform and file
|
||||
system) by avoiding unnecessary calls to os.stat() in most cases.")
|
||||
system) by avoiding unnecessary calls to os.stat() in most cases.
|
||||
|
||||
This package is part of the Python standard library since version 3.5.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python2-scandir
|
||||
|
@ -11495,6 +11540,48 @@ applying JSON Patches according to RFC 6902.")
|
|||
(define-public python2-jsonpatch-0.4
|
||||
(package-with-python2 python-jsonpatch-0.4))
|
||||
|
||||
(define-public python-rfc3986
|
||||
(package
|
||||
(name "python-rfc3986")
|
||||
(version "1.1.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "rfc3986" version))
|
||||
(sha256
|
||||
(base32
|
||||
"06wlmysw83f75ff84zr1yr6n0shvc2xn1n1sb4iwzqap9hf5fn44"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils)
|
||||
(guix build python-build-system)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(let ((cwd (getcwd)))
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append cwd "/build/"
|
||||
(find (cut string-prefix? "lib" <>)
|
||||
(scandir (string-append cwd "/build")))
|
||||
":"
|
||||
(getenv "PYTHONPATH")))
|
||||
(invoke "pytest" "-v")))))))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(home-page "https://rfc3986.readthedocs.io/")
|
||||
(synopsis "Parse and validate URI references")
|
||||
(description
|
||||
"@code{rfc3986} is a Python implementation of RFC@tie{}3986 including
|
||||
validation and authority parsing. This module also supports RFC@tie{}6874
|
||||
which adds support for zone identifiers to IPv6 addresses.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python2-rfc3986
|
||||
(package-with-python2 python-rfc3986))
|
||||
|
||||
(define-public python-rfc3987
|
||||
(package
|
||||
(name "python-rfc3987")
|
||||
|
@ -12841,3 +12928,25 @@ interpreter. bpython's main features are
|
|||
(("^(\\s+'bpython)(-\\S+)?(\\s+=.*',?)\\s*?$" _ name sub rest)
|
||||
(string-append name "2" (or sub "") rest "\n")))
|
||||
#t))))))))
|
||||
|
||||
(define-public python-pyinotify
|
||||
(package
|
||||
(name "python-pyinotify")
|
||||
(version "0.9.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pyinotify" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1x3i9wmzw33fpkis203alygfnrkcmq9w1aydcm887jh6frfqm6cw"))))
|
||||
(build-system python-build-system)
|
||||
(arguments `(#:tests? #f)) ;no tests
|
||||
(home-page "https://github.com/seb-m/pyinotify")
|
||||
(synopsis "Python library for monitoring inotify events")
|
||||
(description
|
||||
"@code{pyinotify} provides a Python interface for monitoring
|
||||
filesystem events on Linux.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python2-pyinotify
|
||||
(package-with-python2 python-pyinotify))
|
||||
|
|
|
@ -338,14 +338,14 @@ many event types, including timers, signals, and the classic file descriptor eve
|
|||
(define-public ldb
|
||||
(package
|
||||
(name "ldb")
|
||||
(version "1.3.1")
|
||||
(version "1.3.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.samba.org/ftp/ldb/ldb-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1lnbcazm1kqqcc7syy0xbq9srhbylkqhpsmsbsm4c3xfangjr7xi"))))
|
||||
"1avn4fl393kc80krbc47phbp0argdkys62ycs8vm934a6nvz0gnf"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017 ng0 <ng0@n0.is>
|
||||
|
@ -408,7 +408,7 @@ TCP, not the SSH protocol.")
|
|||
(define-public dropbear
|
||||
(package
|
||||
(name "dropbear")
|
||||
(version "2017.75")
|
||||
(version "2018.76")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -416,9 +416,9 @@ TCP, not the SSH protocol.")
|
|||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1309cm2aw62n9m3h38prvgsqr8bj85hfasgnvwkd42cp3k5ivg3c"))))
|
||||
"0rgavbzw7jrs5wslxm0dnwx2m409yzxd9hazd92r7kx8xikr3yzj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments `(#:tests? #f)) ; There is no "make check" or anything similar
|
||||
(arguments `(#:tests? #f)) ; there is no "make check" or anything similar
|
||||
(inputs `(("zlib" ,zlib)))
|
||||
(synopsis "Small SSH server and client")
|
||||
(description "Dropbear is a relatively small SSH server and
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
;;; Copyright © 2015 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
|
||||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
|
||||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
|
@ -83,32 +83,25 @@ to DOS format and vice versa.")
|
|||
(define-public recode
|
||||
(package
|
||||
(name "recode")
|
||||
;; Last beta release (3.7-beta2) is from 2008; last commit from Feb 2014.
|
||||
;; So we use that commit instead.
|
||||
(version "3.7.0.201402")
|
||||
(version "3.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pinard/Recode.git")
|
||||
(commit "2d7092a9999194fc0e9449717a8048c8d8e26c18")))
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/rrthomas/recode/releases/"
|
||||
"download/v" version "/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1wssv8z6g3ryrw33sksz4rjhlnhgvvdqszw1ggl4rcwks34n86zm"))
|
||||
(file-name (string-append name "-" version "-checkout"))))
|
||||
(base32
|
||||
"0r4yhf7i7zp2nl2apyzz7r3i2in12n385hmr8zcfr18ly0ly530q"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
`(begin
|
||||
(delete-file "tests/Recode.c")
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("python" ,python-2)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
(substitute* "tests/setup.py"
|
||||
(("([[:space:]]*)include_dirs=.*" all space)
|
||||
(string-append all space "library_dirs=['../src/.libs'],\n")))
|
||||
;; The test extension 'Recode.so' lacks RUNPATH for 'librecode.so'.
|
||||
(setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/src/.libs"))
|
||||
#t)))))
|
||||
(home-page "https://github.com/pinard/Recode")
|
||||
(native-inputs
|
||||
`(("python" ,python-2)
|
||||
("python2-cython" ,python2-cython)))
|
||||
(home-page "https://github.com/rrthomas/recode")
|
||||
(synopsis "Text encoding converter")
|
||||
(description "The Recode library converts files between character sets and
|
||||
usages. It recognises or produces over 200 different character sets (or about
|
||||
|
@ -116,27 +109,23 @@ usages. It recognises or produces over 200 different character sets (or about
|
|||
any pair. When exact transliteration are not possible, it gets rid of
|
||||
offending characters or falls back on approximations. The recode program is a
|
||||
handy front-end to the library.")
|
||||
(license license:gpl2+)))
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public enca
|
||||
(package
|
||||
(name "enca")
|
||||
(version "1.16")
|
||||
(version "1.19")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/nijel/enca/archive/" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1xik00x0yvhswsw2isnclabhv536xk1s42cf5z54gfbpbhc7ni8l"))
|
||||
(base32 "099z526i7qgij7q1w3lvhl88iv3jc3nqxca2i09h6s08ghyrmzf4"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("recode" ,recode)))
|
||||
|
||||
;; Both 'test-convert-64.sh' and 'test-convert-filter.sh' manipulate a
|
||||
;; 'test.tmp' file, so they have to run in sequence.
|
||||
(arguments '(#:parallel-tests? #f))
|
||||
|
||||
;; enca-1.19 tests fail with recent recode.
|
||||
;(inputs `(("recode" ,recode)))
|
||||
(home-page "https://github.com/nijel/enca")
|
||||
(synopsis "Text encoding detection tool")
|
||||
(description "Enca (Extremely Naive Charset Analyser) consists of libenca,
|
||||
|
|
|
@ -264,18 +264,16 @@ ISO 8601 dates, time and duration.")
|
|||
(define-public python-monotonic
|
||||
(package
|
||||
(name "python-monotonic")
|
||||
(version "0.3")
|
||||
(version "1.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/m/monotonic/monotonic-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (pypi-uri "monotonic" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0yz0bcbwx8r2c01czzfpbrxddynxyk9k95jj8h6sgcb7xmfvl998"))))
|
||||
"110zd5ld3nchdjds34r95lzs1csmmv81pli2px8l1k8qnpai29m0"))))
|
||||
(build-system python-build-system)
|
||||
(arguments '(#:tests? #f)) ;no tests
|
||||
(home-page "https://github.com/atdt/monotonic")
|
||||
(synopsis "Implementation of time.monotonic() for Python 2 & < 3.3")
|
||||
(description
|
||||
|
|
|
@ -125,7 +125,7 @@ in intelligent transportation networks.")
|
|||
(define-public p11-kit
|
||||
(package
|
||||
(name "p11-kit")
|
||||
(version "0.23.9")
|
||||
(version "0.23.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -133,7 +133,7 @@ in intelligent transportation networks.")
|
|||
"download/" version "/p11-kit-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qyvnkb5hfi94wv3bn67y20hcbbvynvjwxpk7k9sh1si6ff69hg1"))))
|
||||
"0hxfwnyb5yllvlsh0cj6favcph36gm94b6df7zhl7xay48zjl8gr"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -797,7 +797,15 @@ then ported to the GNU / Linux environment.")
|
|||
version "-apache.tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vsmgxnw7dpvma51896n63yaf9sncmf885ax2jfcg89ssin6vdmf"))))
|
||||
"1vsmgxnw7dpvma51896n63yaf9sncmf885ax2jfcg89ssin6vdmf"))
|
||||
;; An RFC 5114 constant was accidentally renamed in version 2.7.0.
|
||||
;; See https://github.com/ARMmbed/mbedtls/pull/1362.
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(substitute* "include/mbedtls/dhm.h"
|
||||
(("#define MBEDTLS_DHM_RFC5114_MODP_P")
|
||||
"#define MBEDTLS_DHM_RFC5114_MODP_2048_P"))))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
|
||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2017 André <eu@euandre.org>
|
||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at>
|
||||
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;;
|
||||
|
@ -52,6 +52,7 @@
|
|||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages cook)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages docbook)
|
||||
|
@ -472,7 +473,7 @@ to lock down your entire repository.")
|
|||
(define-public git-remote-gcrypt
|
||||
(package
|
||||
(name "git-remote-gcrypt")
|
||||
(version "1.0.1")
|
||||
(version "1.0.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -481,7 +482,7 @@ to lock down your entire repository.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"0znrx77vpm4a8l7yiybsxk5vrawijqqfxmp1p2yhaaw8cbgrj7az"))))
|
||||
"0kc6qi5gavziqlwnzpy7v4ah7yw860v3i8pyna6way0cfr0qnpr2"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
|
@ -633,6 +634,107 @@ default) of the repository.")
|
|||
(package-with-python2
|
||||
(strip-python2-variant python-ghp-import)))
|
||||
|
||||
(define-public python-gitdb
|
||||
(package
|
||||
(name "python-gitdb")
|
||||
(version "2.0.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "gitdb2" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02azg62mr99b7cllyjrly77np3vw32y8nrxpa2xjapiyaga2j3mn"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(add-before 'check 'create-test-repository
|
||||
(lambda _
|
||||
(mkdir "/tmp/testrepo")
|
||||
;; Some tests require a git repository, so create one.
|
||||
(with-directory-excursion "/tmp/testrepo"
|
||||
(do ((filecount 1 (1+ filecount)))
|
||||
((> filecount 1000))
|
||||
(call-with-output-file (string-append
|
||||
"file" (number->string filecount))
|
||||
(lambda (port)
|
||||
(format port "~a" filecount))))
|
||||
(and
|
||||
(invoke "git" "init")
|
||||
(invoke "git" "config" "user.name" "Total Git")
|
||||
(invoke "git" "config" "user.email" "git@localhost")
|
||||
(invoke "git" "add" "-A")
|
||||
(invoke "git" "commit" "-q" "-m" "dummy commit")))
|
||||
|
||||
;; The repository checkout must be a "bare" clone.
|
||||
(invoke "git" "clone" "--bare" "/tmp/testrepo"
|
||||
"/tmp/testrepo.git")))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "GITDB_TEST_GIT_REPO_BASE" "/tmp/testrepo.git")
|
||||
;; Skip tests that must be run from the gitdb repository.
|
||||
(setenv "TRAVIS" "1")
|
||||
(invoke "nosetests" "-v"))))))
|
||||
(propagated-inputs
|
||||
`(("python-smmap2" ,python-smmap2)))
|
||||
(native-inputs
|
||||
`(("git" ,git)
|
||||
("python-nose" ,python-nose)))
|
||||
(home-page "https://github.com/gitpython-developers/gitdb")
|
||||
(synopsis "Python implementation of the Git object database")
|
||||
(description
|
||||
"GitDB allows you to access @dfn{bare} Git repositories for reading and
|
||||
writing. It aims at allowing full access to loose objects as well as packs
|
||||
with performance and scalability in mind. It operates exclusively on streams,
|
||||
allowing to handle large objects with a small memory footprint.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python2-gitdb
|
||||
(package-with-python2 python-gitdb))
|
||||
|
||||
(define-public python-gitpython
|
||||
(package
|
||||
(name "python-gitpython")
|
||||
(version "2.1.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "GitPython" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1sbn018mn3y2r58ix5z12na1s02ccprhckb88yq3bdddvqjvqqdd"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;XXX: Tests can only be run within the GitPython repository.
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'embed-git-reference
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "git/cmd.py"
|
||||
(("git_exec_name = \"git\"")
|
||||
(string-append "git_exec_name = \""
|
||||
(assoc-ref inputs "git")
|
||||
"/bin/git\"")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("git" ,git)))
|
||||
(propagated-inputs
|
||||
`(("python-gitdb" ,python-gitdb)))
|
||||
(native-inputs
|
||||
`(("python-ddt" ,python-ddt)
|
||||
("python-nose" ,python-nose)))
|
||||
(home-page "https://github.com/gitpython-developers/GitPython")
|
||||
(synopsis "Python library for interacting with Git repositories")
|
||||
(description
|
||||
"GitPython is a python library used to interact with Git repositories,
|
||||
high-level like git-porcelain, or low-level like git-plumbing.
|
||||
|
||||
It provides abstractions of Git objects for easy access of repository data,
|
||||
and additionally allows you to access the Git repository more directly using
|
||||
either a pure Python implementation, or the faster, but more resource intensive
|
||||
@command{git} command implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python2-gitpython
|
||||
(package-with-python2 python-gitpython))
|
||||
|
||||
(define-public shflags
|
||||
(package
|
||||
(name "shflags")
|
||||
|
@ -1389,7 +1491,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).")
|
|||
(define-public tig
|
||||
(package
|
||||
(name "tig")
|
||||
(version "2.3.0")
|
||||
(version "2.3.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -1397,7 +1499,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).")
|
|||
version "/tig-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vf02snz8qiiqiyqss1z63rzzmwbrc9agcgh21jdq13rja306vv8"))))
|
||||
"1skbhhj1narsnsff1azdylcy6xghxb18mzqysmipcyyvlv2i17fk"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("asciidoc" ,asciidoc)
|
||||
|
@ -1410,7 +1512,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).")
|
|||
(modify-phases %standard-phases
|
||||
(add-after 'install 'install-doc
|
||||
(lambda _
|
||||
(zero? (system* "make" "install-doc")))))
|
||||
(invoke "make" "install-doc"))))
|
||||
#:tests? #f)) ; tests require access to /dev/tty
|
||||
;; #:test-target "test"))
|
||||
(home-page "https://jonas.github.io/tig/")
|
||||
|
@ -1768,7 +1870,7 @@ network protocols, and core version control algorithms.")
|
|||
(define-public gource
|
||||
(package
|
||||
(name "gource")
|
||||
(version "0.47")
|
||||
(version "0.48")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -1776,7 +1878,7 @@ network protocols, and core version control algorithms.")
|
|||
"/gource-" version "/gource-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1llqwdnfa1pff8bxk27qsqff1fcg0a9kfdib0rn7p28vl21n1cgj"))))
|
||||
"04qxcm05qiyr9rg2kv6abfy7kkzqr8ziw4iyp1d14lniv93m61dp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
|
|
@ -53,6 +53,7 @@
|
|||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system perl)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system waf)
|
||||
#:use-module (gnu packages)
|
||||
|
@ -1157,7 +1158,7 @@ access to mpv's powerful playback capabilities.")
|
|||
(define-public youtube-dl
|
||||
(package
|
||||
(name "youtube-dl")
|
||||
(version "2018.02.11")
|
||||
(version "2018.02.26")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://yt-dl.org/downloads/"
|
||||
|
@ -1165,7 +1166,7 @@ access to mpv's powerful playback capabilities.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zg34spkfiwjq55jrk417ifdcyvrj80gdbc338rdpfw2s6ibggv8"))))
|
||||
"0ijjnx8qjxk07v5dbz3n5z3cvz8dlkmh7jkyvgng7inl74c29zq5"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; The problem here is that the directory for the man page and completion
|
||||
|
@ -1311,6 +1312,59 @@ audio, images) from the Web. It can use either mpv or vlc for playback.")
|
|||
(home-page "https://you-get.org/")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public youtube-viewer
|
||||
(package
|
||||
(name "youtube-viewer")
|
||||
(version "3.3.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/trizen/youtube-viewer/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1j572his6qmazlmyrbnfq62s9bqml875ay7wy26byy9hfc7m0vgk"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-module-build" ,perl-module-build)))
|
||||
;; FIXME: Add optional dependencies once available:
|
||||
;; perl-lwp-useragent-cached and perl-term-readline-gnu
|
||||
(inputs
|
||||
`(("perl-data-dump" ,perl-data-dump)
|
||||
("perl-file-sharedir" ,perl-file-sharedir)
|
||||
("perl-gtk2" ,perl-gtk2)
|
||||
("perl-json" ,perl-json)
|
||||
("perl-libwww" ,perl-libwww)
|
||||
("perl-lwp-protocol-https" ,perl-lwp-protocol-https)
|
||||
("perl-mozilla-ca" ,perl-mozilla-ca)
|
||||
("perl-unicode-linebreak" ,perl-unicode-linebreak)))
|
||||
(arguments
|
||||
`(#:modules ((guix build perl-build-system)
|
||||
(guix build utils)
|
||||
(srfi srfi-26))
|
||||
#:module-build-flags '("--gtk")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((bin-dir (string-append (assoc-ref outputs "out")
|
||||
"/bin/"))
|
||||
(perl-path (getenv "PERL5LIB")))
|
||||
(for-each (cut wrap-program <>
|
||||
`("PERL5LIB" ":" prefix (,perl-path)))
|
||||
(find-files bin-dir))
|
||||
#t))))))
|
||||
(synopsis
|
||||
"Lightweight application for searching and streaming videos from YouTube")
|
||||
(description
|
||||
"Youtube-viewer searches and plays YouTube videos in a native player.
|
||||
It comes with various search options; it can search for videos, playlists
|
||||
and/or channels. The videos are streamed directly in a selected video player
|
||||
at the best resolution (customizable) and with closed-captions (if available).
|
||||
Both command-line and GTK2 interface are available.")
|
||||
(home-page "https://github.com/trizen/youtube-viewer")
|
||||
(license license:perl-license)))
|
||||
|
||||
(define-public libbluray
|
||||
(package
|
||||
(name "libbluray")
|
||||
|
@ -2475,7 +2529,7 @@ RTSP or SIP clients and servers.")
|
|||
(define-public libdvbpsi
|
||||
(package
|
||||
(name "libdvbpsi")
|
||||
(version "1.3.1")
|
||||
(version "1.3.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -2483,7 +2537,7 @@ RTSP or SIP clients and servers.")
|
|||
version "/libdvbpsi-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0824r08kaspbrrg2dd5d46s475zb7j59brqkm2y6x3mdsnpng0yn"))))
|
||||
"1zn5hfv4qbahmydbwh59a3b480s3m5ss27r6ml35gqdip7r3jkmc"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://www.videolan.org/developers/libdvbpsi.html")
|
||||
(synopsis "Library for decoding and generation of MPEG TS and DVB PSI
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
|
||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -272,14 +272,14 @@ traversing network address translators (NATs) and firewalls.")
|
|||
(define-public tinc
|
||||
(package
|
||||
(name "tinc")
|
||||
(version "1.0.28")
|
||||
(version "1.0.33")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://tinc-vpn.org/packages/"
|
||||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0i5kx3hza359nclyhb60kxlzqyx0phmg175350hww28g6scjcl0b"))))
|
||||
"1x0hpfz13vn4pl6dcpnls6xq3rfcbdsg90awcfn53ijb8k35svvz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
|
|
|
@ -60,6 +60,7 @@
|
|||
#:use-module (guix build-system ant)
|
||||
#:use-module (guix build-system scons)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages adns)
|
||||
#:use-module (gnu packages apr)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages cran)
|
||||
|
@ -83,8 +84,10 @@
|
|||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages javascript)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages imagemagick)
|
||||
#:use-module (gnu packages libevent)
|
||||
#:use-module (gnu packages libidn)
|
||||
#:use-module (gnu packages libunistring)
|
||||
#:use-module (gnu packages lisp)
|
||||
|
@ -796,7 +799,7 @@ for efficient socket-like bidirectional reliable communication channels.")
|
|||
(define-public libpsl
|
||||
(package
|
||||
(name "libpsl")
|
||||
(version "0.19.1")
|
||||
(version "0.20.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/rockdaboot/libpsl/"
|
||||
|
@ -804,7 +807,7 @@ for efficient socket-like bidirectional reliable communication channels.")
|
|||
"/libpsl-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ydwi9m39qv6k7zagqx2kzxzf59ipxj9r0c71xmwngdx3fslclbk"))))
|
||||
"0rsjm6mb71nnj6ikr2dq5qmny314v3j7m07zz1i7m6v8hxxm98i7"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -2848,7 +2851,7 @@ environment from an HTTP::Request.")
|
|||
(define-public perl-http-server-simple
|
||||
(package
|
||||
(name "perl-http-server-simple")
|
||||
(version "0.51")
|
||||
(version "0.52")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2856,7 +2859,7 @@ environment from an HTTP::Request.")
|
|||
"HTTP-Server-Simple-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1yvd2g57z2kq00q5i3zzfi15k98qgbif3vghjsda6v612agmrp5r"))))
|
||||
"0k6bg7k6mjixfzxdkkdrhqvaqmdhjszx0zsk8g0bimiby6j9z4yq"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-cgi" ,perl-cgi)))
|
||||
|
@ -3208,7 +3211,7 @@ or to multiple server ports.")
|
|||
(define-public perl-net-smtp-ssl
|
||||
(package
|
||||
(name "perl-net-smtp-ssl")
|
||||
(version "1.03")
|
||||
(version "1.04")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -3216,7 +3219,7 @@ or to multiple server ports.")
|
|||
"Net-SMTP-SSL-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"05y94mb1vdw32mvwb0cp2h4ggh32f8j8nwwfjb8kjwxvfkfhyp9h"))))
|
||||
"001a6dcfahf7kkyirqkc8jd4fh4fkal7n7vm9c4dblqrvmdc8abv"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-io-socket-ssl" ,perl-io-socket-ssl)))
|
||||
|
@ -3780,13 +3783,13 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
|
|||
(define-public r-httpuv
|
||||
(package
|
||||
(name "r-httpuv")
|
||||
(version "1.3.5")
|
||||
(version "1.3.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "httpuv" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1sg4f223zfyd265b28rlhsn3b6mqflcpnmya98cjmjncmy9vjdj3"))))
|
||||
"1nzbcw1dm4l5qc9156kz95rdb8bwnpdr57wfc87w8arv7m0i40bc"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs `(("r-rcpp" ,r-rcpp)))
|
||||
(home-page "https://github.com/rstudio/httpuv")
|
||||
|
@ -6346,3 +6349,84 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.")
|
|||
;; expat for the code, CC-BY 4.0 for the artwork
|
||||
(license (list l:expat
|
||||
l:cc-by4.0))))
|
||||
|
||||
(define-public nghttp2
|
||||
(package
|
||||
(name "nghttp2")
|
||||
(version "1.30.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/nghttp2/nghttp2/"
|
||||
"releases/download/v" version "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1b2j7il0wp8hi4jl3cah7fkshmg29cchdski9cw74gx5496gp6h8"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs (list "out"
|
||||
"lib")) ; only libnghttp2
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
|
||||
;; Required by tests.
|
||||
("cunit" ,cunit)
|
||||
("tzdata" ,tzdata)))
|
||||
(inputs
|
||||
;; Required to build the tools (i.e. without ‘--enable-lib-only’).
|
||||
`(("c-ares" ,c-ares)
|
||||
("jansson" ,jansson) ; for HPACK tools
|
||||
("jemalloc" ,jemalloc) ; fight nghttpd{,x} heap fragmentation
|
||||
("libev" ,libev)
|
||||
("libxml2" ,libxml2) ; for ‘nghttp -a’
|
||||
("openssl" ,openssl)))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--libdir=" (assoc-ref %outputs "lib") "/lib")
|
||||
"--enable-app" ; build all the tools
|
||||
"--enable-hpack-tools" ; ...all the tools
|
||||
"--disable-examples"
|
||||
"--disable-static") ; don't bother building .a files
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'break-circular-reference
|
||||
;; libnghttp2.pc by default retains a reference to the ‘out’ output,
|
||||
;; which is not allowed. Break this cycle. While we could install
|
||||
;; only the library to ‘out’ and move everything else to a separate
|
||||
;; output, this would inconvenience the majority of (human) users.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "lib/libnghttp2.pc.in"
|
||||
(("@prefix@")
|
||||
(assoc-ref outputs "lib")))
|
||||
#t))
|
||||
(add-before 'check 'set-timezone-directory
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "TZDIR" (string-append (assoc-ref inputs "tzdata")
|
||||
"/share/zoneinfo"))
|
||||
#t)))))
|
||||
(home-page "https://nghttp2.org/")
|
||||
(synopsis "HTTP/2 protocol client, proxy, server, and library")
|
||||
(description
|
||||
"nghttp2 implements the Hypertext Transfer Protocol, version
|
||||
2 (@dfn{HTTP/2}).
|
||||
|
||||
A reusable C library provides the HTTP/2 framing layer, with several tools built
|
||||
on top of it:
|
||||
|
||||
@itemize
|
||||
@item @command{nghttp}, a command-line HTTP/2 client. It exposes many advanced
|
||||
and low-level aspects of the protocol and is useful for debugging.
|
||||
@item @command{nghttpd}, a fast, multi-threaded HTTP/2 static web server that
|
||||
serves files from a local directory.
|
||||
@item @command{nghttpx}, a fast, multi-threaded HTTP/2 reverse proxy that can be
|
||||
deployed in front of existing web servers that don't support HTTP/2.
|
||||
Both @command{nghttpd} and @command{nghttpx} can fall back to HTTP/1.1 for
|
||||
backwards compatibilty with clients that don't speak HTTP/2.
|
||||
@item @command{h2load} for benchmarking (only!) your own HTTP/2 servers.
|
||||
@item HTTP/2 uses a header compression method called @dfn{HPACK}.
|
||||
nghttp2 provides a HPACK encoder and decoder as part of its public API.
|
||||
@item @command{deflatehd} converts JSON data or HTTP/1-style header fields to
|
||||
compressed JSON header blocks.
|
||||
@item @command{inflatehd} converts such compressed headers back to JSON pairs.
|
||||
@end itemize\n")
|
||||
(license l:expat)))
|
||||
|
|
|
@ -406,7 +406,7 @@ tracking.")
|
|||
(inputs
|
||||
`(("libx11" ,libx11)
|
||||
("xcb-util" ,xcb-util)))
|
||||
(home-page "http://www.freedesktop.org/wiki/Software/startup-notification/")
|
||||
(home-page "https://www.freedesktop.org/wiki/Software/startup-notification/")
|
||||
(synopsis "Application startup notification and feedback library")
|
||||
(description
|
||||
"Startup-notification contains a reference implementation of the startup
|
||||
|
|
|
@ -912,7 +912,7 @@ sending standard messages over D-Bus using the
|
|||
(define-public xfburn
|
||||
(package
|
||||
(name "xfburn")
|
||||
(version "0.5.4")
|
||||
(version "0.5.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://archive.xfce.org/src/apps/xfburn/"
|
||||
|
@ -920,7 +920,7 @@ sending standard messages over D-Bus using the
|
|||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xn1kwxa3dl5r9bfj90a5322ynkwbn6k5v9b3a3pbr3a23zm604s"))))
|
||||
"1qdd8prnsfilsprg36p95cz3z50ffr9kgvka4d5pm260lsl3l5xa"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
|
|
|
@ -425,7 +425,7 @@ XML parser and the high performance DOM implementation.")
|
|||
(define-public perl-xml-libxslt
|
||||
(package
|
||||
(name "perl-xml-libxslt")
|
||||
(version "1.95")
|
||||
(version "1.96")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -433,7 +433,7 @@ XML parser and the high performance DOM implementation.")
|
|||
"XML-LibXSLT-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0dggycql18kfxzkb1kw3yc7gslxlrrgyyn2r2ygsylycb89j3jpi"))))
|
||||
"0wyl8klgr65j8y8fzgwz9jlvfjwvxazna8j3dg9gksd2v973fpia"))))
|
||||
(build-system perl-build-system)
|
||||
(inputs
|
||||
`(("libxslt" ,libxslt)))
|
||||
|
@ -538,7 +538,7 @@ building Perl SAX2 XML parsers, filters, and drivers.")
|
|||
(define-public perl-xml-sax-base
|
||||
(package
|
||||
(name "perl-xml-sax-base")
|
||||
(version "1.08")
|
||||
(version "1.09")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -546,7 +546,7 @@ building Perl SAX2 XML parsers, filters, and drivers.")
|
|||
"XML-SAX-Base-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"17i161rq1ngjlk0c8vdkrkkc56y1pf51k1g54y28py0micqp0qk6"))))
|
||||
"1l1ai9g1z11ja7mvnfl5mj346r13jyckbg9qlw6c2izglidkbjv6"))))
|
||||
(build-system perl-build-system)
|
||||
(home-page "http://search.cpan.org/dist/XML-SAX-Base")
|
||||
(synopsis "Base class for SAX Drivers and Filters")
|
||||
|
@ -1109,7 +1109,7 @@ XSLT and EXSLT.")
|
|||
(define-public html-xml-utils
|
||||
(package
|
||||
(name "html-xml-utils")
|
||||
(version "7.5")
|
||||
(version "7.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1118,7 +1118,7 @@ XSLT and EXSLT.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cbmqa9c4bc4ikk7vmgd65ixh2pl9mr336c4his3m8l7rgsjnh8n"))))
|
||||
"0l97ps089byy62838wf2jwvvc465iw29z9r5kwmwcq7f3bn11y3m"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://www.w3.org/Tools/HTML-XML-utils/")
|
||||
(synopsis "Command line utilities to manipulate HTML and XML files")
|
||||
|
|
|
@ -4771,14 +4771,14 @@ common definitions and porting layer.")
|
|||
(define-public xorgproto
|
||||
(package
|
||||
(name "xorgproto")
|
||||
(version "2018.3")
|
||||
(version "2018.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://xorg/individual/proto/"
|
||||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rdhw28n1gp7yylwia41jhih66gfx75nxgrmi2ggglzvzqhwr0x8"))))
|
||||
"180mqkp70i44rkmj430pmn9idssvffrgv4y5h19fm698a7h8bs7y"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
;; To get util-macros in (almost?) all package inputs.
|
||||
|
@ -5813,7 +5813,7 @@ programs that cannot use the window system directly.")
|
|||
(define-public perl-x11-xcb
|
||||
(package
|
||||
(name "perl-x11-xcb")
|
||||
(version "0.16")
|
||||
(version "0.17")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -5821,7 +5821,7 @@ programs that cannot use the window system directly.")
|
|||
"X11-XCB-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"14mnvr1001py2z1n43l18yaw0plwvjg5pcsyc7k81sa0amw8ahzw"))))
|
||||
"12qyf98s5hbybmh0mblpz50c00i68srq73w5rw31m2dhclj8n96q"))))
|
||||
(build-system perl-build-system)
|
||||
(arguments
|
||||
'(;; Disable parallel build to prevent a race condition.
|
||||
|
|
|
@ -0,0 +1,686 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu services cgit)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu services base)
|
||||
#:use-module (gnu services configuration)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:use-module (gnu services web)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu system shadow)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix store)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:export (repository-cgit-configuration
|
||||
cgit-configuration
|
||||
%cgit-configuration-nginx
|
||||
cgit-configuration-nginx-config
|
||||
opaque-cgit-configuration
|
||||
cgit-service-type))
|
||||
|
||||
;;; Commentary:
|
||||
;;;
|
||||
;;; This module provides a service definition for the Cgit a web frontend for
|
||||
;;; Git repositories written in C.
|
||||
;;;
|
||||
;;; Note: fields of <cgit-configuration> and <repository-cgit-configuration>
|
||||
;;; should be specified in the specific order.
|
||||
;;;
|
||||
;;; Code:
|
||||
|
||||
(define %cgit-configuration-nginx
|
||||
(nginx-server-configuration
|
||||
(root cgit)
|
||||
(locations
|
||||
(list
|
||||
(nginx-location-configuration
|
||||
(uri "@cgit")
|
||||
(body '("fastcgi_param SCRIPT_FILENAME $document_root/lib/cgit/cgit.cgi;"
|
||||
"fastcgi_param PATH_INFO $uri;"
|
||||
"fastcgi_param QUERY_STRING $args;"
|
||||
"fastcgi_param HTTP_HOST $server_name;"
|
||||
"fastcgi_pass 127.0.0.1:9000;")))))
|
||||
(try-files (list "$uri" "@cgit"))
|
||||
(listen '("80"))
|
||||
(ssl-certificate #f)
|
||||
(ssl-certificate-key #f)))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Serialize <cgit-configuration>
|
||||
;;;
|
||||
|
||||
(define (uglify-field-name field-name)
|
||||
(let ((str (symbol->string field-name)))
|
||||
(string-join (string-split (string-delete #\? str) #\-) "-")))
|
||||
|
||||
(define (serialize-field field-name val)
|
||||
(format #t "~a=~a\n" (uglify-field-name field-name) val))
|
||||
|
||||
(define (serialize-string field-name val)
|
||||
(if (string=? val "") "" (serialize-field field-name val)))
|
||||
|
||||
(define (serialize-boolean field-name val)
|
||||
(serialize-field field-name (if val 1 0)))
|
||||
|
||||
(define (serialize-list field-name val)
|
||||
(if (null? val) "" (serialize-field field-name (string-join val))))
|
||||
|
||||
(define robots-list? list?)
|
||||
|
||||
(define (serialize-robots-list field-name val)
|
||||
(if (null? val) "" (serialize-field field-name (string-join val ", "))))
|
||||
|
||||
(define (integer? val)
|
||||
(exact-integer? val))
|
||||
|
||||
(define (serialize-integer field-name val)
|
||||
(serialize-field field-name val))
|
||||
|
||||
(define (serialize-repository-cgit-configuration x)
|
||||
(serialize-configuration x repository-cgit-configuration-fields))
|
||||
|
||||
(define (repository-cgit-configuration-list? val)
|
||||
(list? val))
|
||||
|
||||
(define (serialize-repository-cgit-configuration-list field-name val)
|
||||
(for-each serialize-repository-cgit-configuration val))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Serialize <nginx-server-configuration>
|
||||
;;;
|
||||
|
||||
(define (nginx-server-configuration-list? val)
|
||||
(and (list? val) (and-map nginx-server-configuration? val)))
|
||||
|
||||
(define (serialize-nginx-server-configuration-list field-name val)
|
||||
#f)
|
||||
|
||||
|
||||
;;;
|
||||
;;; Serialize <repository-cgit-configuration>
|
||||
;;;
|
||||
|
||||
(define (serialize-repo-field field-name val)
|
||||
(format #t "repo.~a=~a\n" (uglify-field-name field-name) val))
|
||||
|
||||
(define (serialize-repo-list field-name val)
|
||||
(if (null? val) "" (serialize-repo-field field-name (string-join val))))
|
||||
|
||||
(define repo-boolean? boolean?)
|
||||
|
||||
(define (serialize-repo-boolean field-name val)
|
||||
(serialize-repo-field field-name (if val 1 0)))
|
||||
|
||||
(define (serialize-repo-integer field-name val)
|
||||
(serialize-repo-field field-name val))
|
||||
|
||||
(define repo-list? list?)
|
||||
|
||||
(define repo-string? string?)
|
||||
|
||||
(define (serialize-repo-string field-name val)
|
||||
(if (string=? val "") "" (serialize-repo-field field-name val)))
|
||||
|
||||
(define module-link-path? list?)
|
||||
|
||||
(define (serialize-module-link-path field-name val)
|
||||
(if (null? val) ""
|
||||
(match val
|
||||
((path text)
|
||||
(format #t "repo.~a.~a=~a\n"
|
||||
(string-drop-right (uglify-field-name 'module-link-path)
|
||||
(string-length "-path"))
|
||||
path text)))))
|
||||
|
||||
(define repository-directory? string?)
|
||||
|
||||
(define (serialize-repository-directory _ val)
|
||||
(if (string=? val "") "" (format #t "scan-path=~a\n" val)))
|
||||
|
||||
(define mimetype-alist? list?)
|
||||
|
||||
(define (serialize-mimetype-alist field-name val)
|
||||
(format #t "# Mimetypes\n~a"
|
||||
(string-join
|
||||
(map (match-lambda
|
||||
((extension mimetype)
|
||||
(format #f "mimetype.~a=~a"
|
||||
(symbol->string extension) mimetype)))
|
||||
val) "\n")))
|
||||
|
||||
(define-configuration repository-cgit-configuration
|
||||
(snapshots
|
||||
(repo-list '())
|
||||
"A mask of snapshot formats for this repo that cgit generates links for,
|
||||
restricted by the global @code{snapshots} setting.")
|
||||
(source-filter
|
||||
(repo-string "")
|
||||
"Override the default @code{source-filter}.")
|
||||
(url
|
||||
(repo-string "")
|
||||
"The relative URL used to access the repository.")
|
||||
(about-filter
|
||||
(repo-string "")
|
||||
"Override the default @code{about-filter}.")
|
||||
(branch-sort
|
||||
(repo-string "")
|
||||
"Flag which, when set to @samp{age}, enables date ordering in the branch
|
||||
ref list, and when set to @samp{name} enables ordering by branch name.")
|
||||
(clone-url
|
||||
(repo-list '())
|
||||
"A list of URLs which can be used to clone repo.")
|
||||
(commit-filter
|
||||
(repo-string "")
|
||||
"Override the default @code{commit-filter}.")
|
||||
(commit-sort
|
||||
(repo-string "")
|
||||
"Flag which, when set to @samp{date}, enables strict date ordering in the
|
||||
commit log, and when set to @samp{topo} enables strict topological ordering.")
|
||||
(defbranch
|
||||
(repo-string "")
|
||||
"The name of the default branch for this repository. If no such branch
|
||||
exists in the repository, the first branch name (when sorted) is used as
|
||||
default instead. By default branch pointed to by HEAD, or \"master\" if there
|
||||
is no suitable HEAD.")
|
||||
(desc
|
||||
(repo-string "")
|
||||
"The value to show as repository description.")
|
||||
(homepage
|
||||
(repo-string "")
|
||||
"The value to show as repository homepage.")
|
||||
(email-filter
|
||||
(repo-string "")
|
||||
"Override the default @code{email-filter}.")
|
||||
(enable-commit-graph?
|
||||
(repo-boolean #f)
|
||||
"A flag which can be used to disable the global setting
|
||||
@code{enable-commit-graph?}.")
|
||||
(enable-log-filecount?
|
||||
(repo-boolean #f)
|
||||
"A flag which can be used to disable the global setting
|
||||
@code{enable-log-filecount?}.")
|
||||
(enable-log-linecount?
|
||||
(repo-boolean #f)
|
||||
"A flag which can be used to disable the global setting
|
||||
@code{enable-log-linecount?}.")
|
||||
(enable-remote-branches?
|
||||
(repo-boolean #f)
|
||||
"Flag which, when set to @code{#t}, will make cgit display remote
|
||||
branches in the summary and refs views.")
|
||||
(enable-subject-links?
|
||||
(repo-boolean #f)
|
||||
"A flag which can be used to override the global setting
|
||||
@code{enable-subject-links?}.")
|
||||
(enable-html-serving?
|
||||
(repo-boolean #f)
|
||||
"A flag which can be used to override the global setting
|
||||
@code{enable-html-serving?}.")
|
||||
(hide?
|
||||
(repo-boolean #f)
|
||||
"Flag which, when set to @code{#t}, hides the repository from the
|
||||
repository index.")
|
||||
(ignore?
|
||||
(repo-boolean #f)
|
||||
"Flag which, when set to @samp{#t}, ignores the repository.")
|
||||
(logo
|
||||
(repo-string "")
|
||||
"URL which specifies the source of an image which will be used as a
|
||||
logo on this repo’s pages.")
|
||||
(logo-link
|
||||
(repo-string "")
|
||||
"URL loaded when clicking on the cgit logo image.")
|
||||
(owner-filter
|
||||
(repo-string "")
|
||||
"Override the default @code{owner-filter}.")
|
||||
(module-link
|
||||
(repo-string "")
|
||||
"Text which will be used as the formatstring for a hyperlink when a
|
||||
submodule is printed in a directory listing. The arguments for the
|
||||
formatstring are the path and SHA1 of the submodule commit.")
|
||||
(module-link-path
|
||||
(module-link-path '())
|
||||
"Text which will be used as the formatstring for a hyperlink when a
|
||||
submodule with the specified subdirectory path is printed in a directory
|
||||
listing.")
|
||||
(max-stats
|
||||
(repo-string "")
|
||||
"Override the default maximum statistics period.")
|
||||
(name
|
||||
(repo-string "")
|
||||
"The value to show as repository name.")
|
||||
(owner
|
||||
(repo-string "")
|
||||
"A value used to identify the owner of the repository.")
|
||||
(path
|
||||
(repo-string "")
|
||||
"An absolute path to the repository directory.")
|
||||
(readme
|
||||
(repo-string "")
|
||||
"A path (relative to repo) which specifies a file to include verbatim
|
||||
as the \"About\" page for this repo.")
|
||||
(section
|
||||
(repo-string "")
|
||||
"The name of the current repository section - all repositories defined
|
||||
after this option will inherit the current section name.")
|
||||
(extra-options
|
||||
(repo-list '())
|
||||
"Extra options will be appended to cgitrc file."))
|
||||
|
||||
;; Generate a <cgit-configuration> record, which may include a list of
|
||||
;; <repository-cgit-configuration>, <nginx-server-configuration>, <package>.
|
||||
(define-configuration cgit-configuration
|
||||
(package
|
||||
(package cgit)
|
||||
"The CGIT package.")
|
||||
(nginx
|
||||
(nginx-server-configuration-list (list %cgit-configuration-nginx))
|
||||
"NGINX configuration.")
|
||||
(about-filter
|
||||
(string "")
|
||||
"Specifies a command which will be invoked to format the content of about
|
||||
pages (both top-level and for each repository).")
|
||||
(agefile
|
||||
(string "")
|
||||
"Specifies a path, relative to each repository path, which can be used to
|
||||
specify the date and time of the youngest commit in the repository.")
|
||||
(auth-filter
|
||||
(string "")
|
||||
"Specifies a command that will be invoked for authenticating repository
|
||||
access.")
|
||||
(branch-sort
|
||||
(string "name")
|
||||
"Flag which, when set to @samp{age}, enables date ordering in the branch
|
||||
ref list, and when set @samp{name} enables ordering by branch name.")
|
||||
(cache-root
|
||||
(string "/var/cache/cgit")
|
||||
"Path used to store the cgit cache entries.")
|
||||
(cache-static-ttl
|
||||
(integer -1)
|
||||
"Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of repository pages accessed with a fixed SHA1.")
|
||||
(cache-dynamic-ttl
|
||||
(integer 5)
|
||||
"Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of repository pages accessed without a fixed SHA1.")
|
||||
(cache-repo-ttl
|
||||
(integer 5)
|
||||
"Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of the repository summary page.")
|
||||
(cache-root-ttl
|
||||
(integer 5)
|
||||
"Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of the repository index page.")
|
||||
(cache-scanrc-ttl
|
||||
(integer 15)
|
||||
"Number which specifies the time-to-live, in minutes, for the result of
|
||||
scanning a path for Git repositories.")
|
||||
(cache-about-ttl
|
||||
(integer 15)
|
||||
"Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of the repository about page.")
|
||||
(cache-snapshot-ttl
|
||||
(integer 5)
|
||||
"Number which specifies the time-to-live, in minutes, for the cached
|
||||
version of snapshots.")
|
||||
(cache-size
|
||||
(integer 0)
|
||||
"The maximum number of entries in the cgit cache. When set to
|
||||
@samp{0}, caching is disabled.")
|
||||
(case-sensitive-sort?
|
||||
(boolean #t)
|
||||
"Sort items in the repo list case sensitively.")
|
||||
(clone-prefix
|
||||
(list '())
|
||||
"List of common prefixes which, when combined with a repository URL,
|
||||
generates valid clone URLs for the repository.")
|
||||
(clone-url
|
||||
(list '())
|
||||
"List of @code{clone-url} templates.")
|
||||
(commit-filter
|
||||
(string "")
|
||||
"Command which will be invoked to format commit messages.")
|
||||
(commit-sort
|
||||
(string "git log")
|
||||
"Flag which, when set to @samp{date}, enables strict date ordering in the
|
||||
commit log, and when set to @samp{topo} enables strict topological
|
||||
ordering.")
|
||||
(css
|
||||
(string "/share/cgit/cgit.css")
|
||||
"URL which specifies the css document to include in all cgit pages.")
|
||||
(email-filter
|
||||
(string "")
|
||||
"Specifies a command which will be invoked to format names and email
|
||||
address of committers, authors, and taggers, as represented in various
|
||||
places throughout the cgit interface.")
|
||||
(embedded?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, will make cgit generate a HTML
|
||||
fragment suitable for embedding in other HTML pages.")
|
||||
(enable-commit-graph?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, will make cgit print an ASCII-art
|
||||
commit history graph to the left of the commit messages in the
|
||||
repository log page.")
|
||||
(enable-filter-overrides?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, allows all filter settings to be
|
||||
overridden in repository-specific cgitrc files.")
|
||||
(enable-follow-links?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, allows users to follow a file in the
|
||||
log view.")
|
||||
(enable-http-clone?
|
||||
(boolean #t)
|
||||
"If set to @samp{#t}, cgit will act as an dumb HTTP endpoint for Git
|
||||
clones.")
|
||||
(enable-index-links?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, will make cgit generate extra links
|
||||
\"summary\", \"commit\", \"tree\" for each repo in the repository index.")
|
||||
(enable-index-owner?
|
||||
(boolean #t)
|
||||
"Flag which, when set to @samp{#t}, will make cgit display the owner of
|
||||
each repo in the repository index.")
|
||||
(enable-log-filecount?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, will make cgit print the number of
|
||||
modified files for each commit on the repository log page.")
|
||||
(enable-log-linecount?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, will make cgit print the number of
|
||||
added and removed lines for each commit on the repository log page.")
|
||||
(enable-remote-branches?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @code{#t}, will make cgit display remote
|
||||
branches in the summary and refs views.")
|
||||
(enable-subject-links?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @code{1}, will make cgit use the subject of
|
||||
the parent commit as link text when generating links to parent commits
|
||||
in commit view.")
|
||||
(enable-html-serving?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, will make cgit use the subject of the
|
||||
parent commit as link text when generating links to parent commits in
|
||||
commit view.")
|
||||
(enable-tree-linenumbers?
|
||||
(boolean #t)
|
||||
"Flag which, when set to @samp{#t}, will make cgit generate linenumber
|
||||
links for plaintext blobs printed in the tree view.")
|
||||
(enable-git-config?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#f}, will allow cgit to use Git config to
|
||||
set any repo specific settings.")
|
||||
(favicon
|
||||
(string "/favicon.ico")
|
||||
"URL used as link to a shortcut icon for cgit.")
|
||||
(footer
|
||||
(string "")
|
||||
"The content of the file specified with this option will be included
|
||||
verbatim at the bottom of all pages (i.e. it replaces the standard
|
||||
\"generated by...\" message).")
|
||||
(head-include
|
||||
(string "")
|
||||
"The content of the file specified with this option will be included
|
||||
verbatim in the HTML HEAD section on all pages.")
|
||||
(header
|
||||
(string "")
|
||||
"The content of the file specified with this option will be included
|
||||
verbatim at the top of all pages.")
|
||||
(include
|
||||
(string "")
|
||||
"Name of a configfile to include before the rest of the current config-
|
||||
file is parsed.")
|
||||
(index-header
|
||||
(string "")
|
||||
"The content of the file specified with this option will be included
|
||||
verbatim above the repository index.")
|
||||
(index-info
|
||||
(string "")
|
||||
"The content of the file specified with this option will be included
|
||||
verbatim below the heading on the repository index page.")
|
||||
(local-time?
|
||||
(boolean #f)
|
||||
"Flag which, if set to @samp{#t}, makes cgit print commit and tag times
|
||||
in the servers timezone.")
|
||||
(logo
|
||||
(string "/share/cgit/cgit.png")
|
||||
"URL which specifies the source of an image which will be used as a logo
|
||||
on all cgit pages.")
|
||||
(logo-link
|
||||
(string "")
|
||||
"URL loaded when clicking on the cgit logo image.")
|
||||
(owner-filter
|
||||
(string "")
|
||||
"Command which will be invoked to format the Owner column of the main
|
||||
page.")
|
||||
(max-atom-items
|
||||
(integer 10)
|
||||
"Number of items to display in atom feeds view.")
|
||||
(max-commit-count
|
||||
(integer 50)
|
||||
"Number of entries to list per page in \"log\" view.")
|
||||
(max-message-length
|
||||
(integer 80)
|
||||
"Number of commit message characters to display in \"log\" view.")
|
||||
(max-repo-count
|
||||
(integer 50)
|
||||
"Specifies the number of entries to list per page on the repository index
|
||||
page.")
|
||||
(max-repodesc-length
|
||||
(integer 80)
|
||||
"Specifies the maximum number of repo description characters to display
|
||||
on the repository index page.")
|
||||
(max-blob-size
|
||||
(integer 0)
|
||||
"Specifies the maximum size of a blob to display HTML for in KBytes.")
|
||||
(max-stats
|
||||
(string "")
|
||||
"Maximum statistics period. Valid values are @samp{week},@samp{month},
|
||||
@samp{quarter} and @samp{year}.")
|
||||
(mimetype
|
||||
(mimetype-alist '((gif "image/gif")
|
||||
(html "text/html")
|
||||
(jpg "image/jpeg")
|
||||
(jpeg "image/jpeg")
|
||||
(pdf "application/pdf")
|
||||
(png "image/png")
|
||||
(svg "image/svg+xml")))
|
||||
"Mimetype for the specified filename extension.")
|
||||
(mimetype-file
|
||||
(string "")
|
||||
"Specifies the file to use for automatic mimetype lookup.")
|
||||
(module-link
|
||||
(string "")
|
||||
"Text which will be used as the formatstring for a hyperlink when a
|
||||
submodule is printed in a directory listing.")
|
||||
(nocache?
|
||||
(boolean #f)
|
||||
"If set to the value @samp{#t} caching will be disabled.")
|
||||
(noplainemail?
|
||||
(boolean #f)
|
||||
"If set to @samp{#t} showing full author email addresses will be
|
||||
disabled.")
|
||||
(noheader?
|
||||
(boolean #f)
|
||||
"Flag which, when set to @samp{#t}, will make cgit omit the standard
|
||||
header on all pages.")
|
||||
;; TODO: cgit expects a file name
|
||||
;; that should be created from a list of strings provided by the user.
|
||||
;;
|
||||
;; (project-list
|
||||
;; (string "")
|
||||
;; "A list of subdirectories inside of @code{repository-directory},
|
||||
;; relative to it, that should loaded as Git repositories.")
|
||||
(readme
|
||||
(string "")
|
||||
"Text which will be used as default value for @code{cgit-repo-readme}.")
|
||||
(remove-suffix?
|
||||
(boolean #f)
|
||||
"If set to @code{#t} and @code{repository-directory} is enabled, if any
|
||||
repositories are found with a suffix of @code{.git}, this suffix will be
|
||||
removed for the URL and name.")
|
||||
(renamelimit
|
||||
(integer -1)
|
||||
"Maximum number of files to consider when detecting renames.")
|
||||
(repository-sort
|
||||
(string "")
|
||||
"The way in which repositories in each section are sorted.")
|
||||
(robots
|
||||
(robots-list (list "noindex" "nofollow"))
|
||||
"Text used as content for the @code{robots} meta-tag.")
|
||||
(root-desc
|
||||
(string "a fast webinterface for the git dscm")
|
||||
"Text printed below the heading on the repository index page.")
|
||||
(root-readme
|
||||
(string "")
|
||||
"The content of the file specified with this option will be included
|
||||
verbatim below thef \"about\" link on the repository index page.")
|
||||
(root-title
|
||||
(string "")
|
||||
"Text printed as heading on the repository index page.")
|
||||
(scan-hidden-path
|
||||
(boolean #f)
|
||||
"If set to @samp{#t} and repository-directory is enabled,
|
||||
repository-directory will recurse into directories whose name starts with a
|
||||
period. Otherwise, repository-directory will stay away from such directories,
|
||||
considered as \"hidden\". Note that this does not apply to the \".git\"
|
||||
directory in non-bare repos.")
|
||||
(snapshots
|
||||
(list '())
|
||||
"Text which specifies the default set of snapshot formats that cgit
|
||||
generates links for.")
|
||||
(repository-directory
|
||||
(repository-directory "/srv/git")
|
||||
"Name of the directory to scan for repositories (represents
|
||||
@code{scan-path}).")
|
||||
(section
|
||||
(string "")
|
||||
"The name of the current repository section - all repositories defined
|
||||
after this option will inherit the current section name.")
|
||||
(section-sort
|
||||
(string "")
|
||||
"Flag which, when set to @samp{1}, will sort the sections on the repository
|
||||
listing by name.")
|
||||
(section-from-path
|
||||
(integer 0)
|
||||
"A number which, if defined prior to repository-directory, specifies how
|
||||
many path elements from each repo path to use as a default section name.")
|
||||
(side-by-side-diffs?
|
||||
(boolean #f)
|
||||
"If set to @samp{#t} shows side-by-side diffs instead of unidiffs per
|
||||
default.")
|
||||
(source-filter
|
||||
(string "")
|
||||
"Specifies a command which will be invoked to format plaintext blobs in the
|
||||
tree view.")
|
||||
(summary-branches
|
||||
(integer 10)
|
||||
"Specifies the number of branches to display in the repository \"summary\"
|
||||
view.")
|
||||
(summary-log
|
||||
(integer 10)
|
||||
"Specifies the number of log entries to display in the repository
|
||||
\"summary\" view.")
|
||||
(summary-tags
|
||||
(integer 10)
|
||||
"Specifies the number of tags to display in the repository \"summary\"
|
||||
view.")
|
||||
(strict-export
|
||||
(string "")
|
||||
"Filename which, if specified, needs to be present within the repository
|
||||
for cgit to allow access to that repository.")
|
||||
(virtual-root
|
||||
(string "/")
|
||||
"URL which, if specified, will be used as root for all cgit links.")
|
||||
(repositories
|
||||
(repository-cgit-configuration-list '())
|
||||
"A list of @dfn{cgit-repo} records to use with config.")
|
||||
(extra-options
|
||||
(list '())
|
||||
"Extra options will be appended to cgitrc file."))
|
||||
|
||||
(define-configuration opaque-cgit-configuration
|
||||
(cgit
|
||||
(package cgit)
|
||||
"The cgit package.")
|
||||
(cgitrc
|
||||
(string (configuration-missing-field 'opaque-cgit-configuration 'cgitrc))
|
||||
"The contents of the @code{cgitrc} to use.")
|
||||
(cache-root
|
||||
(string "/var/cache/cgit")
|
||||
"Path used to store the cgit cache entries.")
|
||||
(nginx
|
||||
(nginx-server-configuration-list (list %cgit-configuration-nginx))
|
||||
"NGINX configuration."))
|
||||
|
||||
(define (cgit-activation config)
|
||||
"Return the activation gexp for CONFIG."
|
||||
(let* ((opaque-config? (opaque-cgit-configuration? config))
|
||||
(config-str
|
||||
(if opaque-config?
|
||||
(opaque-cgit-configuration-cgitrc config)
|
||||
(with-output-to-string
|
||||
(lambda ()
|
||||
(serialize-configuration config
|
||||
cgit-configuration-fields))))))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(mkdir-p #$(if opaque-config?
|
||||
(opaque-cgit-configuration-cache-root config)
|
||||
(cgit-configuration-cache-root config)))
|
||||
(copy-file #$(plain-file "cgitrc" config-str) "/etc/cgitrc"))))
|
||||
|
||||
(define (cgit-configuration-nginx-config config)
|
||||
(if (opaque-cgit-configuration? config)
|
||||
(opaque-cgit-configuration-nginx config)
|
||||
(cgit-configuration-nginx config)))
|
||||
|
||||
(define cgit-service-type
|
||||
(service-type
|
||||
(name 'cgit)
|
||||
(extensions
|
||||
(list (service-extension activation-service-type
|
||||
cgit-activation)
|
||||
(service-extension nginx-service-type
|
||||
cgit-configuration-nginx-config)
|
||||
|
||||
;; Make sure fcgiwrap is instantiated.
|
||||
(service-extension fcgiwrap-service-type
|
||||
(const #t))))
|
||||
(default-value (cgit-configuration))
|
||||
(description
|
||||
"Run the cgit web interface, which allows users to browse Git
|
||||
repositories.")))
|
||||
|
||||
(define (generate-cgit-documentation)
|
||||
(generate-documentation
|
||||
`((cgit-configuration
|
||||
,cgit-configuration-fields
|
||||
(repositories repository-cgit-configuration))
|
||||
(repository-cgit-configuration
|
||||
,repository-cgit-configuration-fields))
|
||||
'cgit-configuration))
|
|
@ -38,26 +38,6 @@
|
|||
git-daemon-configuration
|
||||
git-daemon-configuration?
|
||||
|
||||
<cgit-configuration-file>
|
||||
cgit-configuration-file
|
||||
cgit-configuration-file?
|
||||
cgit-configuration-file-css
|
||||
cgit-configuration-file-logo
|
||||
cgit-configuration-file-robots
|
||||
cgit-configuration-file-virtual-root
|
||||
cgit-configuration-file-repository-directory
|
||||
|
||||
<cgit-configuration>
|
||||
cgit-configuration
|
||||
cgit-configuration?
|
||||
cgit-configuration-config-file
|
||||
cgit-configuration-package
|
||||
|
||||
%cgit-configuration-nginx
|
||||
cgit-configuration-nginx-config
|
||||
|
||||
cgit-service-type
|
||||
|
||||
git-http-configuration
|
||||
git-http-configuration?
|
||||
git-http-nginx-location-configuration))
|
||||
|
@ -172,107 +152,6 @@ The optional @var{config} argument should be a
|
|||
access to exported repositories under @file{/srv/git}."
|
||||
(service git-daemon-service-type config))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Cgit
|
||||
;;;
|
||||
|
||||
(define-record-type* <cgit-configuration-file>
|
||||
cgit-configuration-file
|
||||
make-cgit-configuration-file
|
||||
cgit-configuration-file?
|
||||
(css cgit-configuration-file-css ; string
|
||||
(default "/share/cgit/cgit.css"))
|
||||
(logo cgit-configuration-file-logo ; string
|
||||
(default "/share/cgit/cgit.png"))
|
||||
(robots cgit-configuration-file-robots ; list
|
||||
(default '("noindex" "nofollow")))
|
||||
(virtual-root cgit-configuration-file-virtual-root ; string
|
||||
(default "/"))
|
||||
(repository-directory cgit-configuration-file-repository-directory ; string
|
||||
(default "/srv/git")))
|
||||
|
||||
(define (cgit-configuration-robots-string robots)
|
||||
(string-join robots ", "))
|
||||
|
||||
(define-gexp-compiler (cgit-configuration-file-compiler
|
||||
(file <cgit-configuration-file>) system target)
|
||||
(match file
|
||||
(($ <cgit-configuration-file> css logo
|
||||
robots virtual-root repository-directory)
|
||||
(apply text-file* "cgitrc"
|
||||
(letrec-syntax ((option (syntax-rules ()
|
||||
((_ key value)
|
||||
(if value
|
||||
`(,key "=" ,value "\n")
|
||||
'()))))
|
||||
(key/value (syntax-rules ()
|
||||
((_ (key value) rest ...)
|
||||
(append (option key value)
|
||||
(key/value rest ...)))
|
||||
((_)
|
||||
'()))))
|
||||
(key/value ("css" css)
|
||||
("logo" logo)
|
||||
("robots" (cgit-configuration-robots-string robots))
|
||||
("virtual-root" virtual-root)
|
||||
("scan-path" repository-directory)))))))
|
||||
|
||||
(define %cgit-configuration-nginx
|
||||
(list
|
||||
(nginx-server-configuration
|
||||
(root cgit)
|
||||
(locations
|
||||
(list
|
||||
(nginx-location-configuration
|
||||
(uri "@cgit")
|
||||
(body '("fastcgi_param SCRIPT_FILENAME $document_root/lib/cgit/cgit.cgi;"
|
||||
"fastcgi_param PATH_INFO $uri;"
|
||||
"fastcgi_param QUERY_STRING $args;"
|
||||
"fastcgi_param HTTP_HOST $server_name;"
|
||||
"fastcgi_pass 127.0.0.1:9000;")))))
|
||||
(try-files (list "$uri" "@cgit"))
|
||||
(listen '("80"))
|
||||
(ssl-certificate #f)
|
||||
(ssl-certificate-key #f))))
|
||||
|
||||
(define-record-type* <cgit-configuration>
|
||||
cgit-configuration make-cgit-configuration
|
||||
cgit-configuration?
|
||||
(config-file cgit-configuration-config-file
|
||||
(default (cgit-configuration-file)))
|
||||
(package cgit-configuration-package
|
||||
(default cgit))
|
||||
(nginx cgit-configuration-nginx
|
||||
(default %cgit-configuration-nginx)))
|
||||
|
||||
(define (cgit-activation config)
|
||||
;; Cgit compiled with default configuration path
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(mkdir-p "/var/cache/cgit")
|
||||
(copy-file #$(cgit-configuration-config-file config) "/etc/cgitrc")))
|
||||
|
||||
(define (cgit-configuration-nginx-config config)
|
||||
(cgit-configuration-nginx config))
|
||||
|
||||
(define cgit-service-type
|
||||
(service-type
|
||||
(name 'cgit)
|
||||
(extensions
|
||||
(list (service-extension activation-service-type
|
||||
cgit-activation)
|
||||
(service-extension nginx-service-type
|
||||
cgit-configuration-nginx-config)
|
||||
|
||||
;; Make sure fcgiwrap is instantiated.
|
||||
(service-extension fcgiwrap-service-type
|
||||
(const #t))))
|
||||
(default-value (cgit-configuration))
|
||||
(description
|
||||
"Run the Cgit web interface, which allows users to browse Git
|
||||
repositories.")))
|
||||
|
||||
|
||||
;;;
|
||||
;;; HTTP access. Add the result of calling
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;;
|
||||
|
@ -26,6 +26,7 @@
|
|||
#:use-module (gnu system vm)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services version-control)
|
||||
#:use-module (gnu services cgit)
|
||||
#:use-module (gnu services web)
|
||||
#:use-module (gnu services networking)
|
||||
#:use-module (gnu packages version-control)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -36,7 +36,7 @@
|
|||
|
||||
(define* (lower name
|
||||
#:key source inputs native-inputs outputs system target
|
||||
guile builder modules)
|
||||
guile builder modules allowed-references)
|
||||
"Return a bag for NAME."
|
||||
(bag
|
||||
(name name)
|
||||
|
@ -51,19 +51,36 @@
|
|||
(build (if target trivial-cross-build trivial-build))
|
||||
(arguments `(#:guile ,guile
|
||||
#:builder ,builder
|
||||
#:modules ,modules))))
|
||||
#:modules ,modules
|
||||
#:allowed-references ,allowed-references))))
|
||||
|
||||
(define* (trivial-build store name inputs
|
||||
#:key
|
||||
outputs guile system builder (modules '())
|
||||
search-paths)
|
||||
search-paths allowed-references)
|
||||
"Run build expression BUILDER, an expression, for SYSTEM. SOURCE is
|
||||
ignored."
|
||||
(define canonicalize-reference
|
||||
(match-lambda
|
||||
((? package? p)
|
||||
(derivation->output-path (package-derivation store p system
|
||||
#:graft? #f)))
|
||||
(((? package? p) output)
|
||||
(derivation->output-path (package-derivation store p system
|
||||
#:graft? #f)
|
||||
output))
|
||||
((? string? output)
|
||||
output)))
|
||||
|
||||
(build-expression->derivation store name builder
|
||||
#:inputs inputs
|
||||
#:system system
|
||||
#:outputs outputs
|
||||
#:modules modules
|
||||
#:allowed-references
|
||||
(and allowed-references
|
||||
(map canonicalize-reference
|
||||
allowed-references))
|
||||
#:guile-for-build
|
||||
(guile-for-build store guile system)))
|
||||
|
||||
|
@ -71,14 +88,29 @@ ignored."
|
|||
#:key
|
||||
target native-drvs target-drvs
|
||||
outputs guile system builder (modules '())
|
||||
search-paths native-search-paths)
|
||||
search-paths native-search-paths
|
||||
allowed-references)
|
||||
"Run build expression BUILDER, an expression, for SYSTEM. SOURCE is
|
||||
ignored."
|
||||
(define canonicalize-reference
|
||||
(match-lambda
|
||||
((? package? p)
|
||||
(derivation->output-path (package-cross-derivation store p system)))
|
||||
(((? package? p) output)
|
||||
(derivation->output-path (package-cross-derivation store p system)
|
||||
output))
|
||||
((? string? output)
|
||||
output)))
|
||||
|
||||
(build-expression->derivation store name builder
|
||||
#:inputs (append native-drvs target-drvs)
|
||||
#:system system
|
||||
#:outputs outputs
|
||||
#:modules modules
|
||||
#:allowed-references
|
||||
(and allowed-references
|
||||
(map canonicalize-reference
|
||||
allowed-references))
|
||||
#:guile-for-build
|
||||
(guile-for-build store guile system)))
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
|
@ -321,14 +321,6 @@ host name without trailing dot."
|
|||
((uri? uri-or-string) uri-or-string)
|
||||
(else (error "Invalid URI" uri-or-string))))
|
||||
|
||||
(define current-http-proxy
|
||||
;; XXX: Add a dummy definition for Guile < 2.0.10; this is used in
|
||||
;; 'open-socket-for-uri'.
|
||||
(or (and=> (module-variable (resolve-interface '(web client))
|
||||
'current-http-proxy)
|
||||
variable-ref)
|
||||
(const #f)))
|
||||
|
||||
(define* (open-socket-for-uri uri-or-string #:key timeout)
|
||||
"Return an open input/output port for a connection to URI. When TIMEOUT is
|
||||
not #f, it must be a (possibly inexact) number denoting the maximum duration
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 David Thompson <davet@gnu.org>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
|
@ -350,39 +350,6 @@ expansion-time error is raised if FIELD does not exist in TYPE."
|
|||
;;; FFI.
|
||||
;;;
|
||||
|
||||
(define %libc-errno-pointer
|
||||
;; Glibc's 'errno' pointer, for use with Guile < 2.0.12.
|
||||
(let ((errno-loc (false-if-exception
|
||||
(dynamic-func "__errno_location" (dynamic-link)))))
|
||||
(and errno-loc
|
||||
(let ((proc (pointer->procedure '* errno-loc '())))
|
||||
(proc)))))
|
||||
|
||||
(define errno ;for Guile < 2.0.12
|
||||
(if %libc-errno-pointer
|
||||
(let ((bv (pointer->bytevector %libc-errno-pointer (sizeof int))))
|
||||
(lambda ()
|
||||
"Return the current errno."
|
||||
;; XXX: We assume that nothing changes 'errno' while we're doing all this.
|
||||
;; In particular, that means that no async must be running here.
|
||||
|
||||
;; Use one of the fixed-size native-ref procedures because they are
|
||||
;; optimized down to a single VM instruction, which reduces the risk
|
||||
;; that we fiddle with 'errno' (needed on Guile 2.0.5, libc 2.11.)
|
||||
(let-syntax ((ref (lambda (s)
|
||||
(syntax-case s ()
|
||||
((_ bv)
|
||||
(case (sizeof int)
|
||||
((4)
|
||||
#'(bytevector-s32-native-ref bv 0))
|
||||
((8)
|
||||
#'(bytevector-s64-native-ref bv 0))
|
||||
(else
|
||||
(error "unsupported 'int' size"
|
||||
(sizeof int)))))))))
|
||||
(ref bv))))
|
||||
(lambda () 0)))
|
||||
|
||||
(define (call-with-restart-on-EINTR thunk)
|
||||
(let loop ()
|
||||
(catch 'system-error
|
||||
|
@ -406,17 +373,8 @@ the returned procedure is called."
|
|||
(lambda ()
|
||||
(let ((ptr (dynamic-func name (dynamic-link))))
|
||||
;; The #:return-errno? facility was introduced in Guile 2.0.12.
|
||||
;; Support older versions of Guile by catching 'wrong-number-of-args'.
|
||||
(catch 'wrong-number-of-args
|
||||
(lambda ()
|
||||
(pointer->procedure return-type ptr argument-types
|
||||
#:return-errno? #t))
|
||||
(lambda (key . rest)
|
||||
(let ((proc (pointer->procedure return-type ptr argument-types)))
|
||||
(lambda args
|
||||
(let ((result (apply proc args))
|
||||
(err (errno)))
|
||||
(values result err))))))))
|
||||
(pointer->procedure return-type ptr argument-types
|
||||
#:return-errno? #t)))
|
||||
(lambda args
|
||||
(lambda _
|
||||
(error (format #f "~a: syscall->procedure failed: ~s"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -159,7 +159,6 @@ data read from PORT. The thunk always returns the same value."
|
|||
|
||||
(define (unbuffered port)
|
||||
;; Guile <= 2.0.9 does not support 'setvbuf' on custom binary input ports.
|
||||
;; If you get a wrong-type-arg error here, the fix is to upgrade Guile. :-)
|
||||
(setvbuf port _IONBF)
|
||||
port)
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2012, 2015 Free Software Foundation, Inc.
|
||||
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
|
@ -69,158 +69,6 @@
|
|||
(reason http-get-error-reason)) ; string
|
||||
|
||||
|
||||
(define-syntax when-guile<=2.0.5-or-otherwise-broken
|
||||
(lambda (s)
|
||||
(syntax-case s ()
|
||||
((_ body ...)
|
||||
;; Always emit BODY, regardless of VERSION, because sometimes this code
|
||||
;; might be compiled with a recent Guile and run with 2.0.5---e.g.,
|
||||
;; when using "guix pull".
|
||||
#'(begin body ...)))))
|
||||
|
||||
(when-guile<=2.0.5-or-otherwise-broken
|
||||
;; Backport of Guile commits 312e79f8 ("Add HTTP Chunked Encoding support to
|
||||
;; web modules."), 00d3ecf2 ("http: Do not buffer HTTP chunks."), and 53b8d5f
|
||||
;; ("web: Gracefully handle premature EOF when reading chunk header.")
|
||||
|
||||
(use-modules (ice-9 rdelim))
|
||||
|
||||
(define %web-http
|
||||
(resolve-module '(web http)))
|
||||
|
||||
;; Chunked Responses
|
||||
(define (read-chunk-header port)
|
||||
"Read a chunk header from PORT and return the size in bytes of the
|
||||
upcoming chunk."
|
||||
(match (read-line port)
|
||||
((? eof-object?)
|
||||
;; Connection closed prematurely: there's nothing left to read.
|
||||
0)
|
||||
(str
|
||||
(let ((extension-start (string-index str
|
||||
(lambda (c)
|
||||
(or (char=? c #\;)
|
||||
(char=? c #\return))))))
|
||||
(string->number (if extension-start ; unnecessary?
|
||||
(substring str 0 extension-start)
|
||||
str)
|
||||
16)))))
|
||||
|
||||
(define* (make-chunked-input-port port #:key (keep-alive? #f))
|
||||
"Returns a new port which translates HTTP chunked transfer encoded
|
||||
data from PORT into a non-encoded format. Returns eof when it has
|
||||
read the final chunk from PORT. This does not necessarily mean
|
||||
that there is no more data on PORT. When the returned port is
|
||||
closed it will also close PORT, unless the KEEP-ALIVE? is true."
|
||||
(define (close)
|
||||
(unless keep-alive?
|
||||
(close-port port)))
|
||||
|
||||
(define chunk-size 0) ;size of the current chunk
|
||||
(define remaining 0) ;number of bytes left from the current chunk
|
||||
(define finished? #f) ;did we get all the chunks?
|
||||
|
||||
(define (read! bv idx to-read)
|
||||
(define (loop to-read num-read)
|
||||
(cond ((or finished? (zero? to-read))
|
||||
num-read)
|
||||
((zero? remaining) ;get a new chunk
|
||||
(let ((size (read-chunk-header port)))
|
||||
(set! chunk-size size)
|
||||
(set! remaining size)
|
||||
(if (zero? size)
|
||||
(begin
|
||||
(set! finished? #t)
|
||||
num-read)
|
||||
(loop to-read num-read))))
|
||||
(else ;read from the current chunk
|
||||
(let* ((ask-for (min to-read remaining))
|
||||
(read (get-bytevector-n! port bv (+ idx num-read)
|
||||
ask-for)))
|
||||
(if (eof-object? read)
|
||||
(begin ;premature termination
|
||||
(set! finished? #t)
|
||||
num-read)
|
||||
(let ((left (- remaining read)))
|
||||
(set! remaining left)
|
||||
(when (zero? left)
|
||||
;; We're done with this chunk; read CR and LF.
|
||||
(get-u8 port) (get-u8 port))
|
||||
(loop (- to-read read)
|
||||
(+ num-read read))))))))
|
||||
(loop to-read 0))
|
||||
|
||||
(make-custom-binary-input-port "chunked input port" read! #f #f close))
|
||||
|
||||
;; Chunked encoding support in Guile <= 2.0.11 would load whole chunks in
|
||||
;; memory---see <http://bugs.gnu.org/19939>.
|
||||
(when (module-variable %web-http 'read-chunk-body)
|
||||
(module-set! %web-http 'make-chunked-input-port make-chunked-input-port))
|
||||
|
||||
(define (make-delimited-input-port port len keep-alive?)
|
||||
"Return an input port that reads from PORT, and makes sure that
|
||||
exactly LEN bytes are available from PORT. Closing the returned port
|
||||
closes PORT, unless KEEP-ALIVE? is true."
|
||||
(define bytes-read 0)
|
||||
|
||||
(define (fail)
|
||||
((@@ (web response) bad-response)
|
||||
"EOF while reading response body: ~a bytes of ~a"
|
||||
bytes-read len))
|
||||
|
||||
(define (read! bv start count)
|
||||
;; Read at most LEN bytes in total. HTTP/1.1 doesn't say what to do
|
||||
;; when a server provides more than the Content-Length, but it seems
|
||||
;; wise to just stop reading at LEN.
|
||||
(let ((count (min count (- len bytes-read))))
|
||||
(let loop ((ret (get-bytevector-n! port bv start count)))
|
||||
(cond ((eof-object? ret)
|
||||
(if (= bytes-read len)
|
||||
0 ; EOF
|
||||
(fail)))
|
||||
((and (zero? ret) (> count 0))
|
||||
;; Do not return zero since zero means EOF, so try again.
|
||||
(loop (get-bytevector-n! port bv start count)))
|
||||
(else
|
||||
(set! bytes-read (+ bytes-read ret))
|
||||
ret)))))
|
||||
|
||||
(define close
|
||||
(and (not keep-alive?)
|
||||
(lambda ()
|
||||
(close-port port))))
|
||||
|
||||
(make-custom-binary-input-port "delimited input port" read! #f #f close))
|
||||
|
||||
(define (read-header-line port)
|
||||
"Read an HTTP header line and return it without its final CRLF or LF.
|
||||
Raise a 'bad-header' exception if the line does not end in CRLF or LF,
|
||||
or if EOF is reached."
|
||||
(match (%read-line port)
|
||||
(((? string? line) . #\newline)
|
||||
;; '%read-line' does not consider #\return a delimiter; so if it's
|
||||
;; there, remove it. We are more tolerant than the RFC in that we
|
||||
;; tolerate LF-only endings.
|
||||
(if (string-suffix? "\r" line)
|
||||
(string-drop-right line 1)
|
||||
line))
|
||||
((line . _) ;EOF or missing delimiter
|
||||
((@@ (web http) bad-header) 'read-header-line line))))
|
||||
|
||||
(unless (guile-version>? "2.0.11")
|
||||
;; Guile <= 2.0.9 had a bug whereby 'response-body-port' would read more
|
||||
;; than what 'content-length' says. See Guile commit 802a25b.
|
||||
;; Guile <= 2.0.11 had a bug whereby the 'close' method of the response
|
||||
;; body port would fail with wrong-arg-num. See Guile commit 5a10e41.
|
||||
(module-set! (resolve-module '(web response))
|
||||
'make-delimited-input-port make-delimited-input-port)
|
||||
|
||||
;; Guile <= 2.0.11 was affected by <http://bugs.gnu.org/22273>. See Guile
|
||||
;; commit 4c7732c.
|
||||
(when (module-variable %web-http 'read-line*)
|
||||
(module-set! %web-http 'read-line* read-header-line))))
|
||||
|
||||
|
||||
(define* (http-fetch uri #:key port (text? #f) (buffered? #t)
|
||||
keep-alive? (verify-certificate? #t)
|
||||
(headers '((user-agent . "GNU Guile"))))
|
||||
|
|
|
@ -131,7 +131,11 @@ or #f on failure. MODULE should be e.g. \"Test::Script\""
|
|||
;; version is sometimes not quoted in the module json, so it gets
|
||||
;; imported into Guile as a number, so convert it to a string.
|
||||
(number->string version))
|
||||
(version version)))
|
||||
(version
|
||||
;; Sometimes we get a "v" prefix. Strip it.
|
||||
(if (string-prefix? "v" version)
|
||||
(string-drop version 1)
|
||||
version))))
|
||||
|
||||
(define (perl-package)
|
||||
"Return the 'perl' package. This is a lazy reference so that we don't
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2014, 2016 Alex Kost <alezost@gmail.com>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
|
@ -494,19 +494,19 @@ must be a manifest-pattern."
|
|||
Remove MANIFEST entries that have the same name and output as ENTRIES."
|
||||
(define (same-entry? entry name output)
|
||||
(match entry
|
||||
(($ <manifest-entry> entry-name _ entry-output _ ...)
|
||||
(($ <manifest-entry> entry-name _ entry-output _)
|
||||
(and (equal? name entry-name)
|
||||
(equal? output entry-output)))))
|
||||
|
||||
(make-manifest
|
||||
(append entries
|
||||
(fold (lambda (entry result)
|
||||
(match entry
|
||||
(($ <manifest-entry> name _ out _ ...)
|
||||
(filter (negate (cut same-entry? <> name out))
|
||||
result))))
|
||||
(manifest-entries manifest)
|
||||
entries))))
|
||||
(fold (lambda (entry result) ;XXX: quadratic
|
||||
(match entry
|
||||
(($ <manifest-entry> name _ out _)
|
||||
(cons entry
|
||||
(remove (cut same-entry? <> name out)
|
||||
result)))))
|
||||
(manifest-entries manifest)
|
||||
entries)))
|
||||
|
||||
(define (manifest-lookup manifest pattern)
|
||||
"Return the first item of MANIFEST that matches PATTERN, or #f if there is
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;; Copyright © 2013, 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2016 Alex Kost <alezost@gmail.com>
|
||||
|
@ -247,11 +247,15 @@ specified in MANIFEST, a manifest object."
|
|||
description matches at least one of REGEXPS sorted by relevance, and the list
|
||||
of relevance scores."
|
||||
(let ((matches (fold-packages (lambda (package result)
|
||||
(match (package-relevance package regexps)
|
||||
((? zero?)
|
||||
result)
|
||||
(score
|
||||
(cons (list package score) result))))
|
||||
(if (package-superseded package)
|
||||
result
|
||||
(match (package-relevance package
|
||||
regexps)
|
||||
((? zero?)
|
||||
result)
|
||||
(score
|
||||
(cons (list package score)
|
||||
result)))))
|
||||
'())))
|
||||
(unzip2 (sort matches
|
||||
(lambda (m1 m2)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -212,15 +212,7 @@ provide."
|
|||
(begin
|
||||
(warning (G_ "while fetching ~a: server is somewhat slow~%")
|
||||
(uri->string uri))
|
||||
(warning (G_ "try `--no-substitutes' if the problem persists~%"))
|
||||
|
||||
;; Before Guile v2.0.9-39-gfe51c7b, EINTR was reported to the user,
|
||||
;; and thus PORT had to be closed and re-opened. This is not the
|
||||
;; case afterward.
|
||||
(unless (or (guile-version>? "2.0.9")
|
||||
(version>? (version) "2.0.9.39"))
|
||||
(when port
|
||||
(close-connection port))))
|
||||
(warning (G_ "try `--no-substitutes' if the problem persists~%")))
|
||||
(begin
|
||||
(when (or (not port) (port-closed? port))
|
||||
(set! port (guix:open-connection-for-uri
|
||||
|
@ -571,10 +563,8 @@ initial connection on which HTTP requests are sent."
|
|||
;; XXX: Do our own caching to work around inefficiencies when
|
||||
;; communicating over TLS: <http://bugs.gnu.org/22966>.
|
||||
(let-values (((buffer get) (open-bytevector-output-port)))
|
||||
;; On Guile > 2.0.9, inherit the HTTP proxying property from P.
|
||||
(when (module-variable (resolve-interface '(web http))
|
||||
'http-proxy-port?)
|
||||
(set-http-proxy-port?! buffer (http-proxy-port? p)))
|
||||
;; Inherit the HTTP proxying property from P.
|
||||
(set-http-proxy-port?! buffer (http-proxy-port? p))
|
||||
|
||||
(for-each (cut write-request <> buffer)
|
||||
(at-most 1000 requests))
|
||||
|
|
17
m4/guix.m4
17
m4/guix.m4
|
@ -136,23 +136,6 @@ AC_DEFUN([GUIX_ASSERT_GUILE_FEATURES], [
|
|||
done
|
||||
])
|
||||
|
||||
dnl GUIX_CHECK_UNBUFFERED_CBIP
|
||||
dnl
|
||||
dnl Check whether 'setbvuf' works on custom binary input ports (CBIPs), as is
|
||||
dnl the case starting with Guile 2.0.10.
|
||||
AC_DEFUN([GUIX_CHECK_UNBUFFERED_CBIP], [
|
||||
AC_CACHE_CHECK([whether Guile's custom binary input ports support 'setvbuf'],
|
||||
[ac_cv_guix_cbips_support_setvbuf],
|
||||
[if "$GUILE" -c "(use-modules (rnrs io ports)) \
|
||||
(let ((p (make-custom-binary-input-port \"cbip\" pk #f #f #f))) \
|
||||
(setvbuf p _IONBF))" >&5 2>&1
|
||||
then
|
||||
ac_cv_guix_cbips_support_setvbuf=yes
|
||||
else
|
||||
ac_cv_guix_cbips_support_setvbuf=no
|
||||
fi])
|
||||
])
|
||||
|
||||
dnl GUIX_ASSERT_SYNTAX_OBJECT_EQUAL
|
||||
dnl
|
||||
dnl Guile 2.2.1 was a brown-paper-bag release where 'equal?' wouldn't work
|
||||
|
|
1764
po/guix/pt_BR.po
1764
po/guix/pt_BR.po
File diff suppressed because it is too large
Load Diff
|
@ -1,5 +1,5 @@
|
|||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
|
@ -118,6 +118,22 @@ grep '^name: gnubg' "$tmpfile"
|
|||
|
||||
rm -f "$tmpfile"
|
||||
|
||||
# Make sure deprecated packages don't show up: <https://bugs.gnu.org/30566>.
|
||||
mkdir "$module_dir"
|
||||
cat > "$module_dir/foo.scm"<<EOF
|
||||
(define-module (foo)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (gnu packages base))
|
||||
|
||||
(define-public deprecated
|
||||
(deprecated-package "fileutils" coreutils))
|
||||
EOF
|
||||
|
||||
guix build -L "$module_dir" -e '(@ (foo) deprecated)' -n
|
||||
test "`guix package -L "$module_dir" -s ^fileutils$ | grep ^name:`" = ""
|
||||
|
||||
rm -rf "$module_dir"
|
||||
|
||||
# Make sure `--search' can display all the packages.
|
||||
guix package --search="" > /dev/null
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -37,13 +37,6 @@
|
|||
(base16-string->bytevector
|
||||
"b94d27b9934d3e08a52e52d7da7dabfac484efe37a5380ee9088f7ace2efcde9"))
|
||||
|
||||
(define (supports-unbuffered-cbip?)
|
||||
"Return #t if unbuffered custom binary input ports (CBIPs) are supported.
|
||||
In Guile <= 2.0.9, CBIPs were always fully buffered, so the
|
||||
'open-sha256-input-port' does not work there."
|
||||
(false-if-exception
|
||||
(setvbuf (make-custom-binary-input-port "foo" pk #f #f #f) _IONBF)))
|
||||
|
||||
|
||||
(test-begin "hash")
|
||||
|
||||
|
@ -77,8 +70,6 @@ In Guile <= 2.0.9, CBIPs were always fully buffered, so the
|
|||
(equal? (sha256 contents)
|
||||
(call-with-input-file file port-sha256))))
|
||||
|
||||
(test-skip (if (supports-unbuffered-cbip?) 0 4))
|
||||
|
||||
(test-equal "open-sha256-input-port, empty"
|
||||
`("" ,%empty-sha256)
|
||||
(let-values (((port get)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -557,6 +557,24 @@
|
|||
(let ((p (pk 'drv d (derivation->output-path d))))
|
||||
(eq? 'hello (call-with-input-file p read))))))
|
||||
|
||||
(test-assert "trivial with #:allowed-references"
|
||||
(let* ((p (package
|
||||
(inherit (dummy-package "trivial"))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:guile ,%bootstrap-guile
|
||||
#:allowed-references (,%bootstrap-guile)
|
||||
#:builder
|
||||
(begin
|
||||
(mkdir %output)
|
||||
;; The reference to itself isn't allowed so building it
|
||||
;; should fail.
|
||||
(symlink %output (string-append %output "/self")))))))
|
||||
(d (package-derivation %store p)))
|
||||
(guard (c ((nix-protocol-error? c) #t))
|
||||
(build-derivations %store (list d))
|
||||
#f)))
|
||||
|
||||
(test-assert "search paths"
|
||||
(let* ((p (make-prompt-tag "return-search-paths"))
|
||||
(s (build-system
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -148,6 +148,11 @@
|
|||
(_ #f))
|
||||
(equal? m3 m4))))
|
||||
|
||||
(test-equal "manifest-add removes duplicates" ;<https://bugs.gnu.org/30569>
|
||||
(list guile-2.0.9)
|
||||
(manifest-entries (manifest-add (manifest '())
|
||||
(list guile-2.0.9 guile-2.0.9))))
|
||||
|
||||
(test-assert "manifest-perform-transaction"
|
||||
(let* ((m0 (manifest (list guile-2.0.9 guile-2.0.9:debug)))
|
||||
(t1 (manifest-transaction
|
||||
|
|
Loading…
Reference in New Issue