diff options
282 files changed, 26747 insertions, 5700 deletions
diff --git a/.dir-locals.el b/.dir-locals.el index dac6cb1453..eb99a5bcc1 100644 --- a/.dir-locals.el +++ b/.dir-locals.el @@ -73,6 +73,9 @@ (eval . (put 'run-with-state 'scheme-indent-function 1)) (eval . (put 'wrap-program 'scheme-indent-function 1)) (eval . (put 'with-imported-modules 'scheme-indent-function 1)) + (eval . (put 'with-extensions 'scheme-indent-function 1)) + + (eval . (put 'with-database 'scheme-indent-function 2)) (eval . (put 'call-with-container 'scheme-indent-function 1)) (eval . (put 'container-excursion 'scheme-indent-function 1)) diff --git a/CODE-OF-CONDUCT b/CODE-OF-CONDUCT index 0458fd787c..ef90330cda 100644 --- a/CODE-OF-CONDUCT +++ b/CODE-OF-CONDUCT @@ -1,51 +1,78 @@ -Contributor Code of Conduct +Contributor Covenant Code of Conduct Note: In the sequel, "project" refers to GNU Guix, and "project maintainer(s)" refers to maintainer(s) of GNU Guix. -As contributors and maintainers of this project, and in the interest of -fostering an open and welcoming community, we pledge to respect all -people who contribute through reporting issues, posting feature -requests, updating documentation, submitting pull requests or patches, -and other activities. +Our Pledge + +In the interest of fostering an open and welcoming environment, we as +contributors and maintainers pledge to making participation in our project and +our community a harassment-free experience for everyone, regardless of age, body +size, disability, ethnicity, gender identity and expression, level of experience, +education, socio-economic status, nationality, personal appearance, race, +religion, or sexual identity and orientation. + +Our Standards + +Examples of behavior that contributes to creating a positive environment +include: + + +* Using welcoming and inclusive language +* Being respectful of differing viewpoints and experiences +* Gracefully accepting constructive criticism +* Focusing on what is best for the community +* Showing empathy towards other community members -We are committed to making participation in this project a -harassment-free experience for everyone, regardless of level of -experience, gender, gender identity and expression, sexual orientation, -disability, personal appearance, body size, race, ethnicity, age, -religion, or nationality. Examples of unacceptable behavior by participants include: -* The use of sexualized language or imagery -* Personal attacks -* Trolling or insulting/derogatory comments + +* The use of sexualized language or imagery and unwelcome sexual attention or +advances +* Trolling, insulting/derogatory comments, and personal or political attacks * Public or private harassment -* Publishing other's private information, such as physical or electronic -addresses, without explicit permission -* Other unethical or unprofessional conduct - -Project maintainers have the right and responsibility to remove, edit, -or reject comments, commits, code, wiki edits, issues, and other -contributions that are not aligned to this Code of Conduct, or to ban -temporarily or permanently any contributor for other behaviors that they -deem inappropriate, threatening, offensive, or harmful. - -By adopting this Code of Conduct, project maintainers commit themselves -to fairly and consistently applying these principles to every aspect of -managing this project. Project maintainers who do not follow or enforce -the Code of Conduct may be permanently removed from the project team. - -This Code of Conduct applies both within project spaces and in public -spaces when an individual is representing the project or its community. - -Instances of abusive, harassing, or otherwise unacceptable behavior may -be reported by contacting a project maintainer at guix-maintainers@gnu.org. -All complaints will be reviewed and investigated and will -result in a response that is deemed necessary and appropriate to the -circumstances. Maintainers are obligated to maintain confidentiality -with regard to the reporter of an incident. - -This Code of Conduct is adapted from the Contributor Covenant -(http://contributor-covenant.org), version 1.3.0, available at -http://contributor-covenant.org/version/1/3/0/ +* Publishing others’ private information, such as a physical or electronic +address, without explicit permission +* Other conduct which could reasonably be considered inappropriate in a +professional setting + + +Our Responsibilities + +Project maintainers are responsible for clarifying the standards of acceptable +behavior and are expected to take appropriate and fair corrective action in +response to any instances of unacceptable behavior. + +Project maintainers have the right and responsibility to remove, edit, or +reject comments, commits, code, wiki edits, issues, and other contributions +that are not aligned to this Code of Conduct, or to ban temporarily or +permanently any contributor for other behaviors that they deem inappropriate, +threatening, offensive, or harmful. + +Scope + +This Code of Conduct applies both within project spaces and in public spaces +when an individual is representing the project or its community. Examples of +representing a project or community include using an official project e-mail +address, posting via an official social media account, or acting as an appointed +representative at an online or offline event. Representation of a project may be +further defined and clarified by project maintainers. + +Enforcement + +Instances of abusive, harassing, or otherwise unacceptable behavior may be +reported by contacting the project team at guix-maintainers@gnu.org. All +complaints will be reviewed and investigated and will result in a response that +is deemed necessary and appropriate to the circumstances. The project team is +obligated to maintain confidentiality with regard to the reporter of an incident. +Further details of specific enforcement policies may be posted separately. + +Project maintainers who do not follow or enforce the Code of Conduct in good +faith may face temporary or permanent repercussions as determined by other +members of the project’s leadership. + +Attribution + +This Code of Conduct is adapted from the Contributor Covenant, version 1.4, +available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html diff --git a/Makefile.am b/Makefile.am index 7ea9228881..7898a3648a 100644 --- a/Makefile.am +++ b/Makefile.am @@ -96,6 +96,7 @@ MODULES = \ guix/workers.scm \ guix/zlib.scm \ guix/build-system.scm \ + guix/build-system/android-ndk.scm \ guix/build-system/ant.scm \ guix/build-system/cargo.scm \ guix/build-system/cmake.scm \ @@ -128,6 +129,7 @@ MODULES = \ guix/svn-download.scm \ guix/i18n.scm \ guix/ui.scm \ + guix/build/android-ndk-build-system.scm \ guix/build/ant-build-system.scm \ guix/build/download.scm \ guix/build/download-nar.scm \ @@ -255,15 +257,27 @@ MODULES += \ endif BUILD_DAEMON_OFFLOAD +# Scheme implementation of the build daemon and related functionality. +STORE_MODULES = \ + guix/store/database.scm \ + guix/store/deduplication.scm + +if HAVE_GUILE_SQLITE3 +MODULES += $(STORE_MODULES) +else +MODULES_NOT_COMPILED += $(STORE_MODULES) +endif !HAVE_GUILE_SQLITE3 + # Internal modules with test suite support. dist_noinst_DATA = guix/tests.scm guix/tests/http.scm # Auxiliary files for packages. AUX_FILES = \ gnu/packages/aux-files/emacs/guix-emacs.el \ - gnu/packages/aux-files/linux-libre/4.16-arm.conf \ - gnu/packages/aux-files/linux-libre/4.16-i686.conf \ - gnu/packages/aux-files/linux-libre/4.16-x86_64.conf \ + gnu/packages/aux-files/linux-libre/4.17-arm.conf \ + gnu/packages/aux-files/linux-libre/4.17-arm64.conf \ + gnu/packages/aux-files/linux-libre/4.17-i686.conf \ + gnu/packages/aux-files/linux-libre/4.17-x86_64.conf \ gnu/packages/aux-files/linux-libre/4.14-arm.conf \ gnu/packages/aux-files/linux-libre/4.14-i686.conf \ gnu/packages/aux-files/linux-libre/4.14-x86_64.conf \ @@ -272,7 +286,8 @@ AUX_FILES = \ gnu/packages/aux-files/linux-libre/4.4-i686.conf \ gnu/packages/aux-files/linux-libre/4.4-x86_64.conf \ gnu/packages/aux-files/linux-libre/4.1-i686.conf \ - gnu/packages/aux-files/linux-libre/4.1-x86_64.conf + gnu/packages/aux-files/linux-libre/4.1-x86_64.conf \ + gnu/packages/aux-files/run-in-namespace.c # Templates, examples. EXAMPLES = \ @@ -375,6 +390,14 @@ SCM_TESTS += \ endif +if HAVE_GUILE_SQLITE3 + +SCM_TESTS += \ + tests/store-database.scm \ + tests/store-deduplication.scm + +endif + SH_TESTS = \ tests/guix-build.sh \ tests/guix-download.sh \ @@ -10,6 +10,23 @@ Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> Please send Guix bug reports to bug-guix@gnu.org. +* Changes in 0.15.0 (since 0.14.0) + +** Package management + +*** ‘guix pack’ now supports building SquashFS images +*** ‘guix pack’ can now build relocatable tarballs + +** Distribution + +*** New services + +enlightenment + +** Programming interfaces + +*** package-full-name (guix packages) now uses "@" as its delimiter. + (<https://bugs.gnu.org/31088>) * Changes in 0.14.0 (since 0.13.0) ** Package management diff --git a/build-aux/hydra/gnu-system.scm b/build-aux/hydra/gnu-system.scm index 62eb957f83..654f3ecf3e 100644 --- a/build-aux/hydra/gnu-system.scm +++ b/build-aux/hydra/gnu-system.scm @@ -264,7 +264,8 @@ all its dependencies, and ready to be installed on non-GuixSD distributions.") (define job-name ;; Return the name of a package's job. - (compose string->symbol package-full-name)) + (compose string->symbol + (cut package-full-name <> "-"))) (define package->job (let ((base-packages diff --git a/build-aux/test-env.in b/build-aux/test-env.in index 52082c650f..aaadcf205b 100644 --- a/build-aux/test-env.in +++ b/build-aux/test-env.in @@ -132,6 +132,7 @@ then for file in "$bootstrap_directory"/guile-* do + [ -f "$file" ] && \ "@abs_top_builddir@/pre-inst-env" \ guix download "file://$file" > /dev/null done diff --git a/configure.ac b/configure.ac index 557da63189..d338bfda53 100644 --- a/configure.ac +++ b/configure.ac @@ -124,6 +124,11 @@ dnl Guile-JSON is used in various places. GUILE_MODULE_AVAILABLE([have_guile_json], [(json)]) AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"]) +dnl Guile-Sqlite3 is used by the (guix store ...) modules. +GUIX_CHECK_GUILE_SQLITE3 +AM_CONDITIONAL([HAVE_GUILE_SQLITE3], + [test "x$guix_cv_have_recent_guile_sqlite3" = "xyes"]) + dnl Make sure we have a full-fledged Guile. GUIX_ASSERT_GUILE_FEATURES([regex posix socket net-db threads]) diff --git a/doc/guix.texi b/doc/guix.texi index 58c3688c03..e1353842e4 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -47,7 +47,8 @@ Copyright @copyright{} 2017, 2018 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* -Copyright @copyright{} 2018 Mike Gerwitz +Copyright @copyright{} 2018 Mike Gerwitz@* +Copyright @copyright{} 2018 Pierre-Antoine Rouby Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.3 or @@ -235,6 +236,7 @@ Services * X Window:: Graphical display. * Printing Services:: Local and remote printer support. * Desktop Services:: D-Bus and desktop services. +* Sound Services:: ALSA and Pulseaudio services. * Database Services:: SQL databases, key-value stores, etc. * Mail Services:: IMAP, POP3, SMTP, and all that. * Messaging Services:: Messaging services. @@ -2833,6 +2835,16 @@ guix pack -S /opt/gnu/bin=bin guile emacs geiser @noindent That way, users can happily type @file{/opt/gnu/bin/guile} and enjoy. +@cindex relocatable binaries, with @command{guix pack} +What if the recipient of your pack does not have root privileges on +their machine, and thus cannot unpack it in the root file system? In +that case, you will want to use the @code{--relocatable} option (see +below). This option produces @dfn{relocatable binaries}, meaning they +they can be placed anywhere in the file system hierarchy: in the example +above, users can unpack your tarball in their home directory and +directly run @file{./opt/gnu/bin/guile}. + +@cindex Docker, build an image with guix pack Alternatively, you can produce a pack in the Docker image format using the following command: @@ -2846,6 +2858,22 @@ command. See the @uref{https://docs.docker.com/engine/reference/commandline/load/, Docker documentation} for more information. +@cindex Singularity, build an image with guix pack +@cindex SquashFS, build an image with guix pack +Yet another option is to produce a SquashFS image with the following +command: + +@example +guix pack -f squashfs guile emacs geiser +@end example + +@noindent +The result is a SquashFS file system image that can either be mounted or +directly be used as a file system container image with the +@uref{http://singularity.lbl.gov, Singularity container execution +environment}, using commands like @command{singularity shell} or +@command{singularity exec}. + Several command-line options allow you to customize your pack: @table @code @@ -2864,8 +2892,46 @@ specified binaries and symlinks. This produces a tarball that follows the @uref{https://github.com/docker/docker/blob/master/image/spec/v1.2.md, Docker Image Specification}. + +@item squashfs +This produces a SquashFS image containing all the specified binaries and +symlinks, as well as empty mount points for virtual file systems like +procfs. @end table +@item --relocatable +@itemx -R +Produce @dfn{relocatable binaries}---i.e., binaries that can be placed +anywhere in the file system hierarchy and run from there. For example, +if you create a pack containing Bash with: + +@example +guix pack -R -S /mybin=bin bash +@end example + +@noindent +... you can copy that pack to a machine that lacks Guix, and from your +home directory as a normal user, run: + +@example +tar xf pack.tar.gz +./mybin/sh +@end example + +@noindent +In that shell, if you type @code{ls /gnu/store}, you'll notice that +@file{/gnu/store} shows up and contains all the dependencies of +@code{bash}, even though the machine actually lacks @file{/gnu/store} +altogether! That is probably the simplest way to deploy Guix-built +software on a non-Guix machine. + +There's a gotcha though: this technique relies on the @dfn{user +namespace} feature of the kernel Linux, which allows unprivileged users +to mount or change root. Old versions of Linux did not support it, and +some GNU/Linux distributions turn it off; on these systems, programs +from the pack @emph{will fail to run}, unless they are unpacked in the +root file system. + @item --expression=@var{expr} @itemx -e @var{expr} Consider the package @var{expr} evaluates to. @@ -3749,6 +3815,25 @@ that should be run during the @code{build} phase. By default the @end defvr +@defvr {Scheme Variable} android-ndk-build-system +@cindex Android distribution +@cindex Android NDK build system +This variable is exported by @code{(guix build-system android-ndk)}. It +implements a build procedure for Android NDK (native development kit) +packages using a Guix-specific build process. + +The build system assumes that packages install their public interface +(header) files to the subdirectory "include" of the "out" output and +their libraries to the subdirectory "lib" of the "out" output. + +It's also assumed that the union of all the dependencies of a package +has no conflicting files. + +For the time being, cross-compilation is not supported - so right now +the libraries and header files are assumed to be host tools. + +@end defvr + @defvr {Scheme Variable} asdf-build-system/source @defvrx {Scheme Variable} asdf-build-system/sbcl @defvrx {Scheme Variable} asdf-build-system/ecl @@ -4979,6 +5064,23 @@ headers, which comes in handy in this case: @dots{}))) @end example +@cindex extensions, for gexps +@findex with-extensions +In the same vein, sometimes you want to import not just pure-Scheme +modules, but also ``extensions'' such as Guile bindings to C libraries +or other ``full-blown'' packages. Say you need the @code{guile-json} +package available on the build side, here's how you would do it: + +@example +(use-modules (gnu packages guile)) ;for 'guile-json' + +(with-extensions (list guile-json) + (gexp->derivation "something-with-json" + #~(begin + (use-modules (json)) + @dots{}))) +@end example + The syntactic form to construct gexps is summarized below. @deffn {Scheme Syntax} #~@var{exp} @@ -5062,6 +5164,18 @@ directly defined in @var{body}@dots{}, but not on those defined, say, in procedures called from @var{body}@dots{}. @end deffn +@deffn {Scheme Syntax} with-extensions @var{extensions} @var{body}@dots{} +Mark the gexps defined in @var{body}@dots{} as requiring +@var{extensions} in their build and execution environment. +@var{extensions} is typically a list of package objects such as those +defined in the @code{(gnu packages guile)} module. + +Concretely, the packages listed in @var{extensions} are added to the +load path while compiling imported modules in @var{body}@dots{}; they +are also added to the load path of the gexp returned by +@var{body}@dots{}. +@end deffn + @deffn {Scheme Procedure} gexp? @var{obj} Return @code{#t} if @var{obj} is a G-expression. @end deffn @@ -5076,6 +5190,7 @@ information about monads.) [#:hash #f] [#:hash-algo #f] @ [#:recursive? #f] [#:env-vars '()] [#:modules '()] @ [#:module-path @var{%load-path}] @ + [#:effective-version "2.2"] @ [#:references-graphs #f] [#:allowed-references #f] @ [#:disallowed-references #f] @ [#:leaked-env-vars #f] @ @@ -5096,6 +5211,9 @@ make @var{modules} available in the evaluation context of @var{exp}; the load path during the execution of @var{exp}---e.g., @code{((guix build utils) (guix build gnu-build-system))}. +@var{effective-version} determines the string to use when adding extensions of +@var{exp} (see @code{with-extensions}) to the search path---e.g., @code{"2.2"}. + @var{graft?} determines whether packages referred to by @var{exp} should be grafted when applicable. @@ -5793,9 +5911,16 @@ information on cross-compilation. An example use of this is on Linux-based systems, which can emulate different personalities. For instance, passing -@code{--system=i686-linux} on an @code{x86_64-linux} system allows you +@code{--system=i686-linux} on an @code{x86_64-linux} system or +@code{--system=armhf-linux} on an @code{aarch64-linux} system allows you to build packages in a complete 32-bit environment. +@quotation Note +Building for an @code{armhf-linux} system is unconditionally enabled on +@code{aarch64-linux} machines, although certain aarch64 chipsets do not +allow for this functionality, notably the ThunderX. +@end quotation + Similarly, when transparent emulation with QEMU and @code{binfmt_misc} is enabled (@pxref{Virtualization Services, @code{qemu-binfmt-service-type}}), you can build for any system for @@ -6773,15 +6898,33 @@ where @code{CVE-YYYY-ABCD} is the CVE identifier---e.g., Package developers can specify in package recipes the @uref{https://nvd.nist.gov/cpe.cfm,Common Platform Enumeration (CPE)} -name and version of the package when they differ from the name that Guix -uses, as in this example: +name and version of the package when they differ from the name or version +that Guix uses, as in this example: @example (package (name "grub") ;; @dots{} ;; CPE calls this package "grub2". - (properties '((cpe-name . "grub2")))) + (properties '((cpe-name . "grub2") + (cpe-version . "2.3"))) +@end example + +@c See <http://www.openwall.com/lists/oss-security/2017/03/15/3>. +Some entries in the CVE database do not specify which version of a +package they apply to, and would thus ``stick around'' forever. Package +developers who found CVE alerts and verified they can be ignored can +declare them as in this example: + +@example +(package + (name "t1lib") + ;; @dots{} + ;; These CVEs no longer apply and can be safely ignored. + (properties `((lint-hidden-cve . ("CVE-2011-0433" + "CVE-2011-1553" + "CVE-2011-1554" + "CVE-2011-5244"))))) @end example @item formatting @@ -6825,19 +6968,23 @@ single output for a package that could easily be split (@pxref{Packages with Multiple Outputs}). Such are the typical issues that @command{guix size} can highlight. -The command can be passed a package specification such as @code{gcc@@4.8} +The command can be passed one or more package specifications +such as @code{gcc@@4.8} or @code{guile:debug}, or a file name in the store. Consider this example: @example $ guix size coreutils store item total self -/gnu/store/@dots{}-coreutils-8.23 70.0 13.9 19.8% -/gnu/store/@dots{}-gmp-6.0.0a 55.3 2.5 3.6% -/gnu/store/@dots{}-acl-2.2.52 53.7 0.5 0.7% -/gnu/store/@dots{}-attr-2.4.46 53.2 0.3 0.5% -/gnu/store/@dots{}-gcc-4.8.4-lib 52.9 15.7 22.4% -/gnu/store/@dots{}-glibc-2.21 37.2 37.2 53.1% +/gnu/store/@dots{}-gcc-5.5.0-lib 60.4 30.1 38.1% +/gnu/store/@dots{}-glibc-2.27 30.3 28.8 36.6% +/gnu/store/@dots{}-coreutils-8.28 78.9 15.0 19.0% +/gnu/store/@dots{}-gmp-6.1.2 63.1 2.7 3.4% +/gnu/store/@dots{}-bash-static-4.4.12 1.5 1.5 1.9% +/gnu/store/@dots{}-acl-2.2.52 61.1 0.4 0.5% +/gnu/store/@dots{}-attr-2.4.47 60.6 0.2 0.3% +/gnu/store/@dots{}-libcap-2.25 60.5 0.2 0.2% +total: 78.9 MiB @end example @cindex closure @@ -6857,17 +7004,21 @@ item itself. The last column shows the ratio of the size of the item itself to the space occupied by all the items listed here. In this example, we see that the closure of Coreutils weighs in at -70@tie{}MiB, half of which is taken by libc. (That libc represents a -large fraction of the closure is not a problem @i{per se} because it is -always available on the system anyway.) - -When the package passed to @command{guix size} is available in the -store, @command{guix size} queries the daemon to determine its +79@tie{}MiB, most of which is taken by libc and GCC's run-time support +libraries. (That libc and GCC's libraries represent a large fraction of +the closure is not a problem @i{per se} because they are always available +on the system anyway.) + +When the package(s) passed to @command{guix size} are available in the +store@footnote{More precisely, @command{guix size} looks for the +@emph{ungrafted} variant of the given package(s), as returned by +@code{guix build @var{package} --no-grafts}. @xref{Security Updates}, +for information on grafts.}, @command{guix size} queries the daemon to determine its dependencies, and measures its size in the store, similar to @command{du -ms --apparent-size} (@pxref{du invocation,,, coreutils, GNU Coreutils}). -When the given package is @emph{not} in the store, @command{guix size} +When the given packages are @emph{not} in the store, @command{guix size} reports information based on the available substitutes (@pxref{Substitutes}). This makes it possible it to profile disk usage of store items that are not even on disk, only available remotely. @@ -9115,20 +9266,31 @@ This is a string specifying the type of the file system---e.g., This designates the place where the file system is to be mounted. @item @code{device} -This names the ``source'' of the file system. By default it is the name -of a node under @file{/dev}, but its meaning depends on the @code{title} -field described below. +This names the ``source'' of the file system. It can be one of three +things: a file system label, a file system UUID, or the name of a +@file{/dev} node. Labels and UUIDs offer a way to refer to file +systems without having to hard-code their actual device +name@footnote{Note that, while it is tempting to use +@file{/dev/disk/by-uuid} and similar device names to achieve the same +result, this is not recommended: These special device nodes are created +by the udev daemon and may be unavailable at the time the device is +mounted.}. -@item @code{title} (default: @code{'device}) -This is a symbol that specifies how the @code{device} field is to be -interpreted. +@findex file-system-label +File system labels are created using the @code{file-system-label} +procedure, UUIDs are created using @code{uuid}, and @file{/dev} node are +plain strings. Here's an example of a file system referred to by its +label, as shown by the @command{e2label} command: -When it is the symbol @code{device}, then the @code{device} field is -interpreted as a file name; when it is @code{label}, then @code{device} -is interpreted as a file system label name; when it is @code{uuid}, -@code{device} is interpreted as a file system unique identifier (UUID). +@example +(file-system + (mount-point "/home") + (type "ext4") + (device (file-system-label "my-home"))) +@end example -UUIDs may be converted from their string representation (as shown by the +@findex uuid +UUIDs are converted from their string representation (as shown by the @command{tune2fs -l} command) using the @code{uuid} form@footnote{The @code{uuid} form expects 16-byte UUIDs as defined in @uref{https://tools.ietf.org/html/rfc4122, RFC@tie{}4122}. This is the @@ -9140,22 +9302,13 @@ like this: (file-system (mount-point "/home") (type "ext4") - (title 'uuid) (device (uuid "4dab5feb-d176-45de-b287-9b0a6e4c01cb"))) @end example -The @code{label} and @code{uuid} options offer a way to refer to file -systems without having to hard-code their actual device -name@footnote{Note that, while it is tempting to use -@file{/dev/disk/by-uuid} and similar device names to achieve the same -result, this is not recommended: These special device nodes are created -by the udev daemon and may be unavailable at the time the device is -mounted.}. - -However, when the source of a file system is a mapped device (@pxref{Mapped +When the source of a file system is a mapped device (@pxref{Mapped Devices}), its @code{device} field @emph{must} refer to the mapped -device name---e.g., @file{/dev/mapper/root-partition}---and consequently -@code{title} must be set to @code{'device}. This is required so that +device name---e.g., @file{"/dev/mapper/root-partition"}. +This is required so that the system knows that mounting the file system depends on having the corresponding device mapping established. @@ -9697,6 +9850,7 @@ declaration. * X Window:: Graphical display. * Printing Services:: Local and remote printer support. * Desktop Services:: D-Bus and desktop services. +* Sound Services:: ALSA and Pulseaudio services. * Database Services:: SQL databases, key-value stores, etc. * Mail Services:: IMAP, POP3, SMTP, and all that. * Messaging Services:: Messaging services. @@ -10383,15 +10537,31 @@ See @code{man loadkeys} for details. @cindex mouse @cindex gpm -@deffn {Scheme Procedure} gpm-service [#:gpm @var{gpm}] @ - [#:options] -Run @var{gpm}, the general-purpose mouse daemon, with the given -command-line @var{options}. GPM allows users to use the mouse in the console, -notably to select, copy, and paste text. The default value of @var{options} -uses the @code{ps2} protocol, which works for both USB and PS/2 mice. - -This service is not part of @var{%base-services}. -@end deffn +@defvr {Scheme Variable} gpm-service-type +This is the type of the service that runs GPM, the @dfn{general-purpose +mouse daemon}, which provides mouse support to the Linux console. GPM +allows users to use the mouse in the console, notably to select, copy, +and paste text. + +The value for services of this type must be a @code{gpm-configuration} +(see below). This service is not part of @var{%base-services}. +@end defvr + +@deftp {Data Type} gpm-configuration +Data type representing the configuration of GPM. + +@table @asis +@item @code{options} (default: @code{%default-gpm-options}) +Command-line options passed to @command{gpm}. The default set of +options instruct @command{gpm} to listen to mouse events on +@file{/dev/input/mice}. @xref{Command Line,,, gpm, gpm manual}, for +more information. + +@item @code{gpm} (default: @code{gpm}) +The GPM package to use. + +@end table +@end deftp @anchor{guix-publish-service-type} @deffn {Scheme Variable} guix-publish-service-type @@ -11608,7 +11778,7 @@ Script to run after starting xorg-server. @item @code{xdisplay-stop} (default @code{#~(string-append #$sddm "/share/sddm/scripts/Xstop")}) Script to run before stopping xorg-server. -@item @code{xsession-command} (default: @code{xinitr }) +@item @code{xsession-command} (default: @code{xinitrc}) Script to run before starting a X session. @item @code{xsessions-directory} (default: "/run/current-system/profile/share/xsessions") @@ -12566,11 +12736,11 @@ field of an @code{operating-system} declaration (@pxref{operating-system Reference, @code{services}}). Additionally, the @code{gnome-desktop-service}, -@code{xfce-desktop-service} and @code{mate-desktop-service} -procedures can add GNOME, XFCE and/or MATE to a system. -To ``add GNOME'' means that system-level services like the -backlight adjustment helpers and the power management utilities are -added to the system, extending @code{polkit} and @code{dbus} +@code{xfce-desktop-service}, @code{mate-desktop-service} and +@code{enlightenment-desktop-service-type} procedures can add GNOME, XFCE, MATE +and/or Enlightenment to a system. To ``add GNOME'' means that system-level +services like the backlight adjustment helpers and the power management +utilities are added to the system, extending @code{polkit} and @code{dbus} appropriately, allowing GNOME to operate with elevated privileges on a limited number of special-purpose system interfaces. Additionally, adding a service made by @code{gnome-desktop-service} adds the GNOME @@ -12583,7 +12753,10 @@ To ``add MATE'' means that @code{polkit} and @code{dbus} are extended appropriately, allowing MATE to operate with elevated privileges on a limited number of special-purpose system interfaces. Additionally, adding a service made by @code{mate-desktop-service} adds the MATE -metapackage to the system profile. +metapackage to the system profile. ``Adding ENLIGHTENMENT'' means that +@code{dbus} is extended appropriately, and several of Enlightenment's binaries +are set as setuid, allowing Enlightenment's screen locker and other +functionality to work as expetected. The desktop environments in Guix use the Xorg display server by default. If you'd like to use the newer display server protocol @@ -12613,8 +12786,20 @@ profile, and extends polkit with the actions from @code{mate-settings-daemon}. @end deffn +@deffn {Scheme Procedure} enlightenment-desktop-service-type +Return a service that adds the @code{enlightenment} package to the system +profile, and extends dbus with actions from @code{efl}. +@end deffn + +@deftp {Data Type} enlightenment-desktop-service-configuration +@table @asis +@item @code{enlightenment} (default @code{enlightenment}) +The enlightenment package to use. +@end table +@end deftp + Because the GNOME, XFCE and MATE desktop services pull in so many packages, -the default @code{%desktop-services} variable doesn't include either of +the default @code{%desktop-services} variable doesn't include any of them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto @code{%desktop-services} in the @code{services} field of your @code{operating-system}: @@ -12826,6 +13011,48 @@ bluetooth keyboard or mouse. Users need to be in the @code{lp} group to access the D-Bus service. @end deffn +@node Sound Services +@subsubsection Sound Services + +@cindex sound support +@cindex ALSA +@cindex PulseAudio, sound support + +The @code{(gnu services sound)} module provides an +@code{alsa-service-type} service to generate an ALSA +@file{/etc/asound.conf} configuration file. This configuration file is +what allows applications that produce sound using ALSA to be correctly +handled. + +@deffn {Scheme Variable} alsa-service-type +This is the type for the @uref{https://alsa-project.org/, ALSA}, +@command{alsa-configuration} record as in this example: + +@example +(service alsa-service-type) +@end example + +See below for details about @code{alsa-configuration}. +@end deffn + +@deftp {Data Type} alsa-configuration +Data type representing the configuration for @code{alsa-service}. + +@table @asis +@item @code{pulseaudio?} (default: @var{#t}) +Whether ALSA applications should transparently be made to use the +@uref{http://www.pulseaudio.org/, PulseAudio} sound server. + +Using PulseAudio allows you to run several sound-producing applications +at the same time and to individual control them @i{via} +@command{pavucontrol}, among other things. + +@item @code{extra-options} (default: @var{""}) +String to append to the @file{asound.conf} file. + +@end table +@end deftp + @node Database Services @subsubsection Database Services @@ -14864,6 +15091,9 @@ networking interface. @item @code{package} (default: @code{bitlbee}) The BitlBee package to use. +@item @code{plugins} (default: @code{'()}) +List of plugin packages to use---e.g., @code{bitlbee-discord}. + @item @code{extra-settings} (default: @code{""}) Configuration snippet added as-is to the BitlBee configuration file. @end table @@ -15963,6 +16193,64 @@ A simple setup for cat-avatar-generator can look like this: %base-services)) @end example +@subsubheading Hpcguix-web + +@cindex hpcguix-web +The @uref{hpcguix-web, https://github.com/UMCUGenetics/hpcguix-web/} +program is a customizable web interface to browse Guix packages, +initially designed for users of high-performance computing (HPC) +clusters. + +@defvr {Scheme Variable} hpcguix-web-service-type +The service type for @code{hpcguix-web}. +@end defvr + +@deftp {Data Type} hpcguix-web-configuration +Data type for the hpcguix-web service configuration. + +@table @asis +@item @code{specs} +A gexp (@pxref{G-Expressions}) specifying the hpcguix-web service +configuration. The main items available in this spec are: + +@table @asis +@item @code{title-prefix} (default: @code{"hpcguix | "}) +The page title prefix. + +@item @code{guix-command} (default: @code{"guix"}) +The @command{guix} command. + +@item @code{package-filter-proc} (default: @code{(const #t)}) +A procedure specifying how to filter packages that are displayed. + +@item @code{package-page-extension-proc} (default: @code{(const '())}) +Extension package for @code{hpcguix-web}. + +@item @code{menu} (default: @code{'()}) +Additional entry in page @code{menu}. +@end table + +See the hpcguix-web repository for a +@uref{https://github.com/UMCUGenetics/hpcguix-web/blob/master/hpcweb-configuration.scm, +complete example}. + +@item @code{package} (default: @code{hpcguix-web}) +The hpcguix-web package to use. +@end table +@end deftp + +A typical hpcguix-web service declaration looks like this: + +@example +(service hpcguix-web-service-type + (hpcguix-web-configuration + (specs + #~(define site-config + (hpcweb-configuration + (title-prefix "Guix-HPC - ") + (menu '(("/about" "ABOUT")))))))) +@end example + @node Certificate Services @subsubsection Certificate Services @@ -16117,7 +16405,11 @@ saved to @code{/etc/letsencrypt/live/@var{name}/privkey.pem}. The @code{(gnu services dns)} module provides services related to the @dfn{domain name system} (DNS). It provides a server service for hosting an @emph{authoritative} DNS server for multiple zones, slave or master. -This service uses @uref{https://www.knot-dns.cz/, Knot DNS}. +This service uses @uref{https://www.knot-dns.cz/, Knot DNS}. And also a +caching and forwarding DNS server for the LAN, which uses +@uref{http://www.thekelleys.org.uk/dnsmasq/doc.html, dnsmasq}. + +@subsubheading Knot Service An example configuration of an authoritative server for two zones, one master and one slave, is: @@ -16512,6 +16804,59 @@ The list of knot-zone-configuration used by this configuration. @end table @end deftp +@subsubheading Dnsmasq Service + +@deffn {Scheme Variable} dnsmasq-service-type +This is the type of the dnsmasq service, whose value should be an +@code{dnsmasq-configuration} object as in this example: + +@example +(service dnsmasq-service-type + (dnsmasq-configuration + (no-resolv? #t) + (servers '("192.168.1.1")))) +@end example +@end deffn + +@deftp {Data Type} dnsmasq-configuration +Data type representing the configuration of dnsmasq. + +@table @asis +@item @code{package} (default: @var{dnsmasq}) +Package object of the dnsmasq server. + +@item @code{no-hosts?} (default: @code{#f}) +When true, don't read the hostnames in /etc/hosts. + +@item @code{port} (default: @code{53}) +The port to listen on. Setting this to zero completely disables DNS +funtion, leaving only DHCP and/or TFTP. + +@item @code{local-service?} (default: @code{#t}) +Accept DNS queries only from hosts whose address is on a local subnet, +ie a subnet for which an interface exists on the server. + +@item @code{listen-addresses} (default: @code{'()}) +Listen on the given IP addresses. + +@item @code{resolv-file} (default: @code{"/etc/resolv.conf"}) +The file to read the IP address of the upstream nameservers from. + +@item @code{no-resolv?} (default: @code{#f}) +When true, don't read @var{resolv-file}. + +@item @code{servers} (default: @code{'()}) +Specify IP address of upstream servers directly. + +@item @code{cache-size} (default: @code{150}) +Set the size of dnsmasq's cache. Setting the cache size to zero +disables caching. + +@item @code{no-negcache?} (default: @code{#f}) +When true, disable negative caching. + +@end table +@end deftp @node VPN Services @subsubsection VPN Services @@ -19084,7 +19429,7 @@ Defaults to @samp{#f}. @end deftypevr -@deftypevr {@code{cgit-configuration} parameter} list project-list +@deftypevr {@code{cgit-configuration} parameter} project-list project-list A list of subdirectories inside of @code{repository-directory}, relative to it, that should loaded as Git repositories. An empty list means that all subdirectories will be loaded. diff --git a/etc/guix-install.sh b/etc/guix-install.sh index 78cd7580bb..d9f1955098 100755 --- a/etc/guix-install.sh +++ b/etc/guix-install.sh @@ -86,9 +86,7 @@ chk_require() _debug "--- [ $FUNCNAME ] ---" for c in ${cmds[@]}; do - command -v "$c" &>/dev/null - [ "$?" -eq "1" ] && - warn+=("$c") + command -v "$c" &>/dev/null || warn+=("$c") done [ "${#warn}" -ne 0 ] && diff --git a/gnu/bootloader/extlinux.scm b/gnu/bootloader/extlinux.scm index f7820a37a4..8b7a95a6fc 100644 --- a/gnu/bootloader/extlinux.scm +++ b/gnu/bootloader/extlinux.scm @@ -64,6 +64,7 @@ corresponding to old generations of the system." (format port "# This file was generated from your GuixSD configuration. Any changes # will be lost upon reconfiguration. UI menu.c32 +MENU TITLE GuixSD Boot Options PROMPT ~a TIMEOUT ~a~%" (if (> timeout 0) 1 0) diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index 3b01125c78..a131f3b506 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> @@ -31,6 +31,7 @@ #:use-module (gnu system) #:use-module (gnu bootloader) #:use-module (gnu system uuid) + #:use-module (gnu system file-systems) #:autoload (gnu packages bootloaders) (grub) #:autoload (gnu packages compression) (gzip) #:autoload (gnu packages gtk) (guile-cairo guile-rsvg) @@ -120,25 +121,14 @@ otherwise." (define* (svg->png svg #:key width height) "Build a PNG of HEIGHT x WIDTH from SVG." - ;; Note: Guile-RSVG & co. are now built for Guile 2.2, so we use 2.2 here. - ;; TODO: Remove #:guile-for-build when 2.2 has become the default. - (mlet %store-monad ((guile (package->derivation guile-2.2 #:graft? #f))) - (gexp->derivation "grub-image.png" - (with-imported-modules '((gnu build svg)) + (gexp->derivation "grub-image.png" + (with-imported-modules '((gnu build svg)) + (with-extensions (list guile-rsvg guile-cairo) #~(begin - ;; We need these two libraries. - (add-to-load-path (string-append #+guile-rsvg - "/share/guile/site/" - (effective-version))) - (add-to-load-path (string-append #+guile-cairo - "/share/guile/site/" - (effective-version))) - (use-modules (gnu build svg)) (svg->png #+svg #$output #:width #$width - #:height #$height))) - #:guile-for-build guile))) + #:height #$height)))))) (define* (grub-background-image config #:key (width 1024) (height 768)) "Return the GRUB background image defined in CONFIG with a ratio of @@ -303,9 +293,10 @@ code." ((? uuid? uuid) (format #f "search --fs-uuid --set ~a" (uuid->string device))) - ((? string? label) - (format #f "search --label --set ~a" label)) - (#f + ((? file-system-label? label) + (format #f "search --label --set ~a" + (file-system-label->string label))) + ((or #f (? string?)) #~(format #f "search --file --set ~a" #$file))))) (define* (grub-configuration-file config entries diff --git a/gnu/bootloader/u-boot.scm b/gnu/bootloader/u-boot.scm index 21d0aecce2..52b38dd1ab 100644 --- a/gnu/bootloader/u-boot.scm +++ b/gnu/bootloader/u-boot.scm @@ -33,7 +33,12 @@ u-boot-a20-olinuxino-micro-bootloader u-boot-banana-pi-m2-ultra-bootloader u-boot-beaglebone-black-bootloader - u-boot-nintendo-nes-classic-edition-bootloader)) + u-boot-mx6cuboxi-bootloader + u-boot-nintendo-nes-classic-edition-bootloader + u-boot-novena-bootloader + u-boot-pine64-plus-bootloader + u-boot-puma-rk3399-bootloader + u-boot-wandboard-bootloader)) (define install-u-boot #~(lambda (bootloader device mount-point) @@ -62,6 +67,33 @@ (write-file-on-device u-boot (stat:size (stat u-boot)) device (* 8 1024))))) +(define install-allwinner64-u-boot + #~(lambda (bootloader device mount-point) + (let ((spl (string-append bootloader "/libexec/spl/sunxi-spl.bin")) + (u-boot (string-append bootloader "/libexec/u-boot.itb"))) + (write-file-on-device spl (stat:size (stat spl)) + device (* 8 1024)) + (write-file-on-device u-boot (stat:size (stat u-boot)) + device (* 40 1024))))) + +(define install-imx-u-boot + #~(lambda (bootloader device mount-point) + (let ((spl (string-append bootloader "/libexec/SPL")) + (u-boot (string-append bootloader "/libexec/u-boot.img"))) + (write-file-on-device spl (stat:size (stat spl)) + device (* 1 1024)) + (write-file-on-device u-boot (stat:size (stat u-boot)) + device (* 69 1024))))) + +(define install-puma-rk3399-u-boot + #~(lambda (bootloader device mount-point) + (let ((spl (string-append bootloader "/libexec/u-boot-spl.rksd")) + (u-boot (string-append bootloader "/libexec/u-boot.itb"))) + (write-file-on-device spl (stat:size (stat spl)) + device (* 64 512)) + (write-file-on-device u-boot (stat:size (stat u-boot)) + device (* 512 512))))) + ;;; @@ -86,6 +118,16 @@ (inherit u-boot-bootloader) (installer install-allwinner-u-boot))) +(define u-boot-allwinner64-bootloader + (bootloader + (inherit u-boot-bootloader) + (installer install-allwinner64-u-boot))) + +(define u-boot-imx-bootloader + (bootloader + (inherit u-boot-bootloader) + (installer install-imx-u-boot))) + (define u-boot-nintendo-nes-classic-edition-bootloader (bootloader (inherit u-boot-allwinner-bootloader) @@ -110,3 +152,29 @@ (bootloader (inherit u-boot-allwinner-bootloader) (package u-boot-banana-pi-m2-ultra))) + +(define u-boot-mx6cuboxi-bootloader + (bootloader + (inherit u-boot-imx-bootloader) + (package u-boot-mx6cuboxi))) + +(define u-boot-wandboard-bootloader + (bootloader + (inherit u-boot-imx-bootloader) + (package u-boot-wandboard))) + +(define u-boot-novena-bootloader + (bootloader + (inherit u-boot-imx-bootloader) + (package u-boot-novena))) + +(define u-boot-pine64-plus-bootloader + (bootloader + (inherit u-boot-allwinner64-bootloader) + (package u-boot-pine64-plus))) + +(define u-boot-puma-rk3399-bootloader + (bootloader + (inherit u-boot-bootloader) + (package u-boot-puma-rk3399) + (installer install-puma-rk3399-u-boot))) diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index 145b3b14e7..3f97afeedd 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -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 © 2016, 2017 David Craven <david@craven.ch> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; @@ -473,17 +473,9 @@ were found." (find-partition luks-partition-uuid-predicate)) -(define* (canonicalize-device-spec spec #:optional (title 'any)) - "Return the device name corresponding to SPEC. TITLE is a symbol, one of -the following: - - • 'device', in which case SPEC is known to designate a device node--e.g., - \"/dev/sda1\"; - • 'label', in which case SPEC is known to designate a partition label--e.g., - \"my-root-part\"; - • 'uuid', in which case SPEC must be a UUID designating a partition; - • 'any', in which case SPEC can be anything. -" +(define (canonicalize-device-spec spec) + "Return the device name corresponding to SPEC, which can be a <uuid>, a +<file-system-label>, or a string (typically a /dev file name)." (define max-trials ;; Number of times we retry partition label resolution, 1 second per ;; trial. Note: somebody reported a delay of 16 seconds (!) before their @@ -491,19 +483,6 @@ the following: ;; this long. 20) - (define canonical-title - ;; The realm of canonicalization. - (if (eq? title 'any) - (if (string? spec) - ;; The "--root=SPEC" kernel command-line option always provides a - ;; string, but the string can represent a device, a UUID, or a - ;; label. So check for all three. - (cond ((string-prefix? "/" spec) 'device) - ((string->uuid spec) 'uuid) - (else 'label)) - 'uuid) - title)) - (define (resolve find-partition spec fmt) (let loop ((count 0)) (let ((device (find-partition spec))) @@ -518,23 +497,19 @@ the following: (sleep 1) (loop (+ 1 count)))))))) - (case canonical-title - ((device) - ;; Nothing to do. - spec) - ((label) + (match spec + ((? string?) + ;; Nothing to do, but wait until SPEC shows up. + (resolve identity spec identity)) + ((? file-system-label?) ;; Resolve the label. - (resolve find-partition-by-label spec identity)) - ((uuid) + (resolve find-partition-by-label + (file-system-label->string spec) + identity)) + ((? uuid?) (resolve find-partition-by-uuid - (cond ((string? spec) - (string->uuid spec)) - ((uuid? spec) - (uuid-bytevector spec)) - (else spec)) - uuid->string)) - (else - (error "unknown device title" title)))) + (uuid-bytevector spec) + uuid->string)))) (define (check-file-system device type) "Run a file system check of TYPE on DEVICE." @@ -615,8 +590,7 @@ run a file system check." ""))))) (let ((type (file-system-type fs)) (options (file-system-options fs)) - (source (canonicalize-device-spec (file-system-device fs) - (file-system-title fs))) + (source (canonicalize-device-spec (file-system-device fs))) (mount-point (string-append root "/" (file-system-mount-point fs))) (flags (mount-flags->bit-mask (file-system-flags fs)))) diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index 18d87260a9..44b3506284 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -507,9 +507,15 @@ upon error." (error "pre-mount actions failed"))) (if root - (mount-root-file-system (canonicalize-device-spec root) - root-fs-type - #:volatile-root? volatile-root?) + ;; The "--root=SPEC" kernel command-line option always provides a + ;; string, but the string can represent a device, a UUID, or a + ;; label. So check for all three. + (let ((root (cond ((string-prefix? "/" root) root) + ((uuid root) => identity) + (else (file-system-label root))))) + (mount-root-file-system (canonicalize-device-spec root) + root-fs-type + #:volatile-root? volatile-root?)) (mount "none" "/root" "tmpfs")) ;; Mount the specified file systems. diff --git a/gnu/build/marionette.scm b/gnu/build/marionette.scm index 173a67cef9..bb018fc9c1 100644 --- a/gnu/build/marionette.scm +++ b/gnu/build/marionette.scm @@ -26,6 +26,7 @@ make-marionette marionette-eval wait-for-file + wait-for-tcp-port marionette-control marionette-screen-text wait-for-screen-text @@ -187,6 +188,32 @@ FILE has not shown up after TIMEOUT seconds, raise an error." ('failure (error "file didn't show up" file)))) +(define* (wait-for-tcp-port port marionette + #:key (timeout 20)) + "Wait for up to TIMEOUT seconds for PORT to accept connections in +MARIONETTE. Raise an error on failure." + ;; Note: The 'connect' loop has to run within the guest because, when we + ;; forward ports to the host, connecting to the host never raises + ;; ECONNREFUSED. + (match (marionette-eval + `(begin + (let ((sock (socket PF_INET SOCK_STREAM 0))) + (let loop ((i 0)) + (catch 'system-error + (lambda () + (connect sock AF_INET INADDR_LOOPBACK ,port) + 'success) + (lambda args + (if (< i ,timeout) + (begin + (sleep 1) + (loop (+ 1 i))) + 'failure)))))) + marionette) + ('success #t) + ('failure + (error "nobody's listening on port" port)))) + (define (marionette-control command marionette) "Run COMMAND in the QEMU monitor of MARIONETTE. COMMAND is a string such as \"sendkey ctrl-alt-f1\" or \"screendump foo.ppm\" (info \"(qemu-doc) diff --git a/gnu/build/shepherd.scm b/gnu/build/shepherd.scm index c955e3c83f..f383259924 100644 --- a/gnu/build/shepherd.scm +++ b/gnu/build/shepherd.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -55,7 +55,6 @@ (define (tmpfs directory) (file-system (device "none") - (title 'device) (mount-point directory) (type "tmpfs") (check? #f))) diff --git a/gnu/build/svg.scm b/gnu/build/svg.scm index b5474ec4a0..6f1f4b3684 100644 --- a/gnu/build/svg.scm +++ b/gnu/build/svg.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com> ;;; ;;; This file is part of GNU Guix. @@ -18,16 +18,11 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu build svg) + #:use-module (rsvg) + #:use-module (cairo) #:use-module (srfi srfi-11) #:export (svg->png)) -;; We need Guile-RSVG and Guile-Cairo. Load them lazily, at run time, to -;; allow compilation to proceed. See also <http://bugs.gnu.org/12202>. -(module-autoload! (current-module) - '(rsvg) '(rsvg-handle-new-from-file)) -(module-autoload! (current-module) - '(cairo) '(cairo-image-surface-create)) - (define* (downscaled-surface surface #:key source-width source-height diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 527b4c495d..fa3ce7790d 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -106,11 +106,16 @@ the #:references-graphs parameter of 'derivation'." (not target-arm32?)) '("-enable-kvm") '()) + + ;; Pass "panic=1" so that the guest dies upon error. "-append" - ;; The serial port name differs between emulated architectures/machines. - ,@(if target-arm32? - `(,(string-append "console=ttyAMA0 --load=" builder)) - `(,(string-append "console=ttyS0 --load=" builder))) + ,(string-append "panic=1 --load=" builder + + ;; The serial port name differs between emulated + ;; architectures/machines. + " console=" + (if target-arm32? "ttyAMA0" "ttyS0")) + ;; NIC is not supported on ARM "virt" machine, so use a user mode ;; network stack instead. ,@(if target-arm32? @@ -265,7 +270,8 @@ actual /dev name based on DEVICE." #:key label uuid) "Create an ext-family file system of TYPE on PARTITION. If LABEL is true, use that as the volume name. If UUID is true, use it as the partition UUID." - (format #t "creating ~a partition...\n" type) + (format #t "creating ~a partition... ~@[label: ~s~] ~@[uuid: ~s~]\n" + type label (and uuid (uuid->string uuid))) (apply invoke (string-append "mkfs." type) "-F" partition `(,@(if label diff --git a/gnu/local.mk b/gnu/local.mk index 72de5f20b0..a4c27f6417 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1,6 +1,6 @@ # GNU Guix --- Functional package management for GNU # Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> -# Copyright © 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr> +# Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Andreas Enge <andreas@enge.fr> # 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> @@ -202,6 +202,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/graphics.scm \ %D%/packages/graphviz.scm \ %D%/packages/groff.scm \ + %D%/packages/groovy.scm \ %D%/packages/gsasl.scm \ %D%/packages/gstreamer.scm \ %D%/packages/gtk.scm \ @@ -225,7 +226,6 @@ GNU_SYSTEM_MODULES = \ %D%/packages/image-processing.scm \ %D%/packages/image-viewers.scm \ %D%/packages/imagemagick.scm \ - %D%/packages/indent.scm \ %D%/packages/inklingreader.scm \ %D%/packages/inkscape.scm \ %D%/packages/irc.scm \ @@ -343,6 +343,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/plotutils.scm \ %D%/packages/polkit.scm \ %D%/packages/popt.scm \ + %D%/packages/printers.scm \ %D%/packages/profiling.scm \ %D%/packages/pth.scm \ %D%/packages/pulseaudio.scm \ @@ -480,6 +481,7 @@ GNU_SYSTEM_MODULES = \ %D%/services/networking.scm \ %D%/services/nfs.scm \ %D%/services/shepherd.scm \ + %D%/services/sound.scm \ %D%/services/herd.scm \ %D%/services/pm.scm \ %D%/services/rsync.scm \ @@ -551,12 +553,15 @@ dist_patch_DATA = \ %D%/packages/patches/abiword-black-drawing-with-gtk322.patch \ %D%/packages/patches/acl-fix-perl-regex.patch \ %D%/packages/patches/acl-hurd-path-max.patch \ + %D%/packages/patches/adb-add-libraries.patch \ %D%/packages/patches/aegis-constness-error.patch \ %D%/packages/patches/aegis-perl-tempdir1.patch \ %D%/packages/patches/aegis-perl-tempdir2.patch \ %D%/packages/patches/aegis-test-fixup-1.patch \ %D%/packages/patches/aegis-test-fixup-2.patch \ %D%/packages/patches/agg-am_c_prototype.patch \ + %D%/packages/patches/alsa-lib-add-environment-variable.patch \ + %D%/packages/patches/amule-crypto-6.patch \ %D%/packages/patches/ansible-wrap-program-hack.patch \ %D%/packages/patches/antiword-CVE-2014-8123.patch \ %D%/packages/patches/antlr3-3_1-fix-java8-compilation.patch \ @@ -632,6 +637,7 @@ dist_patch_DATA = \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/doxygen-test.patch \ %D%/packages/patches/dvd+rw-tools-add-include.patch \ + %D%/packages/patches/e2fsprogs-glibc-2.27.patch \ %D%/packages/patches/eigen-arm-neon-fixes.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \ %D%/packages/patches/elixir-disable-failing-tests.patch \ @@ -644,6 +650,7 @@ dist_patch_DATA = \ %D%/packages/patches/emacs-highlight-stages-add-gexp.patch \ %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \ %D%/packages/patches/emacs-source-date-epoch.patch \ + %D%/packages/patches/enlightenment-fix-setuid-path.patch \ %D%/packages/patches/erlang-man-path.patch \ %D%/packages/patches/eudev-rules-directory.patch \ %D%/packages/patches/evilwm-lost-focus-bug.patch \ @@ -658,6 +665,8 @@ dist_patch_DATA = \ %D%/packages/patches/fasthenry-spFactor.patch \ %D%/packages/patches/fcgi-2.4.0-gcc44-fixes.patch \ %D%/packages/patches/fcgi-2.4.0-poll.patch \ + %D%/packages/patches/fifo-map-fix-flags-for-gcc.patch \ + %D%/packages/patches/fifo-map-remove-catch.hpp.patch \ %D%/packages/patches/file-CVE-2017-1000249.patch \ %D%/packages/patches/findutils-localstatedir.patch \ %D%/packages/patches/findutils-test-xargs.patch \ @@ -697,7 +706,6 @@ dist_patch_DATA = \ %D%/packages/patches/gd-CVE-2018-5711.patch \ %D%/packages/patches/gd-fix-tests-on-i686.patch \ %D%/packages/patches/gd-freetype-test-failure.patch \ - %D%/packages/patches/gegl-CVE-2012-4433.patch \ %D%/packages/patches/gemma-intel-compat.patch \ %D%/packages/patches/geoclue-config.patch \ %D%/packages/patches/ghc-8.0-fall-back-to-madv_dontneed.patch \ @@ -707,11 +715,6 @@ dist_patch_DATA = \ %D%/packages/patches/ghostscript-no-header-creationdate.patch \ %D%/packages/patches/ghostscript-runpath.patch \ %D%/packages/patches/giflib-make-reallocarray-private.patch \ - %D%/packages/patches/gimp-CVE-2017-17784.patch \ - %D%/packages/patches/gimp-CVE-2017-17785.patch \ - %D%/packages/patches/gimp-CVE-2017-17786.patch \ - %D%/packages/patches/gimp-CVE-2017-17787.patch \ - %D%/packages/patches/gimp-CVE-2017-17789.patch \ %D%/packages/patches/glib-networking-ssl-cert-file.patch \ %D%/packages/patches/glib-tests-timer.patch \ %D%/packages/patches/glibc-CVE-2015-5180.patch \ @@ -750,6 +753,7 @@ dist_patch_DATA = \ %D%/packages/patches/gpsbabel-qstring.patch \ %D%/packages/patches/grep-timing-sensitive-test.patch \ %D%/packages/patches/groff-source-date-epoch.patch \ + %D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \ %D%/packages/patches/gsl-test-i686.patch \ %D%/packages/patches/gspell-dash-test.patch \ %D%/packages/patches/guile-1.8-cpp-4.5.patch \ @@ -788,6 +792,7 @@ dist_patch_DATA = \ %D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/icecat-avoid-bundled-libraries.patch \ + %D%/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch \ %D%/packages/patches/icecat-use-system-graphite2.patch \ %D%/packages/patches/icecat-use-system-harfbuzz.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ @@ -807,6 +812,7 @@ dist_patch_DATA = \ %D%/packages/patches/jq-CVE-2015-8863.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \ %D%/packages/patches/khmer-use-libraries.patch \ + %D%/packages/patches/libziparchive-add-includes.patch \ %D%/packages/patches/kiki-level-selection-crash.patch \ %D%/packages/patches/kiki-makefile.patch \ %D%/packages/patches/kiki-missing-includes.patch \ @@ -854,13 +860,14 @@ dist_patch_DATA = \ %D%/packages/patches/libffi-3.2.1-complex-alpha.patch \ %D%/packages/patches/libjxr-fix-function-signature.patch \ %D%/packages/patches/libjxr-fix-typos.patch \ - %D%/packages/patches/liboop-mips64-deplibs-fix.patch \ %D%/packages/patches/libotr-test-auth-fix.patch \ %D%/packages/patches/liblxqt-include.patch \ %D%/packages/patches/libmad-armv7-thumb-pt1.patch \ %D%/packages/patches/libmad-armv7-thumb-pt2.patch \ %D%/packages/patches/libmad-frame-length.patch \ %D%/packages/patches/libmad-mips-newgcc.patch \ + %D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \ + %D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \ %D%/packages/patches/libsndfile-armhf-type-checks.patch \ %D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \ %D%/packages/patches/libsndfile-CVE-2017-8362.patch \ @@ -874,6 +881,8 @@ dist_patch_DATA = \ %D%/packages/patches/libtool-skip-tests2.patch \ %D%/packages/patches/libusb-0.1-disable-tests.patch \ %D%/packages/patches/libusb-for-axoloti.patch \ + %D%/packages/patches/libutils-add-includes.patch \ + %D%/packages/patches/libutils-remove-damaging-includes.patch \ %D%/packages/patches/libvdpau-va-gl-unbundle.patch \ %D%/packages/patches/libvpx-CVE-2016-2818.patch \ %D%/packages/patches/libxslt-generated-ids.patch \ @@ -926,13 +935,10 @@ dist_patch_DATA = \ %D%/packages/patches/mozjs38-tracelogger.patch \ %D%/packages/patches/mozjs38-version-detection.patch \ %D%/packages/patches/mumps-build-parallelism.patch \ - %D%/packages/patches/mupdf-build-with-latest-openjpeg.patch \ - %D%/packages/patches/mupdf-CVE-2017-17858.patch \ - %D%/packages/patches/mupdf-CVE-2018-6544.patch \ - %D%/packages/patches/mupdf-CVE-2018-1000051.patch \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \ %D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \ %D%/packages/patches/mutt-store-references.patch \ + %D%/packages/patches/myrepos-CVE-2018-7032.patch \ %D%/packages/patches/net-tools-bitrot.patch \ %D%/packages/patches/netcdf-date-time.patch \ %D%/packages/patches/netcdf-tst_h_par.patch \ @@ -975,6 +981,7 @@ dist_patch_DATA = \ %D%/packages/patches/patchelf-rework-for-arm.patch \ %D%/packages/patches/patchutils-xfail-gendiff-tests.patch \ %D%/packages/patches/patch-hurd-path-max.patch \ + %D%/packages/patches/perf-gcc-ice.patch \ %D%/packages/patches/perl-file-path-CVE-2017-6512.patch \ %D%/packages/patches/perl-autosplit-default-time.patch \ %D%/packages/patches/perl-dbd-mysql-CVE-2017-10788.patch \ @@ -995,6 +1002,7 @@ dist_patch_DATA = \ %D%/packages/patches/pinball-src-deps.patch \ %D%/packages/patches/pinball-system-ltdl.patch \ %D%/packages/patches/pingus-sdl-libs-config.patch \ + %D%/packages/patches/pius.patch \ %D%/packages/patches/pixman-CVE-2016-5296.patch \ %D%/packages/patches/plink-1.07-unclobber-i.patch \ %D%/packages/patches/plink-endian-detection.patch \ @@ -1039,7 +1047,6 @@ dist_patch_DATA = \ %D%/packages/patches/python-nose-timer-drop-ordereddict.patch \ %D%/packages/patches/python-pillow-fix-failing-tests.patch \ %D%/packages/patches/python2-rdflib-drop-sparqlwrapper.patch \ - %D%/packages/patches/python-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 \ @@ -1059,6 +1066,7 @@ dist_patch_DATA = \ %D%/packages/patches/qtbase-use-TZDIR.patch \ %D%/packages/patches/qtscript-disable-tests.patch \ %D%/packages/patches/quagga-reproducible-build.patch \ + %D%/packages/patches/quassel-qt-5.11.patch \ %D%/packages/patches/quickswitch-fix-dmenu-check.patch \ %D%/packages/patches/rapicorn-isnan.patch \ %D%/packages/patches/raptor2-heap-overflow.patch \ @@ -1085,9 +1093,9 @@ dist_patch_DATA = \ %D%/packages/patches/scotch-build-parallelism.patch \ %D%/packages/patches/scotch-graph-diam-64.patch \ %D%/packages/patches/scotch-graph-induce-type-64.patch \ + %D%/packages/patches/sddm-fix-build-with-qt-5.11-1024.patch \ %D%/packages/patches/sdl-libx11-1.6.patch \ %D%/packages/patches/seq24-rename-mutex.patch \ - %D%/packages/patches/shadow-CVE-2018-7169.patch \ %D%/packages/patches/sharutils-CVE-2018-1000097.patch \ %D%/packages/patches/shishi-fix-libgcrypt-detection.patch \ %D%/packages/patches/slim-session.patch \ @@ -1097,6 +1105,7 @@ dist_patch_DATA = \ %D%/packages/patches/slim-login.patch \ %D%/packages/patches/sooperlooper-build-with-wx-30.patch \ %D%/packages/patches/steghide-fixes.patch \ + %D%/packages/patches/strace-kernel-4.16.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ %D%/packages/patches/swish-e-search.patch \ %D%/packages/patches/swish-e-format-security.patch \ diff --git a/gnu/packages.scm b/gnu/packages.scm index 1a37a17342..7b954769e9 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -188,7 +188,7 @@ decreasing version order." version>?))) (if version (filter (lambda (package) - (string-prefix? version (package-version package))) + (version-prefix? version (package-version package))) matching) matching))))) diff --git a/gnu/packages/accessibility.scm b/gnu/packages/accessibility.scm index c9d9b099c5..d399f98f09 100644 --- a/gnu/packages/accessibility.scm +++ b/gnu/packages/accessibility.scm @@ -83,7 +83,7 @@ available to help to click.") (license license:gpl2+))) (define-public footswitch - (let ((commit "deedd87fd90fad90ce342aeabafd4a3198d7d3d4") + (let ((commit "ca43d53fc2002520cc825d119702afc124303e73") (revision "2")) (package (name "footswitch") @@ -95,7 +95,8 @@ available to help to click.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "1ys90wqyz62kffa8m3hgaq1dl7f29x3mrc3zqfjrkbn2ps0k6ps0")))) + (base32 + "14pyzc4ws1mj859xs9n4x83wzxxvd3bh5bdxzr6nv267xwx1mq68")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -112,6 +113,7 @@ available to help to click.") (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (install-file "footswitch" bin) + (install-file "scythe" bin) #t)))))) (home-page "https://github.com/rgerganov/footswitch") (synopsis "Command line utility for PCsensor foot switch") diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index a6abe86403..fde09b001b 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -50,8 +50,11 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages check) #:use-module (gnu packages cyrus-sasl) + #:use-module (gnu packages dns) + #:use-module (gnu packages file) #:use-module (gnu packages ncurses) #:use-module (gnu packages readline) #:use-module (gnu packages linux) @@ -70,6 +73,7 @@ #:use-module (gnu packages gnupg) #:use-module (gnu packages bison) #:use-module (gnu packages flex) + #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages openldap) #:use-module (gnu packages mcrypt) @@ -97,7 +101,8 @@ #:use-module (gnu packages xml) #:use-module (gnu packages boost) #:use-module (gnu packages elf) - #:use-module (gnu packages mpi)) + #:use-module (gnu packages mpi) + #:use-module (gnu packages web)) (define-public aide (package @@ -358,16 +363,15 @@ hostname.") (define-public shadow (package (name "shadow") - (version "4.5") + (version "4.6") (source (origin (method url-fetch) (uri (string-append "https://github.com/shadow-maint/shadow/releases/" "download/" version "/shadow-" version ".tar.xz")) - (patches (search-patches "shadow-CVE-2018-7169.patch")) (sha256 (base32 - "0hdpai78n63l3v3fgr3kkiqzhd0awrpfnnzz4mf7lmxdh61qb37w")))) + "10smy01km2bqjjvsd2jz17zvrxbzj89qczyb1amk38j28bcci609")))) (build-system gnu-build-system) (arguments `(;; Assume System V `setpgrp (void)', which is the default on GNU @@ -604,10 +608,10 @@ connection alive.") (define-public isc-dhcp (let* ((bind-major-version "9") - (bind-minor-version "9") - (bind-patch-version "11") - (bind-release-type "-P") ; for patch release, use "-P" - (bind-release-version "1") ; for patch release, e.g. "6" + (bind-minor-version "11") + (bind-patch-version "3") + (bind-release-type "") ; for patch release, use "-P" + (bind-release-version "") ; for patch release, e.g. "6" (bind-version (string-append bind-major-version "." bind-minor-version @@ -617,14 +621,14 @@ connection alive.") bind-release-version))) (package (name "isc-dhcp") - (version "4.3.6-P1") + (version "4.4.1") (source (origin (method url-fetch) (uri (string-append "http://ftp.isc.org/isc/dhcp/" version "/dhcp-" version ".tar.gz")) (sha256 (base32 - "1hx3az6ckvgvybr1ag4k9kqr8zfcpzcww4vpw5gz0mi8y2z7gl9g")))) + "025nfqx4zwdgv4b3rkw26ihcj312vir08jk6yi57ndmb4a4m08ia")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f @@ -724,7 +728,7 @@ connection alive.") "/bind-" bind-version ".tar.gz")) (sha256 (base32 - "1a4g6nzzrbmhngdgvgv1jjq4fm06m8fwc2a0gskkchplxl7dva20")))) + "1xbnb2b11274z9frc9y7nvkyxr52qx09bwb97gf9qzzcn8adx78d")))) ;; When cross-compiling, we need the cross Coreutils and sed. ;; Otherwise just use those from %FINAL-INPUTS. @@ -739,7 +743,7 @@ connection alive.") "ISC's Dynamic Host Configuration Protocol (DHCP) distribution provides a reference implementation of all aspects of DHCP, through a suite of DHCP tools: server, client, and relay agent.") - (license license:isc) + (license license:mpl2.0) (properties '((cpe-name . "dhcp")))))) (define-public libpcap @@ -959,7 +963,7 @@ system administrator.") (define-public sudo (package (name "sudo") - (version "1.8.22") + (version "1.8.23") (source (origin (method url-fetch) (uri @@ -969,7 +973,7 @@ system administrator.") version ".tar.gz"))) (sha256 (base32 - "00pxp74xkwdcmrjwy55j0k8p684jk1zx3nzdc11v30q8q8kwnmkj")) + "0yg62wq8rcrbr7qvh3wgfg2g4bwanbi50cr2lf2cfyy8dydx4qyq")) (modules '((guix build utils))) (snippet '(begin @@ -1261,7 +1265,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).") (define-public acpica (package (name "acpica") - (version "20180313") + (version "20180531") (source (origin (method url-fetch) (uri (string-append @@ -1269,7 +1273,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).") version ".tar.gz")) (sha256 (base32 - "16galaadmr37q2pvk2gyxrm8d1xldzk31djfxfq9v1c9yq4i425h")))) + "0q7vg1nr51f3rg16vjh4glz361a64r6gpm46fqkl2jf4fq7g43g5")))) (build-system gnu-build-system) (native-inputs `(("flex" ,flex) ("bison" ,bison))) @@ -1278,7 +1282,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).") "CC=gcc" "HOST=_LINUX" "OPT_CFLAGS=-Wall -fno-strict-aliasing") - #:tests? #f ; no 'check' target. + #:tests? #f ; no 'check' target #:phases (modify-phases %standard-phases (delete 'configure)))) (home-page "https://acpica.org/") (synopsis "Tools for the development and debug of ACPI tables") @@ -1290,7 +1294,7 @@ of ACPI meant to be directly integrated into the host OS as a kernel-resident subsystem, and a small set of tools to assist in developing and debugging ACPI tables. This package contains only the user-space tools needed for ACPI table development, not the kernel implementation of ACPI.") - (license license:gpl2))) ; Dual GPLv2/ACPICA Licence + (license license:gpl2))) ; dual GPLv2/ACPICA Licence (define-public stress (package @@ -1949,7 +1953,7 @@ throughput (in the same interval).") (define-public thefuck (package (name "thefuck") - (version "3.26") + (version "3.27") (source (origin (method url-fetch) (uri (string-append "https://github.com/nvbn/thefuck/archive/" @@ -1957,7 +1961,7 @@ throughput (in the same interval).") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0ddlf25ik97z34bcpc52xyfhlfm6a3hdi43l6cz4ggwcawdwvn1p")) + "0my32n2x8x0f0wr8ql7qgk9qhb6ibv5b1rqs5b2r4nadv0gpiv96")) (patches (search-patches "thefuck-test-environ.patch")))) (build-system python-build-system) (arguments @@ -2478,7 +2482,7 @@ make it a perfect utility on modern distros.") (define-public thermald (package (name "thermald") - (version "1.7.1") + (version "1.7.2") (source (origin (method url-fetch) @@ -2486,25 +2490,15 @@ make it a perfect utility on modern distros.") version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0isgmav3z3nb5bsdya8m3haqhzj1lyfjx7i812cqfjrh2a9msin4")))) + "15a6vb67y5wsmf0irrq7sxam18yqpz64130k83ryf24mp40h661b")))) (build-system gnu-build-system) (arguments - `(#:phases (modify-phases %standard-phases - (add-after - '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 - (substitute* "data/Makefile.am" - (("upstartconfdir = /etc/init") - (string-append "upstartconfdir = " - out "/etc/init"))) - ;; Now run autogen - (invoke "sh" "autogen.sh") - #t)))) + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + (invoke "sh" "autogen.sh") + #t))) #:configure-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "--sysconfdir=" @@ -2526,7 +2520,7 @@ make it a perfect utility on modern distros.") (synopsis "CPU scaling for thermal management") (description "The Linux Thermal Daemon helps monitor and control temperature on systems running the Linux kernel.") - ;; arm and aarch64 don't have cpuid.h + ;; arm and aarch64 don't have cpuid.h. (supported-systems '("i686-linux" "x86_64-linux")) (license license:gpl2+))) @@ -2662,3 +2656,116 @@ Python loading in HPC environments.") ;; This package supports x86_64 and PowerPC64 (supported-systems '("x86_64-linux")) (license license:lgpl2.1))) + +(define-public inxi-minimal + (let ((real-name "inxi")) + (package + (name "inxi-minimal") + (version "3.0.11-1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/smxi/inxi") + (commit version))) + (sha256 + (base32 + "07wihl4gsamq98mhxvm6k4vpphym75467cxfa19b3g5ggpyq894g")))) + (build-system trivial-build-system) + (inputs + `(("bash" ,bash) + ("perl" ,perl))) + (native-inputs + `(("gzip" ,gzip))) + (arguments + `(#:modules + ((guix build utils) + (ice-9 match) + (srfi srfi-26)) + #:builder + (begin + (use-modules (guix build utils) + (ice-9 match) + (srfi srfi-26)) + (setenv "PATH" (string-append + (assoc-ref %build-inputs "bash") "/bin" ":" + (assoc-ref %build-inputs "gzip") "/bin" ":" + (assoc-ref %build-inputs "perl") "/bin" ":")) + (copy-recursively (assoc-ref %build-inputs "source") + ,(string-append real-name "-" version)) + (with-directory-excursion ,(string-append real-name "-" version) + (with-fluids ((%default-port-encoding #f)) + (substitute* "inxi" (("/usr/bin/env perl") (which "perl")))) + (let ((bin (string-append %output "/bin"))) + (install-file "inxi" bin) + (wrap-program (string-append bin "/inxi") + `("PATH" ":" = + ("$PATH" + ,@(map (lambda (input) + (match input + ((name . store) + (let ((store-append + (cut string-append store <>))) + (cond + ((member name '("util-linux")) + (string-append (store-append "/bin") ":" + (store-append "/sbin"))) + ((member name '("dmidecode" "iproute2")) + (store-append "/sbin")) + (else (store-append "/bin"))))))) + %build-inputs))) + `("PERL5LIB" ":" = + ,(delete + "" + (map (match-lambda + (((? (cut string-prefix? "perl-" <>) name) . dir) + (string-append dir "/lib/perl5/site_perl")) + (_ "")) + %build-inputs))))) + (invoke "gzip" "inxi.1") + (install-file "inxi.1.gz" + (string-append %output "/share/man/man1"))) + #t))) + (home-page "https://smxi.org/docs/inxi.htm") + (synopsis "Full featured system information script") + (description "Inxi is a system information script that can display +various things about your hardware and software to users in an IRC chatroom or +support forum. It runs with the /exec command in most IRC clients.") + (license license:gpl3+)))) + +(define-public inxi + (package + (inherit inxi-minimal) + (name "inxi") + (inputs + `(("dmidecode" ,dmidecode) + ("file" ,file) + ("bind:utils" ,isc-bind "utils") ; dig + ("gzip" ,gzip) + ("iproute2" ,iproute) ; ip + ("kmod" ,kmod) ; modinfo + ("lm-sensors" ,lm-sensors) + ("mesa-utils" ,mesa-utils) + ("pciutils" ,pciutils) + ("procps" ,procps) + ("tar" ,tar) + ("tree" ,tree) + ("util-linux" ,util-linux) ; lsblk + ("usbutils" ,usbutils) ; lsusb + ("wmctrl" ,wmctrl) + ("xdpyinfo" ,xdpyinfo) + ("xprop" ,xprop) + ("xrandr" ,xrandr) + ("coreutils" ,coreutils) ; uptime + ("inetutils" ,inetutils) ; ifconfig + ("perl-cpanel-json-xs" ,perl-cpanel-json-xs) + ("perl-http-tiny" ,perl-http-tiny) + ("perl-io-socket-ssl" ,perl-io-socket-ssl) + ("perl-json-xs" ,perl-json-xs) + ("perl-time-hires" ,perl-time-hires) + ;; TODO: Add more inputs: + ;; ipmi-sensors + ;; hddtemp + ;; perl-xml-dumper + ;; ipmitool + ,@(package-inputs inxi-minimal))))) diff --git a/gnu/packages/aidc.scm b/gnu/packages/aidc.scm index 7093c7467c..4615b346d6 100644 --- a/gnu/packages/aidc.scm +++ b/gnu/packages/aidc.scm @@ -51,15 +51,15 @@ formats.") (define-public qrencode (package (name "qrencode") - (version "3.4.4") + (version "4.0.0") (source (origin (method url-fetch) (uri (string-append "https://fukuchi.org/works/qrencode/qrencode-" version - ".tar.gz")) + ".tar.bz2")) (sha256 (base32 - "0wiagx7i8p9zal53smf5abrnh9lr31mv0p36wg017401jrmf5577")))) + "02vx69fl52jbcrmnydsaxcmy6nxqm9jyxzd7hr07s491d7hka069")))) (build-system gnu-build-system) (inputs `(("libpng" ,libpng))) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 57cf583e44..816f013655 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> -;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2014, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> @@ -27,7 +27,9 @@ (define-module (gnu packages algebra) #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages check) #:use-module (gnu packages compression) + #:use-module (gnu packages cpp) #:use-module (gnu packages documentation) #:use-module (gnu packages ed) #:use-module (gnu packages flex) @@ -60,15 +62,15 @@ (define-public mpfrcx (package (name "mpfrcx") - (version "0.4.2") + (version "0.5") (source (origin (method url-fetch) (uri (string-append - "http://www.multiprecision.org/mpfrcx/download/mpfrcx-" + "http://www.multiprecision.org/downloads/mpfrcx-" version ".tar.gz")) (sha256 (base32 - "0grw66b255r574lvll1bqccm5myj2m8ajzsjaygcyq9zjnnbnhhy")))) + "1s968480ymv6w0rnvfp9mxvx98hvi29fkvw8nk4ggzc6azxgwybs")))) (build-system gnu-build-system) (propagated-inputs `(("gmp" ,gmp) @@ -82,7 +84,7 @@ on the rounding. For the time being, only the few functions needed to implement the floating point approach to complex multiplication are implemented. On the other hand, these comprise asymptotically fast multiplication routines such as Toom–Cook and the FFT.") - (license license:lgpl2.1+) + (license license:lgpl3+) (home-page "http://mpfrcx.multiprecision.org/"))) (define-public cm @@ -211,7 +213,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") (define-public giac-xcas (package (name "giac-xcas") - (version "1.4.9-45") + (version "1.4.9-59") (source (origin (method url-fetch) ;; "~parisse/giac" is not used because the maintainer regularly @@ -223,7 +225,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") "source/giac_" version ".tar.gz")) (sha256 (base32 - "11za5rznr2dgy6598y4iwrcyi86w7f601ci9i794kl8k22pqhcd8")))) + "0dv5p5y6gkrsmz3xa7fw87rjyabwdwk09mqb09kb7gai9n9dgayk")))) (build-system gnu-build-system) (arguments `(#:phases @@ -532,22 +534,22 @@ a C program.") (build-system gnu-build-system) (arguments `(#:configure-flags - `("--enable-shared" "--enable-openmp" "--enable-threads" - ,,@(let ((system (or (%current-target-system) (%current-system)))) - ;; Enable SIMD extensions for codelets. See details at: - ;; <http://fftw.org/fftw3_doc/Installation-on-Unix.html>. - (cond - ((string-prefix? "x86_64" system) - '("--enable-sse2" "--enable-avx" "--enable-avx2" - "--enable-avx512" "--enable-avx-128-fma")) - ((string-prefix? "i686" system) - '("--enable-sse2")) - ((string-prefix? "aarch64" system) - '("--enable-neon" "--enable-armv8-cntvct-el0")) - ((string-prefix? "arm" system) ;neon only for single-precision - '("--enable-armv7a-cntvct")) ;on 32-bit arm - ((string-prefix? "mips" system) - '("--enable-mips-zbus-timer")))) + '("--enable-shared" "--enable-openmp" "--enable-threads" + ,@(let ((system (or (%current-target-system) (%current-system)))) + ;; Enable SIMD extensions for codelets. See details at: + ;; <http://fftw.org/fftw3_doc/Installation-on-Unix.html>. + (cond + ((string-prefix? "x86_64" system) + '("--enable-sse2" "--enable-avx" "--enable-avx2" + "--enable-avx512" "--enable-avx-128-fma")) + ((string-prefix? "i686" system) + '("--enable-sse2")) + ((string-prefix? "aarch64" system) + ;; Note that fftw supports NEON on 32-bit ARM only when + ;; compiled for single-precision. + '("--enable-neon")) + (else + '()))) ;; By default '-mtune=native' is used. However, that may cause the ;; use of ISA extensions (e.g. AVX) that are not necessarily ;; available on the user's machine when that package is built on a @@ -568,11 +570,15 @@ cosine/ sine transforms or DCT/DST).") (name "fftwf") (arguments (substitute-keyword-arguments (package-arguments fftw) - ((#:configure-flags cf) - (if (string-prefix? "arm" (or (%current-target-system) - (%current-system))) - `(cons "--enable-neon" ,cf) - cf)))) + ((#:configure-flags fftw-configure-flags) + `(cons* "--enable-single" + ,@(if (string-prefix? "arm" (or (%current-target-system) + (%current-system))) + ;; fftw supports NEON on 32-bit ARM only when compiled + ;; for single-precision, so add it here. + '("--enable-neon") + '()) + ,fftw-configure-flags)))) (description (string-append (package-description fftw) " Single-precision version.")))) @@ -708,9 +714,10 @@ Sine Transform} (DST) and @dfn{Discrete Hartley Transform} (DHT).") ;; but maintainers say it's a known issue and it's unsupported ;; anyway, so just skip them. '(begin + (substitute* "unsupported/CMakeLists.txt" + (("add_subdirectory\\(test.*") + "# Do not build the tests for unsupported features.\n")) (substitute* "CMakeLists.txt" - (("add_subdirectory\\(unsupported\\)") - "# Do not build the tests for unsupported features.\n") ;; Work around ;; <http://eigen.tuxfamily.org/bz/show_bug.cgi?id=1114>. (("\"include/eigen3\"") @@ -751,3 +758,37 @@ features, and more.") ;; Most of the code is MPLv2, with a few files under LGPLv2.1+ or BSD-3. ;; See 'COPYING.README' for details. (license license:mpl2.0))) + +(define-public xtensor + (package + (name "xtensor") + (version "0.15.9") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/QuantStack/xtensor/archive/" + version ".tar.gz")) + (sha256 + (base32 + "0mlsw4p1w5mh7pscddfdamz27zq3wml5qla3vbzgvif34vsqc8ra")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system cmake-build-system) + (native-inputs + `(("googletest" ,googletest) + ("xtl" ,xtl))) + (arguments + `(#:configure-flags + '("-DBUILD_TESTS=ON") + #:test-target "xtest")) + (home-page "http://quantstack.net/xtensor") + (synopsis "C++ tensors with broadcasting and lazy computing") + (description "xtensor is a C++ library meant for numerical analysis with +multi-dimensional array expressions. + +xtensor provides: +@itemize +@item an extensible expression system enabling lazy broadcasting. +@item an API following the idioms of the C++ standard library. +@item tools to manipulate array expressions and build upon xtensor. +@end itemize") + (license license:bsd-3))) diff --git a/gnu/packages/android.scm b/gnu/packages/android.scm index 105e3d1775..7618c0e1f6 100644 --- a/gnu/packages/android.scm +++ b/gnu/packages/android.scm @@ -27,18 +27,73 @@ #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system android-ndk) #:use-module (guix build-system python) #:use-module (guix build-system trivial) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages) #:use-module (gnu packages check) + #:use-module (gnu packages compression) #:use-module (gnu packages gnupg) + #:use-module (gnu packages pcre) #:use-module (gnu packages python) + #:use-module (gnu packages selinux) #:use-module (gnu packages ssh) #:use-module (gnu packages version-control) #:use-module (gnu packages tls) #:use-module (gnu packages linux)) +(define-public android-make-stub + (package + (name "android-make-stub") + (version "0.6.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/daym/android-make-stub.git") + (commit (string-append "v" version)))) + (file-name (string-append "android-make-stub-" + version "-checkout")) + (sha256 + (base32 + "0y1b2x96d37n6f1bp6dcx08bn08zac0cylmbfsx6mf2nahc02fhc")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; None exist. + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (invoke "make" (string-append "prefix=" out) "install") + #t)))))) + (home-page "https://github.com/daym/android-make-stub") + (synopsis "Stubs for the @command{make} system of the Android platform") + (description "@code{android-make-stub} provides stubs for the +@command{make} system of the Android platform. This allows us to +use their packages mostly unmodified in our Android NDK build system.") + (license license:asl2.0))) + +(define-public android-googletest + (package (inherit googletest) + (name "android-googletest") + (arguments + `(#:configure-flags '("-DBUILD_SHARED_LIBS=ON") + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-host-libraries + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib"))) + (symlink "libgtest.so" + (string-append lib "/libgtest_host.so")) + (symlink "libgmock.so" + (string-append lib "/libgmock_host.so")) + #t)))))))) + ;; The Makefiles that we add are largely based on the Debian ;; packages. They are licensed under GPL-2 and have copyright: ;; 2012, Stefan Handschuh <handschuh.stefan@googlemail.com> @@ -58,52 +113,69 @@ version "-checkout")) (sha256 (base32 - "0xc2n7jxrf1iw9cc278pijdfjix2fkiig5ws27f6rwp40zg5mrgg")))) + "0xc2n7jxrf1iw9cc278pijdfjix2fkiig5ws27f6rwp40zg5mrgg")) + (patches + (search-patches "libbase-use-own-logging.patch" + "libbase-fix-includes.patch" + "libutils-remove-damaging-includes.patch" + "libutils-add-includes.patch" + "adb-add-libraries.patch" + "libziparchive-add-includes.patch")))) + +(define (android-platform-system-extras version) + (origin + (method git-fetch) + (uri (git-reference + (url "https://android.googlesource.com/platform/system/extras") + (commit (string-append "android-" version)))) + (file-name (string-append "android-platform-system-extras-" + version "-checkout")) + (sha256 + (base32 + "18130c23ybqcpgjc5v6f8kdbv2xn39hyiaj17dzldjb9rlwzcyy9")))) + +(define (android-platform-bionic version) + (origin + (method git-fetch) + (uri (git-reference + (url "https://android.googlesource.com/platform/bionic") + (commit (string-append "android-" version)))) + (file-name (string-append "android-platform-bionic-" + version "-checkout")) + (sha256 + (base32 + "0n9wkz3ynqw39if1ss9n32m66iga14nndf29hpm7g1aqn4wvvgzk")))) + +(define (android-platform-external version subdirectory checksum) + (origin + (method git-fetch) + (uri (git-reference + (url + (string-append "https://android.googlesource.com/platform/external/" + subdirectory)) + (commit (string-append "android-" version)))) + (file-name (string-append "android-platform-system-external-" subdirectory "-" + version "-checkout")) + (sha256 + (base32 + checksum)))) -(define liblog +(define android-liblog (package - (name "liblog") + (name "android-liblog") (version (android-platform-version)) (source (android-platform-system-core version)) - (build-system gnu-build-system) + (build-system android-ndk-build-system) (arguments - `(#:tests? #f ; TODO. - #:make-flags '("CC=gcc") + `(#:make-flags '("LDLIBS=-lpthread") #:phases (modify-phases %standard-phases (add-after 'unpack 'enter-source (lambda _ (chdir "liblog") #t)) - (add-after 'enter-source 'create-Makefile - (lambda _ - ;; No useful makefile is shipped, so we create one. - (with-output-to-file "Makefile" - (lambda _ - (display - (string-append - "NAME = liblog\n" - "SOURCES = log_event_list.c log_event_write.c" - " logger_write.c config_write.c logger_name.c" - " logger_lock.c fake_log_device.c fake_writer.c" - " event_tag_map.c\n" - - "CFLAGS += -fvisibility=hidden -fPIC\n" - "CPPFLAGS += -I../include -DFAKE_LOG_DEVICE=1" - ;; Keep these two in sync with "liblog/Android.bp". - " -DLIBLOG_LOG_TAG=1005" - " -DSNET_EVENT_LOG_TAG=1397638484\n" - "LDFLAGS += -shared -Wl,-soname,$(NAME).so.0 -lpthread\n" - - "build: $(SOURCES)\n" - " $(CC) $^ -o $(NAME).so.0 $(CFLAGS) $(CPPFLAGS) $(LDFLAGS)\n")) - #t)))) - (delete 'configure) - (replace 'install + (add-after 'install 'ldconfig (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib"))) - (install-file "liblog.so.0" lib) - (with-directory-excursion lib - (symlink "liblog.so.0" "liblog.so")) + (let ((out (assoc-ref outputs "out"))) + (symlink "liblog.so.0" (string-append out "/lib/liblog.so")) #t)))))) (home-page "https://developer.android.com/") (synopsis "Logging library from the Android platform.") @@ -113,62 +185,29 @@ interfaces for either writing or reading logs. The log buffers are divided up in Main, System, Radio and Events sub-logs.") (license license:asl2.0))) -(define libbase +(define android-libbase (package - (name "libbase") + (name "android-libbase") (version (android-platform-version)) - (source (origin - (inherit (android-platform-system-core version)) - (patches - (search-patches "libbase-use-own-logging.patch" - "libbase-fix-includes.patch")))) - (build-system gnu-build-system) + (source (android-platform-system-core version)) + (build-system android-ndk-build-system) (arguments - `(#:tests? #f ; TODO. + `(#:tests? #f ; Test failure: logging.UNIMPLEMENTED + #:make-flags '("CXXFLAGS=-std=gnu++11") #:phases (modify-phases %standard-phases (add-after 'unpack 'enter-source - (lambda _ (chdir "base") #t)) - (add-after 'enter-source 'create-Makefile - (lambda _ - ;; No useful makefile is shipped, so we create one. - (with-output-to-file "Makefile" - (lambda _ - (display - (string-append - "NAME = libbase\n" - "SOURCES = file.cpp logging.cpp parsenetaddress.cpp" - " stringprintf.cpp strings.cpp errors_unix.cpp\n" - - "CXXFLAGS += -std=gnu++11 -fPIC\n" - "CPPFLAGS += -Iinclude -I../include\n" - "LDFLAGS += -shared -Wl,-soname,$(NAME).so.0" - " -L.. -llog\n" - - "build: $(SOURCES)\n" - " $(CXX) $^ -o $(NAME).so.0 $(CXXFLAGS) $(CPPFLAGS)" - " $(LDFLAGS)\n")) - #t)))) - (delete 'configure) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib"))) - (install-file "libbase.so.0" lib) - (with-directory-excursion lib - (symlink "libbase.so.0" "libbase.so")) - (copy-recursively "include" out) - #t)))))) - (inputs `(("liblog" ,liblog))) + (lambda _ (chdir "base") #t))))) + (inputs `(("android-liblog" ,android-liblog))) (home-page "https://developer.android.com/") (synopsis "Android platform base library") (description "@code{libbase} is a library in common use by the various Android core host applications.") (license license:asl2.0))) -(define libcutils +(define android-libcutils (package - (name "libcutils") + (name "android-libcutils") (version (android-platform-version)) (source (android-platform-system-core version)) (build-system gnu-build-system) @@ -206,10 +245,13 @@ various Android core host applications.") (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib"))) + (lib (string-append out "/lib")) + (include (string-append out "/include"))) (install-file "libcutils.so.0" lib) (with-directory-excursion lib (symlink "libcutils.so.0" "libcutils.so")) + (copy-recursively "../include/cutils" + (string-append include "/cutils")) #t)))))) (home-page "https://developer.android.com/") (synopsis "Android platform c utils library") @@ -217,90 +259,92 @@ various Android core host applications.") various Android core host applications.") (license license:asl2.0))) +(define-public android-libsparse + (package + (name "android-libsparse") + (version (android-platform-version)) + (source (android-platform-system-core version)) + (build-system android-ndk-build-system) + (arguments + `(#:make-flags '("CFLAGS=-Wno-error" + "CXXFLAGS=-fpermissive -Wno-error") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source + (lambda _ (chdir "libsparse") #t))))) + (inputs + `(("zlib" ,zlib))) + (home-page "https://developer.android.com/") + (synopsis "Android platform sparse library") + (description "@code{android-libsparse} is a library in common use by the +various Android core host applications.") + (license license:asl2.0))) + +(define-public android-libziparchive + (package + (name "android-libziparchive") + (version (android-platform-version)) + (source (android-platform-system-core version)) + (build-system android-ndk-build-system) + (arguments + `(#:make-flags '("CFLAGS=-Wno-error" + "CXXFLAGS=-fpermissive -Wno-error -std=gnu++11") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source + (lambda _ (chdir "libziparchive") #t)) + (add-before 'check 'setenv + (lambda _ + (setenv "ziparchive_tests_host_PARAMS" "--test_data_dir=testdata") + #t)) + (add-after 'install 'install-headers + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (copy-recursively "../include/ziparchive" + (string-append out "/include/ziparchive")) + #t)))))) + (inputs + `(("zlib" ,zlib))) + (native-inputs + `(("android-libbase" ,android-libbase) + ("android-libutils" ,android-libutils) + ("android-liblog" ,android-liblog))) + (home-page "https://developer.android.com/") + (synopsis "Android platform ZIP library") + (description "@code{android-libziparchive} is a library in common use by the +various Android core host applications.") + (license license:asl2.0))) + (define-public adb (package (name "adb") (version (android-platform-version)) - (source (origin - (inherit (android-platform-system-core version)) - (patches - (search-patches "libbase-use-own-logging.patch" - "libbase-fix-includes.patch")))) - (build-system gnu-build-system) + (source (android-platform-system-core version)) + (build-system android-ndk-build-system) (arguments - `(#:phases + `(#:tests? #f ; Test failure: sysdeps_poll.fd_count + #:make-flags + (list "CFLAGS=-Wno-error" + "CXXFLAGS=-fpermissive -Wno-error -std=gnu++14 -D_Nonnull= -D_Nullable= -I ." + (string-append "LDFLAGS=-Wl,-rpath=" (assoc-ref %outputs "out") "/lib " + "-Wl,-rpath=" (assoc-ref %build-inputs "openssl") "/lib -L .")) + #:phases (modify-phases %standard-phases (add-after 'unpack 'enter-source (lambda _ (chdir "adb") #t)) - (add-before 'build 'fix-clang - (lambda _ - ;; adb_client.h contains _Nonnull and _Nullable attributes, that - ;; are not understood by gcc. - (substitute* "adb_client.h" - (("_Nonnull") "") - (("_Nullable") "")) - #t)) - (add-before 'build 'fix-main - (lambda _ - ;; main.cpp used to be adb_main.cpp in the current directory - ;; rather than in its own subdirectory, but it was not fixed. - ;; This leads to some header files not being found anymore. - (copy-file "client/main.cpp" "adb_main.cpp") + (add-after 'enter-source 'make-libs-available + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "Android.mk" + (("libcrypto_static") "libcrypto")) #t)) - (add-after 'enter-source 'create-Makefile - (lambda* (#:key outputs #:allow-other-keys) - ;; No useful makefile is shipped, so we create one. - (with-output-to-file "Makefile" - (lambda _ - (display - (string-append - ;; Common for all components. - "CXXFLAGS += -std=gnu++14 -fpermissive\n" - "CPPFLAGS += -I../include -I../base/include -I. -DADB_HOST=1 " - "-DADB_REVISION='\"" ,version "\"' -fPIC\n" - "LDFLAGS += -lcrypto -lpthread -lbase -lcutils -L. -ladb\n" - - ;; Libadb specifics. - "LIBADB_SOURCES = adb.cpp adb_auth.cpp adb_io.cpp " - "adb_listeners.cpp adb_trace.cpp adb_utils.cpp fdevent.cpp " - "sockets.cpp transport.cpp transport_local.cpp transport_usb.cpp " - "get_my_path_linux.cpp sysdeps_unix.cpp usb_linux.cpp " - "adb_auth_host.cpp diagnose_usb.cpp services.cpp " - "shell_service_protocol.cpp bugreport.cpp line_printer.cpp\n" - - "LIBADB_LDFLAGS += -shared -Wl,-soname,libadb.so.0 " - "-lcrypto -lpthread -lbase\n" - - ;; Adb specifics. - "ADB_SOURCES = adb_main.cpp console.cpp commandline.cpp " - "adb_client.cpp file_sync_client.cpp\n" - "ADB_LDFLAGS += -Wl,-rpath=" (assoc-ref outputs "out") "/lib\n" - - "build: libadb $(ADB_SOURCES)\n" - " $(CXX) $(ADB_SOURCES) -o adb $(CXXFLAGS) $(CPPFLAGS) " - "$(ADB_LDFLAGS) $(LDFLAGS)\n" - - "libadb: $(LIBADB_SOURCES)\n" - " $(CXX) $^ -o libadb.so.0 $(CXXFLAGS) $(CPPFLAGS) " - "$(LIBADB_LDFLAGS)\n" - " ln -sv libadb.so.0 libadb.so\n")) - #t)))) - (delete 'configure) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (lib (string-append out "/lib")) - (bin (string-append out "/bin"))) - (install-file "libadb.so.0" lib) - (install-file "adb" bin) - (with-directory-excursion lib - (symlink "libadb.so.0" "libadb.so")) - #t)))) - ;; Test suite must be run with attached devices - #:tests? #f)) + (add-after 'install 'install-headers + (lambda* (#:key inputs outputs #:allow-other-keys) + (install-file "diagnose_usb.h" (string-append (assoc-ref outputs "out") "/include")) + #t))))) (inputs - `(("libbase" ,libbase) - ("libcutils" ,libcutils) + `(("android-libbase" ,android-libbase) + ("android-libcutils" ,android-libcutils) + ("android-liblog" ,android-liblog) ("openssl" ,openssl))) (home-page "https://developer.android.com/studio/command-line/adb.html") (synopsis "Android Debug Bridge") @@ -329,8 +373,10 @@ to a Unix shell that can run commands on the connected device or emulator.") (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) + (bin (string-append out "/bin")) + (include (string-append out "/include"))) (install-file "mkbootimg" bin) + (install-file "bootimg.h" include) #t)))))) (home-page "https://developer.android.com/studio/command-line/adb.html") (synopsis "Tool to create Android boot images") @@ -338,6 +384,263 @@ to a Unix shell that can run commands on the connected device or emulator.") Images.") (license license:asl2.0))) +(define-public android-safe-iop + (package + (name "android-safe-iop") + (version (android-platform-version)) + (source (android-platform-external version "safe-iop" + "1nyyrs463advjhlq8xx1lm37m4g5afv7gy0csxrj7biwwl0v13qw")) + (build-system android-ndk-build-system) + (arguments + `(#:make-flags '("CXXFLAGS=-fpermissive -Wno-error") + #:phases + (modify-phases %standard-phases + (add-before 'build 'patch-host + (lambda _ + ;; TODO: Cross-compile. + (substitute* "Android.mk" + (("BUILD_STATIC_LIBRARY") "BUILD_HOST_STATIC_LIBRARY")) + #t))))) + (home-page "https://developer.android.com/") + (synopsis "Safe integers in C") + (description "@code{android-safe-iop} provides a set of functions for +performing and checking safe integer operations. Ensure that integer +operations do not result in silent overflow.") + (license license:bsd-2))) + +(define-public android-bionic-uapi + (package + (name "android-bionic-uapi") + (version (android-platform-version)) + (source (android-platform-bionic version)) + (build-system android-ndk-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source + (lambda _ (chdir "libc") #t)) + (replace 'check + (const #t)) + (replace 'build + (const #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (out-sys (string-append out "/include/sys"))) + (mkdir-p out-sys) + (install-file "include/sys/system_properties.h" out-sys) + (install-file "include/sys/_system_properties.h" out-sys) + (copy-recursively "kernel/uapi" (string-append out "/include")) + #t)))))) + (home-page "https://developer.android.com/") + (synopsis "Android Linux API that is safe for user space") + (description "@code{android-bionic-uapi} provides the part of the Linux API +that is safe to use for user space. It also includes +@code{system_properties.h} and @code{_system_properties.h}.") + (license license:asl2.0))) + +(define-public android-libselinux + (package + (name "android-libselinux") + (version (android-platform-version)) + (source + (android-platform-external version "libselinux" + "13m2q32gzdcs5d0zj1nwasjy1j8vsxsgbjg7m5sa9lfcjaj7nkm7")) + (build-system android-ndk-build-system) + (arguments + ;; See logd/Android.mk for the *_LOG_TAG values. + `(#:make-flags (list (string-append "CFLAGS=-Wno-error " + "-I core/include " + "-I core/libpackagelistparser/include " + "-DAUDITD_LOG_TAG=1003 " + "-DLOGD_LOG_TAG=1004 -D_GNU_SOURCE") + "LDFLAGS=-L . -lpcre") + #:phases + (modify-phases %standard-phases + (add-after 'unpack-core 'patch-HOST + (lambda _ + ;; gettid duplicates otherwise. + (substitute* "src/procattr.c" + (("#ifdef HOST") "#ifdef XXX")) + #t))))) + (inputs + `(("openssl" ,openssl))) + (native-inputs + `(("android-bionic-uapi" ,android-bionic-uapi) + ;; pcre is inlined by our package. + ("pcre" ,pcre))) + (home-page "https://developer.android.com/") + (synopsis (package-synopsis libselinux)) + (description (package-description libselinux)) + (license (package-license libselinux)))) + +(define-public android-ext4-utils + (package + (name "android-ext4-utils") + (version (android-platform-version)) + (source (android-platform-system-extras version)) + (build-system android-ndk-build-system) + (arguments + `(#:make-flags + (list (string-append "CPPFLAGS=" + ;"-Wno-error " + "-I " + (assoc-ref %build-inputs "android-libselinux") + "/include " + "-I " (assoc-ref %build-inputs "android-libsparse") + "/include " + "-I " (assoc-ref %build-inputs "android-libcutils") + "/include " + "-I " (assoc-ref %build-inputs "android-liblog") "/include " + "-I ../core/include") + "CFLAGS=-Wno-error" + "install-libext4_utils_host.a" + (string-append "prefix=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-core + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "core") + (with-directory-excursion "core" + (invoke "tar" "axf" (assoc-ref inputs "android-core") + "--strip-components=1")) + #t)) + (add-after 'unpack-core 'enter-source + (lambda _ (chdir "ext4_utils") #t)) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (copy-recursively "." (string-append out "/include"))) + #t))))) + (inputs + `(("android-libcutils" ,android-libcutils) + ("android-liblog" ,android-liblog) + ("android-libselinux" ,android-libselinux) + ("android-libsparse" ,android-libsparse) + ("zlib" ,zlib))) + (native-inputs + `(("android-core" ,(android-platform-system-core version)))) + (home-page "https://developer.android.com/") + (synopsis "Android ext4 filesystem utils") + (description "@code{android-ext4-utils} is a library in common use by the +Android core.") + (license license:asl2.0))) + +(define-public android-f2fs-utils + (package + (name "android-f2fs-utils") + (version (android-platform-version)) + (source (android-platform-system-extras version)) + (build-system android-ndk-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source + (lambda _ (chdir "f2fs_utils") #t)) + (add-after 'install 'install-headers + (lambda* (#:key inputs outputs #:allow-other-keys) + (copy-recursively "." (string-append (assoc-ref outputs "out") + "/include")) + #t)) + (add-after 'install 'install-shell-scripts + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (patch-shebang "mkf2fsuserimg.sh") + (substitute* "mkf2fsuserimg.sh" + (("make_f2fs") (string-append bin "/make_f2fs"))) + (install-file "mkf2fsuserimg.sh" bin) + #t)))))) + (inputs + `(("f2fs-tools" ,f2fs-tools-1.7) + ("android-libselinux" ,android-libselinux) + ("android-libsparse" ,android-libsparse) + ("android-libcutils" ,android-libcutils) + ("zlib" ,zlib))) + (home-page "https://developer.android.com/") + (synopsis "Android f2fs utils") + (description "@code{android-f2fs-utils} is a library in common use by the +Android core. It allows the user to create images for the @code{f2fs} Flash +file system.") + (license license:asl2.0))) + +(define-public android-libutils + (package + (name "android-libutils") + (version (android-platform-version)) + (source (android-platform-system-core version)) + (build-system android-ndk-build-system) + (arguments + `(#:tests? #f ; TODO + #:make-flags '("CXXFLAGS=-std=gnu++11 -Wno-error") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source + (lambda _ (chdir "libutils") #t)) + + (add-after 'install 'install-headers + (lambda* (#:key inputs outputs #:allow-other-keys) + (copy-recursively "../include/utils" (string-append (assoc-ref outputs "out") "/include/utils"))))))) + (inputs + `(("android-safe-iop" ,android-safe-iop) + ("android-libcutils" ,android-libcutils))) + (native-inputs + `(("android-bionic-uapi" ,android-bionic-uapi) + ("android-liblog" ,android-liblog))) + (home-page "https://developer.android.com/") + (synopsis "Android utility library") + (description "@code{android-libutils} provides utilities for Android NDK developers.") + (license license:asl2.0))) + +(define-public fastboot + (package + (name "fastboot") + (version (android-platform-version)) + (source (android-platform-system-core version)) + (build-system android-ndk-build-system) + (arguments + `(#:make-flags (list "CXXFLAGS=-std=gnu++11") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'enter-source + (lambda _ + (chdir "fastboot") + #t)) + (add-after 'enter-source 'patch-source + (lambda _ + (substitute* "Android.mk" + (("libext4_utils_host") "libext4_utils_host libselinux libpcre")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib")) + (bin (string-append out "/bin"))) + (install-file "fastboot" bin) + #t)))))) + (inputs + `(("adb" ,adb) + ("android-safe-iop" ,android-safe-iop) + ("android-ext4-utils" ,android-ext4-utils) + ("android-f2fs-utils" ,android-f2fs-utils) + ("android-libbase" ,android-libbase) + ("android-libcutils" ,android-libcutils) + ("android-liblog" ,android-liblog) + ("android-libutils" ,android-libutils) + ("android-libsparse" ,android-libsparse) + ("android-libziparchive" ,android-libziparchive) + ("android-libselinux" ,android-libselinux) + ("pcre" ,pcre) + ("mkbootimg" ,mkbootimg) + ("zlib" ,zlib))) + (native-inputs + `(("xz" ,xz))) + (home-page "https://developer.android.com/studio/command-line/") + (synopsis "Android image flasher") + (description + "This package provides @command{fastboot}, a tool to upload file system images to Android devices.") + (license license:asl2.0))) + (define-public android-udev-rules (package (name "android-udev-rules") diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index 8cf9d9e4a5..232157da34 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -35,7 +35,7 @@ (define-public cfitsio (package (name "cfitsio") - (version "3.420") + (version "3.450") (source (origin (method url-fetch) @@ -43,7 +43,7 @@ "http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/" name (string-replace-substring version "." "") ".tar.gz")) (sha256 - (base32 "1f0nmki45h9kw7vxpxiav9cb6vs3qqi6zrp2lpci5yhqc5isl43c")))) + (base32 "0bmrkw6w65zb0k3mszaaqy1f4zjm2hl7njww74nb5v38wvdi4q5z")))) (build-system gnu-build-system) ;; XXX Building with curl currently breaks wcslib. It doesn't use ;; pkg-config and hence won't link with -lcurl. @@ -81,12 +81,17 @@ in FITS files.") `(("cfitsio" ,cfitsio))) (build-system gnu-build-system) (arguments - `(#:phases (modify-phases %standard-phases - (add-before 'configure 'patch-/bin/sh - (lambda _ - (substitute* "makedefs.in" - (("/bin/sh") "sh")) - #t))))) + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-/bin/sh + (lambda _ + (substitute* "makedefs.in" + (("/bin/sh") "sh")) + #t)) + (delete 'install-license-files)) ; installed by ‘make install’ + ;; Both the build and tests fail randomly when run in parallel. + #:parallel-build? #f + #:parallel-tests? #f)) (home-page "https://www.atnf.csiro.au/people/mcalabre/WCS") (synopsis "Library which implements the FITS WCS standard") (description "The FITS \"World Coordinate System\" (@dfn{WCS}) standard @@ -98,7 +103,7 @@ header.") (define-public gnuastro (package (name "gnuastro") - (version "0.5") + (version "0.6") (source (origin (method url-fetch) @@ -106,7 +111,7 @@ header.") version ".tar.gz")) (sha256 (base32 - "10lxzxyrf30hj3bqdgprvaj9phzdi816khjmr0vmjf8pmsr8bqqr")))) + "16a212j9ghdirm11d25s5q5qw32bkjrxsh3rblfyyv29djch34w6")))) (inputs `(("cfitsio" ,cfitsio) ("gsl" ,gsl) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 83fde34325..d8dc1e3134 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015 Alex Kost <alezost@gmail.com> ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2016 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org> @@ -12,6 +12,7 @@ ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 okapi <okapi@firemail.cc> ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -572,16 +573,7 @@ based on human speech recordings.") (modify-phases %standard-phases (add-after 'unpack 'remove-compiler-flags (lambda _ - (substitute* '("src/casynth/CMakeLists.txt" - "src/cheapdist/CMakeLists.txt" - "src/duffer/CMakeLists.txt" - "src/envfollower/CMakeLists.txt" - "src/ewham/CMakeLists.txt" - "src/hip2b/CMakeLists.txt" - "src/lushlife/CMakeLists.txt" - "src/powercut/CMakeLists.txt" - "src/powerup/CMakeLists.txt" - "src/stuck/CMakeLists.txt") + (substitute* (find-files "." "CMakeLists.txt") (("-msse2 -mfpmath=sse") "")) #t))))) (inputs @@ -1037,7 +1029,7 @@ follower.") (define-public fluidsynth (package (name "fluidsynth") - (version "1.1.10") + (version "1.1.11") (source (origin (method git-fetch) (uri (git-reference @@ -1046,7 +1038,7 @@ follower.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "04jlgq1d1hd8r9cnmkl3lgf1fgm7kgy4hh9nfddap41fm1wp121p")))) + "0n75jq3xgq46hfmjkaaxz3gic77shs4fzajq40c8gk043i84xbdh")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no check target @@ -2002,14 +1994,14 @@ and ALSA.") (define-public qjackctl (package (name "qjackctl") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/qjackctl/qjackctl/" version "/qjackctl-" version ".tar.gz")) (sha256 (base32 - "0lx81dfwanc10vrny1vzi0wx73ph82dlz99ffjzsigj3cqzz6x4s")))) + "0jw1s4qh4qjxnysddjv3j2lchwlslj9p4iisv9i89d3m7pf1svs4")))) (build-system gnu-build-system) (arguments '(#:tests? #f)) ; no check target @@ -2046,9 +2038,9 @@ into various outputs and to start, stop and configure jackd") (modify-phases %standard-phases (replace 'configure (lambda* (#:key outputs #:allow-other-keys) - (zero? (system* "qmake" - (string-append "PREFIX=" - (assoc-ref outputs "out"))))))))) + (invoke "qmake" + (string-append "PREFIX=" + (assoc-ref outputs "out")))))))) (native-inputs `(("qtbase" ,qtbase))) ; for qmake (inputs @@ -2078,6 +2070,7 @@ background file post-processing.") (build-system cmake-build-system) (arguments `(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on" + "-DSC_QT=off" "-DSC_EL=off") ;scel is packaged individually as ;emacs-scel. #:modules ((guix build utils) @@ -2138,8 +2131,7 @@ set(YAMLCPP_INCLUDE_DIR ${CMAKE_SOURCE_DIR}/\ external_libraries/yaml-cpp/include)")) #t))))) (native-inputs - `(("pkg-config" ,pkg-config) - ("qttools" ,qttools))) + `(("pkg-config" ,pkg-config))) (inputs `(("jack" ,jack-1) ("libsndfile" ,libsndfile) @@ -2152,12 +2144,7 @@ external_libraries/yaml-cpp/include)")) ("icu4c" ,icu4c) ("boost" ,boost) ("boost-sync" ,boost-sync) - ("yaml-cpp" ,yaml-cpp) - ("qtbase" ,qtbase) ;IDE support - ("qtwebkit" ,qtwebkit) - ("qtsensors" ,qtsensors) - ("qtdeclarative" ,qtdeclarative) - ("qtlocation" ,qtlocation))) + ("yaml-cpp" ,yaml-cpp))) (home-page "https://github.com/supercollider/supercollider") (synopsis "Synthesis engine and programming language") (description "SuperCollider is a synthesis engine (@code{scsynth} or @@ -2749,7 +2736,7 @@ interface.") (define-public qsynth (package (name "qsynth") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) @@ -2757,7 +2744,7 @@ interface.") "/qsynth-" version ".tar.gz")) (sha256 (base32 - "1sr6vrz8z9r99j9xcix86lgcqldragb2ajmq1bnhr58d99sda584")))) + "0kpk1rnhbifbvm4xvw8i0d4ksk78pf505qvg08k89kqkg32494ap")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no "check" phase @@ -3134,7 +3121,7 @@ code, used in @code{libtoxcore}.") (define-public gsm (package (name "gsm") - (version "1.0.17") + (version "1.0.18") (source (origin (method url-fetch) @@ -3143,7 +3130,7 @@ code, used in @code{libtoxcore}.") "-" version ".tar.gz")) (sha256 (base32 - "00bns0d4wwrvc60lj2w7wz4yk49q1f6rpdrwqzrxsha9d78mfnl5")))) + "041amvpz8cvxykl3pwqldrzxligmmzcg8ncdnxbg32rlqf3q1xh4")))) (build-system gnu-build-system) (arguments `(#:test-target "tst" @@ -3169,7 +3156,7 @@ code, used in @code{libtoxcore}.") (mkdir-p (string-append out "/include/gsm")) (copy-recursively "inc" (string-append out "/include/gsm"))))) - (delete 'configure)))) + (delete 'configure)))) ; no configure script (synopsis "GSM 06.10 lossy speech compression library") (description "This C library provides an encoder and a decoder for the GSM 06.10 RPE-LTP lossy speech compression algorithm.") @@ -3257,7 +3244,7 @@ on the ALSA software PCM plugin.") "1vm0dy5qlycqkima7y5ajzvazyjybifa803fabjcpncjz08c26vp")))) (build-system glib-or-gtk-build-system) (arguments - '(#:tests? #f ; no tests + `(#:tests? #f ; no tests #:out-of-source? #f ; for the 'install-doc' phase #:configure-flags (let* ((out (assoc-ref %outputs "out")) @@ -3269,13 +3256,13 @@ on the ALSA software PCM plugin.") (add-after 'install 'install-doc (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) - (docdir (string-append out "/share/doc/snd"))) - (mkdir-p docdir) + (doc (string-append out "/share/doc/" + ,name "-" ,version))) (for-each (lambda (f) - (install-file f docdir)) + (install-file f doc)) (find-files "." "\\.html$|COPYING")) - (copy-recursively "pix" (string-append docdir "/pix")) + (copy-recursively "pix" (string-append doc "/pix")) #t)))))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -3409,7 +3396,7 @@ representations.") (define-public cava (package (name "cava") - (version "0.6.0") + (version "0.6.1") (source (origin (method url-fetch) (uri (string-append @@ -3418,7 +3405,7 @@ representations.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1p24lz3h4d0h82ffylqr7mq8a8x1c66flm2r2bsv1liw51n1rma2")))) + "13d72swnjs894llf0paandmhf1lf90dz6ygkcdw4bv84wzkq1f4q")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) diff --git a/gnu/packages/aux-files/linux-libre/4.16-arm.conf b/gnu/packages/aux-files/linux-libre/4.17-arm.conf index 484242917d..e078503d5b 100644 --- a/gnu/packages/aux-files/linux-libre/4.16-arm.conf +++ b/gnu/packages/aux-files/linux-libre/4.17-arm.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/arm 4.16.0-gnu Kernel Configuration +# Linux/arm 4.17.0-gnu Kernel Configuration # CONFIG_ARM=y CONFIG_ARM_HAS_SG_CHAIN=y @@ -115,7 +115,6 @@ CONFIG_TREE_RCU=y # CONFIG_RCU_EXPERT is not set CONFIG_SRCU=y CONFIG_TREE_SRCU=y -# CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_NEED_SEGCBLIST=y CONFIG_BUILD_BIN2C=y @@ -196,7 +195,6 @@ CONFIG_MEMBARRIER=y CONFIG_CHECKPOINT_RESTORE=y CONFIG_KALLSYMS=y # CONFIG_KALLSYMS_ALL is not set -# CONFIG_KALLSYMS_ABSOLUTE_PERCPU is not set CONFIG_KALLSYMS_BASE_RELATIVE=y CONFIG_BPF_SYSCALL=y # CONFIG_BPF_JIT_ALWAYS_ON is not set @@ -230,7 +228,6 @@ CONFIG_JUMP_LABEL=y # CONFIG_STATIC_KEYS_SELFTEST is not set CONFIG_OPTPROBES=y CONFIG_UPROBES=y -# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_USE_BUILTIN_BSWAP=y CONFIG_KRETPROBES=y @@ -242,6 +239,7 @@ CONFIG_HAVE_ARCH_TRACEHOOK=y CONFIG_HAVE_DMA_CONTIGUOUS=y CONFIG_GENERIC_SMP_IDLE_THREAD=y CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y CONFIG_ARCH_HAS_SET_MEMORY=y CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y @@ -261,7 +259,6 @@ CONFIG_HAVE_CC_STACKPROTECTOR=y # CONFIG_CC_STACKPROTECTOR_REGULAR is not set CONFIG_CC_STACKPROTECTOR_STRONG=y # CONFIG_CC_STACKPROTECTOR_AUTO is not set -CONFIG_THIN_ARCHIVES=y CONFIG_HAVE_CONTEXT_TRACKING=y CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y @@ -273,13 +270,9 @@ CONFIG_HAVE_EXIT_THREAD=y CONFIG_ARCH_MMAP_RND_BITS_MIN=8 CONFIG_ARCH_MMAP_RND_BITS_MAX=16 CONFIG_ARCH_MMAP_RND_BITS=8 -# CONFIG_HAVE_ARCH_HASH is not set -# CONFIG_ISA_BUS_API is not set CONFIG_CLONE_BACKWARDS=y CONFIG_OLD_SIGSUSPEND3=y CONFIG_OLD_SIGACTION=y -# CONFIG_CPU_NO_EFFICIENT_FFS is not set -# CONFIG_HAVE_ARCH_VMAP_STACK is not set CONFIG_ARCH_OPTIONAL_KERNEL_RWX=y CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT=y CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y @@ -412,17 +405,7 @@ CONFIG_ARCH_MULTIPLATFORM=y # CONFIG_ARCH_MULTI_V6 is not set CONFIG_ARCH_MULTI_V7=y CONFIG_ARCH_MULTI_V6_V7=y -# CONFIG_ARCH_MULTI_CPU_AUTO is not set CONFIG_ARCH_VIRT=y -CONFIG_ARCH_MVEBU=y -CONFIG_MACH_MVEBU_ANY=y -CONFIG_MACH_MVEBU_V7=y -CONFIG_MACH_ARMADA_370=y -CONFIG_MACH_ARMADA_375=y -CONFIG_MACH_ARMADA_38X=y -CONFIG_MACH_ARMADA_39X=y -CONFIG_MACH_ARMADA_XP=y -# CONFIG_MACH_DOVE is not set # CONFIG_ARCH_ACTIONS is not set # CONFIG_ARCH_ALPINE is not set # CONFIG_ARCH_ARTPEC is not set @@ -453,10 +436,41 @@ CONFIG_ARCH_BCM2835=y # CONFIG_ARCH_BRCMSTB is not set # CONFIG_ARCH_BERLIN is not set # CONFIG_ARCH_DIGICOLOR is not set +CONFIG_ARCH_EXYNOS=y +CONFIG_S5P_DEV_MFC=y +# CONFIG_ARCH_EXYNOS3 is not set +CONFIG_ARCH_EXYNOS4=y +CONFIG_ARCH_EXYNOS5=y + +# +# EXYNOS SoCs +# +CONFIG_CPU_EXYNOS4210=y +CONFIG_SOC_EXYNOS4412=y +CONFIG_SOC_EXYNOS5250=y +CONFIG_SOC_EXYNOS5260=y +CONFIG_SOC_EXYNOS5410=y +CONFIG_SOC_EXYNOS5420=y +CONFIG_SOC_EXYNOS5440=y +CONFIG_SOC_EXYNOS5800=y +CONFIG_EXYNOS5420_MCPM=y +CONFIG_EXYNOS_CPU_SUSPEND=y +CONFIG_PLAT_SAMSUNG=y + +# +# Samsung Common options +# + +# +# Boot options +# + +# +# Power management +# +# CONFIG_SAMSUNG_PM_CHECK is not set CONFIG_ARCH_HIGHBANK=y # CONFIG_ARCH_HISI is not set -# CONFIG_ARCH_KEYSTONE is not set -# CONFIG_ARCH_MESON is not set CONFIG_ARCH_MXC=y CONFIG_MXC_TZIC=y CONFIG_HAVE_IMX_ANATOP=y @@ -478,6 +492,7 @@ CONFIG_SOC_IMX53=y CONFIG_SOC_IMX6=y CONFIG_SOC_IMX6Q=y # CONFIG_SOC_IMX6SL is not set +# CONFIG_SOC_IMX6SLL is not set # CONFIG_SOC_IMX6SX is not set # CONFIG_SOC_IMX6UL is not set # CONFIG_SOC_IMX7D is not set @@ -487,7 +502,20 @@ CONFIG_SOC_IMX6Q=y # Cortex-A/Cortex-M asymmetric multiprocessing platforms # # CONFIG_SOC_VF610 is not set +# CONFIG_ARCH_KEYSTONE is not set # CONFIG_ARCH_MEDIATEK is not set +# CONFIG_ARCH_MESON is not set +# CONFIG_ARCH_MMP is not set +CONFIG_ARCH_MVEBU=y +CONFIG_MACH_MVEBU_ANY=y +CONFIG_MACH_MVEBU_V7=y +CONFIG_MACH_ARMADA_370=y +CONFIG_MACH_ARMADA_375=y +CONFIG_MACH_ARMADA_38X=y +CONFIG_MACH_ARMADA_39X=y +CONFIG_MACH_ARMADA_XP=y +# CONFIG_MACH_DOVE is not set +# CONFIG_ARCH_NPCM is not set CONFIG_ARCH_OMAP=y # @@ -502,7 +530,6 @@ CONFIG_POWER_AVS_OMAP_CLASS3=y CONFIG_OMAP_RESET_CLOCKS=y CONFIG_OMAP_32K_TIMER=y # CONFIG_OMAP3_L2_AUX_SECURE_SAVE_RESTORE is not set -CONFIG_OMAP_DM_TIMER=y CONFIG_OMAP_PM_NOOP=y CONFIG_MACH_OMAP_GENERIC=y @@ -535,50 +562,17 @@ CONFIG_MACH_OMAP3517EVM=y CONFIG_MACH_OMAP3_PANDORA=y # CONFIG_OMAP3_SDRC_AC_TIMING is not set # CONFIG_OMAP5_ERRATA_801819 is not set -# CONFIG_ARCH_MMP is not set +# CONFIG_ARCH_SIRF is not set # CONFIG_ARCH_QCOM is not set # CONFIG_ARCH_REALVIEW is not set CONFIG_ARCH_ROCKCHIP=y +# CONFIG_ARCH_S5PV210 is not set +# CONFIG_ARCH_RENESAS is not set CONFIG_ARCH_SOCFPGA=y # CONFIG_SOCFPGA_SUSPEND is not set # CONFIG_PLAT_SPEAR is not set # CONFIG_ARCH_STI is not set -# CONFIG_ARCH_S5PV210 is not set -CONFIG_ARCH_EXYNOS=y -CONFIG_S5P_DEV_MFC=y -# CONFIG_ARCH_EXYNOS3 is not set -CONFIG_ARCH_EXYNOS4=y -CONFIG_ARCH_EXYNOS5=y - -# -# EXYNOS SoCs -# -CONFIG_CPU_EXYNOS4210=y -CONFIG_SOC_EXYNOS4412=y -CONFIG_SOC_EXYNOS5250=y -CONFIG_SOC_EXYNOS5260=y -CONFIG_SOC_EXYNOS5410=y -CONFIG_SOC_EXYNOS5420=y -CONFIG_SOC_EXYNOS5440=y -CONFIG_SOC_EXYNOS5800=y -CONFIG_EXYNOS5420_MCPM=y -CONFIG_EXYNOS_CPU_SUSPEND=y -CONFIG_PLAT_SAMSUNG=y - -# -# Samsung Common options -# - -# -# Boot options -# -# CONFIG_SAMSUNG_ATAGS is not set - -# -# Power management -# -# CONFIG_SAMSUNG_PM_CHECK is not set -# CONFIG_ARCH_RENESAS is not set +# CONFIG_ARCH_STM32 is not set CONFIG_ARCH_SUNXI=y CONFIG_MACH_SUN4I=y CONFIG_MACH_SUN5I=y @@ -586,7 +580,7 @@ CONFIG_MACH_SUN6I=y CONFIG_MACH_SUN7I=y CONFIG_MACH_SUN8I=y CONFIG_MACH_SUN9I=y -# CONFIG_ARCH_SIRF is not set +CONFIG_ARCH_SUNXI_MC_SMP=y # CONFIG_ARCH_TANGO is not set CONFIG_ARCH_TEGRA=y # CONFIG_ARCH_UNIPHIER is not set @@ -632,7 +626,6 @@ CONFIG_CPU_CP15_MMU=y # Processor Features # # CONFIG_ARM_LPAE is not set -# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set CONFIG_ARCH_DMA_ADDR_T_64BIT=y CONFIG_ARM_THUMB=y CONFIG_ARM_THUMBEE=y @@ -791,8 +784,6 @@ CONFIG_ARM_PATCH_IDIV=y CONFIG_AEABI=y # CONFIG_OABI_COMPAT is not set CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y -# CONFIG_ARCH_SPARSEMEM_DEFAULT is not set -# CONFIG_ARCH_SELECT_MEMORY_MODEL is not set CONFIG_HAVE_ARCH_PFN_VALID=y CONFIG_HIGHMEM=y CONFIG_HIGHPTE=y @@ -805,18 +796,15 @@ CONFIG_FLAT_NODE_MEM_MAP=y CONFIG_HAVE_MEMBLOCK=y CONFIG_NO_BOOTMEM=y CONFIG_MEMORY_ISOLATION=y -# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set CONFIG_SPLIT_PTLOCK_CPUS=4 CONFIG_MEMORY_BALLOON=y CONFIG_BALLOON_COMPACTION=y CONFIG_COMPACTION=y CONFIG_MIGRATION=y -# CONFIG_PHYS_ADDR_T_64BIT is not set CONFIG_BOUNCE=y CONFIG_MMU_NOTIFIER=y CONFIG_KSM=y CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -# CONFIG_ARCH_WANTS_THP_SWAP is not set # CONFIG_CLEANCACHE is not set CONFIG_FRONTSWAP=y CONFIG_CMA=y @@ -901,8 +889,8 @@ CONFIG_ARM_ARMADA_37XX_CPUFREQ=m CONFIG_ARM_EXYNOS5440_CPUFREQ=y CONFIG_ARM_HIGHBANK_CPUFREQ=m CONFIG_ARM_IMX6Q_CPUFREQ=m -# CONFIG_ARM_KIRKWOOD_CPUFREQ is not set CONFIG_ARM_OMAP2PLUS_CPUFREQ=y +CONFIG_ARM_SCMI_CPUFREQ=m CONFIG_ARM_TEGRA20_CPUFREQ=y CONFIG_ARM_TEGRA124_CPUFREQ=m # CONFIG_ARM_TI_CPUFREQ is not set @@ -935,7 +923,6 @@ CONFIG_ELFCORE=y CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y CONFIG_BINFMT_SCRIPT=y # CONFIG_BINFMT_FLAT is not set -# CONFIG_HAVE_AOUT is not set CONFIG_BINFMT_MISC=m CONFIG_COREDUMP=y @@ -1003,6 +990,7 @@ CONFIG_NET_IPGRE_DEMUX=m CONFIG_NET_IP_TUNNEL=m CONFIG_NET_IPGRE=m CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE_COMMON=y CONFIG_IP_MROUTE=y CONFIG_IP_MROUTE_MULTIPLE_TABLES=y CONFIG_IP_PIMSM_V1=y @@ -1140,8 +1128,8 @@ CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_REDIRECT=m CONFIG_NETFILTER_SYNPROXY=m CONFIG_NF_TABLES=m -CONFIG_NF_TABLES_INET=m -CONFIG_NF_TABLES_NETDEV=m +# CONFIG_NF_TABLES_INET is not set +# CONFIG_NF_TABLES_NETDEV is not set CONFIG_NFT_EXTHDR=m CONFIG_NFT_META=m # CONFIG_NFT_RT is not set @@ -1161,15 +1149,8 @@ CONFIG_NFT_NAT=m CONFIG_NFT_QUEUE=m CONFIG_NFT_QUOTA=m CONFIG_NFT_REJECT=m -CONFIG_NFT_REJECT_INET=m CONFIG_NFT_COMPAT=m CONFIG_NFT_HASH=m -CONFIG_NFT_FIB=m -CONFIG_NFT_FIB_INET=m -CONFIG_NF_DUP_NETDEV=m -CONFIG_NFT_DUP_NETDEV=m -CONFIG_NFT_FWD_NETDEV=m -CONFIG_NFT_FIB_NETDEV=m CONFIG_NF_FLOW_TABLE_INET=m CONFIG_NF_FLOW_TABLE=m CONFIG_NETFILTER_XTABLES=m @@ -1327,22 +1308,15 @@ CONFIG_IP_VS_PE_SIP=m CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_SOCKET_IPV4=m -CONFIG_NF_TABLES_IPV4=m -CONFIG_NFT_CHAIN_ROUTE_IPV4=m -CONFIG_NFT_REJECT_IPV4=m -CONFIG_NFT_DUP_IPV4=m -CONFIG_NFT_FIB_IPV4=m -CONFIG_NF_TABLES_ARP=m +# CONFIG_NF_TABLES_IPV4 is not set +# CONFIG_NF_TABLES_ARP is not set CONFIG_NF_FLOW_TABLE_IPV4=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_IPV4=m CONFIG_NF_REJECT_IPV4=m CONFIG_NF_NAT_IPV4=m -CONFIG_NFT_CHAIN_NAT_IPV4=m CONFIG_NF_NAT_MASQUERADE_IPV4=m -CONFIG_NFT_MASQ_IPV4=m -CONFIG_NFT_REDIR_IPV4=m CONFIG_NF_NAT_SNMP_BASIC=m CONFIG_NF_NAT_PROTO_GRE=m CONFIG_NF_NAT_PPTP=m @@ -1375,20 +1349,13 @@ CONFIG_IP_NF_ARP_MANGLE=m CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_SOCKET_IPV6=m -CONFIG_NF_TABLES_IPV6=m -CONFIG_NFT_CHAIN_ROUTE_IPV6=m -CONFIG_NFT_REJECT_IPV6=m -CONFIG_NFT_DUP_IPV6=m -CONFIG_NFT_FIB_IPV6=m +# CONFIG_NF_TABLES_IPV6 is not set CONFIG_NF_FLOW_TABLE_IPV6=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_REJECT_IPV6=m CONFIG_NF_LOG_IPV6=m CONFIG_NF_NAT_IPV6=m -CONFIG_NFT_CHAIN_NAT_IPV6=m CONFIG_NF_NAT_MASQUERADE_IPV6=m -CONFIG_NFT_MASQ_IPV6=m -CONFIG_NFT_REDIR_IPV6=m CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_EUI64=m @@ -1410,10 +1377,7 @@ CONFIG_IP6_NF_SECURITY=m CONFIG_IP6_NF_NAT=m CONFIG_IP6_NF_TARGET_MASQUERADE=m CONFIG_IP6_NF_TARGET_NPT=m -CONFIG_NF_TABLES_BRIDGE=m -CONFIG_NFT_BRIDGE_META=m -CONFIG_NFT_BRIDGE_REJECT=m -CONFIG_NF_LOG_BRIDGE=m +# CONFIG_NF_TABLES_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_T_FILTER=m @@ -1465,6 +1429,7 @@ CONFIG_RDS_TCP=m CONFIG_TIPC=m CONFIG_TIPC_MEDIA_IB=y CONFIG_TIPC_MEDIA_UDP=y +CONFIG_TIPC_DIAG=m CONFIG_ATM=m CONFIG_ATM_CLIP=m # CONFIG_ATM_CLIP_NO_ICMP is not set @@ -1585,6 +1550,7 @@ CONFIG_NET_EMATCH_META=m CONFIG_NET_EMATCH_TEXT=m CONFIG_NET_EMATCH_CANID=m CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_IPT=m CONFIG_NET_CLS_ACT=y CONFIG_NET_ACT_POLICE=m CONFIG_NET_ACT_GACT=m @@ -1733,19 +1699,20 @@ CONFIG_BT_HCIBTUSB_RTL=y CONFIG_BT_HCIBTSDIO=m # CONFIG_BT_HCIUART is not set # CONFIG_BT_HCIBCM203X is not set +# CONFIG_BT_HCIBPA10X is not set # CONFIG_BT_HCIBFUSB is not set # CONFIG_BT_HCIVHCI is not set CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m CONFIG_BT_WILINK=m +CONFIG_BT_HCIRSI=m CONFIG_AF_RXRPC=m CONFIG_AF_RXRPC_IPV6=y # CONFIG_AF_RXRPC_INJECT_LOSS is not set # CONFIG_AF_RXRPC_DEBUG is not set CONFIG_RXKAD=y # CONFIG_AF_KCM is not set -# CONFIG_STREAM_PARSER is not set CONFIG_FIB_RULES=y CONFIG_WIRELESS=y CONFIG_WIRELESS_EXT=y @@ -1848,7 +1815,6 @@ CONFIG_DEV_COREDUMP=y # CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set # CONFIG_TEST_ASYNC_DRIVER_PROBE is not set CONFIG_SYS_HYPERVISOR=y -# CONFIG_GENERIC_CPU_DEVICES is not set CONFIG_GENERIC_CPU_AUTOPROBE=y CONFIG_SOC_BUS=y CONFIG_REGMAP=y @@ -1878,10 +1844,7 @@ CONFIG_GENERIC_ARCH_TOPOLOGY=y # CONFIG_ARM_CCI=y CONFIG_ARM_CCI400_COMMON=y -# CONFIG_ARM_CCI400_PMU is not set CONFIG_ARM_CCI400_PORT_CTRL=y -# CONFIG_ARM_CCI5xx_PMU is not set -# CONFIG_ARM_CCN is not set # CONFIG_BRCMSTB_GISB_ARB is not set # CONFIG_IMX_WEIM is not set CONFIG_MVEBU_MBUS=y @@ -1930,13 +1893,8 @@ CONFIG_MTD_SWAP=m CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y -# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set -# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set -# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set CONFIG_MTD_CFI_I1=y CONFIG_MTD_CFI_I2=y -# CONFIG_MTD_CFI_I4 is not set -# CONFIG_MTD_CFI_I8 is not set CONFIG_MTD_RAM=m # CONFIG_MTD_ROM is not set # CONFIG_MTD_ABSENT is not set @@ -1970,6 +1928,13 @@ CONFIG_MTD_SST25L=m # Disk-On-Chip Device Drivers # # CONFIG_MTD_DOCG3 is not set +CONFIG_MTD_ONENAND=y +CONFIG_MTD_ONENAND_VERIFY_WRITE=y +# CONFIG_MTD_ONENAND_GENERIC is not set +CONFIG_MTD_ONENAND_OMAP2=m +# CONFIG_MTD_ONENAND_SAMSUNG is not set +# CONFIG_MTD_ONENAND_OTP is not set +CONFIG_MTD_ONENAND_2X_PROGRAM=y CONFIG_MTD_NAND_ECC=y # CONFIG_MTD_NAND_ECC_SMC is not set CONFIG_MTD_NAND=y @@ -1981,12 +1946,10 @@ CONFIG_MTD_SM_COMMON=m # CONFIG_MTD_NAND_GPIO is not set CONFIG_MTD_NAND_OMAP2=m # CONFIG_MTD_NAND_OMAP_BCH is not set -# CONFIG_MTD_NAND_OMAP_BCH_BUILD is not set CONFIG_MTD_NAND_RICOH=m # CONFIG_MTD_NAND_DISKONCHIP is not set # CONFIG_MTD_NAND_DOCG4 is not set CONFIG_MTD_NAND_CAFE=m -CONFIG_MTD_NAND_PXA3xx=m CONFIG_MTD_NAND_MARVELL=m CONFIG_MTD_NAND_NANDSIM=m CONFIG_MTD_NAND_GPMI_NAND=m @@ -1995,13 +1958,6 @@ CONFIG_MTD_NAND_GPMI_NAND=m CONFIG_MTD_NAND_ORION=m CONFIG_MTD_NAND_MXC=m CONFIG_MTD_NAND_SUNXI=m -CONFIG_MTD_ONENAND=y -CONFIG_MTD_ONENAND_VERIFY_WRITE=y -# CONFIG_MTD_ONENAND_GENERIC is not set -CONFIG_MTD_ONENAND_OMAP2=m -# CONFIG_MTD_ONENAND_SAMSUNG is not set -# CONFIG_MTD_ONENAND_OTP is not set -CONFIG_MTD_ONENAND_2X_PROGRAM=y # # LPDDR & LPDDR2 PCM memory drivers @@ -2037,7 +1993,6 @@ CONFIG_OF_OVERLAY=y CONFIG_ARCH_MIGHT_HAVE_PC_PARPORT=y CONFIG_PARPORT=m # CONFIG_PARPORT_PC is not set -# CONFIG_PARPORT_GSC is not set # CONFIG_PARPORT_AX88796 is not set CONFIG_PARPORT_1284=y CONFIG_PARPORT_NOT_PC=y @@ -2049,7 +2004,6 @@ CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set # CONFIG_BLK_DEV_DAC960 is not set # CONFIG_BLK_DEV_UMEM is not set -# CONFIG_BLK_DEV_COW_COMMON is not set CONFIG_BLK_DEV_LOOP=m CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 # CONFIG_BLK_DEV_CRYPTOLOOP is not set @@ -2173,10 +2127,6 @@ CONFIG_ALTERA_STAPL=m # VOP Driver # # CONFIG_ECHO is not set -# CONFIG_CXL_BASE is not set -# CONFIG_CXL_AFU_DRIVER_OPS is not set -# CONFIG_CXL_LIB is not set -# CONFIG_OCXL_BASE is not set CONFIG_MISC_RTSX_PCI=m CONFIG_MISC_RTSX_USB=m CONFIG_HAVE_IDE=y @@ -2263,7 +2213,6 @@ CONFIG_FCOE=m CONFIG_SCSI_SNIC=m # CONFIG_SCSI_SNIC_DEBUG_FS is not set CONFIG_SCSI_DMX3191D=m -# CONFIG_SCSI_FUTURE_DOMAIN is not set # CONFIG_SCSI_IPS is not set # CONFIG_SCSI_INITIO is not set # CONFIG_SCSI_INIA100 is not set @@ -2298,7 +2247,6 @@ CONFIG_SCSI_OSD_DPRINT_SENSE=1 # CONFIG_SCSI_OSD_DEBUG is not set CONFIG_HAVE_PATA_PLATFORM=y CONFIG_ATA=m -# CONFIG_ATA_NONSTANDARD is not set CONFIG_ATA_VERBOSE_ERROR=y CONFIG_SATA_PMP=y @@ -2538,6 +2486,7 @@ CONFIG_NET_DSA_MV88E6060=m # CONFIG_MICROCHIP_KSZ is not set CONFIG_NET_DSA_MV88E6XXX=m CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y +# CONFIG_NET_DSA_MV88E6XXX_PTP is not set # CONFIG_NET_DSA_QCA8K is not set # CONFIG_NET_DSA_SMSC_LAN9303_I2C is not set # CONFIG_NET_DSA_SMSC_LAN9303_MDIO is not set @@ -2561,7 +2510,6 @@ CONFIG_NET_VENDOR_AMAZON=y CONFIG_NET_VENDOR_AMD=y # CONFIG_AMD8111_ETH is not set CONFIG_PCNET32=m -# CONFIG_AMD_XGBE_HAVE_ECC is not set CONFIG_NET_VENDOR_AQUANTIA=y # CONFIG_NET_VENDOR_ARC is not set CONFIG_NET_VENDOR_ATHEROS=y @@ -2665,6 +2613,7 @@ CONFIG_IXGBEVF=m CONFIG_I40E=m CONFIG_I40E_DCB=y CONFIG_I40EVF=m +# CONFIG_ICE is not set # CONFIG_FM10K is not set CONFIG_NET_VENDOR_I825XX=y CONFIG_JME=m @@ -2673,7 +2622,6 @@ CONFIG_NET_VENDOR_MARVELL=y CONFIG_MVMDIO=m # CONFIG_MVNETA_BM_ENABLE is not set CONFIG_MVNETA=m -# CONFIG_MVNETA_BM is not set CONFIG_MVPP2=m CONFIG_SKGE=m # CONFIG_SKGE_DEBUG is not set @@ -2704,6 +2652,7 @@ CONFIG_NET_VENDOR_MICROCHIP=y CONFIG_ENC28J60=m # CONFIG_ENC28J60_WRITEVERIFY is not set # CONFIG_ENCX24J600 is not set +# CONFIG_LAN743X is not set CONFIG_NET_VENDOR_MYRI=y CONFIG_MYRI10GE=m CONFIG_FEALNX=m @@ -2714,6 +2663,7 @@ CONFIG_NET_VENDOR_NETRONOME=y CONFIG_NFP=m # CONFIG_NFP_APP_FLOWER is not set # CONFIG_NFP_DEBUG is not set +CONFIG_NET_VENDOR_NI=y CONFIG_NET_VENDOR_8390=y # CONFIG_AX88796 is not set CONFIG_NE2K_PCI=m @@ -2770,7 +2720,6 @@ CONFIG_SMC91X=m CONFIG_EPIC100=m CONFIG_SMC911X=m CONFIG_SMSC911X=m -# CONFIG_SMSC911X_ARCH_HOOKS is not set CONFIG_SMSC9420=m CONFIG_NET_VENDOR_SOCIONEXT=y CONFIG_NET_VENDOR_STMICRO=y @@ -3141,6 +3090,7 @@ CONFIG_RSI_91X=m CONFIG_RSI_DEBUGFS=y # CONFIG_RSI_SDIO is not set CONFIG_RSI_USB=m +CONFIG_RSI_COEX=y CONFIG_WLAN_VENDOR_ST=y # CONFIG_CW1200 is not set CONFIG_WLAN_VENDOR_TI=y @@ -3178,6 +3128,7 @@ CONFIG_IEEE802154_CC2520=m CONFIG_IEEE802154_ATUSB=m CONFIG_IEEE802154_ADF7242=m # CONFIG_IEEE802154_CA8210 is not set +# CONFIG_IEEE802154_MCR20A is not set CONFIG_XEN_NETDEV_FRONTEND=m CONFIG_XEN_NETDEV_BACKEND=m # CONFIG_VMXNET3 is not set @@ -3547,7 +3498,6 @@ CONFIG_HW_RANDOM_OMAP3_ROM=m CONFIG_HW_RANDOM_VIRTIO=m CONFIG_HW_RANDOM_IMX_RNGC=m CONFIG_HW_RANDOM_EXYNOS=m -# CONFIG_NVRAM is not set # CONFIG_R3964 is not set # CONFIG_APPLICOM is not set # CONFIG_RAW_DRIVER is not set @@ -3633,7 +3583,6 @@ CONFIG_I2C_OCORES=m CONFIG_I2C_OMAP=y CONFIG_I2C_PCA_PLATFORM=m # CONFIG_I2C_PXA is not set -# CONFIG_I2C_PXA_PCI is not set CONFIG_I2C_RK3X=m CONFIG_HAVE_S3C2410_I2C=y CONFIG_I2C_S3C2410=y @@ -3692,7 +3641,6 @@ CONFIG_SPI_TI_QSPI=m CONFIG_SPI_ORION=m CONFIG_SPI_PL022=m # CONFIG_SPI_PXA2XX is not set -# CONFIG_SPI_PXA2XX_PCI is not set CONFIG_SPI_ROCKCHIP=m # CONFIG_SPI_S3C64XX is not set # CONFIG_SPI_SC18IS602 is not set @@ -3797,9 +3745,6 @@ CONFIG_PINCTRL_SUN8I_H3_R=y CONFIG_PINCTRL_SUN8I_V3S=y CONFIG_PINCTRL_SUN9I_A80=y CONFIG_PINCTRL_SUN9I_A80_R=y -# CONFIG_PINCTRL_SUN50I_A64 is not set -# CONFIG_PINCTRL_SUN50I_A64_R is not set -# CONFIG_PINCTRL_SUN50I_H5 is not set CONFIG_PINCTRL_TEGRA=y CONFIG_PINCTRL_TEGRA124=y CONFIG_PINCTRL_TEGRA_XUSB=y @@ -3819,11 +3764,13 @@ CONFIG_GPIO_GENERIC=y # # CONFIG_GPIO_74XX_MMIO is not set # CONFIG_GPIO_ALTERA is not set +CONFIG_GPIO_RASPBERRYPI_EXP=m # CONFIG_GPIO_DWAPB is not set # CONFIG_GPIO_EXAR is not set # CONFIG_GPIO_FTGPIO010 is not set CONFIG_GPIO_GENERIC_PLATFORM=y # CONFIG_GPIO_GRGPIO is not set +# CONFIG_GPIO_HLWD is not set CONFIG_GPIO_MB86S7X=m # CONFIG_GPIO_MOCKUP is not set # CONFIG_GPIO_MPC8XXX is not set @@ -3952,7 +3899,6 @@ CONFIG_BATTERY_BQ27XXX_HDQ=m CONFIG_CHARGER_AXP20X=m CONFIG_BATTERY_AXP20X=m CONFIG_AXP20X_POWER=m -CONFIG_AXP288_CHARGER=m CONFIG_AXP288_FUEL_GAUGE=m # CONFIG_BATTERY_MAX17040 is not set # CONFIG_BATTERY_MAX17042 is not set @@ -3998,6 +3944,7 @@ CONFIG_SENSORS_ADT7462=m CONFIG_SENSORS_ADT7470=m CONFIG_SENSORS_ADT7475=m CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_ARM_SCMI=m # CONFIG_SENSORS_ASPEED is not set CONFIG_SENSORS_ATXP1=m CONFIG_SENSORS_DS620=m @@ -4117,6 +4064,7 @@ CONFIG_SENSORS_W83L786NG=m # CONFIG_SENSORS_W83627HF is not set CONFIG_SENSORS_W83627EHF=m CONFIG_THERMAL=y +# CONFIG_THERMAL_STATISTICS is not set CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 CONFIG_THERMAL_HWMON=y CONFIG_THERMAL_OF=y @@ -4354,7 +4302,6 @@ CONFIG_TWL6040_CORE=y # CONFIG_MFD_WL1273_CORE is not set # CONFIG_MFD_LM3533 is not set # CONFIG_MFD_TC3589X is not set -# CONFIG_MFD_TMIO is not set # CONFIG_MFD_T7L66XB is not set # CONFIG_MFD_TC6387XB is not set # CONFIG_MFD_TC6393XB is not set @@ -4372,6 +4319,7 @@ CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=y # CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set # CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +# CONFIG_REGULATOR_88PG86X is not set CONFIG_REGULATOR_ACT8865=m # CONFIG_REGULATOR_AD5398 is not set CONFIG_REGULATOR_ANATOP=m @@ -4438,10 +4386,12 @@ CONFIG_IR_SANYO_DECODER=m CONFIG_IR_SHARP_DECODER=m CONFIG_IR_MCE_KBD_DECODER=m CONFIG_IR_XMP_DECODER=m +CONFIG_IR_IMON_DECODER=m CONFIG_RC_DEVICES=y CONFIG_RC_ATI_REMOTE=m # CONFIG_IR_HIX5HD2 is not set CONFIG_IR_IMON=m +CONFIG_IR_IMON_RAW=m CONFIG_IR_MCEUSB=m CONFIG_IR_REDRAT3=m # CONFIG_IR_SPI is not set @@ -4745,7 +4695,6 @@ CONFIG_VIDEO_OMAP3=m # CONFIG_VIDEO_TI_CAL is not set CONFIG_V4L_MEM2MEM_DRIVERS=y # CONFIG_VIDEO_CODA is not set -# CONFIG_VIDEO_IMX_VDOA is not set # CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set # CONFIG_VIDEO_SAMSUNG_S5P_G2D is not set # CONFIG_VIDEO_SAMSUNG_S5P_JPEG is not set @@ -4912,6 +4861,11 @@ CONFIG_VIDEO_M52790=m # # Sensors used on soc_camera driver # + +# +# Media SPI Adapters +# +# CONFIG_CXD2880_SPI_DRV is not set CONFIG_MEDIA_TUNER=y CONFIG_MEDIA_TUNER_SIMPLE=y CONFIG_MEDIA_TUNER_TDA18250=m @@ -5087,7 +5041,6 @@ CONFIG_DVB_ISL6405=m CONFIG_DVB_ISL6421=m CONFIG_DVB_ISL6423=m CONFIG_DVB_A8293=m -CONFIG_DVB_SP2=m CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_TDA665x=m @@ -5099,9 +5052,14 @@ CONFIG_DVB_ASCOT2E=m CONFIG_DVB_HELENE=m # +# Common Interface (EN50221) controller drivers +# +CONFIG_DVB_CXD2099=m +CONFIG_DVB_SP2=m + +# # Tools to develop new frontends # -# CONFIG_DVB_DUMMY_FE is not set # # Graphics support @@ -5123,6 +5081,7 @@ CONFIG_DRM_TTM=m CONFIG_DRM_GEM_CMA_HELPER=y CONFIG_DRM_KMS_CMA_HELPER=y CONFIG_DRM_VM=y +CONFIG_DRM_SCHED=m # # I2C encoder or helper chips @@ -5142,7 +5101,6 @@ CONFIG_DRM_I2C_NXP_TDA998X=m # # AMD Library routines # -# CONFIG_CHASH is not set # CONFIG_DRM_NOUVEAU is not set CONFIG_DRM_VGEM=m CONFIG_DRM_EXYNOS=m @@ -5181,6 +5139,7 @@ CONFIG_DRM_UDL=m CONFIG_DRM_CIRRUS_QEMU=m # CONFIG_DRM_ARMADA is not set # CONFIG_DRM_RCAR_DW_HDMI is not set +# CONFIG_DRM_RCAR_LVDS is not set # CONFIG_DRM_SUN4I is not set CONFIG_DRM_OMAP=m CONFIG_OMAP2_DSS_INIT=y @@ -5228,6 +5187,7 @@ CONFIG_DRM_PANEL=y # # Display Panels # +CONFIG_DRM_PANEL_ARM_VERSATILE=m # CONFIG_DRM_PANEL_LVDS is not set CONFIG_DRM_PANEL_SIMPLE=m CONFIG_DRM_PANEL_ILITEK_IL9322=m @@ -5238,6 +5198,7 @@ CONFIG_DRM_PANEL_ILITEK_IL9322=m # CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set # CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m +# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set # CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set @@ -5292,7 +5253,6 @@ CONFIG_DRM_LEGACY=y CONFIG_DRM_VIA=m CONFIG_DRM_SAVAGE=m CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y -# CONFIG_DRM_LIB_RANDOM is not set # # Frame buffer Devices @@ -5302,20 +5262,16 @@ CONFIG_FIRMWARE_EDID=y CONFIG_FB_CMDLINE=y CONFIG_FB_NOTIFY=y CONFIG_FB_DDC=m -# CONFIG_FB_BOOT_VESA_SUPPORT is not set CONFIG_FB_CFB_FILLRECT=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set CONFIG_FB_SYS_FILLRECT=y CONFIG_FB_SYS_COPYAREA=y CONFIG_FB_SYS_IMAGEBLIT=y -# CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA is not set # CONFIG_FB_FOREIGN_ENDIAN is not set CONFIG_FB_SYS_FOPS=y CONFIG_FB_DEFERRED_IO=y CONFIG_FB_SVGALIB=m -# CONFIG_FB_MACMODES is not set CONFIG_FB_BACKLIGHT=y CONFIG_FB_MODE_HELPERS=y CONFIG_FB_TILEBLITTING=y @@ -5366,7 +5322,6 @@ CONFIG_FB_PM3=m CONFIG_FB_VT8500=y CONFIG_FB_WM8505=y # CONFIG_FB_WMT_GE_ROPS is not set -# CONFIG_FB_S3C is not set CONFIG_FB_SMSCUFX=m CONFIG_FB_UDL=m # CONFIG_FB_IBM_GXT4500 is not set @@ -5451,7 +5406,6 @@ CONFIG_SND_SEQ_MIDI_EMUL=m CONFIG_SND_MPU401_UART=m CONFIG_SND_OPL3_LIB=m CONFIG_SND_OPL3_LIB_SEQ=m -# CONFIG_SND_OPL4_LIB_SEQ is not set CONFIG_SND_AC97_CODEC=m CONFIG_SND_DRIVERS=y # CONFIG_SND_DUMMY is not set @@ -5494,7 +5448,6 @@ CONFIG_SND_INDIGOIO=m CONFIG_SND_INDIGODJ=m CONFIG_SND_INDIGOIOX=m CONFIG_SND_INDIGODJX=m -# CONFIG_SND_EMU10K1_SEQ is not set # CONFIG_SND_ENS1370 is not set # CONFIG_SND_ENS1371 is not set # CONFIG_SND_FM801 is not set @@ -5606,7 +5559,6 @@ CONFIG_SND_SOC_IMX_PCM_FIQ=m # SoC Audio support for Freescale i.MX boards: # CONFIG_SND_SOC_EUKREA_TLV320=m -# CONFIG_SND_SOC_IMX_WM8962 is not set CONFIG_SND_SOC_IMX_ES8328=m CONFIG_SND_SOC_IMX_SGTL5000=m CONFIG_SND_SOC_IMX_SPDIF=m @@ -5676,12 +5628,15 @@ CONFIG_SND_SOC_I2C_AND_SPI=m # CONFIG_SND_SOC_ADAU1761_SPI is not set # CONFIG_SND_SOC_ADAU7002 is not set # CONFIG_SND_SOC_AK4104 is not set +# CONFIG_SND_SOC_AK4458 is not set # CONFIG_SND_SOC_AK4554 is not set # CONFIG_SND_SOC_AK4613 is not set # CONFIG_SND_SOC_AK4642 is not set # CONFIG_SND_SOC_AK5386 is not set +# CONFIG_SND_SOC_AK5558 is not set # CONFIG_SND_SOC_ALC5623 is not set CONFIG_SND_SOC_ALC5632=m +# CONFIG_SND_SOC_BD28623 is not set # CONFIG_SND_SOC_BT_SCO is not set # CONFIG_SND_SOC_CS35L32 is not set # CONFIG_SND_SOC_CS35L33 is not set @@ -5712,11 +5667,13 @@ CONFIG_SND_SOC_ES8328_SPI=m # CONFIG_SND_SOC_INNO_RK3036 is not set CONFIG_SND_SOC_MAX98090=m # CONFIG_SND_SOC_MAX98504 is not set +# CONFIG_SND_SOC_MAX9867 is not set # CONFIG_SND_SOC_MAX98927 is not set # CONFIG_SND_SOC_MAX98373 is not set # CONFIG_SND_SOC_MAX9860 is not set # CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set # CONFIG_SND_SOC_PCM1681 is not set +# CONFIG_SND_SOC_PCM1789_I2C is not set # CONFIG_SND_SOC_PCM179X_I2C is not set # CONFIG_SND_SOC_PCM179X_SPI is not set # CONFIG_SND_SOC_PCM186X_I2C is not set @@ -5726,7 +5683,6 @@ CONFIG_SND_SOC_MAX98090=m # CONFIG_SND_SOC_PCM512x_I2C is not set # CONFIG_SND_SOC_PCM512x_SPI is not set CONFIG_SND_SOC_RL6231=m -# CONFIG_SND_SOC_RT5514_SPI_BUILTIN is not set # CONFIG_SND_SOC_RT5616 is not set # CONFIG_SND_SOC_RT5631 is not set CONFIG_SND_SOC_RT5640=m @@ -5747,6 +5703,7 @@ CONFIG_SND_SOC_SGTL5000=m # CONFIG_SND_SOC_TAS571X is not set # CONFIG_SND_SOC_TAS5720 is not set # CONFIG_SND_SOC_TAS6424 is not set +# CONFIG_SND_SOC_TDA7419 is not set # CONFIG_SND_SOC_TFA9879 is not set CONFIG_SND_SOC_TLV320AIC23=m CONFIG_SND_SOC_TLV320AIC23_I2C=m @@ -5782,6 +5739,7 @@ CONFIG_SND_SOC_WM8903=m # CONFIG_SND_SOC_WM8985 is not set CONFIG_SND_SOC_WM9712=m # CONFIG_SND_SOC_ZX_AUD96P22 is not set +# CONFIG_SND_SOC_MAX9759 is not set CONFIG_SND_SOC_MC13783=m # CONFIG_SND_SOC_NAU8540 is not set # CONFIG_SND_SOC_NAU8810 is not set @@ -5826,6 +5784,7 @@ CONFIG_HID_CYPRESS=m CONFIG_HID_DRAGONRISE=m CONFIG_DRAGONRISE_FF=y CONFIG_HID_EMS_FF=m +# CONFIG_HID_ELAN is not set CONFIG_HID_ELECOM=m CONFIG_HID_ELO=m CONFIG_HID_EZKEY=m @@ -5833,6 +5792,7 @@ CONFIG_HID_GEMBIRD=m # CONFIG_HID_GFRM is not set CONFIG_HID_HOLTEK=m CONFIG_HOLTEK_FF=y +# CONFIG_HID_GOOGLE_HAMMER is not set # CONFIG_HID_GT683R is not set CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -5964,7 +5924,6 @@ CONFIG_USB_EHCI_EXYNOS=m CONFIG_USB_EHCI_HCD_PLATFORM=m # CONFIG_USB_OXU210HP_HCD is not set # CONFIG_USB_ISP116X_HCD is not set -# CONFIG_USB_ISP1362_HCD is not set # CONFIG_USB_FOTG210_HCD is not set # CONFIG_USB_MAX3421_HCD is not set CONFIG_USB_OHCI_HCD=m @@ -6281,6 +6240,11 @@ CONFIG_TYPEC=m # CONFIG_TYPEC_TCPM is not set CONFIG_TYPEC_UCSI=m # CONFIG_TYPEC_TPS6598X is not set + +# +# USB Type-C Multiplexer/DeMultiplexer Switch support +# +# CONFIG_TYPEC_MUX_PI3USB30532 is not set CONFIG_USB_LED_TRIG=y # CONFIG_USB_ULPI_BUS is not set CONFIG_UWB=m @@ -6328,6 +6292,7 @@ CONFIG_MMC_VIA_SDMMC=m CONFIG_MMC_DW=m CONFIG_MMC_DW_PLTFM=m CONFIG_MMC_DW_EXYNOS=m +# CONFIG_MMC_DW_HI3798CV200 is not set # CONFIG_MMC_DW_K3 is not set # CONFIG_MMC_DW_PCI is not set CONFIG_MMC_DW_ROCKCHIP=m @@ -6407,6 +6372,7 @@ CONFIG_LEDS_TCA6507=m # # CONFIG_LEDS_BLINKM is not set # CONFIG_LEDS_SYSCON is not set +# CONFIG_LEDS_MLXREG is not set # CONFIG_LEDS_USER is not set # @@ -6436,7 +6402,7 @@ CONFIG_A11Y_BRAILLE_CONSOLE=y CONFIG_INFINIBAND=m CONFIG_INFINIBAND_USER_MAD=m CONFIG_INFINIBAND_USER_ACCESS=m -# CONFIG_INFINIBAND_EXP_USER_ACCESS is not set +# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set CONFIG_INFINIBAND_USER_MEM=y CONFIG_INFINIBAND_ON_DEMAND_PAGING=y CONFIG_INFINIBAND_ADDR_TRANS=y @@ -6444,7 +6410,6 @@ CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y CONFIG_INFINIBAND_MTHCA=m CONFIG_INFINIBAND_MTHCA_DEBUG=y CONFIG_INFINIBAND_CXGB3=m -# CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB4=m CONFIG_INFINIBAND_I40IW=m CONFIG_MLX4_INFINIBAND=m @@ -6502,6 +6467,7 @@ CONFIG_RTC_DRV_RK808=y # CONFIG_RTC_DRV_RS5C372 is not set # CONFIG_RTC_DRV_ISL1208 is not set # CONFIG_RTC_DRV_ISL12022 is not set +# CONFIG_RTC_DRV_ISL12026 is not set # CONFIG_RTC_DRV_X1205 is not set CONFIG_RTC_DRV_PCF8523=y # CONFIG_RTC_DRV_PCF85063 is not set @@ -6614,6 +6580,7 @@ CONFIG_DMA_BCM2835=y CONFIG_DMA_OMAP=y CONFIG_DMA_SUN4I=y CONFIG_DMA_SUN6I=m +# CONFIG_DW_AXI_DMAC is not set # CONFIG_FSL_EDMA is not set CONFIG_IMX_DMA=y CONFIG_IMX_SDMA=y @@ -6672,7 +6639,6 @@ CONFIG_VIRTIO_MMIO=m # # Microsoft Hyper-V guest support # -# CONFIG_HYPERV_TSCPAGE is not set # # Xen driver support @@ -6695,7 +6661,6 @@ CONFIG_XEN_PRIVCMD=m CONFIG_XEN_EFI=y CONFIG_XEN_AUTO_XLATE=y CONFIG_STAGING=y -# CONFIG_IRDA is not set # CONFIG_IPX is not set CONFIG_NCP_FS=m CONFIG_NCPFS_PACKET_SIGNING=y @@ -6789,10 +6754,6 @@ CONFIG_RTLWIFI_DEBUG_ST=y # CONFIG_AD2S90 is not set # CONFIG_AD2S1200 is not set # CONFIG_AD2S1210 is not set - -# -# Triggers - standalone -# # CONFIG_FB_SM750 is not set # CONFIG_FB_XGI is not set @@ -6836,12 +6797,14 @@ CONFIG_BCM_VIDEOCORE=y # CONFIG_BCM2835_VCHIQ is not set # CONFIG_SND_BCM2835 is not set # CONFIG_VIDEO_BCM2835 is not set -# CONFIG_CRYPTO_DEV_CCREE is not set # # USB Power Delivery and Type-C drivers # CONFIG_PI433=m +CONFIG_MTK_MMC=m +# CONFIG_MTK_AEE_KDUMP is not set +# CONFIG_MTK_MMC_CD_POLL is not set # CONFIG_GOLDFISH is not set CONFIG_CHROME_PLATFORMS=y CONFIG_CROS_EC_CTL=m @@ -6861,8 +6824,10 @@ CONFIG_CLK_VEXPRESS_OSC=y # CONFIG_CLK_HSDK is not set CONFIG_COMMON_CLK_MAX77686=m CONFIG_COMMON_CLK_RK808=m +CONFIG_COMMON_CLK_SCMI=m # CONFIG_COMMON_CLK_SI5351 is not set # CONFIG_COMMON_CLK_SI514 is not set +# CONFIG_COMMON_CLK_SI544 is not set # CONFIG_COMMON_CLK_SI570 is not set # CONFIG_COMMON_CLK_CDCE706 is not set # CONFIG_COMMON_CLK_CDCE925 is not set @@ -6870,11 +6835,8 @@ CONFIG_COMMON_CLK_RK808=m CONFIG_COMMON_CLK_S2MPS11=m CONFIG_CLK_TWL6040=m # CONFIG_CLK_QORIQ is not set -# CONFIG_COMMON_CLK_NXP is not set CONFIG_COMMON_CLK_PALMAS=m # CONFIG_COMMON_CLK_PWM is not set -# CONFIG_COMMON_CLK_PXA is not set -# CONFIG_COMMON_CLK_PIC32 is not set # CONFIG_COMMON_CLK_VC5 is not set CONFIG_MVEBU_CLK_COMMON=y CONFIG_MVEBU_CLK_CPU=y @@ -6908,6 +6870,7 @@ CONFIG_COMMON_CLK_TI_ADPLL=y # CONFIG_TIMER_OF=y CONFIG_TIMER_PROBE=y +CONFIG_OMAP_DM_TIMER=y CONFIG_CLKSRC_MMIO=y CONFIG_BCM2835_TIMER=y CONFIG_DW_APB_TIMER=y @@ -6924,13 +6887,8 @@ CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y CONFIG_ARM_GLOBAL_TIMER=y CONFIG_ARM_TIMER_SP804=y CONFIG_CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK=y -# CONFIG_ATMEL_PIT is not set CONFIG_CLKSRC_EXYNOS_MCT=y CONFIG_CLKSRC_SAMSUNG_PWM=y -# CONFIG_SH_TIMER_CMT is not set -# CONFIG_SH_TIMER_MTU2 is not set -# CONFIG_SH_TIMER_TMU is not set -# CONFIG_EM_TIMER_STI is not set CONFIG_CLKSRC_VERSATILE=y CONFIG_CLKSRC_IMX_GPT=y CONFIG_MAILBOX=y @@ -6943,6 +6901,7 @@ CONFIG_OMAP_MBOX_KFIFO_SIZE=256 # CONFIG_ALTERA_MBOX is not set CONFIG_BCM2835_MBOX=y # CONFIG_MAILBOX_TEST is not set +# CONFIG_TEGRA_HSP_MBOX is not set CONFIG_IOMMU_API=y CONFIG_IOMMU_SUPPORT=y @@ -7036,7 +6995,6 @@ CONFIG_EXTCON=y # Extcon Device Drivers # # CONFIG_EXTCON_ADC_JACK is not set -CONFIG_EXTCON_AXP288=m # CONFIG_EXTCON_GPIO is not set # CONFIG_EXTCON_MAX3355 is not set CONFIG_EXTCON_PALMAS=m @@ -7308,6 +7266,7 @@ CONFIG_HID_SENSOR_PROX=m # CONFIG_JSA1212 is not set # CONFIG_RPR0521 is not set # CONFIG_LTR501 is not set +# CONFIG_LV0104CS is not set # CONFIG_MAX44000 is not set # CONFIG_OPT3001 is not set # CONFIG_PA12203001 is not set @@ -7360,9 +7319,11 @@ CONFIG_HID_SENSOR_DEVICE_ROTATION=m # # Digital potentiometers # +# CONFIG_AD5272 is not set # CONFIG_DS1803 is not set # CONFIG_MAX5481 is not set # CONFIG_MAX5487 is not set +# CONFIG_MCP4018 is not set # CONFIG_MCP4131 is not set # CONFIG_MCP4531 is not set # CONFIG_TPL0102 is not set @@ -7409,6 +7370,7 @@ CONFIG_HID_SENSOR_PRESS=m # CONFIG_MAXIM_THERMOCOUPLE is not set # CONFIG_HID_SENSOR_TEMP is not set # CONFIG_MLX90614 is not set +# CONFIG_MLX90632 is not set # CONFIG_TMP006 is not set # CONFIG_TMP007 is not set # CONFIG_TSYS01 is not set @@ -7454,19 +7416,9 @@ CONFIG_PARTITION_PERCPU=y # CONFIG_IPACK_BUS is not set CONFIG_ARCH_HAS_RESET_CONTROLLER=y CONFIG_RESET_CONTROLLER=y -# CONFIG_RESET_ATH79 is not set -# CONFIG_RESET_AXS10X is not set -# CONFIG_RESET_BERLIN is not set -# CONFIG_RESET_IMX7 is not set -# CONFIG_RESET_LANTIQ is not set -# CONFIG_RESET_LPC18XX is not set -# CONFIG_RESET_MESON is not set -# CONFIG_RESET_PISTACHIO is not set CONFIG_RESET_SIMPLE=y CONFIG_RESET_SUNXI=y # CONFIG_RESET_TI_SYSCON is not set -# CONFIG_RESET_ZYNQ is not set -# CONFIG_RESET_TEGRA_BPMP is not set # CONFIG_FMC is not set # @@ -7481,6 +7433,7 @@ CONFIG_PHY_MVEBU_CP110_COMPHY=m # CONFIG_PHY_PXA_28NM_HSIC is not set # CONFIG_PHY_PXA_28NM_USB2 is not set # CONFIG_PHY_CPCAP_USB is not set +# CONFIG_PHY_MAPPHONE_MDM6600 is not set CONFIG_PHY_ROCKCHIP_DP=m CONFIG_PHY_ROCKCHIP_EMMC=m # CONFIG_PHY_ROCKCHIP_INNO_USB2 is not set @@ -7508,6 +7461,9 @@ CONFIG_TWL4030_USB=m # # Performance monitor support # +# CONFIG_ARM_CCI400_PMU is not set +# CONFIG_ARM_CCI5xx_PMU is not set +# CONFIG_ARM_CCN is not set CONFIG_ARM_PMU=y CONFIG_RAS=y @@ -7522,6 +7478,10 @@ CONFIG_NVMEM=y CONFIG_ROCKCHIP_EFUSE=m CONFIG_NVMEM_SUNXI_SID=m # CONFIG_NVMEM_SNVS_LPGPR is not set + +# +# HW tracing support +# # CONFIG_STM is not set # CONFIG_INTEL_TH is not set # CONFIG_FPGA is not set @@ -7535,6 +7495,8 @@ CONFIG_PM_OPP=y # Firmware Drivers # CONFIG_ARM_PSCI_FW=y +CONFIG_ARM_SCMI_PROTOCOL=y +CONFIG_ARM_SCMI_POWER_DOMAIN=m # CONFIG_ARM_SCPI_PROTOCOL is not set # CONFIG_FIRMWARE_MEMMAP is not set CONFIG_DMIID=y @@ -7646,6 +7608,7 @@ CONFIG_OVERLAY_FS=m # CONFIG_OVERLAY_FS_REDIRECT_DIR is not set # CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW is not set # CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_XINO_AUTO is not set # # Caches @@ -7693,7 +7656,6 @@ CONFIG_SYSFS=y CONFIG_TMPFS=y CONFIG_TMPFS_POSIX_ACL=y CONFIG_TMPFS_XATTR=y -# CONFIG_HUGETLB_PAGE is not set CONFIG_CONFIGFS_FS=m CONFIG_EFIVAR_FS=m CONFIG_MISC_FILESYSTEMS=y @@ -7977,13 +7939,15 @@ CONFIG_SCHED_STACK_END_CHECK=y # # Lock Debugging (spinlocks, mutexes, etc...) # +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_MUTEXES is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set # CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_ATOMIC_SLEEP is not set # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set # CONFIG_LOCK_TORTURE_TEST is not set @@ -8001,8 +7965,6 @@ CONFIG_DEBUG_LIST=y # # RCU Debugging # -# CONFIG_PROVE_RCU is not set -# CONFIG_TORTURE_TEST is not set # CONFIG_RCU_PERF_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set CONFIG_RCU_CPU_STALL_TIMEOUT=21 @@ -8046,7 +8008,6 @@ CONFIG_TRACER_SNAPSHOT=y # CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set CONFIG_BRANCH_PROFILE_NONE=y # CONFIG_PROFILE_ANNOTATED_BRANCHES is not set -# CONFIG_PROFILE_ALL_BRANCHES is not set CONFIG_STACK_TRACER=y CONFIG_BLK_DEV_IO_TRACE=y CONFIG_KPROBE_EVENTS=y @@ -8097,7 +8058,6 @@ CONFIG_BUG_ON_DATA_CORRUPTION=y # CONFIG_SAMPLES is not set CONFIG_HAVE_ARCH_KGDB=y # CONFIG_KGDB is not set -# CONFIG_ARCH_WANTS_UBSAN_NO_NULL is not set # CONFIG_UBSAN is not set CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y CONFIG_STRICT_DEVMEM=y @@ -8111,7 +8071,6 @@ CONFIG_OLD_MCOUNT=y # CONFIG_DEBUG_LL is not set CONFIG_DEBUG_IMX_UART_PORT=1 CONFIG_DEBUG_LL_INCLUDE="mach/debug-macro.S" -# CONFIG_DEBUG_UART_8250 is not set CONFIG_UNCOMPRESS_INCLUDE="debug/uncompress.h" # CONFIG_ARM_KPROBES_TEST is not set # CONFIG_PID_IN_CONTEXTIDR is not set @@ -8128,7 +8087,6 @@ CONFIG_KEYS=y # CONFIG_KEY_DH_OPERATIONS is not set CONFIG_SECURITY_DMESG_RESTRICT=y CONFIG_SECURITY=y -# CONFIG_SECURITY_WRITABLE_HOOKS is not set CONFIG_SECURITYFS=y CONFIG_SECURITY_NETWORK=y # CONFIG_SECURITY_INFINIBAND is not set @@ -8139,6 +8097,7 @@ CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y CONFIG_HARDENED_USERCOPY=y CONFIG_HARDENED_USERCOPY_FALLBACK=y # CONFIG_HARDENED_USERCOPY_PAGESPAN is not set +CONFIG_FORTIFY_SOURCE=y # CONFIG_STATIC_USERMODEHELPER is not set CONFIG_SECURITY_SELINUX=y # CONFIG_SECURITY_SELINUX_BOOTPARAM is not set @@ -8246,6 +8205,7 @@ CONFIG_CRYPTO_ECHAINIV=m # Block modes # CONFIG_CRYPTO_CBC=m +CONFIG_CRYPTO_CFB=m CONFIG_CRYPTO_CTR=m CONFIG_CRYPTO_CTS=m CONFIG_CRYPTO_ECB=m @@ -8305,6 +8265,8 @@ CONFIG_CRYPTO_SALSA20=m CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_SEED=m CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_SPECK=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_TWOFISH=m CONFIG_CRYPTO_TWOFISH_COMMON=m @@ -8337,7 +8299,6 @@ CONFIG_CRYPTO_HASH_INFO=y CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_DEV_MARVELL_CESA=m # CONFIG_CRYPTO_DEV_FSL_CAAM is not set -# CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC is not set # CONFIG_CRYPTO_DEV_OMAP is not set # CONFIG_CRYPTO_DEV_SAHARA is not set # CONFIG_CRYPTO_DEV_MXC_SCC is not set @@ -8349,6 +8310,7 @@ CONFIG_CRYPTO_DEV_SUN4I_SS=m # CONFIG_CRYPTO_DEV_ROCKCHIP is not set CONFIG_CRYPTO_DEV_CHELSIO=m CONFIG_CRYPTO_DEV_VIRTIO=m +# CONFIG_CRYPTO_DEV_CCREE is not set CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y CONFIG_X509_CERTIFICATE_PARSER=y @@ -8396,7 +8358,6 @@ CONFIG_LIBCRC32C=m CONFIG_CRC8=m CONFIG_XXHASH=m CONFIG_AUDIT_GENERIC=y -# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set # CONFIG_RANDOM32_SELFTEST is not set CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=m @@ -8434,7 +8395,6 @@ CONFIG_ASSOCIATIVE_ARRAY=y CONFIG_HAS_IOMEM=y CONFIG_HAS_DMA=y CONFIG_SGL_ALLOC=y -# CONFIG_DMA_DIRECT_OPS is not set CONFIG_DMA_VIRT_OPS=y CONFIG_CHECK_SIGNATURE=y CONFIG_CPU_RMAP=y diff --git a/gnu/packages/aux-files/linux-libre/4.17-arm64.conf b/gnu/packages/aux-files/linux-libre/4.17-arm64.conf new file mode 100644 index 0000000000..3b2b391ad2 --- /dev/null +++ b/gnu/packages/aux-files/linux-libre/4.17-arm64.conf @@ -0,0 +1,8087 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/arm64 4.17.0-gnu Kernel Configuration +# +CONFIG_ARM64=y +CONFIG_64BIT=y +CONFIG_ARCH_PHYS_ADDR_T_64BIT=y +CONFIG_MMU=y +CONFIG_ARM64_PAGE_SHIFT=12 +CONFIG_ARM64_CONT_SHIFT=4 +CONFIG_ARCH_MMAP_RND_BITS_MIN=18 +CONFIG_ARCH_MMAP_RND_BITS_MAX=33 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MIN=11 +CONFIG_ARCH_MMAP_RND_COMPAT_BITS_MAX=16 +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_ILLEGAL_POINTER_VALUE=0xdead000000000000 +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_TRACE_IRQFLAGS_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_CSUM=y +CONFIG_GENERIC_CALIBRATE_DELAY=y +CONFIG_ZONE_DMA32=y +CONFIG_HAVE_GENERIC_GUP=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_SMP=y +CONFIG_SWIOTLB=y +CONFIG_IOMMU_HELPER=y +CONFIG_KERNEL_MODE_NEON=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_PGTABLE_LEVELS=4 +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_ARCH_PROC_KCORE_TEXT=y +CONFIG_MULTI_IRQ_HANDLER=y +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y +CONFIG_THREAD_INFO_IN_TASK=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y +# CONFIG_USELIB is not set +CONFIG_AUDIT=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_WATCH=y +CONFIG_AUDIT_TREE=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_IRQ_PROBE=y +CONFIG_GENERIC_IRQ_SHOW=y +CONFIG_GENERIC_IRQ_SHOW_LEVEL=y +CONFIG_GENERIC_IRQ_EFFECTIVE_AFF_MASK=y +CONFIG_GENERIC_IRQ_MIGRATION=y +CONFIG_HARDIRQS_SW_RESEND=y +CONFIG_GENERIC_IRQ_CHIP=y +CONFIG_IRQ_DOMAIN=y +CONFIG_IRQ_DOMAIN_HIERARCHY=y +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_GENERIC_MSI_IRQ_DOMAIN=y +CONFIG_HANDLE_DOMAIN_IRQ=y +CONFIG_IRQ_FORCED_THREADING=y +CONFIG_SPARSE_IRQ=y +# CONFIG_GENERIC_IRQ_DEBUGFS is not set +CONFIG_ARCH_CLOCKSOURCE_DATA=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y +CONFIG_ARCH_HAS_TICK_BROADCAST=y +CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +# CONFIG_NO_HZ_FULL is not set +# CONFIG_NO_HZ is not set +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_TICK_CPU_ACCOUNTING=y +# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set +# CONFIG_IRQ_TIME_ACCOUNTING is not set +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y +CONFIG_CPU_ISOLATION=y + +# +# RCU Subsystem +# +CONFIG_TREE_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_SRCU=y +CONFIG_TREE_SRCU=y +CONFIG_RCU_STALL_COMMON=y +CONFIG_RCU_NEED_SEGCBLIST=y +CONFIG_BUILD_BIN2C=y +# CONFIG_IKCONFIG is not set +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_PRINTK_SAFE_LOG_BUF_SHIFT=13 +CONFIG_GENERIC_SCHED_CLOCK=y +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_NUMA_BALANCING=y +CONFIG_NUMA_BALANCING_DEFAULT_ENABLED=y +CONFIG_CGROUPS=y +CONFIG_PAGE_COUNTER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +# CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +# CONFIG_RT_GROUP_SCHED is not set +CONFIG_CGROUP_PIDS=y +# CONFIG_CGROUP_RDMA is not set +CONFIG_CGROUP_FREEZER=y +# CONFIG_CGROUP_HUGETLB is not set +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_BPF=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_SOCK_CGROUP_DATA=y +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +CONFIG_SCHED_AUTOGROUP=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +CONFIG_RD_BZIP2=y +CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y +CONFIG_RD_LZO=y +CONFIG_RD_LZ4=y +CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_HAVE_UID16=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_BPF=y +CONFIG_EXPERT=y +CONFIG_UID16=y +CONFIG_MULTIUSER=y +# CONFIG_SGETMASK_SYSCALL is not set +# CONFIG_SYSFS_SYSCALL is not set +# CONFIG_SYSCTL_SYSCALL is not set +CONFIG_FHANDLE=y +CONFIG_POSIX_TIMERS=y +CONFIG_PRINTK=y +CONFIG_PRINTK_NMI=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_FUTEX_PI=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y +CONFIG_MEMBARRIER=y +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_KALLSYMS=y +# CONFIG_KALLSYMS_ALL is not set +CONFIG_KALLSYMS_BASE_RELATIVE=y +CONFIG_BPF_SYSCALL=y +# CONFIG_BPF_JIT_ALWAYS_ON is not set +CONFIG_USERFAULTFD=y +CONFIG_ARCH_HAS_MEMBARRIER_SYNC_CORE=y +# CONFIG_EMBEDDED is not set +CONFIG_HAVE_PERF_EVENTS=y +# CONFIG_PC104 is not set + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_SLUB_MEMCG_SYSFS_ON is not set +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +# CONFIG_SLOB is not set +CONFIG_SLAB_MERGE_DEFAULT=y +CONFIG_SLAB_FREELIST_RANDOM=y +CONFIG_SLAB_FREELIST_HARDENED=y +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_SYSTEM_DATA_VERIFICATION=y +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +CONFIG_CRASH_CORE=y +CONFIG_KEXEC_CORE=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_UPROBES=y +CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y +CONFIG_KRETPROBES=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_NMI=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_CONTIGUOUS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_GENERIC_IDLE_POLL_SETUP=y +CONFIG_ARCH_HAS_FORTIFY_SOURCE=y +CONFIG_ARCH_HAS_SET_MEMORY=y +CONFIG_HAVE_ARCH_THREAD_STRUCT_WHITELIST=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_CLK=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_HW_BREAKPOINT=y +CONFIG_HAVE_PERF_REGS=y +CONFIG_HAVE_PERF_USER_STACK_DUMP=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +CONFIG_HAVE_GCC_PLUGINS=y +# CONFIG_GCC_PLUGINS is not set +CONFIG_HAVE_CC_STACKPROTECTOR=y +# CONFIG_CC_STACKPROTECTOR_NONE is not set +# CONFIG_CC_STACKPROTECTOR_REGULAR is not set +CONFIG_CC_STACKPROTECTOR_STRONG=y +# CONFIG_CC_STACKPROTECTOR_AUTO is not set +CONFIG_HAVE_CONTEXT_TRACKING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_HUGE_VMAP=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_HAVE_ARCH_MMAP_RND_BITS=y +CONFIG_ARCH_MMAP_RND_BITS=18 +CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y +CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11 +CONFIG_CLONE_BACKWARDS=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_COMPAT_OLD_SIGACTION=y +CONFIG_HAVE_ARCH_VMAP_STACK=y +CONFIG_VMAP_STACK=y +CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y +CONFIG_STRICT_KERNEL_RWX=y +CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y +CONFIG_STRICT_MODULE_RWX=y +CONFIG_REFCOUNT_FULL=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +CONFIG_HAVE_GENERIC_DMA_COHERENT=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +CONFIG_MODULE_FORCE_LOAD=y +CONFIG_MODULE_UNLOAD=y +CONFIG_MODULE_FORCE_UNLOAD=y +CONFIG_MODVERSIONS=y +# CONFIG_MODULE_SRCVERSION_ALL is not set +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_COMPRESS is not set +# CONFIG_TRIM_UNUSED_KSYMS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_BLK_SCSI_REQUEST=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +# CONFIG_BLK_DEV_ZONED is not set +CONFIG_BLK_DEV_THROTTLING=y +# CONFIG_BLK_DEV_THROTTLING_LOW is not set +# CONFIG_BLK_CMDLINE_PARSER is not set +CONFIG_BLK_WBT=y +# CONFIG_BLK_WBT_SQ is not set +CONFIG_BLK_WBT_MQ=y +CONFIG_BLK_DEBUG_FS=y +CONFIG_BLK_SED_OPAL=y + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +CONFIG_KARMA_PARTITION=y +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y +CONFIG_BLK_MQ_PCI=y +CONFIG_BLK_MQ_VIRTIO=y +CONFIG_BLK_MQ_RDMA=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +# CONFIG_DEFAULT_DEADLINE is not set +CONFIG_DEFAULT_CFQ=y +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="cfq" +CONFIG_MQ_IOSCHED_DEADLINE=y +CONFIG_MQ_IOSCHED_KYBER=m +CONFIG_IOSCHED_BFQ=m +CONFIG_BFQ_GROUP_IOSCHED=y +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_ARCH_INLINE_READ_LOCK=y +CONFIG_ARCH_INLINE_READ_LOCK_BH=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_READ_UNLOCK=y +CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_WRITE_LOCK=y +CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_READ_LOCK=y +CONFIG_INLINE_READ_LOCK_BH=y +CONFIG_INLINE_READ_LOCK_IRQ=y +CONFIG_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_BH=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_WRITE_LOCK=y +CONFIG_INLINE_WRITE_LOCK_BH=y +CONFIG_INLINE_WRITE_LOCK_IRQ=y +CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_BH=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_ARCH_USE_QUEUED_RWLOCKS=y +CONFIG_QUEUED_RWLOCKS=y +CONFIG_FREEZER=y + +# +# Platform selection +# +# CONFIG_ARCH_ACTIONS is not set +CONFIG_ARCH_SUNXI=y +# CONFIG_ARCH_ALPINE is not set +CONFIG_ARCH_BCM2835=y +# CONFIG_ARCH_BCM_IPROC is not set +# CONFIG_ARCH_BERLIN is not set +# CONFIG_ARCH_BRCMSTB is not set +# CONFIG_ARCH_EXYNOS is not set +# CONFIG_ARCH_LAYERSCAPE is not set +# CONFIG_ARCH_LG1K is not set +CONFIG_ARCH_HISI=y +# CONFIG_ARCH_MEDIATEK is not set +CONFIG_ARCH_MESON=y +CONFIG_ARCH_MVEBU=y +CONFIG_ARCH_QCOM=y +# CONFIG_ARCH_REALTEK is not set +CONFIG_ARCH_ROCKCHIP=y +CONFIG_ARCH_SEATTLE=y +CONFIG_ARCH_SYNQUACER=y +# CONFIG_ARCH_RENESAS is not set +# CONFIG_ARCH_STRATIX10 is not set +CONFIG_ARCH_TEGRA=y +# CONFIG_ARCH_SPRD is not set +CONFIG_ARCH_THUNDER=y +CONFIG_ARCH_THUNDER2=y +# CONFIG_ARCH_UNIPHIER is not set +CONFIG_ARCH_VEXPRESS=y +CONFIG_ARCH_XGENE=y +# CONFIG_ARCH_ZX is not set +# CONFIG_ARCH_ZYNQMP is not set + +# +# Bus support +# +CONFIG_PCI=y +CONFIG_PCI_DOMAINS=y +CONFIG_PCI_DOMAINS_GENERIC=y +CONFIG_PCI_SYSCALL=y +CONFIG_PCIEPORTBUS=y +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_PCIEAER=y +# CONFIG_PCIE_ECRC is not set +CONFIG_PCIEAER_INJECT=m +CONFIG_PCIEASPM=y +# CONFIG_PCIEASPM_DEBUG is not set +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_POWERSAVE is not set +# CONFIG_PCIEASPM_POWER_SUPERSAVE is not set +# CONFIG_PCIEASPM_PERFORMANCE is not set +CONFIG_PCIE_PME=y +CONFIG_PCIE_DPC=y +CONFIG_PCIE_PTM=y +CONFIG_PCI_BUS_ADDR_T_64BIT=y +CONFIG_PCI_MSI=y +CONFIG_PCI_MSI_IRQ_DOMAIN=y +CONFIG_PCI_QUIRKS=y +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_PCI_ATS=y +CONFIG_PCI_ECAM=y +CONFIG_PCI_IOV=y +# CONFIG_PCI_PRI is not set +# CONFIG_PCI_PASID is not set +CONFIG_PCI_LABEL=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_ACPI=y +CONFIG_HOTPLUG_PCI_ACPI_IBM=m +CONFIG_HOTPLUG_PCI_CPCI=y +CONFIG_HOTPLUG_PCI_SHPC=m + +# +# Cadence PCIe controllers support +# +# CONFIG_PCIE_CADENCE_HOST is not set + +# +# DesignWare PCI Core Support +# +CONFIG_PCIE_DW=y +CONFIG_PCIE_DW_HOST=y +# CONFIG_PCIE_DW_PLAT is not set +CONFIG_PCI_HISI=y +CONFIG_PCIE_QCOM=y +CONFIG_PCIE_ARMADA_8K=y +CONFIG_PCIE_KIRIN=y +# CONFIG_PCIE_HISI_STB is not set + +# +# PCI host controller drivers +# +CONFIG_PCI_AARDVARK=y +CONFIG_PCI_TEGRA=y +CONFIG_PCI_HOST_COMMON=y +CONFIG_PCI_HOST_GENERIC=y +CONFIG_PCI_XGENE=y +CONFIG_PCI_XGENE_MSI=y +CONFIG_PCI_HOST_THUNDER_PEM=y +CONFIG_PCI_HOST_THUNDER_ECAM=y +CONFIG_PCIE_ROCKCHIP=y + +# +# PCI Endpoint +# +# CONFIG_PCI_ENDPOINT is not set + +# +# PCI switch controller drivers +# +# CONFIG_PCI_SW_SWITCHTEC is not set + +# +# Kernel Features +# + +# +# ARM errata workarounds via the alternatives framework +# +CONFIG_ARM64_ERRATUM_826319=y +CONFIG_ARM64_ERRATUM_827319=y +CONFIG_ARM64_ERRATUM_824069=y +CONFIG_ARM64_ERRATUM_819472=y +CONFIG_ARM64_ERRATUM_832075=y +CONFIG_ARM64_ERRATUM_834220=y +CONFIG_ARM64_ERRATUM_845719=y +# CONFIG_ARM64_ERRATUM_843419 is not set +CONFIG_ARM64_ERRATUM_1024718=y +CONFIG_CAVIUM_ERRATUM_22375=y +CONFIG_CAVIUM_ERRATUM_23144=y +CONFIG_CAVIUM_ERRATUM_23154=y +CONFIG_CAVIUM_ERRATUM_27456=y +CONFIG_CAVIUM_ERRATUM_30115=y +CONFIG_QCOM_FALKOR_ERRATUM_1003=y +CONFIG_QCOM_FALKOR_ERRATUM_1009=y +CONFIG_QCOM_QDF2400_ERRATUM_0065=y +CONFIG_SOCIONEXT_SYNQUACER_PREITS=y +CONFIG_HISILICON_ERRATUM_161600802=y +CONFIG_QCOM_FALKOR_ERRATUM_E1041=y +CONFIG_ARM64_4K_PAGES=y +# CONFIG_ARM64_16K_PAGES is not set +# CONFIG_ARM64_64K_PAGES is not set +# CONFIG_ARM64_VA_BITS_39 is not set +CONFIG_ARM64_VA_BITS_48=y +CONFIG_ARM64_VA_BITS=48 +CONFIG_ARM64_PA_BITS_48=y +CONFIG_ARM64_PA_BITS=48 +# CONFIG_CPU_BIG_ENDIAN is not set +CONFIG_SCHED_MC=y +# CONFIG_SCHED_SMT is not set +CONFIG_NR_CPUS=256 +CONFIG_HOTPLUG_CPU=y +CONFIG_NUMA=y +CONFIG_NODES_SHIFT=2 +CONFIG_USE_PERCPU_NUMA_NODE_ID=y +CONFIG_HAVE_SETUP_PER_CPU_AREA=y +CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y +CONFIG_HOLES_IN_ZONE=y +# CONFIG_PREEMPT_NONE is not set +CONFIG_PREEMPT_VOLUNTARY=y +# CONFIG_PREEMPT is not set +# CONFIG_HZ_100 is not set +CONFIG_HZ_250=y +# CONFIG_HZ_300 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ=250 +CONFIG_SCHED_HRTICK=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_ARCH_HAS_HOLES_MEMORYMODEL=y +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_HAVE_ARCH_PFN_VALID=y +CONFIG_HW_PERF_EVENTS=y +CONFIG_SYS_SUPPORTS_HUGETLBFS=y +CONFIG_ARCH_WANT_HUGE_PMD_SHARE=y +CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_NO_BOOTMEM=y +CONFIG_MEMORY_ISOLATION=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 +CONFIG_ARCH_SUPPORTS_MEMORY_FAILURE=y +CONFIG_MEMORY_FAILURE=y +CONFIG_HWPOISON_INJECT=m +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_TRANSPARENT_HUGE_PAGECACHE=y +# CONFIG_CLEANCACHE is not set +CONFIG_FRONTSWAP=y +CONFIG_CMA=y +# CONFIG_CMA_DEBUG is not set +# CONFIG_CMA_DEBUGFS is not set +CONFIG_CMA_AREAS=7 +CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y +# CONFIG_Z3FOLD is not set +CONFIG_ZSMALLOC=m +# CONFIG_PGTABLE_MAPPING is not set +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_GENERIC_EARLY_IOREMAP=y +# CONFIG_DEFERRED_STRUCT_PAGE_INIT is not set +# CONFIG_IDLE_PAGE_TRACKING is not set +CONFIG_FRAME_VECTOR=y +# CONFIG_PERCPU_STATS is not set +# CONFIG_GUP_BENCHMARK is not set +CONFIG_SECCOMP=y +CONFIG_PARAVIRT=y +# CONFIG_PARAVIRT_TIME_ACCOUNTING is not set +CONFIG_KEXEC=y +CONFIG_CRASH_DUMP=y +CONFIG_XEN_DOM0=y +CONFIG_XEN=y +CONFIG_FORCE_MAX_ZONEORDER=11 +CONFIG_UNMAP_KERNEL_AT_EL0=y +CONFIG_HARDEN_BRANCH_PREDICTOR=y +CONFIG_HARDEN_EL2_VECTORS=y +CONFIG_ARMV8_DEPRECATED=y +CONFIG_SWP_EMULATION=y +CONFIG_CP15_BARRIER_EMULATION=y +CONFIG_SETEND_EMULATION=y +# CONFIG_ARM64_SW_TTBR0_PAN is not set + +# +# ARMv8.1 architectural features +# +CONFIG_ARM64_HW_AFDBM=y +CONFIG_ARM64_PAN=y +# CONFIG_ARM64_LSE_ATOMICS is not set +CONFIG_ARM64_VHE=y + +# +# ARMv8.2 architectural features +# +CONFIG_ARM64_UAO=y +CONFIG_ARM64_PMEM=y +CONFIG_ARM64_RAS_EXTN=y +CONFIG_ARM64_SVE=y +CONFIG_ARM64_MODULE_PLTS=y +CONFIG_RELOCATABLE=y +CONFIG_RANDOMIZE_BASE=y +CONFIG_RANDOMIZE_MODULE_REGION_FULL=y + +# +# Boot options +# +CONFIG_ARM64_ACPI_PARKING_PROTOCOL=y +CONFIG_CMDLINE="" +# CONFIG_CMDLINE_FORCE is not set +CONFIG_EFI_STUB=y +CONFIG_EFI=y +CONFIG_DMI=y + +# +# Userspace binary formats +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_ELFCORE=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y +CONFIG_COMPAT=y +CONFIG_SYSVIPC_COMPAT=y + +# +# Power management options +# +CONFIG_SUSPEND=y +CONFIG_SUSPEND_FREEZER=y +# CONFIG_SUSPEND_SKIP_SYNC is not set +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION=y +CONFIG_PM_STD_PARTITION="" +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +# CONFIG_PM_AUTOSLEEP is not set +# CONFIG_PM_WAKELOCKS is not set +CONFIG_PM=y +CONFIG_PM_DEBUG=y +CONFIG_PM_ADVANCED_DEBUG=y +# CONFIG_PM_TEST_SUSPEND is not set +CONFIG_PM_SLEEP_DEBUG=y +# CONFIG_DPM_WATCHDOG is not set +CONFIG_PM_CLK=y +CONFIG_PM_GENERIC_DOMAINS=y +# CONFIG_WQ_POWER_EFFICIENT_DEFAULT is not set +CONFIG_PM_GENERIC_DOMAINS_SLEEP=y +CONFIG_PM_GENERIC_DOMAINS_OF=y +CONFIG_CPU_PM=y +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_ARCH_HIBERNATION_HEADER=y +CONFIG_ARCH_SUSPEND_POSSIBLE=y + +# +# CPU Power Management +# + +# +# CPU Idle +# +CONFIG_CPU_IDLE=y +CONFIG_CPU_IDLE_MULTIPLE_DRIVERS=y +CONFIG_CPU_IDLE_GOV_LADDER=y +CONFIG_CPU_IDLE_GOV_MENU=y +CONFIG_DT_IDLE_STATES=y + +# +# ARM CPU Idle Drivers +# +CONFIG_ARM_CPUIDLE=y + +# +# CPU Frequency scaling +# +CONFIG_CPU_FREQ=y +CONFIG_CPU_FREQ_GOV_ATTR_SET=y +CONFIG_CPU_FREQ_GOV_COMMON=y +CONFIG_CPU_FREQ_STAT=y +CONFIG_CPU_FREQ_DEFAULT_GOV_PERFORMANCE=y +# CONFIG_CPU_FREQ_DEFAULT_GOV_POWERSAVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_USERSPACE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_CONSERVATIVE is not set +# CONFIG_CPU_FREQ_DEFAULT_GOV_SCHEDUTIL is not set +CONFIG_CPU_FREQ_GOV_PERFORMANCE=y +CONFIG_CPU_FREQ_GOV_POWERSAVE=m +CONFIG_CPU_FREQ_GOV_USERSPACE=m +CONFIG_CPU_FREQ_GOV_ONDEMAND=m +CONFIG_CPU_FREQ_GOV_CONSERVATIVE=m +CONFIG_CPU_FREQ_GOV_SCHEDUTIL=y + +# +# CPU frequency scaling drivers +# +CONFIG_CPUFREQ_DT=m +CONFIG_CPUFREQ_DT_PLATDEV=y +CONFIG_ACPI_CPPC_CPUFREQ=m +# CONFIG_ARM_ARMADA_37XX_CPUFREQ is not set +# CONFIG_ARM_BIG_LITTLE_CPUFREQ is not set +CONFIG_ARM_SCMI_CPUFREQ=m +CONFIG_ARM_TEGRA20_CPUFREQ=y +CONFIG_ARM_TEGRA124_CPUFREQ=m +# CONFIG_ARM_TEGRA186_CPUFREQ is not set +# CONFIG_QORIQ_CPUFREQ is not set +CONFIG_NET=y +CONFIG_COMPAT_NETLINK_MESSAGES=y +CONFIG_NET_INGRESS=y +CONFIG_NET_EGRESS=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=m +# CONFIG_TLS is not set +CONFIG_XFRM=y +CONFIG_XFRM_OFFLOAD=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_USER=m +CONFIG_XFRM_SUB_POLICY=y +CONFIG_XFRM_MIGRATE=y +# CONFIG_XFRM_STATISTICS is not set +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +CONFIG_NET_KEY_MIGRATE=y +# CONFIG_SMC is not set +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +# CONFIG_IP_PNP is not set +CONFIG_NET_IPIP=m +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE_COMMON=y +CONFIG_IP_MROUTE=y +CONFIG_IP_MROUTE_MULTIPLE_TABLES=y +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +CONFIG_NET_FOU=m +CONFIG_NET_FOU_IP_TUNNELS=y +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_ESP_OFFLOAD=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +CONFIG_INET_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_UDP_DIAG=m +# CONFIG_INET_RAW_DIAG is not set +CONFIG_INET_DIAG_DESTROY=y +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_NV=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_DCTCP=m +CONFIG_TCP_CONG_CDG=m +CONFIG_TCP_CONG_BBR=m +CONFIG_DEFAULT_CUBIC=y +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +CONFIG_TCP_MD5SIG=y +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +CONFIG_IPV6_OPTIMISTIC_DAD=y +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_ESP_OFFLOAD=m +CONFIG_INET6_IPCOMP=m +CONFIG_IPV6_MIP6=y +CONFIG_IPV6_ILA=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m +CONFIG_IPV6_VTI=m +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_FOU=m +CONFIG_IPV6_FOU_TUNNEL=m +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_PIMSM_V2=y +CONFIG_IPV6_SEG6_LWTUNNEL=y +CONFIG_IPV6_SEG6_HMAC=y +# CONFIG_NETLABEL is not set +CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETFILTER=y +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=m + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_FAMILY_BRIDGE=y +CONFIG_NETFILTER_FAMILY_ARP=y +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_COMMON=m +CONFIG_NF_LOG_NETDEV=m +CONFIG_NETFILTER_CONNCOUNT=m +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_ZONES=y +CONFIG_NF_CONNTRACK_PROCFS=y +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CT_PROTO_DCCP=y +CONFIG_NF_CT_PROTO_GRE=m +CONFIG_NF_CT_PROTO_SCTP=y +CONFIG_NF_CT_PROTO_UDPLITE=y +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_PPTP=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NF_NAT=m +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PROTO_DCCP=y +CONFIG_NF_NAT_PROTO_UDPLITE=y +CONFIG_NF_NAT_PROTO_SCTP=y +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_NAT_REDIRECT=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NF_TABLES=m +# CONFIG_NF_TABLES_INET is not set +# CONFIG_NF_TABLES_NETDEV is not set +CONFIG_NFT_EXTHDR=m +CONFIG_NFT_META=m +CONFIG_NFT_RT=m +CONFIG_NFT_NUMGEN=m +CONFIG_NFT_CT=m +CONFIG_NFT_SET_RBTREE=m +CONFIG_NFT_SET_HASH=m +CONFIG_NFT_SET_BITMAP=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_LOG=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_NAT=m +CONFIG_NFT_OBJREF=m +CONFIG_NFT_QUEUE=m +CONFIG_NFT_QUOTA=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_COMPAT=m +CONFIG_NFT_HASH=m +# CONFIG_NF_FLOW_TABLE is not set +CONFIG_NETFILTER_XTABLES=m + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_SET=m + +# +# Xtables targets +# +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LED=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_IP_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_IPMAC=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +CONFIG_IP_VS_IPV6=y +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS application helper +# +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_PE_SIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_CONNTRACK_IPV4=m +CONFIG_NF_SOCKET_IPV4=m +# CONFIG_NF_TABLES_IPV4 is not set +# CONFIG_NF_TABLES_ARP is not set +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NF_NAT_MASQUERADE_IPV4=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_NF_SOCKET_IPV6=m +# CONFIG_NF_TABLES_IPV6 is not set +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NF_NAT_MASQUERADE_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +# CONFIG_IP6_NF_MATCH_SRH is not set +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +# CONFIG_NF_TABLES_BRIDGE is not set +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_IP_DCCP=m +CONFIG_INET_DCCP_DIAG=m + +# +# DCCP CCIDs Configuration +# +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +CONFIG_IP_DCCP_CCID3=y +# CONFIG_IP_DCCP_CCID3_DEBUG is not set +CONFIG_IP_DCCP_TFRC_LIB=y + +# +# DCCP Kernel Hacking +# +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_IP_SCTP=m +# CONFIG_SCTP_DBG_OBJCNT is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1 is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +CONFIG_INET_SCTP_DIAG=m +CONFIG_RDS=m +CONFIG_RDS_RDMA=m +CONFIG_RDS_TCP=m +# CONFIG_RDS_DEBUG is not set +CONFIG_TIPC=m +CONFIG_TIPC_MEDIA_IB=y +CONFIG_TIPC_MEDIA_UDP=y +CONFIG_TIPC_DIAG=m +CONFIG_ATM=m +CONFIG_ATM_CLIP=m +# CONFIG_ATM_CLIP_NO_ICMP is not set +CONFIG_ATM_LANE=m +CONFIG_ATM_MPOA=m +CONFIG_ATM_BR2684=m +# CONFIG_ATM_BR2684_IPFILTER is not set +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=m +CONFIG_L2TP_ETH=m +CONFIG_STP=m +CONFIG_GARP=m +CONFIG_MRP=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_HAVE_NET_DSA=y +CONFIG_NET_DSA=m +CONFIG_NET_DSA_LEGACY=y +CONFIG_NET_DSA_TAG_DSA=y +CONFIG_NET_DSA_TAG_EDSA=y +CONFIG_NET_DSA_TAG_TRAILER=y +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +# CONFIG_DECNET is not set +CONFIG_LLC=m +CONFIG_LLC2=m +CONFIG_ATALK=m +CONFIG_DEV_APPLETALK=m +CONFIG_IPDDP=m +CONFIG_IPDDP_ENCAP=y +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +CONFIG_PHONET=m +CONFIG_6LOWPAN=m +# CONFIG_6LOWPAN_DEBUGFS is not set +CONFIG_6LOWPAN_NHC=m +CONFIG_6LOWPAN_NHC_DEST=m +CONFIG_6LOWPAN_NHC_FRAGMENT=m +CONFIG_6LOWPAN_NHC_HOP=m +CONFIG_6LOWPAN_NHC_IPV6=m +CONFIG_6LOWPAN_NHC_MOBILITY=m +CONFIG_6LOWPAN_NHC_ROUTING=m +CONFIG_6LOWPAN_NHC_UDP=m +CONFIG_6LOWPAN_GHC_EXT_HDR_HOP=m +CONFIG_6LOWPAN_GHC_UDP=m +CONFIG_6LOWPAN_GHC_ICMPV6=m +CONFIG_6LOWPAN_GHC_EXT_HDR_DEST=m +CONFIG_6LOWPAN_GHC_EXT_HDR_FRAG=m +CONFIG_6LOWPAN_GHC_EXT_HDR_ROUTE=m +CONFIG_IEEE802154=m +# CONFIG_IEEE802154_NL802154_EXPERIMENTAL is not set +CONFIG_IEEE802154_SOCKET=m +CONFIG_IEEE802154_6LOWPAN=m +CONFIG_MAC802154=m +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_ATM=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCH_TBF=m +# CONFIG_NET_SCH_CBS is not set +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_PIE=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_PLUG=m +# CONFIG_NET_SCH_DEFAULT is not set + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_U32=m +CONFIG_CLS_U32_PERF=y +CONFIG_CLS_U32_MARK=y +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_CLS_MATCHALL=m +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_TEXT=m +CONFIG_NET_EMATCH_CANID=m +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_IPT=m +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_GACT=m +CONFIG_GACT_PROB=y +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_SAMPLE=m +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_ACT_BPF=m +CONFIG_NET_ACT_CONNMARK=m +CONFIG_NET_ACT_SKBMOD=m +CONFIG_NET_ACT_IFE=m +CONFIG_NET_ACT_TUNNEL_KEY=m +CONFIG_NET_IFE_SKBMARK=m +CONFIG_NET_IFE_SKBPRIO=m +CONFIG_NET_IFE_SKBTCINDEX=m +CONFIG_NET_CLS_IND=y +CONFIG_NET_SCH_FIFO=y +CONFIG_DCB=y +CONFIG_DNS_RESOLVER=m +CONFIG_BATMAN_ADV=m +# CONFIG_BATMAN_ADV_BATMAN_V is not set +CONFIG_BATMAN_ADV_BLA=y +CONFIG_BATMAN_ADV_DAT=y +CONFIG_BATMAN_ADV_NC=y +CONFIG_BATMAN_ADV_MCAST=y +CONFIG_BATMAN_ADV_DEBUGFS=y +# CONFIG_BATMAN_ADV_DEBUG is not set +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_VSOCKETS=m +CONFIG_VSOCKETS_DIAG=m +CONFIG_VIRTIO_VSOCKETS=m +CONFIG_VIRTIO_VSOCKETS_COMMON=m +CONFIG_NETLINK_DIAG=m +CONFIG_MPLS=y +CONFIG_NET_MPLS_GSO=y +CONFIG_MPLS_ROUTING=m +CONFIG_MPLS_IPTUNNEL=m +CONFIG_NET_NSH=m +# CONFIG_HSR is not set +CONFIG_NET_SWITCHDEV=y +CONFIG_NET_L3_MASTER_DEV=y +# CONFIG_QRTR is not set +# CONFIG_NET_NCSI is not set +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_XPS=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_BPF_JIT=y +# CONFIG_BPF_STREAM_PARSER is not set +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +CONFIG_NET_PKTGEN=m +CONFIG_NET_DROP_MONITOR=m +# CONFIG_HAMRADIO is not set +CONFIG_CAN=m +CONFIG_CAN_RAW=m +CONFIG_CAN_BCM=m +CONFIG_CAN_GW=m + +# +# CAN Device Drivers +# +CONFIG_CAN_VCAN=m +# CONFIG_CAN_VXCAN is not set +CONFIG_CAN_SLCAN=m +CONFIG_CAN_DEV=m +CONFIG_CAN_CALC_BITTIMING=y +# CONFIG_CAN_LEDS is not set +# CONFIG_CAN_GRCAN is not set +# CONFIG_CAN_XILINXCAN is not set +# CONFIG_CAN_C_CAN is not set +# CONFIG_CAN_CC770 is not set +# CONFIG_CAN_IFI_CANFD is not set +# CONFIG_CAN_M_CAN is not set +# CONFIG_CAN_PEAK_PCIEFD is not set +CONFIG_CAN_SJA1000=m +CONFIG_CAN_SJA1000_ISA=m +# CONFIG_CAN_SJA1000_PLATFORM is not set +CONFIG_CAN_EMS_PCI=m +CONFIG_CAN_PEAK_PCI=m +CONFIG_CAN_PEAK_PCIEC=y +CONFIG_CAN_KVASER_PCI=m +CONFIG_CAN_PLX_PCI=m +CONFIG_CAN_SOFTING=m + +# +# CAN SPI interfaces +# +# CONFIG_CAN_HI311X is not set +# CONFIG_CAN_MCP251X is not set + +# +# CAN USB interfaces +# +CONFIG_CAN_EMS_USB=m +CONFIG_CAN_ESD_USB2=m +CONFIG_CAN_GS_USB=m +CONFIG_CAN_KVASER_USB=m +CONFIG_CAN_PEAK_USB=m +CONFIG_CAN_8DEV_USB=m +# CONFIG_CAN_MCBA_USB is not set +# CONFIG_CAN_DEBUG_DEVICES is not set +CONFIG_BT=m +CONFIG_BT_BREDR=y +CONFIG_BT_RFCOMM=m +CONFIG_BT_RFCOMM_TTY=y +CONFIG_BT_BNEP=m +CONFIG_BT_BNEP_MC_FILTER=y +CONFIG_BT_BNEP_PROTO_FILTER=y +CONFIG_BT_HIDP=m +CONFIG_BT_HS=y +CONFIG_BT_LE=y +CONFIG_BT_6LOWPAN=m +CONFIG_BT_LEDS=y +# CONFIG_BT_SELFTEST is not set +CONFIG_BT_DEBUGFS=y + +# +# Bluetooth device drivers +# +CONFIG_BT_INTEL=m +CONFIG_BT_BCM=m +CONFIG_BT_RTL=m +CONFIG_BT_QCA=m +CONFIG_BT_HCIBTUSB=m +# CONFIG_BT_HCIBTUSB_AUTOSUSPEND is not set +CONFIG_BT_HCIBTUSB_BCM=y +CONFIG_BT_HCIBTUSB_RTL=y +CONFIG_BT_HCIBTSDIO=m +CONFIG_BT_HCIUART=m +CONFIG_BT_HCIUART_SERDEV=y +CONFIG_BT_HCIUART_H4=y +# CONFIG_BT_HCIUART_NOKIA is not set +# CONFIG_BT_HCIUART_BCSP is not set +CONFIG_BT_HCIUART_ATH3K=y +CONFIG_BT_HCIUART_LL=y +CONFIG_BT_HCIUART_3WIRE=y +CONFIG_BT_HCIUART_INTEL=y +CONFIG_BT_HCIUART_QCA=y +CONFIG_BT_HCIUART_AG6XX=y +CONFIG_BT_HCIUART_MRVL=y +# CONFIG_BT_HCIBCM203X is not set +# CONFIG_BT_HCIBPA10X is not set +# CONFIG_BT_HCIBFUSB is not set +# CONFIG_BT_HCIVHCI is not set +CONFIG_BT_MRVL=m +CONFIG_BT_MRVL_SDIO=m +CONFIG_BT_ATH3K=m +CONFIG_BT_WILINK=m +CONFIG_BT_QCOMSMD=m +CONFIG_BT_HCIRSI=m +CONFIG_AF_RXRPC=m +CONFIG_AF_RXRPC_IPV6=y +# CONFIG_AF_RXRPC_INJECT_LOSS is not set +# CONFIG_AF_RXRPC_DEBUG is not set +CONFIG_RXKAD=y +# CONFIG_AF_KCM is not set +CONFIG_FIB_RULES=y +CONFIG_WIRELESS=y +CONFIG_WIRELESS_EXT=y +CONFIG_WEXT_CORE=y +CONFIG_WEXT_PROC=y +CONFIG_WEXT_SPY=y +CONFIG_WEXT_PRIV=y +CONFIG_CFG80211=m +# CONFIG_NL80211_TESTMODE is not set +# CONFIG_CFG80211_DEVELOPER_WARNINGS is not set +# CONFIG_CFG80211_CERTIFICATION_ONUS is not set +CONFIG_CFG80211_REQUIRE_SIGNED_REGDB=y +CONFIG_CFG80211_USE_KERNEL_REGDB_KEYS=y +CONFIG_CFG80211_DEFAULT_PS=y +# CONFIG_CFG80211_DEBUGFS is not set +CONFIG_CFG80211_CRDA_SUPPORT=y +CONFIG_CFG80211_WEXT=y +CONFIG_CFG80211_WEXT_EXPORT=y +CONFIG_LIB80211=m +CONFIG_LIB80211_CRYPT_WEP=m +CONFIG_LIB80211_CRYPT_CCMP=m +CONFIG_LIB80211_CRYPT_TKIP=m +# CONFIG_LIB80211_DEBUG is not set +CONFIG_MAC80211=m +CONFIG_MAC80211_HAS_RC=y +CONFIG_MAC80211_RC_MINSTREL=y +CONFIG_MAC80211_RC_MINSTREL_HT=y +# CONFIG_MAC80211_RC_MINSTREL_VHT is not set +CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y +CONFIG_MAC80211_RC_DEFAULT="minstrel_ht" +CONFIG_MAC80211_MESH=y +CONFIG_MAC80211_LEDS=y +# CONFIG_MAC80211_DEBUGFS is not set +# CONFIG_MAC80211_MESSAGE_TRACING is not set +# CONFIG_MAC80211_DEBUG_MENU is not set +CONFIG_MAC80211_STA_HASH_MAX_SIZE=0 +CONFIG_WIMAX=m +CONFIG_WIMAX_DEBUG_LEVEL=8 +CONFIG_RFKILL=m +CONFIG_RFKILL_LEDS=y +CONFIG_RFKILL_INPUT=y +# CONFIG_RFKILL_GPIO is not set +CONFIG_NET_9P=m +CONFIG_NET_9P_VIRTIO=m +# CONFIG_NET_9P_XEN is not set +CONFIG_NET_9P_RDMA=m +# CONFIG_NET_9P_DEBUG is not set +# CONFIG_CAIF is not set +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +# CONFIG_CEPH_LIB_USE_DNS_RESOLVER is not set +CONFIG_NFC=m +CONFIG_NFC_DIGITAL=m +# CONFIG_NFC_NCI is not set +# CONFIG_NFC_HCI is not set + +# +# Near Field Communication (NFC) devices +# +# CONFIG_NFC_TRF7970A is not set +CONFIG_NFC_SIM=m +CONFIG_NFC_PORT100=m +CONFIG_NFC_PN533=m +CONFIG_NFC_PN533_USB=m +# CONFIG_NFC_PN533_I2C is not set +# CONFIG_NFC_ST95HF is not set +CONFIG_PSAMPLE=m +CONFIG_NET_IFE=m +CONFIG_LWTUNNEL=y +CONFIG_LWTUNNEL_BPF=y +CONFIG_DST_CACHE=y +CONFIG_GRO_CELLS=y +CONFIG_NET_DEVLINK=m +CONFIG_MAY_USE_DEVLINK=m +CONFIG_HAVE_EBPF_JIT=y + +# +# Device Drivers +# +CONFIG_ARM_AMBA=y +CONFIG_TEGRA_AHB=y + +# +# Generic Driver Options +# +# CONFIG_UEVENT_HELPER is not set +CONFIG_DEVTMPFS=y +# CONFIG_DEVTMPFS_MOUNT is not set +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +CONFIG_EXTRA_FIRMWARE="" +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_WANT_DEV_COREDUMP=y +CONFIG_ALLOW_DEV_COREDUMP=y +CONFIG_DEV_COREDUMP=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +# CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set +# CONFIG_TEST_ASYNC_DRIVER_PROBE is not set +CONFIG_SYS_HYPERVISOR=y +CONFIG_GENERIC_CPU_AUTOPROBE=y +CONFIG_SOC_BUS=y +CONFIG_REGMAP=y +CONFIG_REGMAP_I2C=y +CONFIG_REGMAP_SPI=y +CONFIG_REGMAP_SPMI=y +CONFIG_REGMAP_MMIO=y +CONFIG_REGMAP_IRQ=y +CONFIG_DMA_SHARED_BUFFER=y +# CONFIG_DMA_FENCE_TRACE is not set +CONFIG_DMA_CMA=y + +# +# Default contiguous memory area size: +# +CONFIG_CMA_SIZE_MBYTES=64 +CONFIG_CMA_SIZE_SEL_MBYTES=y +# CONFIG_CMA_SIZE_SEL_PERCENTAGE is not set +# CONFIG_CMA_SIZE_SEL_MIN is not set +# CONFIG_CMA_SIZE_SEL_MAX is not set +CONFIG_CMA_ALIGNMENT=8 +CONFIG_GENERIC_ARCH_TOPOLOGY=y + +# +# Bus devices +# +# CONFIG_BRCMSTB_GISB_ARB is not set +# CONFIG_HISILICON_LPC is not set +CONFIG_QCOM_EBI2=y +# CONFIG_SIMPLE_PM_BUS is not set +CONFIG_SUNXI_RSB=y +CONFIG_TEGRA_ACONNECT=y +# CONFIG_TEGRA_GMI is not set +CONFIG_VEXPRESS_CONFIG=y +CONFIG_CONNECTOR=y +CONFIG_PROC_EVENTS=y +CONFIG_MTD=m +# CONFIG_MTD_TESTS is not set +# CONFIG_MTD_REDBOOT_PARTS is not set +# CONFIG_MTD_CMDLINE_PARTS is not set +# CONFIG_MTD_AFS_PARTS is not set +CONFIG_MTD_OF_PARTS=m +CONFIG_MTD_AR7_PARTS=m + +# +# Partition parsers +# + +# +# User Modules And Translation Layers +# +CONFIG_MTD_BLKDEVS=m +CONFIG_MTD_BLOCK=m +CONFIG_MTD_BLOCK_RO=m +# CONFIG_FTL is not set +# CONFIG_NFTL is not set +# CONFIG_INFTL is not set +CONFIG_RFD_FTL=m +CONFIG_SSFDC=m +# CONFIG_SM_FTL is not set +CONFIG_MTD_OOPS=m +CONFIG_MTD_SWAP=m +# CONFIG_MTD_PARTITIONED_MASTER is not set + +# +# RAM/ROM/Flash chip drivers +# +# CONFIG_MTD_CFI is not set +# CONFIG_MTD_JEDECPROBE is not set +CONFIG_MTD_MAP_BANK_WIDTH_1=y +CONFIG_MTD_MAP_BANK_WIDTH_2=y +CONFIG_MTD_MAP_BANK_WIDTH_4=y +CONFIG_MTD_CFI_I1=y +CONFIG_MTD_CFI_I2=y +CONFIG_MTD_RAM=m +# CONFIG_MTD_ROM is not set +# CONFIG_MTD_ABSENT is not set + +# +# Mapping drivers for chip access +# +# CONFIG_MTD_COMPLEX_MAPPINGS is not set +# CONFIG_MTD_PHYSMAP is not set +# CONFIG_MTD_PHYSMAP_OF is not set +CONFIG_MTD_INTEL_VR_NOR=m +CONFIG_MTD_PLATRAM=m + +# +# Self-contained MTD device drivers +# +# CONFIG_MTD_PMC551 is not set +CONFIG_MTD_DATAFLASH=m +# CONFIG_MTD_DATAFLASH_WRITE_VERIFY is not set +# CONFIG_MTD_DATAFLASH_OTP is not set +CONFIG_MTD_M25P80=m +# CONFIG_MTD_MCHP23K256 is not set +CONFIG_MTD_SST25L=m +# CONFIG_MTD_SLRAM is not set +# CONFIG_MTD_PHRAM is not set +# CONFIG_MTD_MTDRAM is not set +# CONFIG_MTD_BLOCK2MTD is not set + +# +# Disk-On-Chip Device Drivers +# +# CONFIG_MTD_DOCG3 is not set +CONFIG_MTD_ONENAND=m +CONFIG_MTD_ONENAND_VERIFY_WRITE=y +# CONFIG_MTD_ONENAND_GENERIC is not set +# CONFIG_MTD_ONENAND_OTP is not set +CONFIG_MTD_ONENAND_2X_PROGRAM=y +# CONFIG_MTD_NAND is not set + +# +# LPDDR & LPDDR2 PCM memory drivers +# +CONFIG_MTD_LPDDR=m +CONFIG_MTD_QINFO_PROBE=m +CONFIG_MTD_SPI_NOR=m +# CONFIG_MTD_MT81xx_NOR is not set +CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y +# CONFIG_SPI_CADENCE_QUADSPI is not set +CONFIG_SPI_HISI_SFC=m +CONFIG_MTD_UBI=m +CONFIG_MTD_UBI_WL_THRESHOLD=4096 +CONFIG_MTD_UBI_BEB_LIMIT=20 +# CONFIG_MTD_UBI_FASTMAP is not set +# CONFIG_MTD_UBI_GLUEBI is not set +CONFIG_MTD_UBI_BLOCK=y +CONFIG_DTC=y +CONFIG_OF=y +# CONFIG_OF_UNITTEST is not set +CONFIG_OF_FLATTREE=y +CONFIG_OF_EARLY_FLATTREE=y +CONFIG_OF_KOBJ=y +CONFIG_OF_ADDRESS=y +CONFIG_OF_IRQ=y +CONFIG_OF_NET=y +CONFIG_OF_MDIO=m +CONFIG_OF_RESERVED_MEM=y +# CONFIG_OF_OVERLAY is not set +CONFIG_OF_NUMA=y +CONFIG_PARPORT=m +# CONFIG_PARPORT_AX88796 is not set +CONFIG_PARPORT_1284=y +CONFIG_PARPORT_NOT_PC=y +CONFIG_PNP=y +# CONFIG_PNP_DEBUG_MESSAGES is not set + +# +# Protocols +# +CONFIG_PNPACPI=y +CONFIG_BLK_DEV=y +CONFIG_BLK_DEV_NULL_BLK=m +CONFIG_CDROM=m +CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m +CONFIG_ZRAM=m +# CONFIG_ZRAM_WRITEBACK is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +CONFIG_BLK_DEV_LOOP=m +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +CONFIG_BLK_DEV_DRBD=m +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_BLK_DEV_NBD=m +CONFIG_BLK_DEV_SKD=m +# CONFIG_BLK_DEV_SX8 is not set +CONFIG_BLK_DEV_RAM=m +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=16384 +# CONFIG_CDROM_PKTCDVD is not set +CONFIG_ATA_OVER_ETH=m +CONFIG_XEN_BLKDEV_FRONTEND=m +CONFIG_XEN_BLKDEV_BACKEND=m +CONFIG_VIRTIO_BLK=m +# CONFIG_VIRTIO_BLK_SCSI is not set +CONFIG_BLK_DEV_RBD=m +# CONFIG_BLK_DEV_RSXX is not set + +# +# NVME Support +# +CONFIG_NVME_CORE=m +CONFIG_BLK_DEV_NVME=m +CONFIG_NVME_MULTIPATH=y +CONFIG_NVME_FABRICS=m +CONFIG_NVME_RDMA=m +CONFIG_NVME_FC=m +CONFIG_NVME_TARGET=m +# CONFIG_NVME_TARGET_LOOP is not set +CONFIG_NVME_TARGET_RDMA=m +CONFIG_NVME_TARGET_FC=m +# CONFIG_NVME_TARGET_FCLOOP is not set + +# +# Misc devices +# +CONFIG_SENSORS_LIS3LV02D=m +CONFIG_AD525X_DPOT=m +CONFIG_AD525X_DPOT_I2C=m +CONFIG_AD525X_DPOT_SPI=m +# CONFIG_DUMMY_IRQ is not set +# CONFIG_PHANTOM is not set +CONFIG_SGI_IOC4=m +CONFIG_TIFM_CORE=m +CONFIG_TIFM_7XX1=m +CONFIG_ICS932S401=m +CONFIG_ENCLOSURE_SERVICES=m +# CONFIG_HP_ILO is not set +CONFIG_QCOM_COINCELL=m +CONFIG_APDS9802ALS=m +CONFIG_ISL29003=m +CONFIG_ISL29020=m +CONFIG_SENSORS_TSL2550=m +CONFIG_SENSORS_BH1770=m +CONFIG_SENSORS_APDS990X=m +CONFIG_HMC6352=m +CONFIG_DS1682=m +# CONFIG_USB_SWITCH_FSA9480 is not set +# CONFIG_LATTICE_ECP3_CONFIG is not set +CONFIG_SRAM=y +CONFIG_VEXPRESS_SYSCFG=y +# CONFIG_PCI_ENDPOINT_TEST is not set +CONFIG_MISC_RTSX=m +CONFIG_C2PORT=m + +# +# EEPROM support +# +CONFIG_EEPROM_AT24=m +CONFIG_EEPROM_AT25=m +CONFIG_EEPROM_LEGACY=m +CONFIG_EEPROM_MAX6875=m +CONFIG_EEPROM_93CX6=m +# CONFIG_EEPROM_93XX46 is not set +# CONFIG_EEPROM_IDT_89HPESX is not set +CONFIG_CB710_CORE=m +# CONFIG_CB710_DEBUG is not set +CONFIG_CB710_DEBUG_ASSUMPTIONS=y + +# +# Texas Instruments shared transport line discipline +# +CONFIG_TI_ST=m +CONFIG_SENSORS_LIS3_I2C=m +CONFIG_ALTERA_STAPL=m + +# +# Intel MIC & related support +# + +# +# Intel MIC Bus Driver +# + +# +# SCIF Bus Driver +# + +# +# VOP Bus Driver +# + +# +# Intel MIC Host Driver +# + +# +# Intel MIC Card Driver +# + +# +# SCIF Driver +# + +# +# Intel MIC Coprocessor State Management (COSM) Drivers +# + +# +# VOP Driver +# +# CONFIG_GENWQE is not set +# CONFIG_ECHO is not set +CONFIG_MISC_RTSX_PCI=m +CONFIG_MISC_RTSX_USB=m + +# +# SCSI device support +# +CONFIG_SCSI_MOD=m +CONFIG_RAID_ATTRS=m +CONFIG_SCSI=m +CONFIG_SCSI_DMA=y +CONFIG_SCSI_NETLINK=y +# CONFIG_SCSI_MQ_DEFAULT is not set +# CONFIG_SCSI_PROC_FS is not set + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=m +CONFIG_CHR_DEV_ST=m +CONFIG_CHR_DEV_OSST=m +CONFIG_BLK_DEV_SR=m +CONFIG_BLK_DEV_SR_VENDOR=y +CONFIG_CHR_DEV_SG=m +CONFIG_CHR_DEV_SCH=m +CONFIG_SCSI_ENCLOSURE=m +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_LOGGING=y +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_FC_ATTRS=m +CONFIG_SCSI_ISCSI_ATTRS=m +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SAS_ATA=y +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +CONFIG_SCSI_CXGB3_ISCSI=m +CONFIG_SCSI_CXGB4_ISCSI=m +CONFIG_SCSI_BNX2_ISCSI=m +CONFIG_SCSI_BNX2X_FCOE=m +CONFIG_BE2ISCSI=m +CONFIG_BLK_DEV_3W_XXXX_RAID=m +CONFIG_SCSI_HPSA=m +CONFIG_SCSI_3W_9XXX=m +CONFIG_SCSI_3W_SAS=m +CONFIG_SCSI_ACARD=m +CONFIG_SCSI_AACRAID=m +CONFIG_SCSI_AIC7XXX=m +CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 +CONFIG_AIC7XXX_RESET_DELAY_MS=15000 +CONFIG_AIC7XXX_DEBUG_ENABLE=y +CONFIG_AIC7XXX_DEBUG_MASK=0 +CONFIG_AIC7XXX_REG_PRETTY_PRINT=y +CONFIG_SCSI_AIC79XX=m +CONFIG_AIC79XX_CMDS_PER_DEVICE=32 +CONFIG_AIC79XX_RESET_DELAY_MS=15000 +CONFIG_AIC79XX_DEBUG_ENABLE=y +CONFIG_AIC79XX_DEBUG_MASK=0 +CONFIG_AIC79XX_REG_PRETTY_PRINT=y +CONFIG_SCSI_AIC94XX=m +# CONFIG_AIC94XX_DEBUG is not set +CONFIG_SCSI_HISI_SAS=m +CONFIG_SCSI_HISI_SAS_PCI=m +CONFIG_SCSI_MVSAS=m +# CONFIG_SCSI_MVSAS_DEBUG is not set +# CONFIG_SCSI_MVSAS_TASKLET is not set +CONFIG_SCSI_MVUMI=m +CONFIG_SCSI_ADVANSYS=m +# CONFIG_SCSI_ARCMSR is not set +CONFIG_SCSI_ESAS2R=m +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +CONFIG_MEGARAID_SAS=m +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MPT2SAS=m +CONFIG_SCSI_SMARTPQI=m +CONFIG_SCSI_UFSHCD=m +CONFIG_SCSI_UFSHCD_PCI=m +# CONFIG_SCSI_UFS_DWC_TC_PCI is not set +# CONFIG_SCSI_UFSHCD_PLATFORM is not set +CONFIG_SCSI_HPTIOP=m +CONFIG_XEN_SCSI_FRONTEND=m +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_FCOE=m +CONFIG_SCSI_SNIC=m +# CONFIG_SCSI_SNIC_DEBUG_FS is not set +CONFIG_SCSI_DMX3191D=m +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +CONFIG_SCSI_STEX=m +CONFIG_SCSI_SYM53C8XX_2=m +CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 +CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 +CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 +CONFIG_SCSI_SYM53C8XX_MMIO=y +# CONFIG_SCSI_IPR is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +CONFIG_SCSI_QLA_FC=m +CONFIG_TCM_QLA2XXX=m +# CONFIG_TCM_QLA2XXX_DEBUG is not set +CONFIG_SCSI_QLA_ISCSI=m +# CONFIG_QEDI is not set +# CONFIG_QEDF is not set +CONFIG_SCSI_LPFC=m +# CONFIG_SCSI_LPFC_DEBUG_FS is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_AM53C974 is not set +CONFIG_SCSI_WD719X=m +# CONFIG_SCSI_DEBUG is not set +CONFIG_SCSI_PMCRAID=m +CONFIG_SCSI_PM8001=m +CONFIG_SCSI_BFA_FC=m +CONFIG_SCSI_VIRTIO=m +CONFIG_SCSI_CHELSIO_FCOE=m +CONFIG_SCSI_LOWLEVEL_PCMCIA=y +CONFIG_SCSI_DH=y +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_OSD_INITIATOR=m +CONFIG_SCSI_OSD_ULD=m +CONFIG_SCSI_OSD_DPRINT_SENSE=1 +# CONFIG_SCSI_OSD_DEBUG is not set +CONFIG_HAVE_PATA_PLATFORM=y +CONFIG_ATA=m +CONFIG_ATA_VERBOSE_ERROR=y +CONFIG_ATA_ACPI=y +CONFIG_SATA_ZPODD=y +CONFIG_SATA_PMP=y + +# +# Controllers with non-SFF native interface +# +CONFIG_SATA_AHCI=m +CONFIG_SATA_MOBILE_LPM_POLICY=0 +CONFIG_SATA_AHCI_PLATFORM=m +# CONFIG_AHCI_CEVA is not set +CONFIG_AHCI_MVEBU=m +# CONFIG_AHCI_SUNXI is not set +CONFIG_AHCI_TEGRA=m +CONFIG_AHCI_XGENE=m +# CONFIG_AHCI_QORIQ is not set +CONFIG_SATA_AHCI_SEATTLE=m +# CONFIG_SATA_INIC162X is not set +CONFIG_SATA_ACARD_AHCI=m +CONFIG_SATA_SIL24=m +CONFIG_ATA_SFF=y + +# +# SFF controllers with custom DMA interface +# +CONFIG_PDC_ADMA=m +CONFIG_SATA_QSTOR=m +CONFIG_SATA_SX4=m +CONFIG_ATA_BMDMA=y + +# +# SATA SFF controllers with BMDMA +# +CONFIG_ATA_PIIX=m +# CONFIG_SATA_DWC is not set +CONFIG_SATA_MV=m +CONFIG_SATA_NV=m +CONFIG_SATA_PROMISE=m +CONFIG_SATA_SIL=m +CONFIG_SATA_SIS=m +CONFIG_SATA_SVW=m +CONFIG_SATA_ULI=m +CONFIG_SATA_VIA=m +CONFIG_SATA_VITESSE=m + +# +# PATA SFF controllers with BMDMA +# +# CONFIG_PATA_ALI is not set +# CONFIG_PATA_AMD is not set +CONFIG_PATA_ARTOP=m +# CONFIG_PATA_ATIIXP is not set +CONFIG_PATA_ATP867X=m +CONFIG_PATA_CMD64X=m +# CONFIG_PATA_CYPRESS is not set +# CONFIG_PATA_EFAR is not set +# CONFIG_PATA_HPT366 is not set +# CONFIG_PATA_HPT37X is not set +# CONFIG_PATA_HPT3X2N is not set +# CONFIG_PATA_HPT3X3 is not set +CONFIG_PATA_IT8213=m +CONFIG_PATA_IT821X=m +CONFIG_PATA_JMICRON=m +CONFIG_PATA_MARVELL=m +# CONFIG_PATA_NETCELL is not set +CONFIG_PATA_NINJA32=m +# CONFIG_PATA_NS87415 is not set +# CONFIG_PATA_OLDPIIX is not set +# CONFIG_PATA_OPTIDMA is not set +# CONFIG_PATA_PDC2027X is not set +# CONFIG_PATA_PDC_OLD is not set +# CONFIG_PATA_RADISYS is not set +CONFIG_PATA_RDC=m +CONFIG_PATA_SCH=m +# CONFIG_PATA_SERVERWORKS is not set +# CONFIG_PATA_SIL680 is not set +CONFIG_PATA_SIS=m +CONFIG_PATA_TOSHIBA=m +# CONFIG_PATA_TRIFLEX is not set +# CONFIG_PATA_VIA is not set +# CONFIG_PATA_WINBOND is not set + +# +# PIO-only SFF controllers +# +# CONFIG_PATA_CMD640_PCI is not set +# CONFIG_PATA_MPIIX is not set +# CONFIG_PATA_NS87410 is not set +# CONFIG_PATA_OPTI is not set +# CONFIG_PATA_PLATFORM is not set +# CONFIG_PATA_RZ1000 is not set + +# +# Generic fallback / legacy drivers +# +# CONFIG_PATA_ACPI is not set +CONFIG_ATA_GENERIC=m +# CONFIG_PATA_LEGACY is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=m +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MD_MULTIPATH=m +CONFIG_MD_FAULTY=m +# CONFIG_MD_CLUSTER is not set +CONFIG_BCACHE=m +# CONFIG_BCACHE_DEBUG is not set +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DM=m +# CONFIG_DM_MQ_DEFAULT is not set +# CONFIG_DM_DEBUG is not set +CONFIG_DM_BUFIO=m +# CONFIG_DM_DEBUG_BLOCK_MANAGER_LOCKING is not set +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_PERSISTENT_DATA=m +# CONFIG_DM_UNSTRIPED is not set +CONFIG_DM_CRYPT=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_SMQ=m +CONFIG_DM_ERA=m +CONFIG_DM_MIRROR=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_RAID=m +CONFIG_DM_ZERO=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_DELAY=m +CONFIG_DM_UEVENT=y +CONFIG_DM_FLAKEY=m +CONFIG_DM_VERITY=m +# CONFIG_DM_VERITY_FEC is not set +CONFIG_DM_SWITCH=m +CONFIG_DM_LOG_WRITES=m +# CONFIG_DM_INTEGRITY is not set +CONFIG_TARGET_CORE=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_FILEIO=m +CONFIG_TCM_PSCSI=m +CONFIG_TCM_USER2=m +CONFIG_LOOPBACK_TARGET=m +CONFIG_TCM_FC=m +CONFIG_ISCSI_TARGET=m +CONFIG_ISCSI_TARGET_CXGB4=m +CONFIG_SBP_TARGET=m +CONFIG_FUSION=y +CONFIG_FUSION_SPI=m +CONFIG_FUSION_FC=m +CONFIG_FUSION_SAS=m +CONFIG_FUSION_MAX_SGE=128 +CONFIG_FUSION_CTL=m +# CONFIG_FUSION_LOGGING is not set + +# +# IEEE 1394 (FireWire) support +# +CONFIG_FIREWIRE=m +CONFIG_FIREWIRE_OHCI=m +CONFIG_FIREWIRE_SBP2=m +CONFIG_FIREWIRE_NET=m +CONFIG_FIREWIRE_NOSY=m +CONFIG_NETDEVICES=y +CONFIG_MII=m +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +CONFIG_EQUALIZER=m +# CONFIG_NET_FC is not set +CONFIG_IFB=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_IPVLAN=m +CONFIG_IPVTAP=m +CONFIG_VXLAN=m +CONFIG_GENEVE=m +CONFIG_GTP=m +CONFIG_MACSEC=m +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETPOLL=y +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_TUN=m +CONFIG_TAP=m +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_VETH=m +CONFIG_VIRTIO_NET=m +CONFIG_NLMON=m +CONFIG_NET_VRF=m +# CONFIG_VSOCKMON is not set +# CONFIG_ARCNET is not set +CONFIG_ATM_DRIVERS=y +CONFIG_ATM_DUMMY=m +# CONFIG_ATM_TCP is not set +# CONFIG_ATM_LANAI is not set +# CONFIG_ATM_ENI is not set +CONFIG_ATM_NICSTAR=m +CONFIG_ATM_NICSTAR_USE_SUNI=y +CONFIG_ATM_NICSTAR_USE_IDT77105=y +# CONFIG_ATM_IDT77252 is not set +CONFIG_ATM_IA=m +# CONFIG_ATM_IA_DEBUG is not set +CONFIG_ATM_FORE200E=m +# CONFIG_ATM_FORE200E_USE_TASKLET is not set +CONFIG_ATM_FORE200E_TX_RETRY=16 +CONFIG_ATM_FORE200E_DEBUG=0 +# CONFIG_ATM_HE is not set +CONFIG_ATM_SOLOS=m + +# +# CAIF transport drivers +# + +# +# Distributed Switch Architecture drivers +# +# CONFIG_B53 is not set +# CONFIG_NET_DSA_BCM_SF2 is not set +# CONFIG_NET_DSA_LOOP is not set +# CONFIG_NET_DSA_MT7530 is not set +CONFIG_NET_DSA_MV88E6060=m +# CONFIG_MICROCHIP_KSZ is not set +CONFIG_NET_DSA_MV88E6XXX=m +CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y +# CONFIG_NET_DSA_MV88E6XXX_PTP is not set +# CONFIG_NET_DSA_QCA8K is not set +# CONFIG_NET_DSA_SMSC_LAN9303_I2C is not set +# CONFIG_NET_DSA_SMSC_LAN9303_MDIO is not set +CONFIG_ETHERNET=y +CONFIG_MDIO=m +CONFIG_NET_VENDOR_3COM=y +CONFIG_VORTEX=m +CONFIG_TYPHOON=m +CONFIG_NET_VENDOR_ADAPTEC=y +CONFIG_ADAPTEC_STARFIRE=m +CONFIG_NET_VENDOR_AGERE=y +CONFIG_ET131X=m +CONFIG_NET_VENDOR_ALACRITECH=y +# CONFIG_SLICOSS is not set +CONFIG_NET_VENDOR_ALLWINNER=y +# CONFIG_SUN4I_EMAC is not set +CONFIG_NET_VENDOR_ALTEON=y +CONFIG_ACENIC=m +# CONFIG_ACENIC_OMIT_TIGON_I is not set +# CONFIG_ALTERA_TSE is not set +CONFIG_NET_VENDOR_AMAZON=y +CONFIG_NET_VENDOR_AMD=y +# CONFIG_AMD8111_ETH is not set +CONFIG_PCNET32=m +CONFIG_AMD_XGBE=m +# CONFIG_AMD_XGBE_DCB is not set +CONFIG_NET_XGENE=m +CONFIG_NET_XGENE_V2=m +CONFIG_NET_VENDOR_AQUANTIA=y +# CONFIG_NET_VENDOR_ARC is not set +CONFIG_NET_VENDOR_ATHEROS=y +CONFIG_ATL2=m +CONFIG_ATL1=m +CONFIG_ATL1E=m +CONFIG_ATL1C=m +CONFIG_ALX=m +# CONFIG_NET_VENDOR_AURORA is not set +CONFIG_NET_CADENCE=y +# CONFIG_MACB is not set +CONFIG_NET_VENDOR_BROADCOM=y +# CONFIG_B44 is not set +# CONFIG_BCMGENET is not set +CONFIG_BNX2=m +CONFIG_CNIC=m +CONFIG_TIGON3=m +CONFIG_TIGON3_HWMON=y +CONFIG_BNX2X=m +CONFIG_BNX2X_SRIOV=y +# CONFIG_SYSTEMPORT is not set +CONFIG_BNXT=m +CONFIG_BNXT_SRIOV=y +CONFIG_BNXT_FLOWER_OFFLOAD=y +# CONFIG_BNXT_DCB is not set +CONFIG_NET_VENDOR_BROCADE=y +CONFIG_BNA=m +CONFIG_NET_VENDOR_CAVIUM=y +CONFIG_THUNDER_NIC_PF=m +CONFIG_THUNDER_NIC_VF=m +CONFIG_THUNDER_NIC_BGX=m +CONFIG_THUNDER_NIC_RGX=m +CONFIG_CAVIUM_PTP=y +CONFIG_LIQUIDIO=m +# CONFIG_LIQUIDIO_VF is not set +CONFIG_NET_VENDOR_CHELSIO=y +CONFIG_CHELSIO_T1=m +CONFIG_CHELSIO_T1_1G=y +CONFIG_CHELSIO_T3=m +CONFIG_CHELSIO_T4=m +CONFIG_CHELSIO_T4_DCB=y +CONFIG_CHELSIO_T4_FCOE=y +CONFIG_CHELSIO_T4VF=m +CONFIG_CHELSIO_LIB=m +CONFIG_NET_VENDOR_CISCO=y +CONFIG_ENIC=m +CONFIG_NET_VENDOR_CORTINA=y +# CONFIG_GEMINI_ETHERNET is not set +# CONFIG_DNET is not set +CONFIG_NET_VENDOR_DEC=y +CONFIG_NET_TULIP=y +CONFIG_DE2104X=m +CONFIG_DE2104X_DSL=0 +CONFIG_TULIP=m +# CONFIG_TULIP_MWI is not set +# CONFIG_TULIP_MMIO is not set +CONFIG_TULIP_NAPI=y +CONFIG_TULIP_NAPI_HW_MITIGATION=y +CONFIG_WINBOND_840=m +CONFIG_DM9102=m +CONFIG_ULI526X=m +CONFIG_NET_VENDOR_DLINK=y +CONFIG_DL2K=m +CONFIG_SUNDANCE=m +# CONFIG_SUNDANCE_MMIO is not set +CONFIG_NET_VENDOR_EMULEX=y +CONFIG_BE2NET=m +CONFIG_BE2NET_HWMON=y +CONFIG_NET_VENDOR_EZCHIP=y +# CONFIG_EZCHIP_NPS_MANAGEMENT_ENET is not set +CONFIG_NET_VENDOR_EXAR=y +CONFIG_S2IO=m +CONFIG_VXGE=m +# CONFIG_VXGE_DEBUG_TRACE_ALL is not set +CONFIG_NET_VENDOR_HISILICON=y +CONFIG_HIX5HD2_GMAC=m +CONFIG_HISI_FEMAC=m +CONFIG_HIP04_ETH=m +CONFIG_HNS_MDIO=m +CONFIG_HNS=m +CONFIG_HNS_DSAF=m +CONFIG_HNS_ENET=m +# CONFIG_HNS3 is not set +CONFIG_NET_VENDOR_HP=y +# CONFIG_HP100 is not set +CONFIG_NET_VENDOR_HUAWEI=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_E100=m +CONFIG_E1000=m +CONFIG_E1000E=m +CONFIG_IGB=m +CONFIG_IGB_HWMON=y +CONFIG_IGBVF=m +CONFIG_IXGB=m +CONFIG_IXGBE=m +CONFIG_IXGBE_HWMON=y +CONFIG_IXGBE_DCB=y +CONFIG_IXGBEVF=m +CONFIG_I40E=m +CONFIG_I40E_DCB=y +CONFIG_I40EVF=m +CONFIG_ICE=m +# CONFIG_FM10K is not set +CONFIG_NET_VENDOR_I825XX=y +CONFIG_JME=m +CONFIG_NET_VENDOR_MARVELL=y +CONFIG_MVMDIO=m +CONFIG_MVNETA=m +CONFIG_MVPP2=m +CONFIG_SKGE=m +# CONFIG_SKGE_DEBUG is not set +CONFIG_SKGE_GENESIS=y +CONFIG_SKY2=m +# CONFIG_SKY2_DEBUG is not set +CONFIG_NET_VENDOR_MELLANOX=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_DCB=y +CONFIG_MLX4_CORE=m +CONFIG_MLX4_DEBUG=y +CONFIG_MLX4_CORE_GEN2=y +CONFIG_MLX5_CORE=m +# CONFIG_MLX5_FPGA is not set +CONFIG_MLX5_CORE_EN=y +CONFIG_MLX5_MPFS=y +CONFIG_MLX5_ESWITCH=y +CONFIG_MLX5_CORE_EN_DCB=y +# CONFIG_MLX5_CORE_IPOIB is not set +# CONFIG_MLXSW_CORE is not set +# CONFIG_MLXFW is not set +CONFIG_NET_VENDOR_MICREL=y +# CONFIG_KS8842 is not set +# CONFIG_KS8851 is not set +# CONFIG_KS8851_MLL is not set +CONFIG_KSZ884X_PCI=m +CONFIG_NET_VENDOR_MICROCHIP=y +# CONFIG_ENC28J60 is not set +# CONFIG_ENCX24J600 is not set +# CONFIG_LAN743X is not set +CONFIG_NET_VENDOR_MYRI=y +CONFIG_MYRI10GE=m +CONFIG_FEALNX=m +CONFIG_NET_VENDOR_NATSEMI=y +CONFIG_NATSEMI=m +CONFIG_NS83820=m +CONFIG_NET_VENDOR_NETRONOME=y +CONFIG_NFP=m +CONFIG_NFP_APP_FLOWER=y +# CONFIG_NFP_DEBUG is not set +CONFIG_NET_VENDOR_NI=y +CONFIG_NET_VENDOR_8390=y +CONFIG_NE2K_PCI=m +CONFIG_NET_VENDOR_NVIDIA=y +# CONFIG_FORCEDETH is not set +CONFIG_NET_VENDOR_OKI=y +# CONFIG_ETHOC is not set +CONFIG_NET_PACKET_ENGINE=y +CONFIG_HAMACHI=m +CONFIG_YELLOWFIN=m +CONFIG_NET_VENDOR_QLOGIC=y +CONFIG_QLA3XXX=m +CONFIG_QLCNIC=m +CONFIG_QLCNIC_SRIOV=y +CONFIG_QLCNIC_DCB=y +CONFIG_QLCNIC_HWMON=y +CONFIG_QLGE=m +CONFIG_NETXEN_NIC=m +CONFIG_QED=m +CONFIG_QED_LL2=y +CONFIG_QED_SRIOV=y +CONFIG_QEDE=m +CONFIG_QED_RDMA=y +CONFIG_QED_OOO=y +CONFIG_NET_VENDOR_QUALCOMM=y +# CONFIG_QCA7000_SPI is not set +# CONFIG_QCA7000_UART is not set +CONFIG_QCOM_EMAC=m +# CONFIG_RMNET is not set +CONFIG_NET_VENDOR_REALTEK=y +CONFIG_8139CP=m +CONFIG_8139TOO=m +# CONFIG_8139TOO_PIO is not set +CONFIG_8139TOO_TUNE_TWISTER=y +CONFIG_8139TOO_8129=y +# CONFIG_8139_OLD_RX_RESET is not set +CONFIG_R8169=m +CONFIG_NET_VENDOR_RENESAS=y +CONFIG_NET_VENDOR_RDC=y +CONFIG_R6040=m +CONFIG_NET_VENDOR_ROCKER=y +# CONFIG_ROCKER is not set +CONFIG_NET_VENDOR_SAMSUNG=y +# CONFIG_SXGBE_ETH is not set +# CONFIG_NET_VENDOR_SEEQ is not set +CONFIG_NET_VENDOR_SILAN=y +CONFIG_SC92031=m +CONFIG_NET_VENDOR_SIS=y +# CONFIG_SIS900 is not set +CONFIG_SIS190=m +CONFIG_NET_VENDOR_SOLARFLARE=y +CONFIG_SFC=m +CONFIG_SFC_MTD=y +CONFIG_SFC_MCDI_MON=y +CONFIG_SFC_SRIOV=y +CONFIG_SFC_MCDI_LOGGING=y +CONFIG_SFC_FALCON=m +CONFIG_SFC_FALCON_MTD=y +CONFIG_NET_VENDOR_SMSC=y +CONFIG_SMC91X=m +CONFIG_EPIC100=m +CONFIG_SMSC911X=m +CONFIG_SMSC9420=m +CONFIG_NET_VENDOR_SOCIONEXT=y +CONFIG_SNI_NETSEC=m +CONFIG_NET_VENDOR_STMICRO=y +CONFIG_STMMAC_ETH=m +CONFIG_STMMAC_PLATFORM=m +# CONFIG_DWMAC_DWC_QOS_ETH is not set +CONFIG_DWMAC_GENERIC=m +CONFIG_DWMAC_IPQ806X=m +CONFIG_DWMAC_MESON=m +CONFIG_DWMAC_ROCKCHIP=m +CONFIG_DWMAC_SUNXI=m +CONFIG_DWMAC_SUN8I=m +# CONFIG_STMMAC_PCI is not set +CONFIG_NET_VENDOR_SUN=y +# CONFIG_HAPPYMEAL is not set +# CONFIG_SUNGEM is not set +CONFIG_CASSINI=m +CONFIG_NIU=m +CONFIG_NET_VENDOR_TEHUTI=y +CONFIG_TEHUTI=m +CONFIG_NET_VENDOR_TI=y +# CONFIG_TI_CPSW_ALE is not set +CONFIG_TLAN=m +CONFIG_NET_VENDOR_VIA=y +# CONFIG_VIA_RHINE is not set +CONFIG_VIA_VELOCITY=m +CONFIG_NET_VENDOR_WIZNET=y +# CONFIG_WIZNET_W5100 is not set +# CONFIG_WIZNET_W5300 is not set +CONFIG_NET_VENDOR_SYNOPSYS=y +# CONFIG_DWC_XLGMAC is not set +CONFIG_FDDI=y +CONFIG_DEFXX=m +# CONFIG_DEFXX_MMIO is not set +CONFIG_SKFP=m +# CONFIG_HIPPI is not set +# CONFIG_NET_SB1000 is not set +CONFIG_MDIO_DEVICE=m +CONFIG_MDIO_BUS=m +# CONFIG_MDIO_BCM_UNIMAC is not set +# CONFIG_MDIO_BITBANG is not set +CONFIG_MDIO_BUS_MUX=m +# CONFIG_MDIO_BUS_MUX_GPIO is not set +CONFIG_MDIO_BUS_MUX_MMIOREG=m +CONFIG_MDIO_CAVIUM=m +CONFIG_MDIO_HISI_FEMAC=m +# CONFIG_MDIO_OCTEON is not set +# CONFIG_MDIO_SUN4I is not set +CONFIG_MDIO_THUNDER=m +CONFIG_MDIO_XGENE=m +CONFIG_PHYLINK=m +CONFIG_PHYLIB=m +CONFIG_SWPHY=y +# CONFIG_LED_TRIGGER_PHY is not set + +# +# MII PHY device drivers +# +# CONFIG_SFP is not set +CONFIG_AMD_PHY=m +CONFIG_AQUANTIA_PHY=m +CONFIG_AT803X_PHY=m +# CONFIG_BCM7XXX_PHY is not set +CONFIG_BCM87XX_PHY=m +CONFIG_BCM_NET_PHYLIB=m +CONFIG_BROADCOM_PHY=m +CONFIG_CICADA_PHY=m +# CONFIG_CORTINA_PHY is not set +CONFIG_DAVICOM_PHY=m +# CONFIG_DP83822_PHY is not set +CONFIG_DP83848_PHY=m +CONFIG_DP83867_PHY=m +CONFIG_FIXED_PHY=m +CONFIG_ICPLUS_PHY=m +# CONFIG_INTEL_XWAY_PHY is not set +CONFIG_LSI_ET1011C_PHY=m +CONFIG_LXT_PHY=m +CONFIG_MARVELL_PHY=m +CONFIG_MARVELL_10G_PHY=m +CONFIG_MESON_GXL_PHY=m +CONFIG_MICREL_PHY=m +CONFIG_MICROCHIP_PHY=m +CONFIG_MICROSEMI_PHY=m +CONFIG_NATIONAL_PHY=m +CONFIG_QSEMI_PHY=m +CONFIG_REALTEK_PHY=m +# CONFIG_RENESAS_PHY is not set +# CONFIG_ROCKCHIP_PHY is not set +CONFIG_SMSC_PHY=m +CONFIG_STE10XP=m +CONFIG_TERANETICS_PHY=m +CONFIG_VITESSE_PHY=m +# CONFIG_XILINX_GMII2RGMII is not set +# CONFIG_MICREL_KS8995MA is not set +# CONFIG_PLIP is not set +CONFIG_PPP=m +CONFIG_PPP_BSDCOMP=m +CONFIG_PPP_DEFLATE=m +CONFIG_PPP_FILTER=y +CONFIG_PPP_MPPE=m +CONFIG_PPP_MULTILINK=y +CONFIG_PPPOATM=m +CONFIG_PPPOE=m +CONFIG_PPTP=m +CONFIG_PPPOL2TP=m +CONFIG_PPP_ASYNC=m +CONFIG_PPP_SYNC_TTY=m +CONFIG_SLIP=m +CONFIG_SLHC=m +CONFIG_SLIP_COMPRESSED=y +CONFIG_SLIP_SMART=y +CONFIG_SLIP_MODE_SLIP6=y + +# +# Host-side USB support is needed for USB Network Adapter support +# +CONFIG_USB_NET_DRIVERS=m +CONFIG_USB_CATC=m +CONFIG_USB_KAWETH=m +CONFIG_USB_PEGASUS=m +CONFIG_USB_RTL8150=m +CONFIG_USB_RTL8152=m +CONFIG_USB_LAN78XX=m +CONFIG_USB_USBNET=m +CONFIG_USB_NET_AX8817X=m +CONFIG_USB_NET_AX88179_178A=m +CONFIG_USB_NET_CDCETHER=m +CONFIG_USB_NET_CDC_EEM=m +CONFIG_USB_NET_CDC_NCM=m +CONFIG_USB_NET_HUAWEI_CDC_NCM=m +CONFIG_USB_NET_CDC_MBIM=m +CONFIG_USB_NET_DM9601=m +CONFIG_USB_NET_SR9700=m +CONFIG_USB_NET_SR9800=m +CONFIG_USB_NET_SMSC75XX=m +CONFIG_USB_NET_SMSC95XX=m +CONFIG_USB_NET_GL620A=m +CONFIG_USB_NET_NET1080=m +CONFIG_USB_NET_PLUSB=m +CONFIG_USB_NET_MCS7830=m +CONFIG_USB_NET_RNDIS_HOST=m +CONFIG_USB_NET_CDC_SUBSET_ENABLE=m +CONFIG_USB_NET_CDC_SUBSET=m +CONFIG_USB_ALI_M5632=y +CONFIG_USB_AN2720=y +CONFIG_USB_BELKIN=y +CONFIG_USB_ARMLINUX=y +CONFIG_USB_EPSON2888=y +CONFIG_USB_KC2190=y +CONFIG_USB_NET_ZAURUS=m +CONFIG_USB_NET_CX82310_ETH=m +CONFIG_USB_NET_KALMIA=m +CONFIG_USB_NET_QMI_WWAN=m +CONFIG_USB_HSO=m +CONFIG_USB_NET_INT51X1=m +CONFIG_USB_CDC_PHONET=m +CONFIG_USB_IPHETH=m +CONFIG_USB_SIERRA_NET=m +CONFIG_USB_VL600=m +CONFIG_USB_NET_CH9200=m +CONFIG_WLAN=y +# CONFIG_WIRELESS_WDS is not set +CONFIG_WLAN_VENDOR_ADMTEK=y +CONFIG_ADM8211=m +CONFIG_ATH_COMMON=m +CONFIG_WLAN_VENDOR_ATH=y +# CONFIG_ATH_DEBUG is not set +CONFIG_ATH5K=m +# CONFIG_ATH5K_DEBUG is not set +# CONFIG_ATH5K_TRACER is not set +CONFIG_ATH5K_PCI=y +CONFIG_ATH9K_HW=m +CONFIG_ATH9K_COMMON=m +CONFIG_ATH9K_BTCOEX_SUPPORT=y +CONFIG_ATH9K=m +CONFIG_ATH9K_PCI=y +# CONFIG_ATH9K_AHB is not set +# CONFIG_ATH9K_DEBUGFS is not set +# CONFIG_ATH9K_DYNACK is not set +# CONFIG_ATH9K_WOW is not set +CONFIG_ATH9K_RFKILL=y +# CONFIG_ATH9K_CHANNEL_CONTEXT is not set +CONFIG_ATH9K_PCOEM=y +CONFIG_ATH9K_HTC=m +# CONFIG_ATH9K_HTC_DEBUGFS is not set +# CONFIG_ATH9K_HWRNG is not set +CONFIG_CARL9170=m +CONFIG_CARL9170_LEDS=y +CONFIG_CARL9170_WPC=y +# CONFIG_CARL9170_HWRNG is not set +CONFIG_ATH6KL=m +CONFIG_ATH6KL_SDIO=m +CONFIG_ATH6KL_USB=m +# CONFIG_ATH6KL_DEBUG is not set +# CONFIG_ATH6KL_TRACING is not set +CONFIG_AR5523=m +CONFIG_WIL6210=m +CONFIG_WIL6210_ISR_COR=y +CONFIG_WIL6210_TRACING=y +CONFIG_WIL6210_DEBUGFS=y +CONFIG_ATH10K=m +CONFIG_ATH10K_PCI=m +# CONFIG_ATH10K_AHB is not set +# CONFIG_ATH10K_SDIO is not set +# CONFIG_ATH10K_USB is not set +# CONFIG_ATH10K_DEBUG is not set +# CONFIG_ATH10K_DEBUGFS is not set +# CONFIG_ATH10K_TRACING is not set +CONFIG_WCN36XX=m +# CONFIG_WCN36XX_DEBUGFS is not set +CONFIG_WLAN_VENDOR_ATMEL=y +# CONFIG_ATMEL is not set +CONFIG_AT76C50X_USB=m +CONFIG_WLAN_VENDOR_BROADCOM=y +CONFIG_B43=m +CONFIG_B43_BCMA=y +CONFIG_B43_SSB=y +CONFIG_B43_BUSES_BCMA_AND_SSB=y +# CONFIG_B43_BUSES_BCMA is not set +# CONFIG_B43_BUSES_SSB is not set +CONFIG_B43_PCI_AUTOSELECT=y +CONFIG_B43_PCICORE_AUTOSELECT=y +CONFIG_B43_SDIO=y +CONFIG_B43_BCMA_PIO=y +CONFIG_B43_PIO=y +CONFIG_B43_PHY_G=y +CONFIG_B43_PHY_N=y +CONFIG_B43_PHY_LP=y +CONFIG_B43_PHY_HT=y +CONFIG_B43_LEDS=y +CONFIG_B43_HWRNG=y +# CONFIG_B43_DEBUG is not set +CONFIG_B43LEGACY=m +CONFIG_B43LEGACY_PCI_AUTOSELECT=y +CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y +CONFIG_B43LEGACY_LEDS=y +CONFIG_B43LEGACY_HWRNG=y +CONFIG_B43LEGACY_DEBUG=y +CONFIG_B43LEGACY_DMA=y +CONFIG_B43LEGACY_PIO=y +CONFIG_B43LEGACY_DMA_AND_PIO_MODE=y +# CONFIG_B43LEGACY_DMA_MODE is not set +# CONFIG_B43LEGACY_PIO_MODE is not set +CONFIG_BRCMUTIL=m +CONFIG_BRCMSMAC=m +CONFIG_BRCMFMAC=m +CONFIG_BRCMFMAC_PROTO_BCDC=y +CONFIG_BRCMFMAC_PROTO_MSGBUF=y +CONFIG_BRCMFMAC_SDIO=y +CONFIG_BRCMFMAC_USB=y +CONFIG_BRCMFMAC_PCIE=y +# CONFIG_BRCM_TRACING is not set +# CONFIG_BRCMDBG is not set +CONFIG_WLAN_VENDOR_CISCO=y +CONFIG_WLAN_VENDOR_INTEL=y +# CONFIG_IPW2100 is not set +CONFIG_IPW2200=m +CONFIG_IPW2200_MONITOR=y +CONFIG_IPW2200_RADIOTAP=y +CONFIG_IPW2200_PROMISCUOUS=y +CONFIG_IPW2200_QOS=y +# CONFIG_IPW2200_DEBUG is not set +CONFIG_LIBIPW=m +# CONFIG_LIBIPW_DEBUG is not set +CONFIG_IWLEGACY=m +CONFIG_IWL4965=m +CONFIG_IWL3945=m + +# +# iwl3945 / iwl4965 Debugging Options +# +# CONFIG_IWLEGACY_DEBUG is not set +CONFIG_IWLWIFI=m +CONFIG_IWLWIFI_LEDS=y +CONFIG_IWLDVM=m +CONFIG_IWLMVM=m +CONFIG_IWLWIFI_OPMODE_MODULAR=y +# CONFIG_IWLWIFI_BCAST_FILTERING is not set +# CONFIG_IWLWIFI_PCIE_RTPM is not set + +# +# Debugging Options +# +# CONFIG_IWLWIFI_DEBUG is not set +# CONFIG_IWLWIFI_DEVICE_TRACING is not set +CONFIG_WLAN_VENDOR_INTERSIL=y +CONFIG_HOSTAP=m +CONFIG_HOSTAP_FIRMWARE=y +# CONFIG_HOSTAP_FIRMWARE_NVRAM is not set +CONFIG_HOSTAP_PLX=m +CONFIG_HOSTAP_PCI=m +# CONFIG_HERMES is not set +CONFIG_P54_COMMON=m +CONFIG_P54_USB=m +CONFIG_P54_PCI=m +# CONFIG_P54_SPI is not set +CONFIG_P54_LEDS=y +# CONFIG_PRISM54 is not set +CONFIG_WLAN_VENDOR_MARVELL=y +CONFIG_LIBERTAS=m +CONFIG_LIBERTAS_USB=m +CONFIG_LIBERTAS_SDIO=m +# CONFIG_LIBERTAS_SPI is not set +# CONFIG_LIBERTAS_DEBUG is not set +CONFIG_LIBERTAS_MESH=y +CONFIG_LIBERTAS_THINFIRM=m +# CONFIG_LIBERTAS_THINFIRM_DEBUG is not set +CONFIG_LIBERTAS_THINFIRM_USB=m +# CONFIG_MWIFIEX is not set +CONFIG_MWL8K=m +CONFIG_WLAN_VENDOR_MEDIATEK=y +CONFIG_MT7601U=m +# CONFIG_MT76x2E is not set +CONFIG_WLAN_VENDOR_RALINK=y +CONFIG_RT2X00=m +CONFIG_RT2400PCI=m +CONFIG_RT2500PCI=m +CONFIG_RT61PCI=m +CONFIG_RT2800PCI=m +CONFIG_RT2800PCI_RT33XX=y +CONFIG_RT2800PCI_RT35XX=y +CONFIG_RT2800PCI_RT53XX=y +CONFIG_RT2800PCI_RT3290=y +CONFIG_RT2500USB=m +CONFIG_RT73USB=m +CONFIG_RT2800USB=m +CONFIG_RT2800USB_RT33XX=y +CONFIG_RT2800USB_RT35XX=y +CONFIG_RT2800USB_RT3573=y +CONFIG_RT2800USB_RT53XX=y +CONFIG_RT2800USB_RT55XX=y +# CONFIG_RT2800USB_UNKNOWN is not set +CONFIG_RT2800_LIB=m +CONFIG_RT2800_LIB_MMIO=m +CONFIG_RT2X00_LIB_MMIO=m +CONFIG_RT2X00_LIB_PCI=m +CONFIG_RT2X00_LIB_USB=m +CONFIG_RT2X00_LIB=m +CONFIG_RT2X00_LIB_FIRMWARE=y +CONFIG_RT2X00_LIB_CRYPTO=y +CONFIG_RT2X00_LIB_LEDS=y +# CONFIG_RT2X00_DEBUG is not set +CONFIG_WLAN_VENDOR_REALTEK=y +CONFIG_RTL8180=m +CONFIG_RTL8187=m +CONFIG_RTL8187_LEDS=y +CONFIG_RTL_CARDS=m +CONFIG_RTL8192CE=m +CONFIG_RTL8192SE=m +CONFIG_RTL8192DE=m +CONFIG_RTL8723AE=m +CONFIG_RTL8723BE=m +CONFIG_RTL8188EE=m +CONFIG_RTL8192EE=m +CONFIG_RTL8821AE=m +CONFIG_RTL8192CU=m +CONFIG_RTLWIFI=m +CONFIG_RTLWIFI_PCI=m +CONFIG_RTLWIFI_USB=m +# CONFIG_RTLWIFI_DEBUG is not set +CONFIG_RTL8192C_COMMON=m +CONFIG_RTL8723_COMMON=m +CONFIG_RTLBTCOEXIST=m +CONFIG_RTL8XXXU=m +# CONFIG_RTL8XXXU_UNTESTED is not set +CONFIG_WLAN_VENDOR_RSI=y +CONFIG_RSI_91X=m +CONFIG_RSI_DEBUGFS=y +# CONFIG_RSI_SDIO is not set +CONFIG_RSI_USB=m +CONFIG_RSI_COEX=y +CONFIG_WLAN_VENDOR_ST=y +# CONFIG_CW1200 is not set +CONFIG_WLAN_VENDOR_TI=y +CONFIG_WL1251=m +CONFIG_WL1251_SPI=m +CONFIG_WL1251_SDIO=m +CONFIG_WL12XX=m +CONFIG_WL18XX=m +CONFIG_WLCORE=m +CONFIG_WLCORE_SPI=m +CONFIG_WLCORE_SDIO=m +CONFIG_WILINK_PLATFORM_DATA=y +CONFIG_WLAN_VENDOR_ZYDAS=y +# CONFIG_USB_ZD1201 is not set +CONFIG_ZD1211RW=m +# CONFIG_ZD1211RW_DEBUG is not set +CONFIG_WLAN_VENDOR_QUANTENNA=y +# CONFIG_QTNFMAC_PEARL_PCIE is not set +CONFIG_MAC80211_HWSIM=m +CONFIG_USB_NET_RNDIS_WLAN=m + +# +# WiMAX Wireless Broadband devices +# +CONFIG_WIMAX_I2400M=m +CONFIG_WIMAX_I2400M_USB=m +CONFIG_WIMAX_I2400M_DEBUG_LEVEL=8 +# CONFIG_WAN is not set +CONFIG_IEEE802154_DRIVERS=m +CONFIG_IEEE802154_FAKELB=m +CONFIG_IEEE802154_AT86RF230=m +# CONFIG_IEEE802154_AT86RF230_DEBUGFS is not set +CONFIG_IEEE802154_MRF24J40=m +CONFIG_IEEE802154_CC2520=m +CONFIG_IEEE802154_ATUSB=m +CONFIG_IEEE802154_ADF7242=m +# CONFIG_IEEE802154_CA8210 is not set +CONFIG_IEEE802154_MCR20A=m +CONFIG_XEN_NETDEV_FRONTEND=m +CONFIG_XEN_NETDEV_BACKEND=m +# CONFIG_VMXNET3 is not set +# CONFIG_FUJITSU_ES is not set +# CONFIG_NETDEVSIM is not set +# CONFIG_ISDN is not set +# CONFIG_NVM is not set + +# +# Input device support +# +CONFIG_INPUT=y +CONFIG_INPUT_LEDS=y +CONFIG_INPUT_FF_MEMLESS=m +CONFIG_INPUT_POLLDEV=m +CONFIG_INPUT_SPARSEKMAP=m +CONFIG_INPUT_MATRIXKMAP=m + +# +# Userland interfaces +# +CONFIG_INPUT_MOUSEDEV=y +CONFIG_INPUT_MOUSEDEV_PSAUX=y +CONFIG_INPUT_MOUSEDEV_SCREEN_X=1024 +CONFIG_INPUT_MOUSEDEV_SCREEN_Y=768 +CONFIG_INPUT_JOYDEV=m +CONFIG_INPUT_EVDEV=m +# CONFIG_INPUT_EVBUG is not set + +# +# Input Device Drivers +# +CONFIG_INPUT_KEYBOARD=y +# CONFIG_KEYBOARD_ADC is not set +CONFIG_KEYBOARD_ADP5588=m +# CONFIG_KEYBOARD_ADP5589 is not set +CONFIG_KEYBOARD_ATKBD=y +# CONFIG_KEYBOARD_QT1070 is not set +CONFIG_KEYBOARD_QT2160=m +# CONFIG_KEYBOARD_DLINK_DIR685 is not set +# CONFIG_KEYBOARD_LKKBD is not set +CONFIG_KEYBOARD_GPIO=m +# CONFIG_KEYBOARD_GPIO_POLLED is not set +# CONFIG_KEYBOARD_TCA6416 is not set +# CONFIG_KEYBOARD_TCA8418 is not set +# CONFIG_KEYBOARD_MATRIX is not set +CONFIG_KEYBOARD_LM8323=m +# CONFIG_KEYBOARD_LM8333 is not set +CONFIG_KEYBOARD_MAX7359=m +# CONFIG_KEYBOARD_MCS is not set +# CONFIG_KEYBOARD_MPR121 is not set +# CONFIG_KEYBOARD_NEWTON is not set +CONFIG_KEYBOARD_TEGRA=m +CONFIG_KEYBOARD_OPENCORES=m +# CONFIG_KEYBOARD_SAMSUNG is not set +CONFIG_KEYBOARD_STOWAWAY=m +# CONFIG_KEYBOARD_SUNKBD is not set +# CONFIG_KEYBOARD_SUN4I_LRADC is not set +# CONFIG_KEYBOARD_OMAP4 is not set +# CONFIG_KEYBOARD_TM2_TOUCHKEY is not set +# CONFIG_KEYBOARD_XTKBD is not set +# CONFIG_KEYBOARD_CROS_EC is not set +# CONFIG_KEYBOARD_CAP11XX is not set +# CONFIG_KEYBOARD_BCM is not set +CONFIG_INPUT_MOUSE=y +CONFIG_MOUSE_PS2=y +CONFIG_MOUSE_PS2_ALPS=y +CONFIG_MOUSE_PS2_BYD=y +CONFIG_MOUSE_PS2_LOGIPS2PP=y +CONFIG_MOUSE_PS2_SYNAPTICS=y +CONFIG_MOUSE_PS2_SYNAPTICS_SMBUS=y +CONFIG_MOUSE_PS2_CYPRESS=y +CONFIG_MOUSE_PS2_TRACKPOINT=y +CONFIG_MOUSE_PS2_ELANTECH=y +CONFIG_MOUSE_PS2_SENTELIC=y +# CONFIG_MOUSE_PS2_TOUCHKIT is not set +CONFIG_MOUSE_PS2_FOCALTECH=y +CONFIG_MOUSE_PS2_SMBUS=y +# CONFIG_MOUSE_SERIAL is not set +# CONFIG_MOUSE_APPLETOUCH is not set +# CONFIG_MOUSE_BCM5974 is not set +# CONFIG_MOUSE_CYAPA is not set +# CONFIG_MOUSE_ELAN_I2C is not set +# CONFIG_MOUSE_VSXXXAA is not set +# CONFIG_MOUSE_GPIO is not set +CONFIG_MOUSE_SYNAPTICS_I2C=m +CONFIG_MOUSE_SYNAPTICS_USB=m +# CONFIG_INPUT_JOYSTICK is not set +CONFIG_INPUT_TABLET=y +CONFIG_TABLET_USB_ACECAD=m +CONFIG_TABLET_USB_AIPTEK=m +CONFIG_TABLET_USB_GTCO=m +CONFIG_TABLET_USB_HANWANG=m +CONFIG_TABLET_USB_KBTAB=m +CONFIG_TABLET_USB_PEGASUS=m +CONFIG_TABLET_SERIAL_WACOM4=m +# CONFIG_INPUT_TOUCHSCREEN is not set +CONFIG_INPUT_MISC=y +# CONFIG_INPUT_AD714X is not set +# CONFIG_INPUT_ATMEL_CAPTOUCH is not set +# CONFIG_INPUT_BMA150 is not set +# CONFIG_INPUT_E3X0_BUTTON is not set +CONFIG_INPUT_PM8941_PWRKEY=m +# CONFIG_INPUT_PM8XXX_VIBRATOR is not set +# CONFIG_INPUT_MMA8450 is not set +# CONFIG_INPUT_GP2A is not set +# CONFIG_INPUT_GPIO_BEEPER is not set +# CONFIG_INPUT_GPIO_DECODER is not set +CONFIG_INPUT_ATI_REMOTE2=m +CONFIG_INPUT_KEYSPAN_REMOTE=m +# CONFIG_INPUT_KXTJ9 is not set +CONFIG_INPUT_POWERMATE=m +CONFIG_INPUT_YEALINK=m +CONFIG_INPUT_CM109=m +# CONFIG_INPUT_REGULATOR_HAPTIC is not set +CONFIG_INPUT_AXP20X_PEK=m +CONFIG_INPUT_UINPUT=m +# CONFIG_INPUT_PCF8574 is not set +# CONFIG_INPUT_PWM_BEEPER is not set +# CONFIG_INPUT_PWM_VIBRA is not set +# CONFIG_INPUT_RK805_PWRKEY is not set +# CONFIG_INPUT_GPIO_ROTARY_ENCODER is not set +# CONFIG_INPUT_ADXL34X is not set +# CONFIG_INPUT_IMS_PCU is not set +# CONFIG_INPUT_CMA3000 is not set +CONFIG_INPUT_XEN_KBDDEV_FRONTEND=y +# CONFIG_INPUT_SOC_BUTTON_ARRAY is not set +# CONFIG_INPUT_DRV260X_HAPTICS is not set +# CONFIG_INPUT_DRV2665_HAPTICS is not set +# CONFIG_INPUT_DRV2667_HAPTICS is not set +CONFIG_INPUT_HISI_POWERKEY=m +CONFIG_RMI4_CORE=m +# CONFIG_RMI4_I2C is not set +# CONFIG_RMI4_SPI is not set +# CONFIG_RMI4_SMB is not set +CONFIG_RMI4_F03=y +CONFIG_RMI4_F03_SERIO=m +CONFIG_RMI4_2D_SENSOR=y +CONFIG_RMI4_F11=y +CONFIG_RMI4_F12=y +CONFIG_RMI4_F30=y +# CONFIG_RMI4_F34 is not set +# CONFIG_RMI4_F54 is not set +# CONFIG_RMI4_F55 is not set + +# +# Hardware I/O ports +# +CONFIG_SERIO=y +CONFIG_SERIO_SERPORT=y +# CONFIG_SERIO_PARKBD is not set +# CONFIG_SERIO_AMBAKMI is not set +# CONFIG_SERIO_PCIPS2 is not set +CONFIG_SERIO_LIBPS2=y +# CONFIG_SERIO_RAW is not set +CONFIG_SERIO_ALTERA_PS2=m +# CONFIG_SERIO_PS2MULT is not set +# CONFIG_SERIO_ARC_PS2 is not set +# CONFIG_SERIO_APBPS2 is not set +# CONFIG_SERIO_SUN4I_PS2 is not set +# CONFIG_SERIO_GPIO_PS2 is not set +# CONFIG_USERIO is not set +# CONFIG_GAMEPORT is not set + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_VT=y +CONFIG_CONSOLE_TRANSLATIONS=y +CONFIG_VT_CONSOLE=y +CONFIG_VT_CONSOLE_SLEEP=y +CONFIG_HW_CONSOLE=y +CONFIG_VT_HW_CONSOLE_BINDING=y +CONFIG_UNIX98_PTYS=y +# CONFIG_LEGACY_PTYS is not set +# CONFIG_SERIAL_NONSTANDARD is not set +CONFIG_NOZOMI=m +CONFIG_N_GSM=m +# CONFIG_TRACE_SINK is not set +CONFIG_DEVMEM=y + +# +# Serial drivers +# +CONFIG_SERIAL_EARLYCON=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y +CONFIG_SERIAL_8250_PNP=y +# CONFIG_SERIAL_8250_FINTEK is not set +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_SERIAL_8250_DMA=y +CONFIG_SERIAL_8250_PCI=y +CONFIG_SERIAL_8250_EXAR=y +CONFIG_SERIAL_8250_NR_UARTS=4 +CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +CONFIG_SERIAL_8250_EXTENDED=y +# CONFIG_SERIAL_8250_MANY_PORTS is not set +# CONFIG_SERIAL_8250_ASPEED_VUART is not set +CONFIG_SERIAL_8250_SHARE_IRQ=y +# CONFIG_SERIAL_8250_DETECT_IRQ is not set +# CONFIG_SERIAL_8250_RSA is not set +CONFIG_SERIAL_8250_BCM2835AUX=y +CONFIG_SERIAL_8250_FSL=y +CONFIG_SERIAL_8250_DW=y +# CONFIG_SERIAL_8250_RT288X is not set +CONFIG_SERIAL_8250_MOXA=m +CONFIG_SERIAL_OF_PLATFORM=y + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_AMBA_PL010=y +CONFIG_SERIAL_AMBA_PL010_CONSOLE=y +CONFIG_SERIAL_AMBA_PL011=y +CONFIG_SERIAL_AMBA_PL011_CONSOLE=y +# CONFIG_SERIAL_EARLYCON_ARM_SEMIHOST is not set +CONFIG_SERIAL_MESON=y +CONFIG_SERIAL_MESON_CONSOLE=y +CONFIG_SERIAL_TEGRA=y +# CONFIG_SERIAL_MAX3100 is not set +# CONFIG_SERIAL_MAX310X is not set +# CONFIG_SERIAL_UARTLITE is not set +CONFIG_SERIAL_CORE=y +CONFIG_SERIAL_CORE_CONSOLE=y +# CONFIG_SERIAL_JSM is not set +CONFIG_SERIAL_MSM=y +CONFIG_SERIAL_MSM_CONSOLE=y +# CONFIG_SERIAL_SCCNXP is not set +# CONFIG_SERIAL_SC16IS7XX is not set +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_IFX6X60 is not set +# CONFIG_SERIAL_XILINX_PS_UART is not set +# CONFIG_SERIAL_ARC is not set +CONFIG_SERIAL_RP2=m +CONFIG_SERIAL_RP2_NR_UARTS=32 +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set +CONFIG_SERIAL_MVEBU_UART=y +CONFIG_SERIAL_MVEBU_CONSOLE=y +CONFIG_SERIAL_DEV_BUS=m +CONFIG_TTY_PRINTK=m +# CONFIG_PRINTER is not set +# CONFIG_PPDEV is not set +CONFIG_HVC_DRIVER=y +CONFIG_HVC_IRQ=y +CONFIG_HVC_XEN=y +CONFIG_HVC_XEN_FRONTEND=y +# CONFIG_HVC_DCC is not set +CONFIG_VIRTIO_CONSOLE=m +CONFIG_IPMI_HANDLER=m +CONFIG_IPMI_DMI_DECODE=y +CONFIG_IPMI_PROC_INTERFACE=y +# CONFIG_IPMI_PANIC_EVENT is not set +CONFIG_IPMI_DEVICE_INTERFACE=m +CONFIG_IPMI_SI=m +CONFIG_IPMI_SSIF=m +# CONFIG_IPMI_WATCHDOG is not set +# CONFIG_IPMI_POWEROFF is not set +CONFIG_HW_RANDOM=m +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +CONFIG_HW_RANDOM_BCM2835=m +# CONFIG_HW_RANDOM_OMAP is not set +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HW_RANDOM_HISI=m +CONFIG_HW_RANDOM_MSM=m +CONFIG_HW_RANDOM_XGENE=m +CONFIG_HW_RANDOM_MESON=m +CONFIG_HW_RANDOM_CAVIUM=m +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set + +# +# PCMCIA character devices +# +# CONFIG_RAW_DRIVER is not set +# CONFIG_TCG_TPM is not set +CONFIG_DEVPORT=y +# CONFIG_XILLYBUS is not set + +# +# I2C support +# +CONFIG_I2C=y +CONFIG_ACPI_I2C_OPREGION=y +CONFIG_I2C_BOARDINFO=y +CONFIG_I2C_COMPAT=y +CONFIG_I2C_CHARDEV=m +CONFIG_I2C_MUX=m + +# +# Multiplexer I2C Chip support +# +# CONFIG_I2C_ARB_GPIO_CHALLENGE is not set +# CONFIG_I2C_MUX_GPIO is not set +# CONFIG_I2C_MUX_GPMUX is not set +# CONFIG_I2C_MUX_LTC4306 is not set +# CONFIG_I2C_MUX_PCA9541 is not set +# CONFIG_I2C_MUX_PCA954x is not set +# CONFIG_I2C_MUX_PINCTRL is not set +# CONFIG_I2C_MUX_REG is not set +# CONFIG_I2C_DEMUX_PINCTRL is not set +# CONFIG_I2C_MUX_MLXCPLD is not set +CONFIG_I2C_HELPER_AUTO=y +CONFIG_I2C_SMBUS=m +CONFIG_I2C_ALGOBIT=m +CONFIG_I2C_ALGOPCA=m + +# +# I2C Hardware Bus support +# + +# +# PC SMBus host controller drivers +# +# CONFIG_I2C_ALI1535 is not set +# CONFIG_I2C_ALI1563 is not set +# CONFIG_I2C_ALI15X3 is not set +# CONFIG_I2C_AMD756 is not set +# CONFIG_I2C_AMD8111 is not set +# CONFIG_I2C_HIX5HD2 is not set +# CONFIG_I2C_I801 is not set +CONFIG_I2C_ISCH=m +# CONFIG_I2C_PIIX4 is not set +# CONFIG_I2C_NFORCE2 is not set +# CONFIG_I2C_SIS5595 is not set +# CONFIG_I2C_SIS630 is not set +# CONFIG_I2C_SIS96X is not set +# CONFIG_I2C_VIA is not set +# CONFIG_I2C_VIAPRO is not set + +# +# ACPI drivers +# +# CONFIG_I2C_SCMI is not set + +# +# I2C system bus drivers (mostly embedded / system-on-chip) +# +CONFIG_I2C_BCM2835=m +# CONFIG_I2C_CADENCE is not set +# CONFIG_I2C_CBUS_GPIO is not set +CONFIG_I2C_DESIGNWARE_CORE=m +CONFIG_I2C_DESIGNWARE_PLATFORM=m +# CONFIG_I2C_DESIGNWARE_SLAVE is not set +# CONFIG_I2C_DESIGNWARE_PCI is not set +# CONFIG_I2C_EMEV2 is not set +# CONFIG_I2C_GPIO is not set +CONFIG_I2C_MESON=m +CONFIG_I2C_MV64XXX=m +# CONFIG_I2C_NOMADIK is not set +CONFIG_I2C_OCORES=m +CONFIG_I2C_PCA_PLATFORM=m +CONFIG_I2C_PXA=m +# CONFIG_I2C_PXA_SLAVE is not set +CONFIG_I2C_QUP=m +CONFIG_I2C_RK3X=m +CONFIG_I2C_SIMTEC=m +CONFIG_I2C_SYNQUACER=m +CONFIG_I2C_TEGRA=m +CONFIG_I2C_TEGRA_BPMP=y +# CONFIG_I2C_VERSATILE is not set +CONFIG_I2C_THUNDERX=m +# CONFIG_I2C_XILINX is not set +CONFIG_I2C_XLP9XX=m + +# +# External I2C/SMBus adapter drivers +# +CONFIG_I2C_DIOLAN_U2C=m +# CONFIG_I2C_PARPORT is not set +# CONFIG_I2C_PARPORT_LIGHT is not set +CONFIG_I2C_ROBOTFUZZ_OSIF=m +CONFIG_I2C_TAOS_EVM=m +CONFIG_I2C_TINY_USB=m +CONFIG_I2C_VIPERBOARD=m + +# +# Other I2C/SMBus bus drivers +# +CONFIG_I2C_CROS_EC_TUNNEL=m +CONFIG_I2C_XGENE_SLIMPRO=m +# CONFIG_I2C_STUB is not set +# CONFIG_I2C_SLAVE is not set +# CONFIG_I2C_DEBUG_CORE is not set +# CONFIG_I2C_DEBUG_ALGO is not set +# CONFIG_I2C_DEBUG_BUS is not set +CONFIG_SPI=y +# CONFIG_SPI_DEBUG is not set +CONFIG_SPI_MASTER=y + +# +# SPI Master Controller Drivers +# +# CONFIG_SPI_ALTERA is not set +CONFIG_SPI_ARMADA_3700=m +# CONFIG_SPI_AXI_SPI_ENGINE is not set +CONFIG_SPI_BCM2835=m +CONFIG_SPI_BCM2835AUX=m +CONFIG_SPI_BITBANG=m +CONFIG_SPI_BUTTERFLY=m +# CONFIG_SPI_CADENCE is not set +# CONFIG_SPI_DESIGNWARE is not set +# CONFIG_SPI_GPIO is not set +CONFIG_SPI_LM70_LLP=m +# CONFIG_SPI_FSL_SPI is not set +# CONFIG_SPI_MESON_SPICC is not set +CONFIG_SPI_MESON_SPIFC=m +# CONFIG_SPI_OC_TINY is not set +# CONFIG_SPI_ORION is not set +# CONFIG_SPI_PL022 is not set +# CONFIG_SPI_PXA2XX is not set +# CONFIG_SPI_ROCKCHIP is not set +CONFIG_SPI_QUP=m +# CONFIG_SPI_SC18IS602 is not set +# CONFIG_SPI_SUN4I is not set +# CONFIG_SPI_SUN6I is not set +CONFIG_SPI_TEGRA114=m +CONFIG_SPI_TEGRA20_SFLASH=m +CONFIG_SPI_TEGRA20_SLINK=m +CONFIG_SPI_THUNDERX=m +# CONFIG_SPI_XCOMM is not set +# CONFIG_SPI_XILINX is not set +CONFIG_SPI_XLP=m +# CONFIG_SPI_ZYNQMP_GQSPI is not set + +# +# SPI Protocol Masters +# +# CONFIG_SPI_SPIDEV is not set +# CONFIG_SPI_LOOPBACK_TEST is not set +# CONFIG_SPI_TLE62X0 is not set +# CONFIG_SPI_SLAVE is not set +CONFIG_SPMI=y +CONFIG_SPMI_MSM_PMIC_ARB=y +# CONFIG_HSI is not set +CONFIG_PPS=y +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +# CONFIG_PPS_CLIENT_KTIMER is not set +CONFIG_PPS_CLIENT_LDISC=m +CONFIG_PPS_CLIENT_PARPORT=m +# CONFIG_PPS_CLIENT_GPIO is not set + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=y + +# +# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. +# +CONFIG_PINCTRL=y +CONFIG_GENERIC_PINCTRL_GROUPS=y +CONFIG_PINMUX=y +CONFIG_GENERIC_PINMUX_FUNCTIONS=y +CONFIG_PINCONF=y +CONFIG_GENERIC_PINCONF=y +# CONFIG_DEBUG_PINCTRL is not set +CONFIG_PINCTRL_AXP209=m +CONFIG_PINCTRL_AMD=y +# CONFIG_PINCTRL_MCP23S08 is not set +CONFIG_PINCTRL_ROCKCHIP=y +CONFIG_PINCTRL_SINGLE=y +# CONFIG_PINCTRL_SX150X is not set +CONFIG_PINCTRL_MAX77620=y +# CONFIG_PINCTRL_RK805 is not set +CONFIG_PINCTRL_BCM2835=y +CONFIG_PINCTRL_MVEBU=y +CONFIG_PINCTRL_ARMADA_AP806=y +CONFIG_PINCTRL_ARMADA_CP110=y +CONFIG_PINCTRL_ARMADA_37XX=y +CONFIG_PINCTRL_MSM=y +# CONFIG_PINCTRL_APQ8064 is not set +# CONFIG_PINCTRL_APQ8084 is not set +# CONFIG_PINCTRL_IPQ4019 is not set +# CONFIG_PINCTRL_IPQ8064 is not set +# CONFIG_PINCTRL_IPQ8074 is not set +# CONFIG_PINCTRL_MSM8660 is not set +# CONFIG_PINCTRL_MSM8960 is not set +# CONFIG_PINCTRL_MDM9615 is not set +# CONFIG_PINCTRL_MSM8X74 is not set +CONFIG_PINCTRL_MSM8916=y +# CONFIG_PINCTRL_MSM8994 is not set +CONFIG_PINCTRL_MSM8996=y +# CONFIG_PINCTRL_MSM8998 is not set +# CONFIG_PINCTRL_QDF2XXX is not set +CONFIG_PINCTRL_QCOM_SPMI_PMIC=y +CONFIG_PINCTRL_QCOM_SSBI_PMIC=y +# CONFIG_PINCTRL_SDM845 is not set +CONFIG_PINCTRL_SUNXI=y +CONFIG_PINCTRL_SUN8I_H3_R=y +CONFIG_PINCTRL_SUN50I_A64=y +CONFIG_PINCTRL_SUN50I_A64_R=y +CONFIG_PINCTRL_SUN50I_H5=y +CONFIG_PINCTRL_SUN50I_H6=y +CONFIG_PINCTRL_TEGRA=y +CONFIG_PINCTRL_TEGRA124=y +CONFIG_PINCTRL_TEGRA210=y +CONFIG_PINCTRL_TEGRA_XUSB=y +CONFIG_PINCTRL_MESON=y +CONFIG_PINCTRL_MESON_GXBB=y +CONFIG_PINCTRL_MESON_GXL=y +CONFIG_PINCTRL_MESON8_PMX=y +CONFIG_PINCTRL_MESON_AXG=y +CONFIG_PINCTRL_MESON_AXG_PMX=y +CONFIG_GPIOLIB=y +CONFIG_OF_GPIO=y +CONFIG_GPIO_ACPI=y +CONFIG_GPIOLIB_IRQCHIP=y +# CONFIG_DEBUG_GPIO is not set +CONFIG_GPIO_SYSFS=y +CONFIG_GPIO_GENERIC=y + +# +# Memory mapped GPIO drivers +# +# CONFIG_GPIO_74XX_MMIO is not set +# CONFIG_GPIO_ALTERA is not set +# CONFIG_GPIO_AMDPT is not set +CONFIG_GPIO_RASPBERRYPI_EXP=m +# CONFIG_GPIO_DWAPB is not set +# CONFIG_GPIO_EXAR is not set +# CONFIG_GPIO_FTGPIO010 is not set +CONFIG_GPIO_GENERIC_PLATFORM=y +# CONFIG_GPIO_GRGPIO is not set +# CONFIG_GPIO_HLWD is not set +CONFIG_GPIO_MB86S7X=m +# CONFIG_GPIO_MOCKUP is not set +CONFIG_GPIO_MVEBU=y +CONFIG_GPIO_PL061=y +# CONFIG_GPIO_SYSCON is not set +CONFIG_GPIO_TEGRA=y +# CONFIG_GPIO_THUNDERX is not set +CONFIG_GPIO_XGENE=y +CONFIG_GPIO_XGENE_SB=m +# CONFIG_GPIO_XILINX is not set +CONFIG_GPIO_XLP=y + +# +# I2C GPIO expanders +# +# CONFIG_GPIO_ADP5588 is not set +# CONFIG_GPIO_ADNP is not set +# CONFIG_GPIO_MAX7300 is not set +# CONFIG_GPIO_MAX732X is not set +CONFIG_GPIO_PCA953X=y +CONFIG_GPIO_PCA953X_IRQ=y +# CONFIG_GPIO_PCF857X is not set +# CONFIG_GPIO_TPIC2810 is not set + +# +# MFD GPIO expanders +# +CONFIG_GPIO_MAX77620=y + +# +# PCI GPIO expanders +# +# CONFIG_GPIO_PCI_IDIO_16 is not set +# CONFIG_GPIO_PCIE_IDIO_24 is not set +# CONFIG_GPIO_RDC321X is not set + +# +# SPI GPIO expanders +# +# CONFIG_GPIO_74X164 is not set +# CONFIG_GPIO_MAX3191X is not set +# CONFIG_GPIO_MAX7301 is not set +# CONFIG_GPIO_MC33880 is not set +# CONFIG_GPIO_PISOSR is not set +# CONFIG_GPIO_XRA1403 is not set + +# +# USB GPIO expanders +# +CONFIG_GPIO_VIPERBOARD=m +CONFIG_W1=m +CONFIG_W1_CON=y + +# +# 1-wire Bus Masters +# +# CONFIG_W1_MASTER_MATROX is not set +CONFIG_W1_MASTER_DS2490=m +CONFIG_W1_MASTER_DS2482=m +# CONFIG_W1_MASTER_DS1WM is not set +CONFIG_W1_MASTER_GPIO=m + +# +# 1-wire Slaves +# +CONFIG_W1_SLAVE_THERM=m +CONFIG_W1_SLAVE_SMEM=m +CONFIG_W1_SLAVE_DS2405=m +CONFIG_W1_SLAVE_DS2408=m +CONFIG_W1_SLAVE_DS2408_READBACK=y +CONFIG_W1_SLAVE_DS2413=m +CONFIG_W1_SLAVE_DS2406=m +CONFIG_W1_SLAVE_DS2423=m +CONFIG_W1_SLAVE_DS2805=m +CONFIG_W1_SLAVE_DS2431=m +CONFIG_W1_SLAVE_DS2433=m +# CONFIG_W1_SLAVE_DS2433_CRC is not set +CONFIG_W1_SLAVE_DS2438=m +CONFIG_W1_SLAVE_DS2760=m +CONFIG_W1_SLAVE_DS2780=m +CONFIG_W1_SLAVE_DS2781=m +CONFIG_W1_SLAVE_DS28E04=m +CONFIG_W1_SLAVE_DS28E17=m +CONFIG_POWER_AVS=y +CONFIG_ROCKCHIP_IODOMAIN=m +CONFIG_POWER_RESET=y +# CONFIG_POWER_RESET_BRCMSTB is not set +# CONFIG_POWER_RESET_GPIO is not set +# CONFIG_POWER_RESET_GPIO_RESTART is not set +CONFIG_POWER_RESET_HISI=y +CONFIG_POWER_RESET_MSM=y +# CONFIG_POWER_RESET_LTC2952 is not set +# CONFIG_POWER_RESET_RESTART is not set +CONFIG_POWER_RESET_VEXPRESS=y +CONFIG_POWER_RESET_XGENE=y +CONFIG_POWER_RESET_SYSCON=y +CONFIG_POWER_RESET_SYSCON_POWEROFF=y +# CONFIG_SYSCON_REBOOT_MODE is not set +CONFIG_POWER_SUPPLY=y +# CONFIG_POWER_SUPPLY_DEBUG is not set +# CONFIG_PDA_POWER is not set +# CONFIG_GENERIC_ADC_BATTERY is not set +# CONFIG_TEST_POWER is not set +# CONFIG_BATTERY_DS2760 is not set +# CONFIG_BATTERY_DS2780 is not set +# CONFIG_BATTERY_DS2781 is not set +# CONFIG_BATTERY_DS2782 is not set +# CONFIG_BATTERY_LEGO_EV3 is not set +# CONFIG_BATTERY_SBS is not set +# CONFIG_CHARGER_SBS is not set +# CONFIG_MANAGER_SBS is not set +CONFIG_BATTERY_BQ27XXX=m +# CONFIG_BATTERY_BQ27XXX_I2C is not set +CONFIG_BATTERY_BQ27XXX_HDQ=m +CONFIG_CHARGER_AXP20X=m +CONFIG_BATTERY_AXP20X=m +CONFIG_AXP20X_POWER=m +CONFIG_AXP288_FUEL_GAUGE=m +# CONFIG_BATTERY_MAX17040 is not set +# CONFIG_BATTERY_MAX17042 is not set +# CONFIG_BATTERY_MAX1721X is not set +# CONFIG_CHARGER_ISP1704 is not set +# CONFIG_CHARGER_MAX8903 is not set +# CONFIG_CHARGER_LP8727 is not set +# CONFIG_CHARGER_GPIO is not set +# CONFIG_CHARGER_MANAGER is not set +# CONFIG_CHARGER_LTC3651 is not set +# CONFIG_CHARGER_DETECTOR_MAX14656 is not set +CONFIG_CHARGER_QCOM_SMBB=m +# CONFIG_CHARGER_BQ2415X is not set +# CONFIG_CHARGER_BQ24190 is not set +# CONFIG_CHARGER_BQ24257 is not set +# CONFIG_CHARGER_BQ24735 is not set +# CONFIG_CHARGER_BQ25890 is not set +# CONFIG_CHARGER_SMB347 is not set +# CONFIG_BATTERY_GAUGE_LTC2941 is not set +# CONFIG_CHARGER_RT9455 is not set +CONFIG_HWMON=y +CONFIG_HWMON_VID=m +# CONFIG_HWMON_DEBUG_CHIP is not set + +# +# Native drivers +# +# CONFIG_SENSORS_AD7314 is not set +CONFIG_SENSORS_AD7414=m +CONFIG_SENSORS_AD7418=m +# CONFIG_SENSORS_ADM1021 is not set +# CONFIG_SENSORS_ADM1025 is not set +# CONFIG_SENSORS_ADM1026 is not set +CONFIG_SENSORS_ADM1029=m +# CONFIG_SENSORS_ADM1031 is not set +CONFIG_SENSORS_ADM9240=m +# CONFIG_SENSORS_ADT7310 is not set +# CONFIG_SENSORS_ADT7410 is not set +CONFIG_SENSORS_ADT7411=m +CONFIG_SENSORS_ADT7462=m +CONFIG_SENSORS_ADT7470=m +CONFIG_SENSORS_ADT7475=m +CONFIG_SENSORS_ASC7621=m +CONFIG_SENSORS_ARM_SCMI=m +# CONFIG_SENSORS_ASPEED is not set +CONFIG_SENSORS_ATXP1=m +CONFIG_SENSORS_DS620=m +# CONFIG_SENSORS_DS1621 is not set +CONFIG_SENSORS_I5K_AMB=m +# CONFIG_SENSORS_F71805F is not set +CONFIG_SENSORS_F71882FG=m +CONFIG_SENSORS_F75375S=m +CONFIG_SENSORS_FTSTEUTATES=m +# CONFIG_SENSORS_GL518SM is not set +# CONFIG_SENSORS_GL520SM is not set +CONFIG_SENSORS_G760A=m +# CONFIG_SENSORS_G762 is not set +# CONFIG_SENSORS_GPIO_FAN is not set +# CONFIG_SENSORS_HIH6130 is not set +CONFIG_SENSORS_IBMAEM=m +CONFIG_SENSORS_IBMPEX=m +# CONFIG_SENSORS_IIO_HWMON is not set +# CONFIG_SENSORS_IT87 is not set +CONFIG_SENSORS_JC42=m +# CONFIG_SENSORS_POWR1220 is not set +CONFIG_SENSORS_LINEAGE=m +# CONFIG_SENSORS_LTC2945 is not set +# CONFIG_SENSORS_LTC2990 is not set +CONFIG_SENSORS_LTC4151=m +CONFIG_SENSORS_LTC4215=m +# CONFIG_SENSORS_LTC4222 is not set +CONFIG_SENSORS_LTC4245=m +# CONFIG_SENSORS_LTC4260 is not set +CONFIG_SENSORS_LTC4261=m +CONFIG_SENSORS_MAX1111=m +CONFIG_SENSORS_MAX16065=m +# CONFIG_SENSORS_MAX1619 is not set +CONFIG_SENSORS_MAX1668=m +# CONFIG_SENSORS_MAX197 is not set +# CONFIG_SENSORS_MAX31722 is not set +# CONFIG_SENSORS_MAX6621 is not set +CONFIG_SENSORS_MAX6639=m +CONFIG_SENSORS_MAX6642=m +CONFIG_SENSORS_MAX6650=m +# CONFIG_SENSORS_MAX6697 is not set +# CONFIG_SENSORS_MAX31790 is not set +# CONFIG_SENSORS_MCP3021 is not set +# CONFIG_SENSORS_TC654 is not set +CONFIG_SENSORS_ADCXX=m +# CONFIG_SENSORS_LM63 is not set +CONFIG_SENSORS_LM70=m +CONFIG_SENSORS_LM73=m +# CONFIG_SENSORS_LM75 is not set +# CONFIG_SENSORS_LM77 is not set +# CONFIG_SENSORS_LM78 is not set +# CONFIG_SENSORS_LM80 is not set +# CONFIG_SENSORS_LM83 is not set +# CONFIG_SENSORS_LM85 is not set +# CONFIG_SENSORS_LM87 is not set +# CONFIG_SENSORS_LM90 is not set +# CONFIG_SENSORS_LM92 is not set +CONFIG_SENSORS_LM93=m +# CONFIG_SENSORS_LM95234 is not set +CONFIG_SENSORS_LM95241=m +CONFIG_SENSORS_LM95245=m +# CONFIG_SENSORS_PC87360 is not set +CONFIG_SENSORS_PC87427=m +CONFIG_SENSORS_NTC_THERMISTOR=m +CONFIG_SENSORS_NCT6683=m +CONFIG_SENSORS_NCT6775=m +# CONFIG_SENSORS_NCT7802 is not set +# CONFIG_SENSORS_NCT7904 is not set +# CONFIG_SENSORS_PCF8591 is not set +# CONFIG_PMBUS is not set +# CONFIG_SENSORS_PWM_FAN is not set +# CONFIG_SENSORS_SHT15 is not set +CONFIG_SENSORS_SHT21=m +# CONFIG_SENSORS_SHT3x is not set +# CONFIG_SENSORS_SHTC1 is not set +# CONFIG_SENSORS_SIS5595 is not set +CONFIG_SENSORS_DME1737=m +CONFIG_SENSORS_EMC1403=m +CONFIG_SENSORS_EMC2103=m +CONFIG_SENSORS_EMC6W201=m +# CONFIG_SENSORS_SMSC47M1 is not set +CONFIG_SENSORS_SMSC47M192=m +# CONFIG_SENSORS_SMSC47B397 is not set +CONFIG_SENSORS_SCH56XX_COMMON=m +CONFIG_SENSORS_SCH5627=m +# CONFIG_SENSORS_SCH5636 is not set +# CONFIG_SENSORS_STTS751 is not set +CONFIG_SENSORS_SMM665=m +# CONFIG_SENSORS_ADC128D818 is not set +CONFIG_SENSORS_ADS1015=m +CONFIG_SENSORS_ADS7828=m +CONFIG_SENSORS_ADS7871=m +CONFIG_SENSORS_AMC6821=m +# CONFIG_SENSORS_INA209 is not set +# CONFIG_SENSORS_INA2XX is not set +# CONFIG_SENSORS_INA3221 is not set +# CONFIG_SENSORS_TC74 is not set +CONFIG_SENSORS_THMC50=m +CONFIG_SENSORS_TMP102=m +# CONFIG_SENSORS_TMP103 is not set +# CONFIG_SENSORS_TMP108 is not set +CONFIG_SENSORS_TMP401=m +CONFIG_SENSORS_TMP421=m +# CONFIG_SENSORS_VEXPRESS is not set +# CONFIG_SENSORS_VIA686A is not set +CONFIG_SENSORS_VT1211=m +CONFIG_SENSORS_VT8231=m +# CONFIG_SENSORS_W83773G is not set +# CONFIG_SENSORS_W83781D is not set +CONFIG_SENSORS_W83791D=m +CONFIG_SENSORS_W83792D=m +CONFIG_SENSORS_W83793=m +CONFIG_SENSORS_W83795=m +# CONFIG_SENSORS_W83795_FANCTRL is not set +# CONFIG_SENSORS_W83L785TS is not set +CONFIG_SENSORS_W83L786NG=m +# CONFIG_SENSORS_W83627HF is not set +CONFIG_SENSORS_W83627EHF=m +CONFIG_SENSORS_XGENE=m + +# +# ACPI drivers +# +# CONFIG_SENSORS_ACPI_POWER is not set +CONFIG_THERMAL=y +# CONFIG_THERMAL_STATISTICS is not set +CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 +CONFIG_THERMAL_HWMON=y +CONFIG_THERMAL_OF=y +# CONFIG_THERMAL_WRITABLE_TRIPS is not set +CONFIG_THERMAL_DEFAULT_GOV_STEP_WISE=y +# CONFIG_THERMAL_DEFAULT_GOV_FAIR_SHARE is not set +# CONFIG_THERMAL_DEFAULT_GOV_USER_SPACE is not set +# CONFIG_THERMAL_DEFAULT_GOV_POWER_ALLOCATOR is not set +CONFIG_THERMAL_GOV_FAIR_SHARE=y +CONFIG_THERMAL_GOV_STEP_WISE=y +# CONFIG_THERMAL_GOV_BANG_BANG is not set +# CONFIG_THERMAL_GOV_USER_SPACE is not set +# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set +CONFIG_CPU_THERMAL=y +# CONFIG_CLOCK_THERMAL is not set +# CONFIG_DEVFREQ_THERMAL is not set +# CONFIG_THERMAL_EMULATION is not set +CONFIG_HISI_THERMAL=m +# CONFIG_MAX77620_THERMAL is not set +# CONFIG_QORIQ_THERMAL is not set +# CONFIG_ROCKCHIP_THERMAL is not set +CONFIG_ARMADA_THERMAL=m + +# +# ACPI INT340X thermal drivers +# + +# +# Broadcom thermal drivers +# +CONFIG_BCM2835_THERMAL=m + +# +# NVIDIA Tegra thermal drivers +# +CONFIG_TEGRA_SOCTHERM=y +# CONFIG_TEGRA_BPMP_THERMAL is not set +CONFIG_QCOM_SPMI_TEMP_ALARM=m +# CONFIG_GENERIC_ADC_THERMAL is not set + +# +# Qualcomm thermal drivers +# +CONFIG_QCOM_TSENS=m +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set +CONFIG_WATCHDOG_HANDLE_BOOT_ENABLED=y +CONFIG_WATCHDOG_SYSFS=y + +# +# Watchdog Device Drivers +# +CONFIG_SOFT_WATCHDOG=m +CONFIG_GPIO_WATCHDOG=m +# CONFIG_WDAT_WDT is not set +# CONFIG_XILINX_WATCHDOG is not set +# CONFIG_ZIIRAVE_WATCHDOG is not set +CONFIG_ARM_SP805_WATCHDOG=m +CONFIG_ARM_SBSA_WATCHDOG=m +# CONFIG_CADENCE_WATCHDOG is not set +CONFIG_DW_WATCHDOG=m +CONFIG_SUNXI_WATCHDOG=m +# CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_MAX77620_WATCHDOG is not set +CONFIG_TEGRA_WATCHDOG=m +CONFIG_QCOM_WDT=m +CONFIG_MESON_GXBB_WATCHDOG=m +CONFIG_MESON_WATCHDOG=m +# CONFIG_ALIM7101_WDT is not set +# CONFIG_I6300ESB_WDT is not set +CONFIG_BCM2835_WDT=m +# CONFIG_MEN_A21_WDT is not set +CONFIG_XEN_WDT=m + +# +# PCI-based Watchdog Cards +# +# CONFIG_PCIPCWATCHDOG is not set +# CONFIG_WDTPCI is not set + +# +# USB-based Watchdog Cards +# +# CONFIG_USBPCWATCHDOG is not set + +# +# Watchdog Pretimeout Governors +# +# CONFIG_WATCHDOG_PRETIMEOUT_GOV is not set +CONFIG_SSB_POSSIBLE=y +CONFIG_SSB=m +CONFIG_SSB_SPROM=y +CONFIG_SSB_BLOCKIO=y +CONFIG_SSB_PCIHOST_POSSIBLE=y +CONFIG_SSB_PCIHOST=y +CONFIG_SSB_B43_PCI_BRIDGE=y +CONFIG_SSB_SDIOHOST_POSSIBLE=y +CONFIG_SSB_SDIOHOST=y +# CONFIG_SSB_SILENT is not set +# CONFIG_SSB_DEBUG is not set +CONFIG_SSB_DRIVER_PCICORE_POSSIBLE=y +CONFIG_SSB_DRIVER_PCICORE=y +# CONFIG_SSB_DRIVER_GPIO is not set +CONFIG_BCMA_POSSIBLE=y +CONFIG_BCMA=m +CONFIG_BCMA_BLOCKIO=y +CONFIG_BCMA_HOST_PCI_POSSIBLE=y +CONFIG_BCMA_HOST_PCI=y +# CONFIG_BCMA_HOST_SOC is not set +CONFIG_BCMA_DRIVER_PCI=y +# CONFIG_BCMA_DRIVER_GMAC_CMN is not set +# CONFIG_BCMA_DRIVER_GPIO is not set +# CONFIG_BCMA_DEBUG is not set + +# +# Multifunction device drivers +# +CONFIG_MFD_CORE=y +# CONFIG_MFD_ACT8945A is not set +# CONFIG_MFD_SUN4I_GPADC is not set +# CONFIG_MFD_AS3711 is not set +# CONFIG_MFD_AS3722 is not set +# CONFIG_PMIC_ADP5520 is not set +# CONFIG_MFD_AAT2870_CORE is not set +# CONFIG_MFD_ATMEL_FLEXCOM is not set +# CONFIG_MFD_ATMEL_HLCDC is not set +# CONFIG_MFD_BCM590XX is not set +# CONFIG_MFD_BD9571MWV is not set +# CONFIG_MFD_AC100 is not set +CONFIG_MFD_AXP20X=m +# CONFIG_MFD_AXP20X_I2C is not set +CONFIG_MFD_AXP20X_RSB=m +CONFIG_MFD_CROS_EC=y +CONFIG_MFD_CROS_EC_I2C=m +CONFIG_MFD_CROS_EC_SPI=m +# CONFIG_MFD_CROS_EC_CHARDEV is not set +# CONFIG_PMIC_DA903X is not set +# CONFIG_MFD_DA9052_SPI is not set +# CONFIG_MFD_DA9052_I2C is not set +# CONFIG_MFD_DA9055 is not set +# CONFIG_MFD_DA9062 is not set +# CONFIG_MFD_DA9063 is not set +# CONFIG_MFD_DA9150 is not set +# CONFIG_MFD_DLN2 is not set +# CONFIG_MFD_MC13XXX_SPI is not set +# CONFIG_MFD_MC13XXX_I2C is not set +# CONFIG_MFD_HI6421_PMIC is not set +CONFIG_MFD_HI655X_PMIC=m +# CONFIG_HTC_PASIC3 is not set +# CONFIG_HTC_I2CPLD is not set +# CONFIG_LPC_ICH is not set +CONFIG_LPC_SCH=m +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_88PM800 is not set +# CONFIG_MFD_88PM805 is not set +# CONFIG_MFD_88PM860X is not set +# CONFIG_MFD_MAX14577 is not set +CONFIG_MFD_MAX77620=y +# CONFIG_MFD_MAX77686 is not set +# CONFIG_MFD_MAX77693 is not set +# CONFIG_MFD_MAX77843 is not set +# CONFIG_MFD_MAX8907 is not set +# CONFIG_MFD_MAX8925 is not set +# CONFIG_MFD_MAX8997 is not set +# CONFIG_MFD_MAX8998 is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_MFD_MENF21BMC is not set +# CONFIG_EZX_PCAP is not set +# CONFIG_MFD_CPCAP is not set +CONFIG_MFD_VIPERBOARD=m +# CONFIG_MFD_RETU is not set +# CONFIG_MFD_PCF50633 is not set +# CONFIG_UCB1400_CORE is not set +CONFIG_MFD_QCOM_RPM=m +CONFIG_MFD_SPMI_PMIC=m +# CONFIG_MFD_RDC321X is not set +# CONFIG_MFD_RT5033 is not set +# CONFIG_MFD_RC5T583 is not set +CONFIG_MFD_RK808=m +# CONFIG_MFD_RN5T618 is not set +# CONFIG_MFD_SEC_CORE is not set +# CONFIG_MFD_SI476X_CORE is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_MFD_SKY81452 is not set +# CONFIG_MFD_SMSC is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_MFD_STMPE is not set +# CONFIG_MFD_SUN6I_PRCM is not set +CONFIG_MFD_SYSCON=y +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_LP3943 is not set +# CONFIG_MFD_LP8788 is not set +# CONFIG_MFD_TI_LMU is not set +# CONFIG_MFD_PALMAS is not set +# CONFIG_TPS6105X is not set +# CONFIG_TPS65010 is not set +# CONFIG_TPS6507X is not set +# CONFIG_MFD_TPS65086 is not set +# CONFIG_MFD_TPS65090 is not set +# CONFIG_MFD_TPS65217 is not set +# CONFIG_MFD_TPS68470 is not set +# CONFIG_MFD_TI_LP873X is not set +# CONFIG_MFD_TI_LP87565 is not set +# CONFIG_MFD_TPS65218 is not set +# CONFIG_MFD_TPS6586X is not set +# CONFIG_MFD_TPS65910 is not set +# CONFIG_MFD_TPS65912_I2C is not set +# CONFIG_MFD_TPS65912_SPI is not set +# CONFIG_MFD_TPS80031 is not set +# CONFIG_TWL4030_CORE is not set +# CONFIG_TWL6040_CORE is not set +# CONFIG_MFD_WL1273_CORE is not set +# CONFIG_MFD_LM3533 is not set +# CONFIG_MFD_TC3589X is not set +# CONFIG_MFD_VX855 is not set +# CONFIG_MFD_ARIZONA_I2C is not set +# CONFIG_MFD_ARIZONA_SPI is not set +# CONFIG_MFD_WM8400 is not set +# CONFIG_MFD_WM831X_I2C is not set +# CONFIG_MFD_WM831X_SPI is not set +# CONFIG_MFD_WM8350_I2C is not set +# CONFIG_MFD_WM8994 is not set +CONFIG_MFD_VEXPRESS_SYSREG=y +# CONFIG_RAVE_SP_CORE is not set +CONFIG_REGULATOR=y +# CONFIG_REGULATOR_DEBUG is not set +CONFIG_REGULATOR_FIXED_VOLTAGE=m +# CONFIG_REGULATOR_VIRTUAL_CONSUMER is not set +# CONFIG_REGULATOR_USERSPACE_CONSUMER is not set +# CONFIG_REGULATOR_88PG86X is not set +# CONFIG_REGULATOR_ACT8865 is not set +# CONFIG_REGULATOR_AD5398 is not set +# CONFIG_REGULATOR_ANATOP is not set +CONFIG_REGULATOR_AXP20X=m +# CONFIG_REGULATOR_DA9210 is not set +# CONFIG_REGULATOR_DA9211 is not set +CONFIG_REGULATOR_FAN53555=m +CONFIG_REGULATOR_GPIO=m +CONFIG_REGULATOR_HI655X=m +# CONFIG_REGULATOR_ISL9305 is not set +# CONFIG_REGULATOR_ISL6271A is not set +# CONFIG_REGULATOR_LP3971 is not set +# CONFIG_REGULATOR_LP3972 is not set +# CONFIG_REGULATOR_LP872X is not set +# CONFIG_REGULATOR_LP8755 is not set +# CONFIG_REGULATOR_LTC3589 is not set +# CONFIG_REGULATOR_LTC3676 is not set +# CONFIG_REGULATOR_MAX1586 is not set +CONFIG_REGULATOR_MAX77620=m +# CONFIG_REGULATOR_MAX8649 is not set +# CONFIG_REGULATOR_MAX8660 is not set +# CONFIG_REGULATOR_MAX8952 is not set +# CONFIG_REGULATOR_MAX8973 is not set +# CONFIG_REGULATOR_MT6311 is not set +# CONFIG_REGULATOR_PFUZE100 is not set +# CONFIG_REGULATOR_PV88060 is not set +# CONFIG_REGULATOR_PV88080 is not set +# CONFIG_REGULATOR_PV88090 is not set +CONFIG_REGULATOR_PWM=m +CONFIG_REGULATOR_QCOM_RPM=m +CONFIG_REGULATOR_QCOM_SMD_RPM=m +CONFIG_REGULATOR_QCOM_SPMI=m +CONFIG_REGULATOR_RK808=m +# CONFIG_REGULATOR_TPS51632 is not set +# CONFIG_REGULATOR_TPS62360 is not set +# CONFIG_REGULATOR_TPS65023 is not set +# CONFIG_REGULATOR_TPS6507X is not set +# CONFIG_REGULATOR_TPS65132 is not set +# CONFIG_REGULATOR_TPS6524X is not set +# CONFIG_REGULATOR_VCTRL is not set +# CONFIG_REGULATOR_VEXPRESS is not set +CONFIG_CEC_CORE=m +CONFIG_RC_CORE=m +CONFIG_RC_MAP=m +CONFIG_LIRC=y +CONFIG_RC_DECODERS=y +CONFIG_IR_NEC_DECODER=m +CONFIG_IR_RC5_DECODER=m +CONFIG_IR_RC6_DECODER=m +CONFIG_IR_JVC_DECODER=m +CONFIG_IR_SONY_DECODER=m +CONFIG_IR_SANYO_DECODER=m +CONFIG_IR_SHARP_DECODER=m +CONFIG_IR_MCE_KBD_DECODER=m +CONFIG_IR_XMP_DECODER=m +CONFIG_IR_IMON_DECODER=m +CONFIG_RC_DEVICES=y +CONFIG_RC_ATI_REMOTE=m +CONFIG_IR_ENE=m +# CONFIG_IR_HIX5HD2 is not set +CONFIG_IR_IMON=m +CONFIG_IR_IMON_RAW=m +CONFIG_IR_MCEUSB=m +# CONFIG_IR_ITE_CIR is not set +# CONFIG_IR_FINTEK is not set +# CONFIG_IR_MESON is not set +# CONFIG_IR_NUVOTON is not set +CONFIG_IR_REDRAT3=m +# CONFIG_IR_SPI is not set +CONFIG_IR_STREAMZAP=m +CONFIG_IR_IGORPLUGUSB=m +CONFIG_IR_IGUANA=m +CONFIG_IR_TTUSBIR=m +CONFIG_RC_LOOPBACK=m +# CONFIG_IR_GPIO_CIR is not set +# CONFIG_IR_GPIO_TX is not set +# CONFIG_IR_PWM_TX is not set +# CONFIG_IR_SUNXI is not set +# CONFIG_IR_SERIAL is not set +# CONFIG_IR_SIR is not set +CONFIG_MEDIA_SUPPORT=m + +# +# Multimedia core support +# +CONFIG_MEDIA_CAMERA_SUPPORT=y +CONFIG_MEDIA_ANALOG_TV_SUPPORT=y +CONFIG_MEDIA_DIGITAL_TV_SUPPORT=y +CONFIG_MEDIA_RADIO_SUPPORT=y +CONFIG_MEDIA_SDR_SUPPORT=y +CONFIG_MEDIA_CEC_SUPPORT=y +# CONFIG_MEDIA_CEC_RC is not set +CONFIG_MEDIA_CONTROLLER=y +# CONFIG_MEDIA_CONTROLLER_DVB is not set +CONFIG_VIDEO_DEV=m +# CONFIG_VIDEO_V4L2_SUBDEV_API is not set +CONFIG_VIDEO_V4L2=m +# CONFIG_VIDEO_ADV_DEBUG is not set +# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set +# CONFIG_VIDEO_PCI_SKELETON is not set +CONFIG_VIDEO_TUNER=m +CONFIG_V4L2_MEM2MEM_DEV=m +CONFIG_V4L2_FWNODE=m +CONFIG_VIDEOBUF_GEN=m +CONFIG_VIDEOBUF_DMA_SG=m +CONFIG_VIDEOBUF_VMALLOC=m +CONFIG_VIDEOBUF_DVB=m +CONFIG_DVB_CORE=m +# CONFIG_DVB_MMAP is not set +CONFIG_DVB_NET=y +CONFIG_TTPCI_EEPROM=m +CONFIG_DVB_MAX_ADAPTERS=16 +CONFIG_DVB_DYNAMIC_MINORS=y +# CONFIG_DVB_DEMUX_SECTION_LOSS_LOG is not set +# CONFIG_DVB_ULE_DEBUG is not set + +# +# Media drivers +# +CONFIG_MEDIA_USB_SUPPORT=y + +# +# Webcam devices +# +CONFIG_USB_VIDEO_CLASS=m +CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y +CONFIG_USB_GSPCA=m +CONFIG_USB_M5602=m +CONFIG_USB_STV06XX=m +CONFIG_USB_GL860=m +CONFIG_USB_GSPCA_BENQ=m +CONFIG_USB_GSPCA_CONEX=m +CONFIG_USB_GSPCA_CPIA1=m +CONFIG_USB_GSPCA_DTCS033=m +CONFIG_USB_GSPCA_ETOMS=m +CONFIG_USB_GSPCA_FINEPIX=m +CONFIG_USB_GSPCA_JEILINJ=m +CONFIG_USB_GSPCA_JL2005BCD=m +CONFIG_USB_GSPCA_KINECT=m +CONFIG_USB_GSPCA_KONICA=m +CONFIG_USB_GSPCA_MARS=m +CONFIG_USB_GSPCA_MR97310A=m +CONFIG_USB_GSPCA_NW80X=m +CONFIG_USB_GSPCA_OV519=m +CONFIG_USB_GSPCA_OV534=m +CONFIG_USB_GSPCA_OV534_9=m +CONFIG_USB_GSPCA_PAC207=m +CONFIG_USB_GSPCA_PAC7302=m +CONFIG_USB_GSPCA_PAC7311=m +CONFIG_USB_GSPCA_SE401=m +CONFIG_USB_GSPCA_SN9C2028=m +CONFIG_USB_GSPCA_SN9C20X=m +CONFIG_USB_GSPCA_SONIXB=m +CONFIG_USB_GSPCA_SONIXJ=m +CONFIG_USB_GSPCA_SPCA500=m +CONFIG_USB_GSPCA_SPCA501=m +CONFIG_USB_GSPCA_SPCA505=m +CONFIG_USB_GSPCA_SPCA506=m +CONFIG_USB_GSPCA_SPCA508=m +CONFIG_USB_GSPCA_SPCA561=m +CONFIG_USB_GSPCA_SPCA1528=m +CONFIG_USB_GSPCA_SQ905=m +CONFIG_USB_GSPCA_SQ905C=m +CONFIG_USB_GSPCA_SQ930X=m +CONFIG_USB_GSPCA_STK014=m +CONFIG_USB_GSPCA_STK1135=m +CONFIG_USB_GSPCA_STV0680=m +CONFIG_USB_GSPCA_SUNPLUS=m +CONFIG_USB_GSPCA_T613=m +CONFIG_USB_GSPCA_TOPRO=m +CONFIG_USB_GSPCA_TOUPTEK=m +CONFIG_USB_GSPCA_TV8532=m +CONFIG_USB_GSPCA_VC032X=m +CONFIG_USB_GSPCA_VICAM=m +CONFIG_USB_GSPCA_XIRLINK_CIT=m +CONFIG_USB_GSPCA_ZC3XX=m +CONFIG_USB_PWC=m +# CONFIG_USB_PWC_DEBUG is not set +CONFIG_USB_PWC_INPUT_EVDEV=y +CONFIG_VIDEO_CPIA2=m +CONFIG_USB_ZR364XX=m +CONFIG_USB_STKWEBCAM=m +CONFIG_USB_S2255=m +CONFIG_VIDEO_USBTV=m + +# +# Analog TV USB devices +# +CONFIG_VIDEO_PVRUSB2=m +CONFIG_VIDEO_PVRUSB2_SYSFS=y +CONFIG_VIDEO_PVRUSB2_DVB=y +# CONFIG_VIDEO_PVRUSB2_DEBUGIFC is not set +CONFIG_VIDEO_HDPVR=m +CONFIG_VIDEO_USBVISION=m +CONFIG_VIDEO_STK1160_COMMON=m +CONFIG_VIDEO_STK1160=m +CONFIG_VIDEO_GO7007=m +CONFIG_VIDEO_GO7007_USB=m +CONFIG_VIDEO_GO7007_LOADER=m +CONFIG_VIDEO_GO7007_USB_S2250_BOARD=m + +# +# Analog/digital TV USB devices +# +CONFIG_VIDEO_AU0828=m +CONFIG_VIDEO_AU0828_V4L2=y +CONFIG_VIDEO_AU0828_RC=y +CONFIG_VIDEO_CX231XX=m +CONFIG_VIDEO_CX231XX_RC=y +CONFIG_VIDEO_CX231XX_ALSA=m +CONFIG_VIDEO_CX231XX_DVB=m +# CONFIG_VIDEO_TM6000 is not set + +# +# Digital TV USB devices +# +CONFIG_DVB_USB=m +# CONFIG_DVB_USB_DEBUG is not set +CONFIG_DVB_USB_DIB3000MC=m +CONFIG_DVB_USB_A800=m +CONFIG_DVB_USB_DIBUSB_MB=m +CONFIG_DVB_USB_DIBUSB_MB_FAULTY=y +CONFIG_DVB_USB_DIBUSB_MC=m +CONFIG_DVB_USB_DIB0700=m +CONFIG_DVB_USB_UMT_010=m +CONFIG_DVB_USB_CXUSB=m +CONFIG_DVB_USB_M920X=m +CONFIG_DVB_USB_DIGITV=m +CONFIG_DVB_USB_VP7045=m +CONFIG_DVB_USB_VP702X=m +CONFIG_DVB_USB_GP8PSK=m +CONFIG_DVB_USB_NOVA_T_USB2=m +CONFIG_DVB_USB_TTUSB2=m +CONFIG_DVB_USB_DTT200U=m +CONFIG_DVB_USB_OPERA1=m +CONFIG_DVB_USB_AF9005=m +CONFIG_DVB_USB_AF9005_REMOTE=m +CONFIG_DVB_USB_PCTV452E=m +CONFIG_DVB_USB_DW2102=m +CONFIG_DVB_USB_CINERGY_T2=m +CONFIG_DVB_USB_DTV5100=m +CONFIG_DVB_USB_FRIIO=m +CONFIG_DVB_USB_AZ6027=m +CONFIG_DVB_USB_TECHNISAT_USB2=m +CONFIG_DVB_USB_V2=m +CONFIG_DVB_USB_AF9015=m +CONFIG_DVB_USB_AF9035=m +CONFIG_DVB_USB_ANYSEE=m +CONFIG_DVB_USB_AU6610=m +CONFIG_DVB_USB_AZ6007=m +CONFIG_DVB_USB_CE6230=m +CONFIG_DVB_USB_EC168=m +CONFIG_DVB_USB_GL861=m +CONFIG_DVB_USB_LME2510=m +CONFIG_DVB_USB_MXL111SF=m +CONFIG_DVB_USB_RTL28XXU=m +CONFIG_DVB_USB_DVBSKY=m +# CONFIG_DVB_USB_ZD1301 is not set +CONFIG_DVB_TTUSB_BUDGET=m +CONFIG_DVB_TTUSB_DEC=m +CONFIG_SMS_USB_DRV=m +CONFIG_DVB_B2C2_FLEXCOP_USB=m +# CONFIG_DVB_B2C2_FLEXCOP_USB_DEBUG is not set +CONFIG_DVB_AS102=m + +# +# Webcam, TV (analog/digital) USB devices +# +CONFIG_VIDEO_EM28XX=m +CONFIG_VIDEO_EM28XX_V4L2=m +CONFIG_VIDEO_EM28XX_ALSA=m +CONFIG_VIDEO_EM28XX_DVB=m +CONFIG_VIDEO_EM28XX_RC=m + +# +# Software defined radio USB devices +# +CONFIG_USB_AIRSPY=m +CONFIG_USB_HACKRF=m +CONFIG_USB_MSI2500=m + +# +# USB HDMI CEC adapters +# +CONFIG_USB_PULSE8_CEC=m +CONFIG_USB_RAINSHADOW_CEC=m +CONFIG_MEDIA_PCI_SUPPORT=y + +# +# Media capture support +# +CONFIG_VIDEO_SOLO6X10=m +CONFIG_VIDEO_TW5864=m +CONFIG_VIDEO_TW68=m +CONFIG_VIDEO_TW686X=m + +# +# Media capture/analog TV support +# +CONFIG_VIDEO_IVTV=m +# CONFIG_VIDEO_IVTV_DEPRECATED_IOCTLS is not set +CONFIG_VIDEO_IVTV_ALSA=m +CONFIG_VIDEO_FB_IVTV=m +CONFIG_VIDEO_HEXIUM_GEMINI=m +CONFIG_VIDEO_HEXIUM_ORION=m +CONFIG_VIDEO_MXB=m +CONFIG_VIDEO_DT3155=m + +# +# Media capture/analog/hybrid TV support +# +CONFIG_VIDEO_CX18=m +CONFIG_VIDEO_CX18_ALSA=m +CONFIG_VIDEO_CX23885=m +CONFIG_MEDIA_ALTERA_CI=m +# CONFIG_VIDEO_CX25821 is not set +CONFIG_VIDEO_CX88=m +CONFIG_VIDEO_CX88_ALSA=m +CONFIG_VIDEO_CX88_BLACKBIRD=m +CONFIG_VIDEO_CX88_DVB=m +CONFIG_VIDEO_CX88_ENABLE_VP3054=y +CONFIG_VIDEO_CX88_VP3054=m +CONFIG_VIDEO_CX88_MPEG=m +CONFIG_VIDEO_BT848=m +CONFIG_DVB_BT8XX=m +CONFIG_VIDEO_SAA7134=m +CONFIG_VIDEO_SAA7134_ALSA=m +CONFIG_VIDEO_SAA7134_RC=y +CONFIG_VIDEO_SAA7134_DVB=m +# CONFIG_VIDEO_SAA7134_GO7007 is not set +CONFIG_VIDEO_SAA7164=m + +# +# Media digital TV PCI Adapters +# +CONFIG_DVB_AV7110_IR=y +CONFIG_DVB_AV7110=m +CONFIG_DVB_AV7110_OSD=y +CONFIG_DVB_BUDGET_CORE=m +CONFIG_DVB_BUDGET=m +CONFIG_DVB_BUDGET_CI=m +CONFIG_DVB_BUDGET_AV=m +CONFIG_DVB_BUDGET_PATCH=m +CONFIG_DVB_B2C2_FLEXCOP_PCI=m +# CONFIG_DVB_B2C2_FLEXCOP_PCI_DEBUG is not set +CONFIG_DVB_PLUTO2=m +CONFIG_DVB_DM1105=m +CONFIG_DVB_PT1=m +CONFIG_DVB_PT3=m +CONFIG_MANTIS_CORE=m +CONFIG_DVB_MANTIS=m +CONFIG_DVB_HOPPER=m +CONFIG_DVB_NGENE=m +CONFIG_DVB_DDBRIDGE=m +# CONFIG_DVB_DDBRIDGE_MSIENABLE is not set +CONFIG_DVB_SMIPCIE=m +CONFIG_DVB_NETUP_UNIDVB=m +CONFIG_V4L_PLATFORM_DRIVERS=y +CONFIG_VIDEO_CAFE_CCIC=m +# CONFIG_SOC_CAMERA is not set +CONFIG_V4L_MEM2MEM_DRIVERS=y +# CONFIG_VIDEO_MEM2MEM_DEINTERLACE is not set +# CONFIG_VIDEO_SH_VEU is not set +# CONFIG_VIDEO_ROCKCHIP_RGA is not set +CONFIG_VIDEO_QCOM_VENUS=m +CONFIG_V4L_TEST_DRIVERS=y +CONFIG_VIDEO_VIVID=m +CONFIG_VIDEO_VIVID_CEC=y +CONFIG_VIDEO_VIVID_MAX_DEVS=64 +# CONFIG_VIDEO_VIM2M is not set +# CONFIG_DVB_PLATFORM_DRIVERS is not set +# CONFIG_CEC_PLATFORM_DRIVERS is not set +# CONFIG_SDR_PLATFORM_DRIVERS is not set + +# +# Supported MMC/SDIO adapters +# +CONFIG_SMS_SDIO_DRV=m +CONFIG_RADIO_ADAPTERS=y +CONFIG_RADIO_TEA575X=m +CONFIG_RADIO_SI470X=y +CONFIG_USB_SI470X=m +# CONFIG_I2C_SI470X is not set +# CONFIG_RADIO_SI4713 is not set +CONFIG_USB_MR800=m +# CONFIG_USB_DSBR is not set +# CONFIG_RADIO_MAXIRADIO is not set +CONFIG_RADIO_SHARK=m +CONFIG_RADIO_SHARK2=m +CONFIG_USB_KEENE=m +CONFIG_USB_RAREMONO=m +CONFIG_USB_MA901=m +# CONFIG_RADIO_TEA5764 is not set +# CONFIG_RADIO_SAA7706H is not set +# CONFIG_RADIO_TEF6862 is not set +# CONFIG_RADIO_WL1273 is not set + +# +# Texas Instruments WL128x FM driver (ST based) +# +# CONFIG_RADIO_WL128X is not set + +# +# Supported FireWire (IEEE 1394) Adapters +# +CONFIG_DVB_FIREDTV=m +CONFIG_DVB_FIREDTV_INPUT=y +CONFIG_MEDIA_COMMON_OPTIONS=y + +# +# common driver options +# +CONFIG_VIDEO_CX2341X=m +CONFIG_VIDEO_TVEEPROM=m +CONFIG_CYPRESS_FIRMWARE=m +CONFIG_VIDEOBUF2_CORE=m +CONFIG_VIDEOBUF2_V4L2=m +CONFIG_VIDEOBUF2_MEMOPS=m +CONFIG_VIDEOBUF2_DMA_CONTIG=m +CONFIG_VIDEOBUF2_VMALLOC=m +CONFIG_VIDEOBUF2_DMA_SG=m +CONFIG_VIDEOBUF2_DVB=m +CONFIG_DVB_B2C2_FLEXCOP=m +CONFIG_VIDEO_SAA7146=m +CONFIG_VIDEO_SAA7146_VV=m +CONFIG_SMS_SIANO_MDTV=m +CONFIG_SMS_SIANO_RC=y +# CONFIG_SMS_SIANO_DEBUGFS is not set +CONFIG_VIDEO_V4L2_TPG=m + +# +# Media ancillary drivers (tuners, sensors, i2c, spi, frontends) +# +CONFIG_MEDIA_SUBDRV_AUTOSELECT=y +CONFIG_MEDIA_ATTACH=y +CONFIG_VIDEO_IR_I2C=m + +# +# Audio decoders, processors and mixers +# +CONFIG_VIDEO_TVAUDIO=m +CONFIG_VIDEO_TDA7432=m +CONFIG_VIDEO_TDA9840=m +CONFIG_VIDEO_TEA6415C=m +CONFIG_VIDEO_TEA6420=m +CONFIG_VIDEO_MSP3400=m +CONFIG_VIDEO_CS3308=m +CONFIG_VIDEO_CS5345=m +CONFIG_VIDEO_CS53L32A=m +CONFIG_VIDEO_UDA1342=m +CONFIG_VIDEO_WM8775=m +CONFIG_VIDEO_WM8739=m +CONFIG_VIDEO_VP27SMPX=m +CONFIG_VIDEO_SONY_BTF_MPX=m + +# +# RDS decoders +# +CONFIG_VIDEO_SAA6588=m + +# +# Video decoders +# +CONFIG_VIDEO_SAA711X=m +CONFIG_VIDEO_TVP5150=m +CONFIG_VIDEO_TW2804=m +CONFIG_VIDEO_TW9903=m +CONFIG_VIDEO_TW9906=m + +# +# Video and audio decoders +# +CONFIG_VIDEO_SAA717X=m +CONFIG_VIDEO_CX25840=m + +# +# Video encoders +# +CONFIG_VIDEO_SAA7127=m + +# +# Camera sensor devices +# +CONFIG_VIDEO_OV2640=m +CONFIG_VIDEO_OV7640=m +CONFIG_VIDEO_OV7670=m +CONFIG_VIDEO_MT9V011=m + +# +# Flash devices +# + +# +# Video improvement chips +# +CONFIG_VIDEO_UPD64031A=m +CONFIG_VIDEO_UPD64083=m + +# +# Audio/Video compression chips +# +CONFIG_VIDEO_SAA6752HS=m + +# +# SDR tuner chips +# + +# +# Miscellaneous helper chips +# +CONFIG_VIDEO_M52790=m + +# +# Sensors used on soc_camera driver +# + +# +# Media SPI Adapters +# +CONFIG_CXD2880_SPI_DRV=m +CONFIG_MEDIA_TUNER=m +CONFIG_MEDIA_TUNER_SIMPLE=m +CONFIG_MEDIA_TUNER_TDA18250=m +CONFIG_MEDIA_TUNER_TDA8290=m +CONFIG_MEDIA_TUNER_TDA827X=m +CONFIG_MEDIA_TUNER_TDA18271=m +CONFIG_MEDIA_TUNER_TDA9887=m +CONFIG_MEDIA_TUNER_TEA5761=m +CONFIG_MEDIA_TUNER_TEA5767=m +CONFIG_MEDIA_TUNER_MSI001=m +CONFIG_MEDIA_TUNER_MT20XX=m +CONFIG_MEDIA_TUNER_MT2060=m +CONFIG_MEDIA_TUNER_MT2063=m +CONFIG_MEDIA_TUNER_MT2266=m +CONFIG_MEDIA_TUNER_MT2131=m +CONFIG_MEDIA_TUNER_QT1010=m +CONFIG_MEDIA_TUNER_XC2028=m +CONFIG_MEDIA_TUNER_XC5000=m +CONFIG_MEDIA_TUNER_XC4000=m +CONFIG_MEDIA_TUNER_MXL5005S=m +CONFIG_MEDIA_TUNER_MXL5007T=m +CONFIG_MEDIA_TUNER_MC44S803=m +CONFIG_MEDIA_TUNER_MAX2165=m +CONFIG_MEDIA_TUNER_TDA18218=m +CONFIG_MEDIA_TUNER_FC0011=m +CONFIG_MEDIA_TUNER_FC0012=m +CONFIG_MEDIA_TUNER_FC0013=m +CONFIG_MEDIA_TUNER_TDA18212=m +CONFIG_MEDIA_TUNER_E4000=m +CONFIG_MEDIA_TUNER_FC2580=m +CONFIG_MEDIA_TUNER_M88RS6000T=m +CONFIG_MEDIA_TUNER_TUA9001=m +CONFIG_MEDIA_TUNER_SI2157=m +CONFIG_MEDIA_TUNER_IT913X=m +CONFIG_MEDIA_TUNER_R820T=m +CONFIG_MEDIA_TUNER_MXL301RF=m +CONFIG_MEDIA_TUNER_QM1D1C0042=m + +# +# Multistandard (satellite) frontends +# +CONFIG_DVB_STB0899=m +CONFIG_DVB_STB6100=m +CONFIG_DVB_STV090x=m +CONFIG_DVB_STV0910=m +CONFIG_DVB_STV6110x=m +CONFIG_DVB_STV6111=m +CONFIG_DVB_MXL5XX=m +CONFIG_DVB_M88DS3103=m + +# +# Multistandard (cable + terrestrial) frontends +# +CONFIG_DVB_DRXK=m +CONFIG_DVB_TDA18271C2DD=m +CONFIG_DVB_SI2165=m +CONFIG_DVB_MN88472=m +CONFIG_DVB_MN88473=m + +# +# DVB-S (satellite) frontends +# +CONFIG_DVB_CX24110=m +CONFIG_DVB_CX24123=m +CONFIG_DVB_MT312=m +CONFIG_DVB_ZL10036=m +CONFIG_DVB_ZL10039=m +CONFIG_DVB_S5H1420=m +CONFIG_DVB_STV0288=m +CONFIG_DVB_STB6000=m +CONFIG_DVB_STV0299=m +CONFIG_DVB_STV6110=m +CONFIG_DVB_STV0900=m +CONFIG_DVB_TDA8083=m +CONFIG_DVB_TDA10086=m +CONFIG_DVB_TDA8261=m +CONFIG_DVB_VES1X93=m +CONFIG_DVB_TUNER_ITD1000=m +CONFIG_DVB_TUNER_CX24113=m +CONFIG_DVB_TDA826X=m +CONFIG_DVB_TUA6100=m +CONFIG_DVB_CX24116=m +CONFIG_DVB_CX24117=m +CONFIG_DVB_CX24120=m +CONFIG_DVB_SI21XX=m +CONFIG_DVB_TS2020=m +CONFIG_DVB_DS3000=m +CONFIG_DVB_MB86A16=m +CONFIG_DVB_TDA10071=m + +# +# DVB-T (terrestrial) frontends +# +CONFIG_DVB_SP8870=m +CONFIG_DVB_SP887X=m +CONFIG_DVB_CX22700=m +CONFIG_DVB_CX22702=m +CONFIG_DVB_DRXD=m +CONFIG_DVB_L64781=m +CONFIG_DVB_TDA1004X=m +CONFIG_DVB_NXT6000=m +CONFIG_DVB_MT352=m +CONFIG_DVB_ZL10353=m +CONFIG_DVB_DIB3000MB=m +CONFIG_DVB_DIB3000MC=m +CONFIG_DVB_DIB7000M=m +CONFIG_DVB_DIB7000P=m +CONFIG_DVB_TDA10048=m +CONFIG_DVB_AF9013=m +CONFIG_DVB_EC100=m +CONFIG_DVB_STV0367=m +CONFIG_DVB_CXD2820R=m +CONFIG_DVB_CXD2841ER=m +CONFIG_DVB_RTL2830=m +CONFIG_DVB_RTL2832=m +CONFIG_DVB_RTL2832_SDR=m +CONFIG_DVB_SI2168=m +CONFIG_DVB_AS102_FE=m +CONFIG_DVB_GP8PSK_FE=m + +# +# DVB-C (cable) frontends +# +CONFIG_DVB_VES1820=m +CONFIG_DVB_TDA10021=m +CONFIG_DVB_TDA10023=m +CONFIG_DVB_STV0297=m + +# +# ATSC (North American/Korean Terrestrial/Cable DTV) frontends +# +CONFIG_DVB_NXT200X=m +CONFIG_DVB_OR51211=m +CONFIG_DVB_OR51132=m +CONFIG_DVB_BCM3510=m +CONFIG_DVB_LGDT330X=m +CONFIG_DVB_LGDT3305=m +CONFIG_DVB_LGDT3306A=m +CONFIG_DVB_LG2160=m +CONFIG_DVB_S5H1409=m +CONFIG_DVB_AU8522=m +CONFIG_DVB_AU8522_DTV=m +CONFIG_DVB_AU8522_V4L=m +CONFIG_DVB_S5H1411=m + +# +# ISDB-T (terrestrial) frontends +# +CONFIG_DVB_S921=m +CONFIG_DVB_DIB8000=m +CONFIG_DVB_MB86A20S=m + +# +# ISDB-S (satellite) & ISDB-T (terrestrial) frontends +# +CONFIG_DVB_TC90522=m + +# +# Digital terrestrial only tuners/PLL +# +CONFIG_DVB_PLL=m +CONFIG_DVB_TUNER_DIB0070=m +CONFIG_DVB_TUNER_DIB0090=m + +# +# SEC control devices for DVB-S +# +CONFIG_DVB_DRX39XYJ=m +CONFIG_DVB_LNBH25=m +CONFIG_DVB_LNBP21=m +CONFIG_DVB_LNBP22=m +CONFIG_DVB_ISL6405=m +CONFIG_DVB_ISL6421=m +CONFIG_DVB_ISL6423=m +CONFIG_DVB_A8293=m +CONFIG_DVB_LGS8GXX=m +CONFIG_DVB_ATBM8830=m +CONFIG_DVB_TDA665x=m +CONFIG_DVB_IX2505V=m +CONFIG_DVB_M88RS2000=m +CONFIG_DVB_AF9033=m +CONFIG_DVB_HORUS3A=m +CONFIG_DVB_ASCOT2E=m +CONFIG_DVB_HELENE=m + +# +# Common Interface (EN50221) controller drivers +# +CONFIG_DVB_CXD2099=m +CONFIG_DVB_SP2=m + +# +# Tools to develop new frontends +# + +# +# Graphics support +# +CONFIG_VGA_ARB=y +CONFIG_VGA_ARB_MAX_GPUS=16 +CONFIG_TEGRA_HOST1X=m +CONFIG_TEGRA_HOST1X_FIREWALL=y +CONFIG_DRM=m +CONFIG_DRM_MIPI_DSI=y +CONFIG_DRM_DP_AUX_CHARDEV=y +# CONFIG_DRM_DEBUG_MM_SELFTEST is not set +CONFIG_DRM_KMS_HELPER=m +CONFIG_DRM_KMS_FB_HELPER=y +CONFIG_DRM_FBDEV_EMULATION=y +CONFIG_DRM_FBDEV_OVERALLOC=100 +CONFIG_DRM_LOAD_EDID_FIRMWARE=y +CONFIG_DRM_TTM=m +CONFIG_DRM_GEM_CMA_HELPER=y +CONFIG_DRM_KMS_CMA_HELPER=y +CONFIG_DRM_VM=y +CONFIG_DRM_SCHED=m + +# +# I2C encoder or helper chips +# +# CONFIG_DRM_I2C_CH7006 is not set +# CONFIG_DRM_I2C_SIL164 is not set +# CONFIG_DRM_I2C_NXP_TDA998X is not set +CONFIG_DRM_ARM=y +CONFIG_DRM_HDLCD=m +# CONFIG_DRM_HDLCD_SHOW_UNDERRUN is not set +CONFIG_DRM_MALI_DISPLAY=m +CONFIG_DRM_RADEON=m +# CONFIG_DRM_RADEON_USERPTR is not set +CONFIG_DRM_AMDGPU=m +CONFIG_DRM_AMDGPU_SI=y +CONFIG_DRM_AMDGPU_CIK=y +CONFIG_DRM_AMDGPU_USERPTR=y +# CONFIG_DRM_AMDGPU_GART_DEBUGFS is not set + +# +# ACP (Audio CoProcessor) Configuration +# +# CONFIG_DRM_AMD_ACP is not set + +# +# Display Engine Configuration +# +CONFIG_DRM_AMD_DC=y +# CONFIG_DRM_AMD_DC_PRE_VEGA is not set +# CONFIG_DRM_AMD_DC_FBC is not set +# CONFIG_DEBUG_KERNEL_DC is not set + +# +# AMD Library routines +# +CONFIG_CHASH=m +# CONFIG_CHASH_STATS is not set +# CONFIG_CHASH_SELFTEST is not set +CONFIG_DRM_NOUVEAU=m +CONFIG_NOUVEAU_PLATFORM_DRIVER=y +CONFIG_NOUVEAU_DEBUG=5 +CONFIG_NOUVEAU_DEBUG_DEFAULT=3 +# CONFIG_NOUVEAU_DEBUG_MMU is not set +CONFIG_DRM_NOUVEAU_BACKLIGHT=y +CONFIG_DRM_VGEM=m +CONFIG_DRM_UDL=m +CONFIG_DRM_AST=m +# CONFIG_DRM_MGAG200 is not set +CONFIG_DRM_CIRRUS_QEMU=m +# CONFIG_DRM_RCAR_DW_HDMI is not set +# CONFIG_DRM_RCAR_LVDS is not set +# CONFIG_DRM_SUN4I is not set +CONFIG_DRM_QXL=m +CONFIG_DRM_BOCHS=m +CONFIG_DRM_VIRTIO_GPU=m +CONFIG_DRM_MSM=m +# CONFIG_DRM_MSM_REGISTER_LOGGING is not set +# CONFIG_DRM_MSM_GPU_SUDO is not set +CONFIG_DRM_MSM_HDMI_HDCP=y +CONFIG_DRM_MSM_DSI=y +CONFIG_DRM_MSM_DSI_PLL=y +CONFIG_DRM_MSM_DSI_28NM_PHY=y +CONFIG_DRM_MSM_DSI_20NM_PHY=y +CONFIG_DRM_MSM_DSI_28NM_8960_PHY=y +CONFIG_DRM_MSM_DSI_14NM_PHY=y +CONFIG_DRM_MSM_DSI_10NM_PHY=y +CONFIG_DRM_TEGRA=m +# CONFIG_DRM_TEGRA_DEBUG is not set +CONFIG_DRM_TEGRA_STAGING=y +CONFIG_DRM_PANEL=y + +# +# Display Panels +# +CONFIG_DRM_PANEL_ARM_VERSATILE=m +# CONFIG_DRM_PANEL_LVDS is not set +CONFIG_DRM_PANEL_SIMPLE=m +# CONFIG_DRM_PANEL_ILITEK_IL9322 is not set +# CONFIG_DRM_PANEL_INNOLUX_P079ZCA is not set +# CONFIG_DRM_PANEL_JDI_LT070ME05000 is not set +# CONFIG_DRM_PANEL_SAMSUNG_LD9040 is not set +# CONFIG_DRM_PANEL_LG_LG4573 is not set +# CONFIG_DRM_PANEL_ORISETECH_OTM8009A is not set +# CONFIG_DRM_PANEL_PANASONIC_VVX10F034N00 is not set +# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set +# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E63J0X03 is not set +# CONFIG_DRM_PANEL_SAMSUNG_S6E8AA0 is not set +# CONFIG_DRM_PANEL_SEIKO_43WVF1G is not set +# CONFIG_DRM_PANEL_SHARP_LQ101R1SX01 is not set +# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set +# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set +CONFIG_DRM_BRIDGE=y +CONFIG_DRM_PANEL_BRIDGE=y + +# +# Display Interface Bridges +# +# CONFIG_DRM_ANALOGIX_ANX78XX is not set +# CONFIG_DRM_DUMB_VGA_DAC is not set +# CONFIG_DRM_LVDS_ENCODER is not set +# CONFIG_DRM_MEGACHIPS_STDPXXXX_GE_B850V3_FW is not set +# CONFIG_DRM_NXP_PTN3460 is not set +# CONFIG_DRM_PARADE_PS8622 is not set +# CONFIG_DRM_SIL_SII8620 is not set +# CONFIG_DRM_SII902X is not set +# CONFIG_DRM_SII9234 is not set +# CONFIG_DRM_TOSHIBA_TC358767 is not set +# CONFIG_DRM_TI_TFP410 is not set +CONFIG_DRM_I2C_ADV7511=m +CONFIG_DRM_I2C_ADV7511_AUDIO=y +CONFIG_DRM_I2C_ADV7533=y +CONFIG_DRM_I2C_ADV7511_CEC=y +CONFIG_DRM_DW_HDMI=m +# CONFIG_DRM_DW_HDMI_AHB_AUDIO is not set +# CONFIG_DRM_DW_HDMI_I2S_AUDIO is not set +# CONFIG_DRM_DW_HDMI_CEC is not set +CONFIG_DRM_VC4=m +# CONFIG_DRM_VC4_HDMI_CEC is not set +# CONFIG_DRM_ARCPGU is not set +CONFIG_DRM_HISI_HIBMC=m +CONFIG_DRM_HISI_KIRIN=m +CONFIG_HISI_KIRIN_DW_DSI=m +# CONFIG_DRM_MXSFB is not set +CONFIG_DRM_MESON=m +CONFIG_DRM_MESON_DW_HDMI=m +# CONFIG_DRM_TINYDRM is not set +# CONFIG_DRM_PL111 is not set +CONFIG_DRM_LEGACY=y +# CONFIG_DRM_TDFX is not set +# CONFIG_DRM_R128 is not set +# CONFIG_DRM_MGA is not set +CONFIG_DRM_VIA=m +CONFIG_DRM_SAVAGE=m +CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y + +# +# Frame buffer Devices +# +CONFIG_FB=y +CONFIG_FIRMWARE_EDID=y +CONFIG_FB_CMDLINE=y +CONFIG_FB_NOTIFY=y +CONFIG_FB_DDC=m +CONFIG_FB_CFB_FILLRECT=y +CONFIG_FB_CFB_COPYAREA=y +CONFIG_FB_CFB_IMAGEBLIT=y +CONFIG_FB_SYS_FILLRECT=y +CONFIG_FB_SYS_COPYAREA=y +CONFIG_FB_SYS_IMAGEBLIT=y +# CONFIG_FB_FOREIGN_ENDIAN is not set +CONFIG_FB_SYS_FOPS=y +CONFIG_FB_DEFERRED_IO=y +CONFIG_FB_SVGALIB=m +CONFIG_FB_BACKLIGHT=y +CONFIG_FB_MODE_HELPERS=y +CONFIG_FB_TILEBLITTING=y + +# +# Frame buffer hardware drivers +# +# CONFIG_FB_CIRRUS is not set +# CONFIG_FB_PM2 is not set +CONFIG_FB_ARMCLCD=y +# CONFIG_FB_CYBER2000 is not set +# CONFIG_FB_ASILIANT is not set +# CONFIG_FB_IMSTT is not set +# CONFIG_FB_UVESA is not set +CONFIG_FB_EFI=y +# CONFIG_FB_OPENCORES is not set +# CONFIG_FB_S1D13XXX is not set +# CONFIG_FB_NVIDIA is not set +# CONFIG_FB_RIVA is not set +# CONFIG_FB_I740 is not set +# CONFIG_FB_MATROX is not set +# CONFIG_FB_RADEON is not set +# CONFIG_FB_ATY128 is not set +# CONFIG_FB_ATY is not set +CONFIG_FB_S3=m +CONFIG_FB_S3_DDC=y +# CONFIG_FB_SAVAGE is not set +# CONFIG_FB_SIS is not set +# CONFIG_FB_NEOMAGIC is not set +# CONFIG_FB_KYRO is not set +CONFIG_FB_3DFX=m +# CONFIG_FB_3DFX_ACCEL is not set +CONFIG_FB_3DFX_I2C=y +# CONFIG_FB_VOODOO1 is not set +CONFIG_FB_VT8623=m +# CONFIG_FB_TRIDENT is not set +CONFIG_FB_ARK=m +CONFIG_FB_PM3=m +# CONFIG_FB_CARMINE is not set +CONFIG_FB_SMSCUFX=m +CONFIG_FB_UDL=m +# CONFIG_FB_IBM_GXT4500 is not set +# CONFIG_FB_VIRTUAL is not set +CONFIG_XEN_FBDEV_FRONTEND=y +# CONFIG_FB_METRONOME is not set +CONFIG_FB_MB862XX=m +CONFIG_FB_MB862XX_PCI_GDC=y +CONFIG_FB_MB862XX_I2C=y +# CONFIG_FB_BROADSHEET is not set +# CONFIG_FB_AUO_K190X is not set +CONFIG_FB_SIMPLE=y +# CONFIG_FB_SSD1307 is not set +# CONFIG_FB_SM712 is not set +CONFIG_BACKLIGHT_LCD_SUPPORT=y +# CONFIG_LCD_CLASS_DEVICE is not set +CONFIG_BACKLIGHT_CLASS_DEVICE=y +CONFIG_BACKLIGHT_GENERIC=m +CONFIG_BACKLIGHT_PWM=m +# CONFIG_BACKLIGHT_PM8941_WLED is not set +# CONFIG_BACKLIGHT_ADP8860 is not set +# CONFIG_BACKLIGHT_ADP8870 is not set +# CONFIG_BACKLIGHT_LM3630A is not set +# CONFIG_BACKLIGHT_LM3639 is not set +CONFIG_BACKLIGHT_LP855X=m +# CONFIG_BACKLIGHT_GPIO is not set +# CONFIG_BACKLIGHT_LV5207LP is not set +# CONFIG_BACKLIGHT_BD6107 is not set +# CONFIG_BACKLIGHT_ARCXCNN is not set +CONFIG_VGASTATE=m +CONFIG_VIDEOMODE_HELPERS=y +CONFIG_HDMI=y + +# +# Console display driver support +# +CONFIG_DUMMY_CONSOLE=y +CONFIG_DUMMY_CONSOLE_COLUMNS=80 +CONFIG_DUMMY_CONSOLE_ROWS=25 +CONFIG_FRAMEBUFFER_CONSOLE=y +CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y +# CONFIG_LOGO is not set +CONFIG_SOUND=m +CONFIG_SOUND_OSS_CORE=y +# CONFIG_SOUND_OSS_CORE_PRECLAIM is not set +CONFIG_SND=m +CONFIG_SND_TIMER=m +CONFIG_SND_PCM=m +CONFIG_SND_PCM_ELD=y +CONFIG_SND_PCM_IEC958=y +CONFIG_SND_DMAENGINE_PCM=m +CONFIG_SND_HWDEP=m +CONFIG_SND_SEQ_DEVICE=m +CONFIG_SND_RAWMIDI=m +CONFIG_SND_JACK=y +CONFIG_SND_JACK_INPUT_DEV=y +CONFIG_SND_OSSEMUL=y +CONFIG_SND_MIXER_OSS=m +CONFIG_SND_PCM_OSS=m +CONFIG_SND_PCM_OSS_PLUGINS=y +CONFIG_SND_PCM_TIMER=y +CONFIG_SND_HRTIMER=m +CONFIG_SND_DYNAMIC_MINORS=y +CONFIG_SND_MAX_CARDS=32 +CONFIG_SND_SUPPORT_OLD_API=y +CONFIG_SND_PROC_FS=y +CONFIG_SND_VERBOSE_PROCFS=y +# CONFIG_SND_VERBOSE_PRINTK is not set +# CONFIG_SND_DEBUG is not set +CONFIG_SND_VMASTER=y +CONFIG_SND_SEQUENCER=m +CONFIG_SND_SEQ_DUMMY=m +# CONFIG_SND_SEQUENCER_OSS is not set +CONFIG_SND_SEQ_HRTIMER_DEFAULT=y +CONFIG_SND_SEQ_MIDI_EVENT=m +CONFIG_SND_SEQ_MIDI=m +CONFIG_SND_SEQ_MIDI_EMUL=m +CONFIG_SND_MPU401_UART=m +CONFIG_SND_OPL3_LIB=m +CONFIG_SND_OPL3_LIB_SEQ=m +CONFIG_SND_AC97_CODEC=m +CONFIG_SND_DRIVERS=y +# CONFIG_SND_DUMMY is not set +CONFIG_SND_ALOOP=m +# CONFIG_SND_VIRMIDI is not set +# CONFIG_SND_MTPAV is not set +CONFIG_SND_MTS64=m +# CONFIG_SND_SERIAL_U16550 is not set +# CONFIG_SND_MPU401 is not set +CONFIG_SND_PORTMAN2X4=m +CONFIG_SND_AC97_POWER_SAVE=y +CONFIG_SND_AC97_POWER_SAVE_DEFAULT=0 +CONFIG_SND_PCI=y +CONFIG_SND_AD1889=m +# CONFIG_SND_ATIIXP is not set +# CONFIG_SND_ATIIXP_MODEM is not set +# CONFIG_SND_AU8810 is not set +# CONFIG_SND_AU8820 is not set +# CONFIG_SND_AU8830 is not set +# CONFIG_SND_AW2 is not set +# CONFIG_SND_BT87X is not set +# CONFIG_SND_CA0106 is not set +# CONFIG_SND_CMIPCI is not set +CONFIG_SND_OXYGEN_LIB=m +CONFIG_SND_OXYGEN=m +# CONFIG_SND_CS4281 is not set +# CONFIG_SND_CS46XX is not set +CONFIG_SND_CTXFI=m +CONFIG_SND_DARLA20=m +CONFIG_SND_GINA20=m +CONFIG_SND_LAYLA20=m +CONFIG_SND_DARLA24=m +CONFIG_SND_GINA24=m +CONFIG_SND_LAYLA24=m +CONFIG_SND_MONA=m +CONFIG_SND_MIA=m +CONFIG_SND_ECHO3G=m +CONFIG_SND_INDIGO=m +CONFIG_SND_INDIGOIO=m +CONFIG_SND_INDIGODJ=m +CONFIG_SND_INDIGOIOX=m +CONFIG_SND_INDIGODJX=m +# CONFIG_SND_ENS1370 is not set +# CONFIG_SND_ENS1371 is not set +# CONFIG_SND_FM801 is not set +# CONFIG_SND_HDSP is not set +CONFIG_SND_HDSPM=m +# CONFIG_SND_ICE1724 is not set +# CONFIG_SND_INTEL8X0 is not set +# CONFIG_SND_INTEL8X0M is not set +# CONFIG_SND_KORG1212 is not set +CONFIG_SND_LOLA=m +CONFIG_SND_LX6464ES=m +# CONFIG_SND_MIXART is not set +# CONFIG_SND_NM256 is not set +CONFIG_SND_PCXHR=m +CONFIG_SND_RIPTIDE=m +# CONFIG_SND_RME32 is not set +# CONFIG_SND_RME96 is not set +# CONFIG_SND_RME9652 is not set +# CONFIG_SND_VIA82XX is not set +# CONFIG_SND_VIA82XX_MODEM is not set +CONFIG_SND_VIRTUOSO=m +# CONFIG_SND_VX222 is not set +# CONFIG_SND_YMFPCI is not set + +# +# HD-Audio +# +CONFIG_SND_HDA=m +CONFIG_SND_HDA_INTEL=m +CONFIG_SND_HDA_TEGRA=m +CONFIG_SND_HDA_HWDEP=y +CONFIG_SND_HDA_RECONFIG=y +CONFIG_SND_HDA_INPUT_BEEP=y +CONFIG_SND_HDA_INPUT_BEEP_MODE=1 +CONFIG_SND_HDA_PATCH_LOADER=y +CONFIG_SND_HDA_CODEC_REALTEK=m +CONFIG_SND_HDA_CODEC_ANALOG=m +CONFIG_SND_HDA_CODEC_SIGMATEL=m +CONFIG_SND_HDA_CODEC_VIA=m +CONFIG_SND_HDA_CODEC_HDMI=m +CONFIG_SND_HDA_CODEC_CIRRUS=m +CONFIG_SND_HDA_CODEC_CONEXANT=m +CONFIG_SND_HDA_CODEC_CA0110=m +CONFIG_SND_HDA_CODEC_CA0132=m +CONFIG_SND_HDA_CODEC_CA0132_DSP=y +CONFIG_SND_HDA_CODEC_CMEDIA=m +CONFIG_SND_HDA_CODEC_SI3054=m +CONFIG_SND_HDA_GENERIC=m +CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0 +CONFIG_SND_HDA_CORE=m +CONFIG_SND_HDA_DSP_LOADER=y +CONFIG_SND_HDA_PREALLOC_SIZE=2048 +CONFIG_SND_SPI=y +CONFIG_SND_USB=y +CONFIG_SND_USB_AUDIO=m +CONFIG_SND_USB_UA101=m +CONFIG_SND_USB_CAIAQ=m +CONFIG_SND_USB_CAIAQ_INPUT=y +CONFIG_SND_USB_6FIRE=m +CONFIG_SND_USB_HIFACE=m +CONFIG_SND_BCD2000=m +CONFIG_SND_USB_LINE6=m +CONFIG_SND_USB_POD=m +CONFIG_SND_USB_PODHD=m +CONFIG_SND_USB_TONEPORT=m +CONFIG_SND_USB_VARIAX=m +CONFIG_SND_FIREWIRE=y +CONFIG_SND_FIREWIRE_LIB=m +CONFIG_SND_DICE=m +CONFIG_SND_OXFW=m +CONFIG_SND_ISIGHT=m +CONFIG_SND_FIREWORKS=m +CONFIG_SND_BEBOB=m +CONFIG_SND_FIREWIRE_DIGI00X=m +CONFIG_SND_FIREWIRE_TASCAM=m +# CONFIG_SND_FIREWIRE_MOTU is not set +# CONFIG_SND_FIREFACE is not set +CONFIG_SND_SOC=m +CONFIG_SND_SOC_GENERIC_DMAENGINE_PCM=y +# CONFIG_SND_SOC_AMD_ACP is not set +# CONFIG_SND_ATMEL_SOC is not set +CONFIG_SND_BCM2835_SOC_I2S=m +# CONFIG_SND_DESIGNWARE_I2S is not set + +# +# SoC Audio for Freescale CPUs +# + +# +# Common SoC Audio options for Freescale CPUs: +# +# CONFIG_SND_SOC_FSL_ASRC is not set +# CONFIG_SND_SOC_FSL_SAI is not set +# CONFIG_SND_SOC_FSL_SSI is not set +# CONFIG_SND_SOC_FSL_SPDIF is not set +# CONFIG_SND_SOC_FSL_ESAI is not set +# CONFIG_SND_SOC_IMX_AUDMUX is not set +CONFIG_SND_I2S_HI6210_I2S=m +# CONFIG_SND_KIRKWOOD_SOC is not set +# CONFIG_SND_SOC_IMG is not set +CONFIG_SND_SOC_QCOM=m +CONFIG_SND_SOC_LPASS_CPU=m +CONFIG_SND_SOC_LPASS_PLATFORM=m +CONFIG_SND_SOC_LPASS_APQ8016=m +# CONFIG_SND_SOC_STORM is not set +CONFIG_SND_SOC_APQ8016_SBC=m +# CONFIG_SND_SOC_ROCKCHIP is not set + +# +# STMicroelectronics STM32 SOC audio support +# + +# +# Allwinner SoC Audio support +# +# CONFIG_SND_SUN4I_CODEC is not set +# CONFIG_SND_SUN8I_CODEC_ANALOG is not set +# CONFIG_SND_SUN4I_I2S is not set +# CONFIG_SND_SUN4I_SPDIF is not set +CONFIG_SND_SOC_TEGRA=m +# CONFIG_SND_SOC_TEGRA20_AC97 is not set +# CONFIG_SND_SOC_TEGRA20_DAS is not set +# CONFIG_SND_SOC_TEGRA20_I2S is not set +CONFIG_SND_SOC_TEGRA20_SPDIF=m +# CONFIG_SND_SOC_TEGRA30_AHUB is not set +# CONFIG_SND_SOC_TEGRA30_I2S is not set +CONFIG_SND_SOC_TEGRA_RT5640=m +CONFIG_SND_SOC_TEGRA_WM8753=m +CONFIG_SND_SOC_TEGRA_WM8903=m +# CONFIG_SND_SOC_TEGRA_WM9712 is not set +CONFIG_SND_SOC_TEGRA_TRIMSLICE=m +CONFIG_SND_SOC_TEGRA_ALC5632=m +CONFIG_SND_SOC_TEGRA_MAX98090=m +CONFIG_SND_SOC_TEGRA_RT5677=m +# CONFIG_SND_SOC_TEGRA_SGTL5000 is not set +# CONFIG_SND_SOC_XTFPGA_I2S is not set +# CONFIG_ZX_TDM is not set +CONFIG_SND_SOC_I2C_AND_SPI=m + +# +# CODEC drivers +# +# CONFIG_SND_SOC_AC97_CODEC is not set +# CONFIG_SND_SOC_ADAU1701 is not set +# CONFIG_SND_SOC_ADAU1761_I2C is not set +# CONFIG_SND_SOC_ADAU1761_SPI is not set +# CONFIG_SND_SOC_ADAU7002 is not set +# CONFIG_SND_SOC_AK4104 is not set +# CONFIG_SND_SOC_AK4458 is not set +# CONFIG_SND_SOC_AK4554 is not set +# CONFIG_SND_SOC_AK4613 is not set +# CONFIG_SND_SOC_AK4642 is not set +# CONFIG_SND_SOC_AK5386 is not set +# CONFIG_SND_SOC_AK5558 is not set +# CONFIG_SND_SOC_ALC5623 is not set +CONFIG_SND_SOC_ALC5632=m +# CONFIG_SND_SOC_BD28623 is not set +# CONFIG_SND_SOC_BT_SCO is not set +# CONFIG_SND_SOC_CS35L32 is not set +# CONFIG_SND_SOC_CS35L33 is not set +# CONFIG_SND_SOC_CS35L34 is not set +# CONFIG_SND_SOC_CS35L35 is not set +# CONFIG_SND_SOC_CS42L42 is not set +# CONFIG_SND_SOC_CS42L51_I2C is not set +# CONFIG_SND_SOC_CS42L52 is not set +# CONFIG_SND_SOC_CS42L56 is not set +# CONFIG_SND_SOC_CS42L73 is not set +# CONFIG_SND_SOC_CS4265 is not set +# CONFIG_SND_SOC_CS4270 is not set +# CONFIG_SND_SOC_CS4271_I2C is not set +# CONFIG_SND_SOC_CS4271_SPI is not set +# CONFIG_SND_SOC_CS42XX8_I2C is not set +# CONFIG_SND_SOC_CS43130 is not set +# CONFIG_SND_SOC_CS4349 is not set +# CONFIG_SND_SOC_CS53L30 is not set +# CONFIG_SND_SOC_DIO2125 is not set +CONFIG_SND_SOC_HDMI_CODEC=m +# CONFIG_SND_SOC_ES7134 is not set +# CONFIG_SND_SOC_ES8316 is not set +# CONFIG_SND_SOC_ES8328_I2C is not set +# CONFIG_SND_SOC_ES8328_SPI is not set +# CONFIG_SND_SOC_GTM601 is not set +# CONFIG_SND_SOC_INNO_RK3036 is not set +CONFIG_SND_SOC_MAX98090=m +# CONFIG_SND_SOC_MAX98504 is not set +# CONFIG_SND_SOC_MAX9867 is not set +# CONFIG_SND_SOC_MAX98927 is not set +# CONFIG_SND_SOC_MAX98373 is not set +# CONFIG_SND_SOC_MAX9860 is not set +# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set +# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set +# CONFIG_SND_SOC_PCM1681 is not set +# CONFIG_SND_SOC_PCM1789_I2C is not set +# CONFIG_SND_SOC_PCM179X_I2C is not set +# CONFIG_SND_SOC_PCM179X_SPI is not set +# CONFIG_SND_SOC_PCM186X_I2C is not set +# CONFIG_SND_SOC_PCM186X_SPI is not set +# CONFIG_SND_SOC_PCM3168A_I2C is not set +# CONFIG_SND_SOC_PCM3168A_SPI is not set +# CONFIG_SND_SOC_PCM512x_I2C is not set +# CONFIG_SND_SOC_PCM512x_SPI is not set +CONFIG_SND_SOC_RL6231=m +# CONFIG_SND_SOC_RT5616 is not set +# CONFIG_SND_SOC_RT5631 is not set +CONFIG_SND_SOC_RT5640=m +CONFIG_SND_SOC_RT5677=m +CONFIG_SND_SOC_RT5677_SPI=m +# CONFIG_SND_SOC_SGTL5000 is not set +# CONFIG_SND_SOC_SIRF_AUDIO_CODEC is not set +# CONFIG_SND_SOC_SPDIF is not set +# CONFIG_SND_SOC_SSM2602_SPI is not set +# CONFIG_SND_SOC_SSM2602_I2C is not set +# CONFIG_SND_SOC_SSM4567 is not set +# CONFIG_SND_SOC_STA32X is not set +# CONFIG_SND_SOC_STA350 is not set +# CONFIG_SND_SOC_STI_SAS is not set +# CONFIG_SND_SOC_TAS2552 is not set +# CONFIG_SND_SOC_TAS5086 is not set +# CONFIG_SND_SOC_TAS571X is not set +# CONFIG_SND_SOC_TAS5720 is not set +# CONFIG_SND_SOC_TAS6424 is not set +# CONFIG_SND_SOC_TDA7419 is not set +# CONFIG_SND_SOC_TFA9879 is not set +CONFIG_SND_SOC_TLV320AIC23=m +CONFIG_SND_SOC_TLV320AIC23_I2C=m +# CONFIG_SND_SOC_TLV320AIC23_SPI is not set +# CONFIG_SND_SOC_TLV320AIC31XX is not set +# CONFIG_SND_SOC_TLV320AIC32X4_I2C is not set +# CONFIG_SND_SOC_TLV320AIC32X4_SPI is not set +# CONFIG_SND_SOC_TLV320AIC3X is not set +# CONFIG_SND_SOC_TS3A227E is not set +# CONFIG_SND_SOC_TSCS42XX is not set +# CONFIG_SND_SOC_WM8510 is not set +# CONFIG_SND_SOC_WM8523 is not set +# CONFIG_SND_SOC_WM8524 is not set +# CONFIG_SND_SOC_WM8580 is not set +# CONFIG_SND_SOC_WM8711 is not set +# CONFIG_SND_SOC_WM8728 is not set +# CONFIG_SND_SOC_WM8731 is not set +# CONFIG_SND_SOC_WM8737 is not set +# CONFIG_SND_SOC_WM8741 is not set +# CONFIG_SND_SOC_WM8750 is not set +CONFIG_SND_SOC_WM8753=m +# CONFIG_SND_SOC_WM8770 is not set +# CONFIG_SND_SOC_WM8776 is not set +# CONFIG_SND_SOC_WM8804_I2C is not set +# CONFIG_SND_SOC_WM8804_SPI is not set +CONFIG_SND_SOC_WM8903=m +# CONFIG_SND_SOC_WM8960 is not set +# CONFIG_SND_SOC_WM8962 is not set +# CONFIG_SND_SOC_WM8974 is not set +# CONFIG_SND_SOC_WM8978 is not set +# CONFIG_SND_SOC_WM8985 is not set +# CONFIG_SND_SOC_ZX_AUD96P22 is not set +# CONFIG_SND_SOC_MAX9759 is not set +# CONFIG_SND_SOC_NAU8540 is not set +# CONFIG_SND_SOC_NAU8810 is not set +# CONFIG_SND_SOC_NAU8824 is not set +# CONFIG_SND_SOC_TPA6130A2 is not set +# CONFIG_SND_SIMPLE_CARD is not set +# CONFIG_SND_SIMPLE_SCU_CARD is not set +# CONFIG_SND_AUDIO_GRAPH_CARD is not set +# CONFIG_SND_AUDIO_GRAPH_SCU_CARD is not set +CONFIG_AC97_BUS=m + +# +# HID support +# +CONFIG_HID=m +CONFIG_HID_BATTERY_STRENGTH=y +CONFIG_HIDRAW=y +CONFIG_UHID=m +CONFIG_HID_GENERIC=m + +# +# Special HID drivers +# +CONFIG_HID_A4TECH=m +# CONFIG_HID_ACCUTOUCH is not set +CONFIG_HID_ACRUX=m +CONFIG_HID_ACRUX_FF=y +CONFIG_HID_APPLE=m +# CONFIG_HID_APPLEIR is not set +CONFIG_HID_ASUS=m +CONFIG_HID_AUREAL=m +CONFIG_HID_BELKIN=m +CONFIG_HID_BETOP_FF=m +CONFIG_HID_CHERRY=m +CONFIG_HID_CHICONY=m +CONFIG_HID_CORSAIR=m +CONFIG_HID_PRODIKEYS=m +CONFIG_HID_CMEDIA=m +CONFIG_HID_CP2112=m +CONFIG_HID_CYPRESS=m +CONFIG_HID_DRAGONRISE=m +CONFIG_DRAGONRISE_FF=y +CONFIG_HID_EMS_FF=m +# CONFIG_HID_ELAN is not set +CONFIG_HID_ELECOM=m +CONFIG_HID_ELO=m +CONFIG_HID_EZKEY=m +CONFIG_HID_GEMBIRD=m +# CONFIG_HID_GFRM is not set +CONFIG_HID_HOLTEK=m +CONFIG_HOLTEK_FF=y +# CONFIG_HID_GOOGLE_HAMMER is not set +# CONFIG_HID_GT683R is not set +CONFIG_HID_KEYTOUCH=m +CONFIG_HID_KYE=m +CONFIG_HID_UCLOGIC=m +CONFIG_HID_WALTOP=m +CONFIG_HID_GYRATION=m +CONFIG_HID_ICADE=m +# CONFIG_HID_ITE is not set +# CONFIG_HID_JABRA is not set +CONFIG_HID_TWINHAN=m +CONFIG_HID_KENSINGTON=m +CONFIG_HID_LCPOWER=m +CONFIG_HID_LED=m +CONFIG_HID_LENOVO=m +CONFIG_HID_LOGITECH=m +CONFIG_HID_LOGITECH_DJ=m +CONFIG_HID_LOGITECH_HIDPP=m +CONFIG_LOGITECH_FF=y +CONFIG_LOGIRUMBLEPAD2_FF=y +CONFIG_LOGIG940_FF=y +CONFIG_LOGIWHEELS_FF=y +CONFIG_HID_MAGICMOUSE=m +# CONFIG_HID_MAYFLASH is not set +CONFIG_HID_MICROSOFT=m +CONFIG_HID_MONTEREY=m +CONFIG_HID_MULTITOUCH=m +# CONFIG_HID_NTI is not set +CONFIG_HID_NTRIG=m +CONFIG_HID_ORTEK=m +CONFIG_HID_PANTHERLORD=m +CONFIG_PANTHERLORD_FF=y +CONFIG_HID_PENMOUNT=m +CONFIG_HID_PETALYNX=m +CONFIG_HID_PICOLCD=m +CONFIG_HID_PICOLCD_FB=y +CONFIG_HID_PICOLCD_BACKLIGHT=y +CONFIG_HID_PICOLCD_LEDS=y +CONFIG_HID_PICOLCD_CIR=y +CONFIG_HID_PLANTRONICS=m +CONFIG_HID_PRIMAX=m +# CONFIG_HID_RETRODE is not set +CONFIG_HID_ROCCAT=m +CONFIG_HID_SAITEK=m +CONFIG_HID_SAMSUNG=m +CONFIG_HID_SONY=m +CONFIG_SONY_FF=y +CONFIG_HID_SPEEDLINK=m +CONFIG_HID_STEELSERIES=m +CONFIG_HID_SUNPLUS=m +CONFIG_HID_RMI=m +CONFIG_HID_GREENASIA=m +CONFIG_GREENASIA_FF=y +CONFIG_HID_SMARTJOYPLUS=m +CONFIG_SMARTJOYPLUS_FF=y +CONFIG_HID_TIVO=m +CONFIG_HID_TOPSEED=m +CONFIG_HID_THINGM=m +CONFIG_HID_THRUSTMASTER=m +CONFIG_THRUSTMASTER_FF=y +# CONFIG_HID_UDRAW_PS3 is not set +CONFIG_HID_WACOM=m +CONFIG_HID_WIIMOTE=m +CONFIG_HID_XINMO=m +CONFIG_HID_ZEROPLUS=m +CONFIG_ZEROPLUS_FF=y +CONFIG_HID_ZYDACRON=m +CONFIG_HID_SENSOR_HUB=m +CONFIG_HID_SENSOR_CUSTOM_SENSOR=m +CONFIG_HID_ALPS=m + +# +# USB HID support +# +CONFIG_USB_HID=m +CONFIG_HID_PID=y +CONFIG_USB_HIDDEV=y + +# +# USB HID Boot Protocol drivers +# +# CONFIG_USB_KBD is not set +# CONFIG_USB_MOUSE is not set + +# +# I2C HID support +# +# CONFIG_I2C_HID is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +CONFIG_USB_SUPPORT=y +CONFIG_USB_COMMON=y +CONFIG_USB_ARCH_HAS_HCD=y +CONFIG_USB=m +CONFIG_USB_PCI=y +CONFIG_USB_ANNOUNCE_NEW_DEVICES=y + +# +# Miscellaneous USB options +# +CONFIG_USB_DEFAULT_PERSIST=y +CONFIG_USB_DYNAMIC_MINORS=y +# CONFIG_USB_OTG is not set +# CONFIG_USB_OTG_WHITELIST is not set +# CONFIG_USB_OTG_BLACKLIST_HUB is not set +CONFIG_USB_LEDS_TRIGGER_USBPORT=m +CONFIG_USB_MON=m +CONFIG_USB_WUSB=m +CONFIG_USB_WUSB_CBAF=m +# CONFIG_USB_WUSB_CBAF_DEBUG is not set + +# +# USB Host Controller Drivers +# +# CONFIG_USB_C67X00_HCD is not set +CONFIG_USB_XHCI_HCD=m +# CONFIG_USB_XHCI_DBGCAP is not set +CONFIG_USB_XHCI_PCI=m +CONFIG_USB_XHCI_PLATFORM=m +# CONFIG_USB_XHCI_MVEBU is not set +CONFIG_USB_XHCI_TEGRA=m +CONFIG_USB_EHCI_HCD=m +CONFIG_USB_EHCI_ROOT_HUB_TT=y +CONFIG_USB_EHCI_TT_NEWSCHED=y +CONFIG_USB_EHCI_PCI=m +CONFIG_USB_EHCI_HCD_ORION=m +CONFIG_USB_EHCI_TEGRA=m +CONFIG_USB_EHCI_HCD_PLATFORM=m +# CONFIG_USB_OXU210HP_HCD is not set +# CONFIG_USB_ISP116X_HCD is not set +# CONFIG_USB_FOTG210_HCD is not set +# CONFIG_USB_MAX3421_HCD is not set +CONFIG_USB_OHCI_HCD=m +CONFIG_USB_OHCI_HCD_PCI=m +# CONFIG_USB_OHCI_HCD_SSB is not set +CONFIG_USB_OHCI_HCD_PLATFORM=m +# CONFIG_USB_UHCI_HCD is not set +CONFIG_USB_U132_HCD=m +# CONFIG_USB_SL811_HCD is not set +# CONFIG_USB_R8A66597_HCD is not set +CONFIG_USB_WHCI_HCD=m +CONFIG_USB_HWA_HCD=m +# CONFIG_USB_HCD_BCMA is not set +# CONFIG_USB_HCD_SSB is not set +# CONFIG_USB_HCD_TEST_MODE is not set + +# +# USB Device Class drivers +# +CONFIG_USB_ACM=m +CONFIG_USB_PRINTER=m +CONFIG_USB_WDM=m +CONFIG_USB_TMC=m + +# +# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may +# + +# +# also be needed; see USB_STORAGE Help for more info +# +CONFIG_USB_STORAGE=m +# CONFIG_USB_STORAGE_DEBUG is not set +CONFIG_USB_STORAGE_REALTEK=m +CONFIG_REALTEK_AUTOPM=y +CONFIG_USB_STORAGE_DATAFAB=m +CONFIG_USB_STORAGE_FREECOM=m +CONFIG_USB_STORAGE_ISD200=m +CONFIG_USB_STORAGE_USBAT=m +CONFIG_USB_STORAGE_SDDR09=m +CONFIG_USB_STORAGE_SDDR55=m +CONFIG_USB_STORAGE_JUMPSHOT=m +CONFIG_USB_STORAGE_ALAUDA=m +CONFIG_USB_STORAGE_ONETOUCH=m +CONFIG_USB_STORAGE_KARMA=m +CONFIG_USB_STORAGE_CYPRESS_ATACB=m +CONFIG_USB_STORAGE_ENE_UB6250=m +CONFIG_USB_UAS=m + +# +# USB Imaging devices +# +CONFIG_USB_MDC800=m +CONFIG_USB_MICROTEK=m +CONFIG_USBIP_CORE=m +CONFIG_USBIP_VHCI_HCD=m +CONFIG_USBIP_VHCI_HC_PORTS=15 +CONFIG_USBIP_VHCI_NR_HCS=8 +CONFIG_USBIP_HOST=m +CONFIG_USBIP_VUDC=m +# CONFIG_USBIP_DEBUG is not set +CONFIG_USB_MUSB_HDRC=m +# CONFIG_USB_MUSB_HOST is not set +# CONFIG_USB_MUSB_GADGET is not set +CONFIG_USB_MUSB_DUAL_ROLE=y + +# +# Platform Glue Layer +# +CONFIG_USB_MUSB_SUNXI=m + +# +# MUSB DMA mode +# +# CONFIG_MUSB_PIO_ONLY is not set +CONFIG_USB_DWC3=m +# CONFIG_USB_DWC3_HOST is not set +# CONFIG_USB_DWC3_GADGET is not set +CONFIG_USB_DWC3_DUAL_ROLE=y + +# +# Platform Glue Driver Support +# +CONFIG_USB_DWC3_PCI=m +CONFIG_USB_DWC3_OF_SIMPLE=m +CONFIG_USB_DWC2=m +# CONFIG_USB_DWC2_HOST is not set + +# +# Gadget/Dual-role mode requires USB Gadget support to be enabled +# +# CONFIG_USB_DWC2_PERIPHERAL is not set +CONFIG_USB_DWC2_DUAL_ROLE=y +# CONFIG_USB_DWC2_PCI is not set +# CONFIG_USB_DWC2_DEBUG is not set +# CONFIG_USB_DWC2_TRACK_MISSED_SOFS is not set +CONFIG_USB_CHIPIDEA=m +CONFIG_USB_CHIPIDEA_OF=m +CONFIG_USB_CHIPIDEA_PCI=m +CONFIG_USB_CHIPIDEA_UDC=y +CONFIG_USB_CHIPIDEA_HOST=y +CONFIG_USB_ISP1760=m +CONFIG_USB_ISP1760_HCD=y +CONFIG_USB_ISP1761_UDC=y +# CONFIG_USB_ISP1760_HOST_ROLE is not set +# CONFIG_USB_ISP1760_GADGET_ROLE is not set +CONFIG_USB_ISP1760_DUAL_ROLE=y + +# +# USB port drivers +# +# CONFIG_USB_USS720 is not set +CONFIG_USB_SERIAL=m +CONFIG_USB_SERIAL_GENERIC=y +CONFIG_USB_SERIAL_SIMPLE=m +CONFIG_USB_SERIAL_AIRCABLE=m +CONFIG_USB_SERIAL_ARK3116=m +CONFIG_USB_SERIAL_BELKIN=m +CONFIG_USB_SERIAL_CH341=m +CONFIG_USB_SERIAL_WHITEHEAT=m +CONFIG_USB_SERIAL_DIGI_ACCELEPORT=m +CONFIG_USB_SERIAL_CP210X=m +CONFIG_USB_SERIAL_CYPRESS_M8=m +CONFIG_USB_SERIAL_EMPEG=m +CONFIG_USB_SERIAL_FTDI_SIO=m +CONFIG_USB_SERIAL_VISOR=m +CONFIG_USB_SERIAL_IPAQ=m +CONFIG_USB_SERIAL_IR=m +CONFIG_USB_SERIAL_EDGEPORT=m +CONFIG_USB_SERIAL_EDGEPORT_TI=m +CONFIG_USB_SERIAL_F81232=m +# CONFIG_USB_SERIAL_F8153X is not set +CONFIG_USB_SERIAL_GARMIN=m +CONFIG_USB_SERIAL_IPW=m +CONFIG_USB_SERIAL_IUU=m +CONFIG_USB_SERIAL_KEYSPAN_PDA=m +CONFIG_USB_SERIAL_KEYSPAN=m +CONFIG_USB_SERIAL_KLSI=m +CONFIG_USB_SERIAL_KOBIL_SCT=m +CONFIG_USB_SERIAL_MCT_U232=m +CONFIG_USB_SERIAL_METRO=m +CONFIG_USB_SERIAL_MOS7720=m +CONFIG_USB_SERIAL_MOS7715_PARPORT=y +CONFIG_USB_SERIAL_MOS7840=m +CONFIG_USB_SERIAL_MXUPORT=m +CONFIG_USB_SERIAL_NAVMAN=m +CONFIG_USB_SERIAL_PL2303=m +CONFIG_USB_SERIAL_OTI6858=m +CONFIG_USB_SERIAL_QCAUX=m +CONFIG_USB_SERIAL_QUALCOMM=m +CONFIG_USB_SERIAL_SPCP8X5=m +CONFIG_USB_SERIAL_SAFE=m +# CONFIG_USB_SERIAL_SAFE_PADDED is not set +CONFIG_USB_SERIAL_SIERRAWIRELESS=m +CONFIG_USB_SERIAL_SYMBOL=m +CONFIG_USB_SERIAL_TI=m +CONFIG_USB_SERIAL_CYBERJACK=m +CONFIG_USB_SERIAL_XIRCOM=m +CONFIG_USB_SERIAL_WWAN=m +CONFIG_USB_SERIAL_OPTION=m +CONFIG_USB_SERIAL_OMNINET=m +CONFIG_USB_SERIAL_OPTICON=m +CONFIG_USB_SERIAL_XSENS_MT=m +CONFIG_USB_SERIAL_WISHBONE=m +CONFIG_USB_SERIAL_SSU100=m +CONFIG_USB_SERIAL_QT2=m +# CONFIG_USB_SERIAL_UPD78F0730 is not set +CONFIG_USB_SERIAL_DEBUG=m + +# +# USB Miscellaneous drivers +# +CONFIG_USB_EMI62=m +CONFIG_USB_EMI26=m +CONFIG_USB_ADUTUX=m +CONFIG_USB_SEVSEG=m +CONFIG_USB_RIO500=m +CONFIG_USB_LEGOTOWER=m +CONFIG_USB_LCD=m +CONFIG_USB_CYPRESS_CY7C63=m +CONFIG_USB_CYTHERM=m +CONFIG_USB_IDMOUSE=m +CONFIG_USB_FTDI_ELAN=m +CONFIG_USB_APPLEDISPLAY=m +CONFIG_USB_SISUSBVGA=m +CONFIG_USB_SISUSBVGA_CON=y +CONFIG_USB_LD=m +CONFIG_USB_TRANCEVIBRATOR=m +CONFIG_USB_IOWARRIOR=m +CONFIG_USB_TEST=m +CONFIG_USB_EHSET_TEST_FIXTURE=m +CONFIG_USB_ISIGHTFW=m +CONFIG_USB_YUREX=m +CONFIG_USB_EZUSB_FX2=m +# CONFIG_USB_HUB_USB251XB is not set +CONFIG_USB_HSIC_USB3503=m +# CONFIG_USB_HSIC_USB4604 is not set +# CONFIG_USB_LINK_LAYER_TEST is not set +CONFIG_USB_CHAOSKEY=m +# CONFIG_USB_ATM is not set + +# +# USB Physical Layer drivers +# +CONFIG_USB_PHY=y +CONFIG_NOP_USB_XCEIV=m +# CONFIG_USB_GPIO_VBUS is not set +# CONFIG_USB_ISP1301 is not set +CONFIG_USB_ULPI=y +CONFIG_USB_ULPI_VIEWPORT=y +CONFIG_USB_GADGET=m +# CONFIG_USB_GADGET_DEBUG is not set +# CONFIG_USB_GADGET_DEBUG_FILES is not set +# CONFIG_USB_GADGET_DEBUG_FS is not set +CONFIG_USB_GADGET_VBUS_DRAW=2 +CONFIG_USB_GADGET_STORAGE_NUM_BUFFERS=2 +# CONFIG_U_SERIAL_CONSOLE is not set + +# +# USB Peripheral Controller +# +# CONFIG_USB_FOTG210_UDC is not set +# CONFIG_USB_GR_UDC is not set +# CONFIG_USB_R8A66597 is not set +# CONFIG_USB_PXA27X is not set +# CONFIG_USB_MV_UDC is not set +# CONFIG_USB_MV_U3D is not set +# CONFIG_USB_SNP_UDC_PLAT is not set +# CONFIG_USB_M66592 is not set +# CONFIG_USB_BDC_UDC is not set +# CONFIG_USB_AMD5536UDC is not set +# CONFIG_USB_NET2272 is not set +CONFIG_USB_NET2280=m +# CONFIG_USB_GOKU is not set +# CONFIG_USB_EG20T is not set +# CONFIG_USB_GADGET_XILINX is not set +# CONFIG_USB_DUMMY_HCD is not set +CONFIG_USB_LIBCOMPOSITE=m +CONFIG_USB_F_ACM=m +CONFIG_USB_F_SS_LB=m +CONFIG_USB_U_SERIAL=m +CONFIG_USB_U_ETHER=m +CONFIG_USB_U_AUDIO=m +CONFIG_USB_F_SERIAL=m +CONFIG_USB_F_OBEX=m +CONFIG_USB_F_NCM=m +CONFIG_USB_F_ECM=m +CONFIG_USB_F_PHONET=m +CONFIG_USB_F_EEM=m +CONFIG_USB_F_SUBSET=m +CONFIG_USB_F_RNDIS=m +CONFIG_USB_F_MASS_STORAGE=m +CONFIG_USB_F_FS=m +CONFIG_USB_F_UAC1=m +CONFIG_USB_F_UAC2=m +CONFIG_USB_F_UVC=m +CONFIG_USB_F_MIDI=m +CONFIG_USB_F_HID=m +CONFIG_USB_F_PRINTER=m +CONFIG_USB_CONFIGFS=m +CONFIG_USB_CONFIGFS_SERIAL=y +CONFIG_USB_CONFIGFS_ACM=y +CONFIG_USB_CONFIGFS_OBEX=y +CONFIG_USB_CONFIGFS_NCM=y +CONFIG_USB_CONFIGFS_ECM=y +CONFIG_USB_CONFIGFS_ECM_SUBSET=y +CONFIG_USB_CONFIGFS_RNDIS=y +CONFIG_USB_CONFIGFS_EEM=y +CONFIG_USB_CONFIGFS_PHONET=y +CONFIG_USB_CONFIGFS_MASS_STORAGE=y +CONFIG_USB_CONFIGFS_F_LB_SS=y +CONFIG_USB_CONFIGFS_F_FS=y +CONFIG_USB_CONFIGFS_F_UAC1=y +# CONFIG_USB_CONFIGFS_F_UAC1_LEGACY is not set +CONFIG_USB_CONFIGFS_F_UAC2=y +CONFIG_USB_CONFIGFS_F_MIDI=y +CONFIG_USB_CONFIGFS_F_HID=y +CONFIG_USB_CONFIGFS_F_UVC=y +CONFIG_USB_CONFIGFS_F_PRINTER=y +# CONFIG_USB_CONFIGFS_F_TCM is not set +# CONFIG_USB_ZERO is not set +# CONFIG_USB_AUDIO is not set +CONFIG_USB_ETH=m +CONFIG_USB_ETH_RNDIS=y +# CONFIG_USB_ETH_EEM is not set +# CONFIG_USB_G_NCM is not set +CONFIG_USB_GADGETFS=m +CONFIG_USB_FUNCTIONFS=m +CONFIG_USB_FUNCTIONFS_ETH=y +CONFIG_USB_FUNCTIONFS_RNDIS=y +CONFIG_USB_FUNCTIONFS_GENERIC=y +# CONFIG_USB_MASS_STORAGE is not set +# CONFIG_USB_GADGET_TARGET is not set +CONFIG_USB_G_SERIAL=m +# CONFIG_USB_MIDI_GADGET is not set +# CONFIG_USB_G_PRINTER is not set +# CONFIG_USB_CDC_COMPOSITE is not set +# CONFIG_USB_G_NOKIA is not set +# CONFIG_USB_G_ACM_MS is not set +# CONFIG_USB_G_MULTI is not set +# CONFIG_USB_G_HID is not set +# CONFIG_USB_G_DBGP is not set +# CONFIG_USB_G_WEBCAM is not set +# CONFIG_TYPEC is not set +CONFIG_USB_LED_TRIG=y +# CONFIG_USB_ULPI_BUS is not set +CONFIG_UWB=m +CONFIG_UWB_HWA=m +CONFIG_UWB_WHCI=m +CONFIG_UWB_I1480U=m +CONFIG_MMC=y +CONFIG_PWRSEQ_EMMC=y +# CONFIG_PWRSEQ_SD8787 is not set +CONFIG_PWRSEQ_SIMPLE=y +CONFIG_MMC_BLOCK=y +CONFIG_MMC_BLOCK_MINORS=256 +CONFIG_SDIO_UART=m +# CONFIG_MMC_TEST is not set + +# +# MMC/SD/SDIO Host Controller Drivers +# +# CONFIG_MMC_DEBUG is not set +CONFIG_MMC_ARMMMCI=m +CONFIG_MMC_QCOM_DML=y +CONFIG_MMC_SDHCI=m +CONFIG_MMC_SDHCI_IO_ACCESSORS=y +CONFIG_MMC_SDHCI_PCI=m +CONFIG_MMC_RICOH_MMC=y +CONFIG_MMC_SDHCI_ACPI=m +CONFIG_MMC_SDHCI_PLTFM=m +CONFIG_MMC_SDHCI_OF_ARASAN=m +# CONFIG_MMC_SDHCI_OF_AT91 is not set +# CONFIG_MMC_SDHCI_CADENCE is not set +CONFIG_MMC_SDHCI_TEGRA=m +# CONFIG_MMC_SDHCI_PXAV3 is not set +CONFIG_MMC_SDHCI_F_SDH30=m +CONFIG_MMC_SDHCI_IPROC=m +CONFIG_MMC_MESON_GX=m +# CONFIG_MMC_MESON_MX_SDIO is not set +CONFIG_MMC_SDHCI_MSM=m +CONFIG_MMC_TIFM_SD=m +CONFIG_MMC_SPI=m +CONFIG_MMC_CB710=m +CONFIG_MMC_VIA_SDMMC=m +CONFIG_MMC_DW=m +CONFIG_MMC_DW_PLTFM=m +# CONFIG_MMC_DW_EXYNOS is not set +# CONFIG_MMC_DW_HI3798CV200 is not set +CONFIG_MMC_DW_K3=m +# CONFIG_MMC_DW_PCI is not set +CONFIG_MMC_DW_ROCKCHIP=m +CONFIG_MMC_VUB300=m +CONFIG_MMC_USHC=m +# CONFIG_MMC_USDHI6ROL0 is not set +CONFIG_MMC_REALTEK_PCI=m +CONFIG_MMC_REALTEK_USB=m +CONFIG_MMC_SUNXI=m +CONFIG_MMC_CQHCI=m +CONFIG_MMC_TOSHIBA_PCI=m +CONFIG_MMC_BCM2835=m +# CONFIG_MMC_MTK is not set +CONFIG_MMC_SDHCI_XENON=m +# CONFIG_MMC_SDHCI_OMAP is not set +CONFIG_MEMSTICK=m +# CONFIG_MEMSTICK_DEBUG is not set + +# +# MemoryStick drivers +# +# CONFIG_MEMSTICK_UNSAFE_RESUME is not set +CONFIG_MSPRO_BLOCK=m +# CONFIG_MS_BLOCK is not set + +# +# MemoryStick Host Controller Drivers +# +CONFIG_MEMSTICK_TIFM_MS=m +CONFIG_MEMSTICK_JMICRON_38X=m +CONFIG_MEMSTICK_R592=m +CONFIG_MEMSTICK_REALTEK_PCI=m +CONFIG_MEMSTICK_REALTEK_USB=m +CONFIG_NEW_LEDS=y +CONFIG_LEDS_CLASS=y +# CONFIG_LEDS_CLASS_FLASH is not set +CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y + +# +# LED drivers +# +# CONFIG_LEDS_BCM6328 is not set +# CONFIG_LEDS_BCM6358 is not set +# CONFIG_LEDS_LM3530 is not set +# CONFIG_LEDS_LM3642 is not set +# CONFIG_LEDS_LM3692X is not set +# CONFIG_LEDS_PCA9532 is not set +CONFIG_LEDS_GPIO=m +CONFIG_LEDS_LP3944=m +# CONFIG_LEDS_LP3952 is not set +# CONFIG_LEDS_LP5521 is not set +# CONFIG_LEDS_LP5523 is not set +# CONFIG_LEDS_LP5562 is not set +# CONFIG_LEDS_LP8501 is not set +# CONFIG_LEDS_LP8860 is not set +CONFIG_LEDS_PCA955X=m +# CONFIG_LEDS_PCA955X_GPIO is not set +# CONFIG_LEDS_PCA963X is not set +CONFIG_LEDS_DAC124S085=m +CONFIG_LEDS_PWM=m +CONFIG_LEDS_REGULATOR=m +CONFIG_LEDS_BD2802=m +CONFIG_LEDS_LT3593=m +# CONFIG_LEDS_TCA6507 is not set +# CONFIG_LEDS_TLC591XX is not set +# CONFIG_LEDS_LM355x is not set +# CONFIG_LEDS_IS31FL319X is not set +# CONFIG_LEDS_IS31FL32XX is not set + +# +# LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) +# +# CONFIG_LEDS_BLINKM is not set +# CONFIG_LEDS_SYSCON is not set +# CONFIG_LEDS_MLXREG is not set +# CONFIG_LEDS_USER is not set + +# +# LED Triggers +# +CONFIG_LEDS_TRIGGERS=y +CONFIG_LEDS_TRIGGER_TIMER=m +CONFIG_LEDS_TRIGGER_ONESHOT=m +CONFIG_LEDS_TRIGGER_DISK=y +CONFIG_LEDS_TRIGGER_MTD=y +CONFIG_LEDS_TRIGGER_HEARTBEAT=m +CONFIG_LEDS_TRIGGER_BACKLIGHT=m +CONFIG_LEDS_TRIGGER_CPU=y +# CONFIG_LEDS_TRIGGER_ACTIVITY is not set +CONFIG_LEDS_TRIGGER_GPIO=m +CONFIG_LEDS_TRIGGER_DEFAULT_ON=m + +# +# iptables trigger is under Netfilter config (LED target) +# +CONFIG_LEDS_TRIGGER_TRANSIENT=m +CONFIG_LEDS_TRIGGER_CAMERA=m +CONFIG_LEDS_TRIGGER_PANIC=y +# CONFIG_LEDS_TRIGGER_NETDEV is not set +CONFIG_ACCESSIBILITY=y +CONFIG_A11Y_BRAILLE_CONSOLE=y +CONFIG_INFINIBAND=m +CONFIG_INFINIBAND_USER_MAD=m +CONFIG_INFINIBAND_USER_ACCESS=m +# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set +CONFIG_INFINIBAND_USER_MEM=y +CONFIG_INFINIBAND_ON_DEMAND_PAGING=y +CONFIG_INFINIBAND_ADDR_TRANS=y +CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y +CONFIG_INFINIBAND_MTHCA=m +CONFIG_INFINIBAND_MTHCA_DEBUG=y +CONFIG_INFINIBAND_QIB=m +CONFIG_INFINIBAND_CXGB3=m +CONFIG_INFINIBAND_CXGB4=m +CONFIG_INFINIBAND_I40IW=m +CONFIG_MLX4_INFINIBAND=m +CONFIG_MLX5_INFINIBAND=m +CONFIG_INFINIBAND_NES=m +# CONFIG_INFINIBAND_NES_DEBUG is not set +CONFIG_INFINIBAND_OCRDMA=m +# CONFIG_INFINIBAND_HNS is not set +CONFIG_INFINIBAND_IPOIB=m +CONFIG_INFINIBAND_IPOIB_CM=y +CONFIG_INFINIBAND_IPOIB_DEBUG=y +# CONFIG_INFINIBAND_IPOIB_DEBUG_DATA is not set +CONFIG_INFINIBAND_SRP=m +CONFIG_INFINIBAND_SRPT=m +CONFIG_INFINIBAND_ISER=m +CONFIG_INFINIBAND_ISERT=m +CONFIG_INFINIBAND_RDMAVT=m +CONFIG_RDMA_RXE=m +CONFIG_INFINIBAND_QEDR=m +# CONFIG_INFINIBAND_BNXT_RE is not set +CONFIG_EDAC_SUPPORT=y +CONFIG_EDAC=y +CONFIG_EDAC_LEGACY_SYSFS=y +# CONFIG_EDAC_DEBUG is not set +CONFIG_EDAC_THUNDERX=m +CONFIG_EDAC_XGENE=m +CONFIG_RTC_LIB=y +CONFIG_RTC_CLASS=y +CONFIG_RTC_HCTOSYS=y +CONFIG_RTC_HCTOSYS_DEVICE="rtc0" +CONFIG_RTC_SYSTOHC=y +CONFIG_RTC_SYSTOHC_DEVICE="rtc0" +# CONFIG_RTC_DEBUG is not set +CONFIG_RTC_NVMEM=y + +# +# RTC interfaces +# +CONFIG_RTC_INTF_SYSFS=y +CONFIG_RTC_INTF_PROC=y +CONFIG_RTC_INTF_DEV=y +# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set +# CONFIG_RTC_DRV_TEST is not set + +# +# I2C RTC drivers +# +# CONFIG_RTC_DRV_ABB5ZES3 is not set +# CONFIG_RTC_DRV_ABX80X is not set +CONFIG_RTC_DRV_DS1307=y +CONFIG_RTC_DRV_DS1307_HWMON=y +# CONFIG_RTC_DRV_DS1307_CENTURY is not set +# CONFIG_RTC_DRV_DS1374 is not set +# CONFIG_RTC_DRV_DS1672 is not set +# CONFIG_RTC_DRV_HYM8563 is not set +# CONFIG_RTC_DRV_MAX6900 is not set +CONFIG_RTC_DRV_MAX77686=y +CONFIG_RTC_DRV_RK808=m +# CONFIG_RTC_DRV_RS5C372 is not set +# CONFIG_RTC_DRV_ISL1208 is not set +# CONFIG_RTC_DRV_ISL12022 is not set +# CONFIG_RTC_DRV_ISL12026 is not set +# CONFIG_RTC_DRV_X1205 is not set +# CONFIG_RTC_DRV_PCF8523 is not set +# CONFIG_RTC_DRV_PCF85063 is not set +# CONFIG_RTC_DRV_PCF85363 is not set +# CONFIG_RTC_DRV_PCF8563 is not set +# CONFIG_RTC_DRV_PCF8583 is not set +# CONFIG_RTC_DRV_M41T80 is not set +# CONFIG_RTC_DRV_BQ32K is not set +# CONFIG_RTC_DRV_S35390A is not set +# CONFIG_RTC_DRV_FM3130 is not set +# CONFIG_RTC_DRV_RX8010 is not set +# CONFIG_RTC_DRV_RX8581 is not set +# CONFIG_RTC_DRV_RX8025 is not set +# CONFIG_RTC_DRV_EM3027 is not set +# CONFIG_RTC_DRV_RV8803 is not set + +# +# SPI RTC drivers +# +# CONFIG_RTC_DRV_M41T93 is not set +# CONFIG_RTC_DRV_M41T94 is not set +# CONFIG_RTC_DRV_DS1302 is not set +# CONFIG_RTC_DRV_DS1305 is not set +# CONFIG_RTC_DRV_DS1343 is not set +# CONFIG_RTC_DRV_DS1347 is not set +# CONFIG_RTC_DRV_DS1390 is not set +# CONFIG_RTC_DRV_MAX6916 is not set +# CONFIG_RTC_DRV_R9701 is not set +# CONFIG_RTC_DRV_RX4581 is not set +# CONFIG_RTC_DRV_RX6110 is not set +# CONFIG_RTC_DRV_RS5C348 is not set +# CONFIG_RTC_DRV_MAX6902 is not set +# CONFIG_RTC_DRV_PCF2123 is not set +# CONFIG_RTC_DRV_MCP795 is not set +CONFIG_RTC_I2C_AND_SPI=y + +# +# SPI and I2C RTC drivers +# +# CONFIG_RTC_DRV_DS3232 is not set +# CONFIG_RTC_DRV_PCF2127 is not set +# CONFIG_RTC_DRV_RV3029C2 is not set + +# +# Platform RTC drivers +# +# CONFIG_RTC_DRV_DS1286 is not set +# CONFIG_RTC_DRV_DS1511 is not set +# CONFIG_RTC_DRV_DS1553 is not set +# CONFIG_RTC_DRV_DS1685_FAMILY is not set +# CONFIG_RTC_DRV_DS1742 is not set +# CONFIG_RTC_DRV_DS2404 is not set +CONFIG_RTC_DRV_EFI=y +# CONFIG_RTC_DRV_STK17TA8 is not set +# CONFIG_RTC_DRV_M48T86 is not set +# CONFIG_RTC_DRV_M48T35 is not set +# CONFIG_RTC_DRV_M48T59 is not set +# CONFIG_RTC_DRV_MSM6242 is not set +# CONFIG_RTC_DRV_BQ4802 is not set +# CONFIG_RTC_DRV_RP5C01 is not set +# CONFIG_RTC_DRV_V3020 is not set +# CONFIG_RTC_DRV_ZYNQMP is not set +# CONFIG_RTC_DRV_CROS_EC is not set + +# +# on-CPU RTC drivers +# +# CONFIG_RTC_DRV_PL030 is not set +CONFIG_RTC_DRV_PL031=y +CONFIG_RTC_DRV_SUN6I=y +CONFIG_RTC_DRV_MV=m +CONFIG_RTC_DRV_ARMADA38X=m +# CONFIG_RTC_DRV_FTRTC010 is not set +CONFIG_RTC_DRV_PM8XXX=m +CONFIG_RTC_DRV_TEGRA=y +# CONFIG_RTC_DRV_SNVS is not set +CONFIG_RTC_DRV_XGENE=y +# CONFIG_RTC_DRV_R7301 is not set + +# +# HID Sensor RTC drivers +# +# CONFIG_RTC_DRV_HID_SENSOR_TIME is not set +CONFIG_DMADEVICES=y +# CONFIG_DMADEVICES_DEBUG is not set + +# +# DMA Devices +# +CONFIG_ASYNC_TX_ENABLE_CHANNEL_SWITCH=y +CONFIG_DMA_ENGINE=y +CONFIG_DMA_VIRTUAL_CHANNELS=y +CONFIG_DMA_ACPI=y +CONFIG_DMA_OF=y +# CONFIG_ALTERA_MSGDMA is not set +# CONFIG_AMBA_PL08X is not set +# CONFIG_BCM_SBA_RAID is not set +CONFIG_DMA_BCM2835=y +CONFIG_DMA_SUN6I=m +# CONFIG_DW_AXI_DMAC is not set +# CONFIG_FSL_EDMA is not set +# CONFIG_INTEL_IDMA64 is not set +CONFIG_K3_DMA=m +CONFIG_MV_XOR=y +CONFIG_MV_XOR_V2=y +CONFIG_PL330_DMA=m +CONFIG_TEGRA20_APB_DMA=y +CONFIG_TEGRA210_ADMA=y +CONFIG_XGENE_DMA=m +# CONFIG_XILINX_DMA is not set +# CONFIG_XILINX_ZYNQMP_DMA is not set +CONFIG_QCOM_BAM_DMA=m +CONFIG_QCOM_HIDMA_MGMT=m +CONFIG_QCOM_HIDMA=m +# CONFIG_DW_DMAC is not set +# CONFIG_DW_DMAC_PCI is not set + +# +# DMA Clients +# +CONFIG_ASYNC_TX_DMA=y +# CONFIG_DMATEST is not set +CONFIG_DMA_ENGINE_RAID=y + +# +# DMABUF options +# +CONFIG_SYNC_FILE=y +# CONFIG_SW_SYNC is not set +# CONFIG_AUXDISPLAY is not set +# CONFIG_PANEL is not set +CONFIG_UIO=m +CONFIG_UIO_CIF=m +# CONFIG_UIO_PDRV_GENIRQ is not set +# CONFIG_UIO_DMEM_GENIRQ is not set +CONFIG_UIO_AEC=m +CONFIG_UIO_SERCOS3=m +CONFIG_UIO_PCI_GENERIC=m +CONFIG_UIO_NETX=m +# CONFIG_UIO_PRUSS is not set +CONFIG_UIO_MF624=m +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO_VIRQFD=m +CONFIG_VFIO=m +CONFIG_VFIO_NOIOMMU=y +CONFIG_VFIO_PCI=m +CONFIG_VFIO_PCI_MMAP=y +CONFIG_VFIO_PCI_INTX=y +# CONFIG_VFIO_PLATFORM is not set +# CONFIG_VFIO_MDEV is not set +CONFIG_IRQ_BYPASS_MANAGER=y +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRTIO=m +CONFIG_VIRTIO_MENU=y +CONFIG_VIRTIO_PCI=m +CONFIG_VIRTIO_PCI_LEGACY=y +CONFIG_VIRTIO_BALLOON=m +CONFIG_VIRTIO_INPUT=m +CONFIG_VIRTIO_MMIO=m +# CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES is not set + +# +# Microsoft Hyper-V guest support +# + +# +# Xen driver support +# +CONFIG_XEN_BALLOON=y +CONFIG_XEN_SCRUB_PAGES=y +CONFIG_XEN_DEV_EVTCHN=m +CONFIG_XEN_BACKEND=y +CONFIG_XENFS=m +CONFIG_XEN_COMPAT_XENFS=y +CONFIG_XEN_SYS_HYPERVISOR=y +CONFIG_XEN_XENBUS_FRONTEND=y +CONFIG_XEN_GNTDEV=m +CONFIG_XEN_GRANT_DEV_ALLOC=m +CONFIG_SWIOTLB_XEN=y +# CONFIG_XEN_PVCALLS_FRONTEND is not set +# CONFIG_XEN_PVCALLS_BACKEND is not set +CONFIG_XEN_SCSI_BACKEND=m +CONFIG_XEN_PRIVCMD=m +CONFIG_XEN_EFI=y +CONFIG_XEN_AUTO_XLATE=y +CONFIG_STAGING=y +# CONFIG_IPX is not set +CONFIG_NCP_FS=m +CONFIG_NCPFS_PACKET_SIGNING=y +CONFIG_NCPFS_IOCTL_LOCKING=y +CONFIG_NCPFS_STRONG=y +CONFIG_NCPFS_NFS_NS=y +CONFIG_NCPFS_OS2_NS=y +# CONFIG_NCPFS_SMALLDOS is not set +CONFIG_NCPFS_NLS=y +CONFIG_NCPFS_EXTRAS=y +# CONFIG_PRISM2_USB is not set +# CONFIG_COMEDI is not set +# CONFIG_RTL8192U is not set +# CONFIG_RTLLIB is not set +CONFIG_RTL8723BS=m +CONFIG_R8712U=m +CONFIG_R8188EU=m +CONFIG_88EU_AP_MODE=y +# CONFIG_R8822BE is not set +# CONFIG_RTS5208 is not set +# CONFIG_VT6655 is not set +# CONFIG_VT6656 is not set + +# +# IIO staging drivers +# + +# +# Accelerometers +# +# CONFIG_ADIS16201 is not set +# CONFIG_ADIS16203 is not set +# CONFIG_ADIS16209 is not set +# CONFIG_ADIS16240 is not set + +# +# Analog to digital converters +# +# CONFIG_AD7606 is not set +# CONFIG_AD7780 is not set +# CONFIG_AD7816 is not set +# CONFIG_AD7192 is not set +# CONFIG_AD7280 is not set + +# +# Analog digital bi-direction converters +# +# CONFIG_ADT7316 is not set + +# +# Capacitance to digital converters +# +# CONFIG_AD7150 is not set +# CONFIG_AD7152 is not set +# CONFIG_AD7746 is not set + +# +# Direct Digital Synthesis +# +# CONFIG_AD9832 is not set +# CONFIG_AD9834 is not set + +# +# Digital gyroscope sensors +# +# CONFIG_ADIS16060 is not set + +# +# Network Analyzer, Impedance Converters +# +# CONFIG_AD5933 is not set + +# +# Light sensors +# +# CONFIG_TSL2x7x is not set + +# +# Active energy metering IC +# +# CONFIG_ADE7753 is not set +# CONFIG_ADE7754 is not set +# CONFIG_ADE7758 is not set +# CONFIG_ADE7759 is not set +# CONFIG_ADE7854 is not set + +# +# Resolver to digital converters +# +# CONFIG_AD2S90 is not set +# CONFIG_AD2S1200 is not set +# CONFIG_AD2S1210 is not set +# CONFIG_FB_SM750 is not set +# CONFIG_FB_XGI is not set + +# +# Speakup console speech +# +CONFIG_SPEAKUP=m +CONFIG_SPEAKUP_SYNTH_ACNTSA=m +CONFIG_SPEAKUP_SYNTH_APOLLO=m +CONFIG_SPEAKUP_SYNTH_AUDPTR=m +CONFIG_SPEAKUP_SYNTH_BNS=m +CONFIG_SPEAKUP_SYNTH_DECTLK=m +CONFIG_SPEAKUP_SYNTH_DECEXT=m +CONFIG_SPEAKUP_SYNTH_LTLK=m +CONFIG_SPEAKUP_SYNTH_SOFT=m +CONFIG_SPEAKUP_SYNTH_SPKOUT=m +CONFIG_SPEAKUP_SYNTH_TXPRT=m +CONFIG_SPEAKUP_SYNTH_DUMMY=m +# CONFIG_MFD_NVEC is not set +# CONFIG_STAGING_MEDIA is not set + +# +# Android +# +# CONFIG_STAGING_BOARD is not set +# CONFIG_LTE_GDM724X is not set +# CONFIG_FIREWIRE_SERIAL is not set +# CONFIG_LNET is not set +# CONFIG_DGNC is not set +# CONFIG_GS_FPGABOOT is not set +# CONFIG_UNISYSSPAR is not set +# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set +# CONFIG_FB_TFT is not set +# CONFIG_WILC1000_SDIO is not set +# CONFIG_WILC1000_SPI is not set +# CONFIG_MOST is not set +# CONFIG_KS7010 is not set +# CONFIG_GREYBUS is not set +CONFIG_BCM_VIDEOCORE=y +# CONFIG_BCM2835_VCHIQ is not set +# CONFIG_SND_BCM2835 is not set +# CONFIG_VIDEO_BCM2835 is not set + +# +# USB Power Delivery and Type-C drivers +# +# CONFIG_PI433 is not set +CONFIG_MTK_MMC=m +# CONFIG_MTK_AEE_KDUMP is not set +# CONFIG_MTK_MMC_CD_POLL is not set +# CONFIG_GOLDFISH is not set +CONFIG_CHROME_PLATFORMS=y +CONFIG_CROS_EC_PROTO=y +CONFIG_CROS_KBD_LED_BACKLIGHT=m +CONFIG_CLKDEV_LOOKUP=y +CONFIG_HAVE_CLK_PREPARE=y +CONFIG_COMMON_CLK=y + +# +# Common Clock Framework +# +CONFIG_COMMON_CLK_VERSATILE=y +CONFIG_CLK_SP810=y +CONFIG_CLK_VEXPRESS_OSC=y +# CONFIG_CLK_HSDK is not set +# CONFIG_COMMON_CLK_MAX77686 is not set +CONFIG_COMMON_CLK_RK808=m +CONFIG_COMMON_CLK_HI655X=m +CONFIG_COMMON_CLK_SCMI=m +# CONFIG_COMMON_CLK_SI5351 is not set +# CONFIG_COMMON_CLK_SI514 is not set +# CONFIG_COMMON_CLK_SI544 is not set +# CONFIG_COMMON_CLK_SI570 is not set +# CONFIG_COMMON_CLK_CDCE706 is not set +# CONFIG_COMMON_CLK_CDCE925 is not set +# CONFIG_COMMON_CLK_CS2000_CP is not set +# CONFIG_CLK_QORIQ is not set +CONFIG_COMMON_CLK_XGENE=y +# CONFIG_COMMON_CLK_PWM is not set +# CONFIG_COMMON_CLK_VC5 is not set +CONFIG_COMMON_CLK_HI3516CV300=y +CONFIG_COMMON_CLK_HI3519=y +CONFIG_COMMON_CLK_HI3660=y +CONFIG_COMMON_CLK_HI3798CV200=y +CONFIG_COMMON_CLK_HI6220=y +CONFIG_RESET_HISI=y +CONFIG_STUB_CLK_HI6220=y +# CONFIG_STUB_CLK_HI3660 is not set +CONFIG_COMMON_CLK_AMLOGIC=y +CONFIG_COMMON_CLK_REGMAP_MESON=y +CONFIG_COMMON_CLK_GXBB=y +CONFIG_COMMON_CLK_AXG=y +CONFIG_ARMADA_37XX_CLK=y +CONFIG_ARMADA_AP806_SYSCON=y +CONFIG_ARMADA_CP110_SYSCON=y +CONFIG_QCOM_GDSC=y +CONFIG_QCOM_RPMCC=y +CONFIG_COMMON_CLK_QCOM=y +CONFIG_QCOM_A53PLL=y +CONFIG_QCOM_CLK_APCS_MSM8916=m +CONFIG_QCOM_CLK_RPM=m +CONFIG_QCOM_CLK_SMD_RPM=m +# CONFIG_APQ_GCC_8084 is not set +# CONFIG_APQ_MMCC_8084 is not set +# CONFIG_IPQ_GCC_4019 is not set +# CONFIG_IPQ_GCC_806X is not set +# CONFIG_IPQ_LCC_806X is not set +# CONFIG_IPQ_GCC_8074 is not set +# CONFIG_MSM_GCC_8660 is not set +CONFIG_MSM_GCC_8916=y +# CONFIG_MSM_GCC_8960 is not set +# CONFIG_MSM_LCC_8960 is not set +# CONFIG_MDM_GCC_9615 is not set +# CONFIG_MDM_LCC_9615 is not set +# CONFIG_MSM_MMCC_8960 is not set +# CONFIG_MSM_GCC_8974 is not set +# CONFIG_MSM_MMCC_8974 is not set +# CONFIG_MSM_GCC_8994 is not set +CONFIG_MSM_GCC_8996=y +CONFIG_MSM_MMCC_8996=y +# CONFIG_SPMI_PMIC_CLKDIV is not set +CONFIG_SUNXI_CCU=y +CONFIG_SUN50I_A64_CCU=y +CONFIG_SUN50I_H6_CCU=y +# CONFIG_SUN8I_A83T_CCU is not set +CONFIG_SUN8I_H3_CCU=y +CONFIG_SUN8I_DE2_CCU=y +CONFIG_SUN8I_R_CCU=y +CONFIG_CLK_TEGRA_BPMP=y +# CONFIG_HWSPINLOCK is not set + +# +# Clock Source drivers +# +CONFIG_TIMER_OF=y +CONFIG_TIMER_ACPI=y +CONFIG_TIMER_PROBE=y +CONFIG_CLKSRC_MMIO=y +CONFIG_ROCKCHIP_TIMER=y +CONFIG_ARM_ARCH_TIMER=y +CONFIG_ARM_ARCH_TIMER_EVTSTREAM=y +CONFIG_ARM_ARCH_TIMER_OOL_WORKAROUND=y +CONFIG_FSL_ERRATUM_A008585=y +CONFIG_HISILICON_ERRATUM_161010101=y +CONFIG_ARM64_ERRATUM_858921=y +CONFIG_ARM_TIMER_SP804=y +CONFIG_CLKSRC_VERSATILE=y +CONFIG_MAILBOX=y +# CONFIG_ARM_MHU is not set +# CONFIG_PLATFORM_MHU is not set +# CONFIG_PL320_MBOX is not set +# CONFIG_ROCKCHIP_MBOX is not set +CONFIG_PCC=y +# CONFIG_ALTERA_MBOX is not set +CONFIG_BCM2835_MBOX=y +# CONFIG_HI3660_MBOX is not set +CONFIG_HI6220_MBOX=y +# CONFIG_MAILBOX_TEST is not set +CONFIG_QCOM_APCS_IPC=m +CONFIG_TEGRA_HSP_MBOX=y +CONFIG_XGENE_SLIMPRO_MBOX=m +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y + +# +# Generic IOMMU Pagetable Support +# +CONFIG_IOMMU_IO_PGTABLE=y +CONFIG_IOMMU_IO_PGTABLE_LPAE=y +# CONFIG_IOMMU_IO_PGTABLE_LPAE_SELFTEST is not set +# CONFIG_IOMMU_IO_PGTABLE_ARMV7S is not set +CONFIG_IOMMU_IOVA=y +CONFIG_OF_IOMMU=y +CONFIG_IOMMU_DMA=y +# CONFIG_ROCKCHIP_IOMMU is not set +CONFIG_TEGRA_IOMMU_SMMU=y +CONFIG_ARM_SMMU=y +CONFIG_ARM_SMMU_V3=y +CONFIG_QCOM_IOMMU=y + +# +# Remoteproc drivers +# +# CONFIG_REMOTEPROC is not set + +# +# Rpmsg drivers +# +CONFIG_RPMSG=m +# CONFIG_RPMSG_CHAR is not set +CONFIG_RPMSG_QCOM_GLINK_NATIVE=m +CONFIG_RPMSG_QCOM_GLINK_RPM=m +# CONFIG_RPMSG_VIRTIO is not set +# CONFIG_SOUNDWIRE is not set + +# +# SOC (System On Chip) specific Drivers +# + +# +# Amlogic SoC drivers +# +CONFIG_MESON_GX_SOCINFO=y +CONFIG_MESON_GX_PM_DOMAINS=y +CONFIG_MESON_MX_SOCINFO=y + +# +# Broadcom SoC drivers +# +CONFIG_RASPBERRYPI_POWER=y +# CONFIG_SOC_BRCMSTB is not set + +# +# i.MX SoC drivers +# + +# +# Qualcomm SoC drivers +# +CONFIG_QCOM_GSBI=m +CONFIG_QCOM_MDT_LOADER=m +# CONFIG_QCOM_RMTFS_MEM is not set +CONFIG_QCOM_SMD_RPM=m +CONFIG_QCOM_WCNSS_CTRL=m +CONFIG_ROCKCHIP_GRF=y +CONFIG_ROCKCHIP_PM_DOMAINS=y +CONFIG_SUNXI_SRAM=y +CONFIG_ARCH_TEGRA_132_SOC=y +CONFIG_ARCH_TEGRA_210_SOC=y +# CONFIG_ARCH_TEGRA_186_SOC is not set +CONFIG_ARCH_TEGRA_194_SOC=y +CONFIG_SOC_TEGRA_FUSE=y +CONFIG_SOC_TEGRA_FLOWCTRL=y +CONFIG_SOC_TEGRA_PMC=y +CONFIG_SOC_TEGRA_POWERGATE_BPMP=y +# CONFIG_SOC_TI is not set + +# +# Xilinx SoC drivers +# +# CONFIG_XILINX_VCU is not set +CONFIG_PM_DEVFREQ=y + +# +# DEVFREQ Governors +# +CONFIG_DEVFREQ_GOV_SIMPLE_ONDEMAND=m +# CONFIG_DEVFREQ_GOV_PERFORMANCE is not set +# CONFIG_DEVFREQ_GOV_POWERSAVE is not set +# CONFIG_DEVFREQ_GOV_USERSPACE is not set +# CONFIG_DEVFREQ_GOV_PASSIVE is not set + +# +# DEVFREQ Drivers +# +# CONFIG_ARM_RK3399_DMC_DEVFREQ is not set +# CONFIG_PM_DEVFREQ_EVENT is not set +CONFIG_EXTCON=y + +# +# Extcon Device Drivers +# +# CONFIG_EXTCON_ADC_JACK is not set +# CONFIG_EXTCON_GPIO is not set +# CONFIG_EXTCON_MAX3355 is not set +CONFIG_EXTCON_QCOM_SPMI_MISC=m +# CONFIG_EXTCON_RT8973A is not set +# CONFIG_EXTCON_SM5502 is not set +CONFIG_EXTCON_USB_GPIO=m +# CONFIG_EXTCON_USBC_CROS_EC is not set +CONFIG_MEMORY=y +# CONFIG_ARM_PL172_MPMC is not set +CONFIG_TEGRA_MC=y +CONFIG_IIO=m +CONFIG_IIO_BUFFER=y +# CONFIG_IIO_BUFFER_CB is not set +# CONFIG_IIO_BUFFER_HW_CONSUMER is not set +CONFIG_IIO_KFIFO_BUF=m +CONFIG_IIO_TRIGGERED_BUFFER=m +# CONFIG_IIO_CONFIGFS is not set +CONFIG_IIO_TRIGGER=y +CONFIG_IIO_CONSUMERS_PER_TRIGGER=2 +# CONFIG_IIO_SW_DEVICE is not set +# CONFIG_IIO_SW_TRIGGER is not set + +# +# Accelerometers +# +# CONFIG_ADXL345_I2C is not set +# CONFIG_ADXL345_SPI is not set +# CONFIG_BMA180 is not set +# CONFIG_BMA220 is not set +# CONFIG_BMC150_ACCEL is not set +# CONFIG_DA280 is not set +# CONFIG_DA311 is not set +# CONFIG_DMARD06 is not set +# CONFIG_DMARD09 is not set +# CONFIG_DMARD10 is not set +CONFIG_HID_SENSOR_ACCEL_3D=m +# CONFIG_IIO_CROS_EC_ACCEL_LEGACY is not set +# CONFIG_IIO_ST_ACCEL_3AXIS is not set +# CONFIG_KXSD9 is not set +# CONFIG_KXCJK1013 is not set +# CONFIG_MC3230 is not set +# CONFIG_MMA7455_I2C is not set +# CONFIG_MMA7455_SPI is not set +# CONFIG_MMA7660 is not set +# CONFIG_MMA8452 is not set +# CONFIG_MMA9551 is not set +# CONFIG_MMA9553 is not set +# CONFIG_MXC4005 is not set +# CONFIG_MXC6255 is not set +# CONFIG_SCA3000 is not set +# CONFIG_STK8312 is not set +# CONFIG_STK8BA50 is not set + +# +# Analog to digital converters +# +# CONFIG_AD7266 is not set +# CONFIG_AD7291 is not set +# CONFIG_AD7298 is not set +# CONFIG_AD7476 is not set +# CONFIG_AD7766 is not set +# CONFIG_AD7791 is not set +# CONFIG_AD7793 is not set +# CONFIG_AD7887 is not set +# CONFIG_AD7923 is not set +# CONFIG_AD799X is not set +CONFIG_AXP20X_ADC=m +CONFIG_AXP288_ADC=m +# CONFIG_CC10001_ADC is not set +# CONFIG_ENVELOPE_DETECTOR is not set +# CONFIG_HI8435 is not set +# CONFIG_HX711 is not set +# CONFIG_INA2XX_ADC is not set +# CONFIG_LTC2471 is not set +# CONFIG_LTC2485 is not set +# CONFIG_LTC2497 is not set +# CONFIG_MAX1027 is not set +# CONFIG_MAX11100 is not set +# CONFIG_MAX1118 is not set +# CONFIG_MAX1363 is not set +# CONFIG_MAX9611 is not set +# CONFIG_MCP320X is not set +# CONFIG_MCP3422 is not set +CONFIG_MESON_SARADC=m +# CONFIG_NAU7802 is not set +CONFIG_QCOM_VADC_COMMON=m +CONFIG_QCOM_SPMI_IADC=m +CONFIG_QCOM_SPMI_VADC=m +# CONFIG_ROCKCHIP_SARADC is not set +# CONFIG_SD_ADC_MODULATOR is not set +# CONFIG_TI_ADC081C is not set +# CONFIG_TI_ADC0832 is not set +# CONFIG_TI_ADC084S021 is not set +# CONFIG_TI_ADC12138 is not set +# CONFIG_TI_ADC108S102 is not set +# CONFIG_TI_ADC128S052 is not set +# CONFIG_TI_ADC161S626 is not set +# CONFIG_TI_ADS1015 is not set +# CONFIG_TI_ADS7950 is not set +# CONFIG_TI_ADS8688 is not set +# CONFIG_TI_TLC4541 is not set +# CONFIG_VF610_ADC is not set +CONFIG_VIPERBOARD_ADC=m + +# +# Amplifiers +# +# CONFIG_AD8366 is not set + +# +# Chemical Sensors +# +# CONFIG_ATLAS_PH_SENSOR is not set +# CONFIG_CCS811 is not set +# CONFIG_IAQCORE is not set +# CONFIG_VZ89X is not set +# CONFIG_IIO_CROS_EC_SENSORS_CORE is not set + +# +# Hid Sensor IIO Common +# +CONFIG_HID_SENSOR_IIO_COMMON=m +CONFIG_HID_SENSOR_IIO_TRIGGER=m + +# +# SSP Sensor Common +# +# CONFIG_IIO_SSP_SENSORHUB is not set + +# +# Counters +# + +# +# Digital to analog converters +# +# CONFIG_AD5064 is not set +# CONFIG_AD5360 is not set +# CONFIG_AD5380 is not set +# CONFIG_AD5421 is not set +CONFIG_AD5446=m +# CONFIG_AD5449 is not set +# CONFIG_AD5592R is not set +# CONFIG_AD5593R is not set +# CONFIG_AD5504 is not set +# CONFIG_AD5624R_SPI is not set +# CONFIG_LTC2632 is not set +# CONFIG_AD5686 is not set +# CONFIG_AD5755 is not set +# CONFIG_AD5761 is not set +# CONFIG_AD5764 is not set +# CONFIG_AD5791 is not set +# CONFIG_AD7303 is not set +# CONFIG_AD8801 is not set +# CONFIG_DPOT_DAC is not set +# CONFIG_DS4424 is not set +# CONFIG_M62332 is not set +# CONFIG_MAX517 is not set +# CONFIG_MAX5821 is not set +# CONFIG_MCP4725 is not set +# CONFIG_MCP4922 is not set +# CONFIG_TI_DAC082S085 is not set +# CONFIG_VF610_DAC is not set + +# +# IIO dummy driver +# + +# +# Frequency Synthesizers DDS/PLL +# + +# +# Clock Generator/Distribution +# +# CONFIG_AD9523 is not set + +# +# Phase-Locked Loop (PLL) frequency synthesizers +# +# CONFIG_ADF4350 is not set + +# +# Digital gyroscope sensors +# +# CONFIG_ADIS16080 is not set +# CONFIG_ADIS16130 is not set +# CONFIG_ADIS16136 is not set +# CONFIG_ADIS16260 is not set +# CONFIG_ADXRS450 is not set +# CONFIG_BMG160 is not set +CONFIG_HID_SENSOR_GYRO_3D=m +# CONFIG_MPU3050_I2C is not set +# CONFIG_IIO_ST_GYRO_3AXIS is not set +# CONFIG_ITG3200 is not set + +# +# Health Sensors +# + +# +# Heart Rate Monitors +# +# CONFIG_AFE4403 is not set +# CONFIG_AFE4404 is not set +# CONFIG_MAX30100 is not set +# CONFIG_MAX30102 is not set + +# +# Humidity sensors +# +# CONFIG_AM2315 is not set +CONFIG_DHT11=m +# CONFIG_HDC100X is not set +# CONFIG_HID_SENSOR_HUMIDITY is not set +# CONFIG_HTS221 is not set +# CONFIG_HTU21 is not set +# CONFIG_SI7005 is not set +# CONFIG_SI7020 is not set + +# +# Inertial measurement units +# +# CONFIG_ADIS16400 is not set +# CONFIG_ADIS16480 is not set +# CONFIG_BMI160_I2C is not set +# CONFIG_BMI160_SPI is not set +# CONFIG_KMX61 is not set +# CONFIG_INV_MPU6050_I2C is not set +# CONFIG_INV_MPU6050_SPI is not set +# CONFIG_IIO_ST_LSM6DSX is not set + +# +# Light sensors +# +CONFIG_ACPI_ALS=m +# CONFIG_ADJD_S311 is not set +# CONFIG_AL3320A is not set +# CONFIG_APDS9300 is not set +# CONFIG_APDS9960 is not set +# CONFIG_BH1750 is not set +CONFIG_BH1780=m +# CONFIG_CM32181 is not set +# CONFIG_CM3232 is not set +# CONFIG_CM3323 is not set +# CONFIG_CM3605 is not set +# CONFIG_CM36651 is not set +# CONFIG_GP2AP020A00F is not set +# CONFIG_SENSORS_ISL29018 is not set +# CONFIG_SENSORS_ISL29028 is not set +# CONFIG_ISL29125 is not set +CONFIG_HID_SENSOR_ALS=m +CONFIG_HID_SENSOR_PROX=m +# CONFIG_JSA1212 is not set +# CONFIG_RPR0521 is not set +# CONFIG_LTR501 is not set +# CONFIG_LV0104CS is not set +# CONFIG_MAX44000 is not set +# CONFIG_OPT3001 is not set +# CONFIG_PA12203001 is not set +# CONFIG_SI1145 is not set +# CONFIG_STK3310 is not set +# CONFIG_ST_UVIS25 is not set +# CONFIG_TCS3414 is not set +# CONFIG_TCS3472 is not set +# CONFIG_SENSORS_TSL2563 is not set +# CONFIG_TSL2583 is not set +# CONFIG_TSL4531 is not set +# CONFIG_US5182D is not set +# CONFIG_VCNL4000 is not set +# CONFIG_VEML6070 is not set +# CONFIG_VL6180 is not set +# CONFIG_ZOPT2201 is not set + +# +# Magnetometer sensors +# +# CONFIG_AK8974 is not set +# CONFIG_AK8975 is not set +# CONFIG_AK09911 is not set +# CONFIG_BMC150_MAGN_I2C is not set +# CONFIG_BMC150_MAGN_SPI is not set +# CONFIG_MAG3110 is not set +CONFIG_HID_SENSOR_MAGNETOMETER_3D=m +# CONFIG_MMC35240 is not set +# CONFIG_IIO_ST_MAGN_3AXIS is not set +# CONFIG_SENSORS_HMC5843_I2C is not set +# CONFIG_SENSORS_HMC5843_SPI is not set + +# +# Multiplexers +# +# CONFIG_IIO_MUX is not set + +# +# Inclinometer sensors +# +CONFIG_HID_SENSOR_INCLINOMETER_3D=m +CONFIG_HID_SENSOR_DEVICE_ROTATION=m + +# +# Triggers - standalone +# +# CONFIG_IIO_INTERRUPT_TRIGGER is not set +# CONFIG_IIO_SYSFS_TRIGGER is not set + +# +# Digital potentiometers +# +# CONFIG_AD5272 is not set +# CONFIG_DS1803 is not set +# CONFIG_MAX5481 is not set +# CONFIG_MAX5487 is not set +# CONFIG_MCP4018 is not set +# CONFIG_MCP4131 is not set +# CONFIG_MCP4531 is not set +# CONFIG_TPL0102 is not set + +# +# Digital potentiostats +# +# CONFIG_LMP91000 is not set + +# +# Pressure sensors +# +# CONFIG_ABP060MG is not set +# CONFIG_BMP280 is not set +CONFIG_HID_SENSOR_PRESS=m +# CONFIG_HP03 is not set +# CONFIG_MPL115_I2C is not set +# CONFIG_MPL115_SPI is not set +# CONFIG_MPL3115 is not set +# CONFIG_MS5611 is not set +# CONFIG_MS5637 is not set +# CONFIG_IIO_ST_PRESS is not set +# CONFIG_T5403 is not set +# CONFIG_HP206C is not set +# CONFIG_ZPA2326 is not set + +# +# Lightning sensors +# +# CONFIG_AS3935 is not set + +# +# Proximity and distance sensors +# +# CONFIG_LIDAR_LITE_V2 is not set +# CONFIG_RFD77402 is not set +# CONFIG_SRF04 is not set +# CONFIG_SX9500 is not set +# CONFIG_SRF08 is not set + +# +# Temperature sensors +# +# CONFIG_MAXIM_THERMOCOUPLE is not set +# CONFIG_HID_SENSOR_TEMP is not set +# CONFIG_MLX90614 is not set +# CONFIG_MLX90632 is not set +# CONFIG_TMP006 is not set +# CONFIG_TMP007 is not set +# CONFIG_TSYS01 is not set +# CONFIG_TSYS02D is not set +# CONFIG_NTB is not set +# CONFIG_VME_BUS is not set +CONFIG_PWM=y +CONFIG_PWM_SYSFS=y +CONFIG_PWM_BCM2835=m +# CONFIG_PWM_CROS_EC is not set +# CONFIG_PWM_FSL_FTM is not set +# CONFIG_PWM_HIBVT is not set +CONFIG_PWM_MESON=m +# CONFIG_PWM_PCA9685 is not set +CONFIG_PWM_ROCKCHIP=m +CONFIG_PWM_SUN4I=m +CONFIG_PWM_TEGRA=m + +# +# IRQ chip support +# +CONFIG_IRQCHIP=y +CONFIG_ARM_GIC=y +CONFIG_ARM_GIC_MAX_NR=1 +CONFIG_ARM_GIC_V2M=y +CONFIG_ARM_GIC_V3=y +CONFIG_ARM_GIC_V3_ITS=y +CONFIG_ARM_GIC_V3_ITS_PCI=y +CONFIG_HISILICON_IRQ_MBIGEN=y +CONFIG_MVEBU_GICP=y +CONFIG_MVEBU_ICU=y +CONFIG_MVEBU_ODMI=y +CONFIG_MVEBU_PIC=y +CONFIG_PARTITION_PERCPU=y +CONFIG_QCOM_IRQ_COMBINER=y +CONFIG_MESON_IRQ_GPIO=y +# CONFIG_QCOM_PDC is not set +# CONFIG_IPACK_BUS is not set +CONFIG_ARCH_HAS_RESET_CONTROLLER=y +CONFIG_RESET_CONTROLLER=y +CONFIG_RESET_MESON=y +CONFIG_RESET_SIMPLE=y +CONFIG_RESET_SUNXI=y +# CONFIG_RESET_TI_SYSCON is not set +CONFIG_COMMON_RESET_HI3660=y +CONFIG_COMMON_RESET_HI6220=y +CONFIG_RESET_TEGRA_BPMP=y +# CONFIG_FMC is not set + +# +# PHY Subsystem +# +CONFIG_GENERIC_PHY=y +CONFIG_PHY_XGENE=m +CONFIG_PHY_SUN4I_USB=m +# CONFIG_PHY_SUN9I_USB is not set +CONFIG_PHY_MESON8B_USB2=m +CONFIG_PHY_MESON_GXL_USB2=y +CONFIG_PHY_MESON_GXL_USB3=y +# CONFIG_BCM_KONA_USB2_PHY is not set +CONFIG_PHY_HI6220_USB=m +# CONFIG_PHY_HISTB_COMBPHY is not set +# CONFIG_PHY_HISI_INNO_USB2 is not set +CONFIG_PHY_MVEBU_CP110_COMPHY=m +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_PHY_CPCAP_USB is not set +# CONFIG_PHY_MAPPHONE_MDM6600 is not set +CONFIG_PHY_QCOM_APQ8064_SATA=m +CONFIG_PHY_QCOM_IPQ806X_SATA=m +CONFIG_PHY_QCOM_QMP=m +CONFIG_PHY_QCOM_QUSB2=m +CONFIG_PHY_QCOM_UFS=m +# CONFIG_PHY_ROCKCHIP_DP is not set +CONFIG_PHY_ROCKCHIP_EMMC=m +CONFIG_PHY_ROCKCHIP_INNO_USB2=m +CONFIG_PHY_ROCKCHIP_PCIE=m +# CONFIG_PHY_ROCKCHIP_TYPEC is not set +# CONFIG_PHY_ROCKCHIP_USB is not set +# CONFIG_PHY_SAMSUNG_USB2 is not set +CONFIG_PHY_TEGRA_XUSB=m +# CONFIG_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +# CONFIG_ARM_CCI400_PMU is not set +# CONFIG_ARM_CCI5xx_PMU is not set +# CONFIG_ARM_CCN is not set +CONFIG_ARM_PMU=y +CONFIG_ARM_PMU_ACPI=y +# CONFIG_ARM_DSU_PMU is not set +# CONFIG_HISI_PMU is not set +# CONFIG_QCOM_L2_PMU is not set +# CONFIG_QCOM_L3_PMU is not set +# CONFIG_XGENE_PMU is not set +# CONFIG_ARM_SPE_PMU is not set +CONFIG_RAS=y + +# +# Android +# +# CONFIG_ANDROID is not set +CONFIG_LIBNVDIMM=y +CONFIG_BLK_DEV_PMEM=y +CONFIG_ND_BLK=y +CONFIG_ND_CLAIM=y +CONFIG_ND_BTT=y +CONFIG_BTT=y +CONFIG_OF_PMEM=y +CONFIG_DAX_DRIVER=y +CONFIG_DAX=y +CONFIG_DEV_DAX=m +CONFIG_NVMEM=y +CONFIG_QCOM_QFPROM=m +# CONFIG_ROCKCHIP_EFUSE is not set +CONFIG_NVMEM_SUNXI_SID=m +# CONFIG_MESON_EFUSE is not set +# CONFIG_MESON_MX_EFUSE is not set + +# +# HW tracing support +# +# CONFIG_STM is not set +# CONFIG_INTEL_TH is not set +# CONFIG_FPGA is not set +# CONFIG_FSI is not set +CONFIG_TEE=m + +# +# TEE drivers +# +CONFIG_OPTEE=m +CONFIG_PM_OPP=y +# CONFIG_SIOX is not set +# CONFIG_SLIMBUS is not set + +# +# Firmware Drivers +# +CONFIG_ARM_PSCI_FW=y +# CONFIG_ARM_PSCI_CHECKER is not set +CONFIG_ARM_SCMI_PROTOCOL=y +CONFIG_ARM_SCMI_POWER_DOMAIN=m +# CONFIG_ARM_SCPI_PROTOCOL is not set +# CONFIG_ARM_SDE_INTERFACE is not set +# CONFIG_FIRMWARE_MEMMAP is not set +CONFIG_DMIID=y +CONFIG_DMI_SYSFS=y +CONFIG_RASPBERRYPI_FIRMWARE=y +# CONFIG_FW_CFG_SYSFS is not set +CONFIG_QCOM_SCM=y +CONFIG_QCOM_SCM_64=y +# CONFIG_QCOM_SCM_DOWNLOAD_MODE_DEFAULT is not set +CONFIG_HAVE_ARM_SMCCC=y +# CONFIG_GOOGLE_FIRMWARE is not set + +# +# EFI (Extensible Firmware Interface) Support +# +CONFIG_EFI_VARS=m +CONFIG_EFI_ESRT=y +CONFIG_EFI_VARS_PSTORE=m +# CONFIG_EFI_VARS_PSTORE_DEFAULT_DISABLE is not set +CONFIG_EFI_PARAMS_FROM_FDT=y +CONFIG_EFI_RUNTIME_WRAPPERS=y +CONFIG_EFI_ARMSTUB=y +# CONFIG_EFI_BOOTLOADER_CONTROL is not set +# CONFIG_EFI_CAPSULE_LOADER is not set +# CONFIG_EFI_TEST is not set +# CONFIG_RESET_ATTACK_MITIGATION is not set +CONFIG_MESON_SM=y + +# +# Tegra firmware driver +# +CONFIG_TEGRA_IVC=y +CONFIG_TEGRA_BPMP=y +CONFIG_ACPI=y +CONFIG_ACPI_GENERIC_GSI=y +CONFIG_ACPI_CCA_REQUIRED=y +# CONFIG_ACPI_DEBUGGER is not set +CONFIG_ACPI_SPCR_TABLE=y +# CONFIG_ACPI_EC_DEBUGFS is not set +CONFIG_ACPI_BUTTON=y +CONFIG_ACPI_FAN=y +CONFIG_ACPI_TAD=m +# CONFIG_ACPI_DOCK is not set +CONFIG_ACPI_PROCESSOR_IDLE=y +CONFIG_ACPI_MCFG=y +CONFIG_ACPI_CPPC_LIB=y +CONFIG_ACPI_PROCESSOR=y +# CONFIG_ACPI_IPMI is not set +CONFIG_ACPI_HOTPLUG_CPU=y +CONFIG_ACPI_THERMAL=y +CONFIG_ACPI_NUMA=y +CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y +CONFIG_ACPI_TABLE_UPGRADE=y +# CONFIG_ACPI_DEBUG is not set +# CONFIG_ACPI_PCI_SLOT is not set +CONFIG_ACPI_CONTAINER=y +# CONFIG_ACPI_HED is not set +# CONFIG_ACPI_CUSTOM_METHOD is not set +# CONFIG_ACPI_BGRT is not set +CONFIG_ACPI_REDUCED_HARDWARE_ONLY=y +CONFIG_ACPI_NFIT=y +CONFIG_HAVE_ACPI_APEI=y +# CONFIG_ACPI_APEI is not set +# CONFIG_PMIC_OPREGION is not set +# CONFIG_ACPI_CONFIGFS is not set +CONFIG_ACPI_IORT=y +CONFIG_ACPI_GTDT=y + +# +# File systems +# +CONFIG_DCACHE_WORD_ACCESS=y +CONFIG_FS_IOMAP=y +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=m +CONFIG_EXT4_USE_FOR_EXT2=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +CONFIG_EXT4_ENCRYPTION=y +CONFIG_EXT4_FS_ENCRYPTION=y +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=m +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=m +CONFIG_REISERFS_FS=m +# CONFIG_REISERFS_CHECK is not set +# CONFIG_REISERFS_PROC_INFO is not set +CONFIG_REISERFS_FS_XATTR=y +CONFIG_REISERFS_FS_POSIX_ACL=y +CONFIG_REISERFS_FS_SECURITY=y +CONFIG_JFS_FS=m +CONFIG_JFS_POSIX_ACL=y +CONFIG_JFS_SECURITY=y +# CONFIG_JFS_DEBUG is not set +# CONFIG_JFS_STATISTICS is not set +CONFIG_XFS_FS=m +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_RT=y +# CONFIG_XFS_ONLINE_SCRUB is not set +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_DEBUG_MASKLOG=y +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +# CONFIG_BTRFS_FS_REF_VERIFY is not set +CONFIG_NILFS2_FS=m +CONFIG_F2FS_FS=m +CONFIG_F2FS_STAT_FS=y +CONFIG_F2FS_FS_XATTR=y +CONFIG_F2FS_FS_POSIX_ACL=y +CONFIG_F2FS_FS_SECURITY=y +# CONFIG_F2FS_CHECK_FS is not set +CONFIG_F2FS_FS_ENCRYPTION=y +# CONFIG_F2FS_IO_TRACE is not set +# CONFIG_F2FS_FAULT_INJECTION is not set +CONFIG_FS_DAX=y +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_EXPORTFS_BLOCK_OPS=y +CONFIG_FILE_LOCKING=y +CONFIG_MANDATORY_FILE_LOCKING=y +CONFIG_FS_ENCRYPTION=m +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +CONFIG_QUOTA_NETLINK_INTERFACE=y +CONFIG_PRINT_QUOTA_WARNING=y +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=m +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QUOTACTL=y +CONFIG_AUTOFS4_FS=m +CONFIG_FUSE_FS=m +CONFIG_CUSE=m +CONFIG_OVERLAY_FS=m +# CONFIG_OVERLAY_FS_REDIRECT_DIR is not set +CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW=y +# CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_XINO_AUTO is not set + +# +# Caches +# +CONFIG_FSCACHE=m +CONFIG_FSCACHE_STATS=y +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=m +CONFIG_MSDOS_FS=m +CONFIG_VFAT_FS=m +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="ascii" +CONFIG_FAT_DEFAULT_UTF8=y +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +# CONFIG_NTFS_RW is not set + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_VMCORE=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_CHILDREN=y +CONFIG_KERNFS=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_ARCH_HAS_GIGANTIC_PAGE=y +CONFIG_CONFIGFS_FS=m +CONFIG_EFIVAR_FS=m +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ORANGEFS_FS is not set +CONFIG_ADFS_FS=m +# CONFIG_ADFS_FS_RW is not set +CONFIG_AFFS_FS=m +CONFIG_ECRYPT_FS=m +CONFIG_ECRYPT_FS_MESSAGING=y +CONFIG_HFS_FS=m +CONFIG_HFSPLUS_FS=m +# CONFIG_HFSPLUS_FS_POSIX_ACL is not set +CONFIG_BEFS_FS=m +# CONFIG_BEFS_DEBUG is not set +CONFIG_BFS_FS=m +CONFIG_EFS_FS=m +CONFIG_JFFS2_FS=m +CONFIG_JFFS2_FS_DEBUG=0 +CONFIG_JFFS2_FS_WRITEBUFFER=y +# CONFIG_JFFS2_FS_WBUF_VERIFY is not set +CONFIG_JFFS2_SUMMARY=y +CONFIG_JFFS2_FS_XATTR=y +CONFIG_JFFS2_FS_POSIX_ACL=y +CONFIG_JFFS2_FS_SECURITY=y +CONFIG_JFFS2_COMPRESSION_OPTIONS=y +CONFIG_JFFS2_ZLIB=y +CONFIG_JFFS2_LZO=y +CONFIG_JFFS2_RTIME=y +# CONFIG_JFFS2_RUBIN is not set +# CONFIG_JFFS2_CMODE_NONE is not set +CONFIG_JFFS2_CMODE_PRIORITY=y +# CONFIG_JFFS2_CMODE_SIZE is not set +# CONFIG_JFFS2_CMODE_FAVOURLZO is not set +CONFIG_UBIFS_FS=m +CONFIG_UBIFS_FS_ADVANCED_COMPR=y +CONFIG_UBIFS_FS_LZO=y +CONFIG_UBIFS_FS_ZLIB=y +# CONFIG_UBIFS_ATIME_SUPPORT is not set +# CONFIG_UBIFS_FS_ENCRYPTION is not set +CONFIG_UBIFS_FS_SECURITY=y +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=m +CONFIG_SQUASHFS_FILE_CACHE=y +# CONFIG_SQUASHFS_FILE_DIRECT is not set +CONFIG_SQUASHFS_DECOMP_SINGLE=y +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +# CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU is not set +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +CONFIG_SQUASHFS_ZSTD=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +CONFIG_VXFS_FS=m +CONFIG_MINIX_FS=m +CONFIG_OMFS_FS=m +CONFIG_HPFS_FS=m +CONFIG_QNX4FS_FS=m +CONFIG_QNX6FS_FS=m +# CONFIG_QNX6FS_DEBUG is not set +CONFIG_ROMFS_FS=m +# CONFIG_ROMFS_BACKED_BY_BLOCK is not set +# CONFIG_ROMFS_BACKED_BY_MTD is not set +CONFIG_ROMFS_BACKED_BY_BOTH=y +CONFIG_ROMFS_ON_BLOCK=y +CONFIG_ROMFS_ON_MTD=y +CONFIG_PSTORE=y +CONFIG_PSTORE_DEFLATE_COMPRESS=m +# CONFIG_PSTORE_LZO_COMPRESS is not set +# CONFIG_PSTORE_LZ4_COMPRESS is not set +# CONFIG_PSTORE_LZ4HC_COMPRESS is not set +# CONFIG_PSTORE_842_COMPRESS is not set +CONFIG_PSTORE_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y +CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" +# CONFIG_PSTORE_CONSOLE is not set +# CONFIG_PSTORE_PMSG is not set +# CONFIG_PSTORE_FTRACE is not set +CONFIG_PSTORE_RAM=m +CONFIG_SYSV_FS=m +CONFIG_UFS_FS=m +# CONFIG_UFS_FS_WRITE is not set +# CONFIG_UFS_DEBUG is not set +CONFIG_EXOFS_FS=m +# CONFIG_EXOFS_DEBUG is not set +CONFIG_ORE=m +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=m +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_SWAP=y +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_2=y +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_FLEXFILE_LAYOUT=m +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +# CONFIG_NFS_V4_1_MIGRATION is not set +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFS_FSCACHE=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_DEBUG=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_PNFS=y +CONFIG_NFSD_BLOCKLAYOUT=y +# CONFIG_NFSD_SCSILAYOUT is not set +# CONFIG_NFSD_FLEXFILELAYOUT is not set +CONFIG_NFSD_V4_SECURITY_LABEL=y +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_GRACE_PERIOD=m +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_SWAP=y +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_SUNRPC_DEBUG=y +CONFIG_SUNRPC_XPRT_RDMA=m +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_FS_POSIX_ACL=y +CONFIG_CIFS=m +# CONFIG_CIFS_STATS is not set +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_ACL=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +# CONFIG_CIFS_DEBUG_DUMP_KEYS is not set +CONFIG_CIFS_DFS_UPCALL=y +# CONFIG_CIFS_SMB311 is not set +# CONFIG_CIFS_SMB_DIRECT is not set +CONFIG_CIFS_FSCACHE=y +CONFIG_CODA_FS=m +CONFIG_AFS_FS=m +# CONFIG_AFS_DEBUG is not set +CONFIG_AFS_FSCACHE=y +CONFIG_9P_FS=m +CONFIG_9P_FSCACHE=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=m +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_ASCII=m +CONFIG_NLS_ISO8859_1=m +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_DLM=m +CONFIG_DLM_DEBUG=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_MMIO=y +CONFIG_HAVE_KVM_MSI=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_KVM_VFIO=y +CONFIG_HAVE_KVM_ARCH_TLB_FLUSH_ALL=y +CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y +CONFIG_KVM_COMPAT=y +CONFIG_HAVE_KVM_IRQ_BYPASS=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=y +CONFIG_KVM_ARM_HOST=y +CONFIG_KVM_ARM_PMU=y +CONFIG_KVM_INDIRECT_VECTORS=y +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_VSOCK=m +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set + +# +# Kernel hacking +# + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_CONSOLE_LOGLEVEL_DEFAULT=7 +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_BOOT_PRINTK_DELAY=y +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +# CONFIG_DEBUG_INFO_DWARF4 is not set +# CONFIG_GDB_SCRIPTS is not set +CONFIG_ENABLE_WARN_DEPRECATED=y +CONFIG_ENABLE_MUST_CHECK=y +CONFIG_FRAME_WARN=2048 +CONFIG_STRIP_ASM_SYMS=y +# CONFIG_READABLE_ASM is not set +# CONFIG_UNUSED_SYMBOLS is not set +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +CONFIG_ARCH_WANT_FRAME_POINTERS=y +CONFIG_FRAME_POINTER=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 +CONFIG_MAGIC_SYSRQ_SERIAL=y +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +CONFIG_PAGE_EXTENSION=y +# CONFIG_DEBUG_PAGEALLOC is not set +CONFIG_PAGE_POISONING=y +CONFIG_PAGE_POISONING_NO_SANITY=y +# CONFIG_PAGE_POISONING_ZERO is not set +# CONFIG_DEBUG_PAGE_REF is not set +# CONFIG_DEBUG_RODATA_TEST is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +CONFIG_ARCH_HAS_DEBUG_VIRTUAL=y +# CONFIG_DEBUG_VIRTUAL is not set +CONFIG_DEBUG_MEMORY_INIT=y +# CONFIG_DEBUG_PER_CPU_MAPS is not set +CONFIG_HAVE_ARCH_KASAN=y +# CONFIG_KASAN is not set +CONFIG_ARCH_HAS_KCOV=y +# CONFIG_KCOV is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_LOCKUP_DETECTOR=y +CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_WQ_WATCHDOG is not set +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_DEBUG_TIMEKEEPING is not set + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +# CONFIG_LOCK_TORTURE_TEST is not set +# CONFIG_WW_MUTEX_SELFTEST is not set +CONFIG_STACKTRACE=y +# CONFIG_WARN_ALL_UNSEEDED_RANDOM is not set +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_HAVE_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_BUGVERBOSE=y +CONFIG_DEBUG_LIST=y +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_RCU_PERF_TEST is not set +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_WQ_FORCE_RR_CPU is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +# CONFIG_CPU_HOTPLUG_STATE_CONTROL is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +# CONFIG_NETDEV_NOTIFIER_ERROR_INJECT is not set +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_HAVE_C_RECORDMCOUNT=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_PREEMPTIRQ_EVENTS is not set +# CONFIG_IRQSOFF_TRACER is not set +# CONFIG_SCHED_TRACER is not set +# CONFIG_HWLAT_TRACER is not set +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENTS=y +CONFIG_UPROBE_EVENTS=y +CONFIG_BPF_EVENTS=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +# CONFIG_FUNCTION_PROFILER is not set +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_HIST_TRIGGERS is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_TRACE_EVAL_MAP_FILE is not set +CONFIG_TRACING_EVENTS_GPIO=y +# CONFIG_DMA_API_DEBUG is not set +CONFIG_RUNTIME_TESTING_MENU=y +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_TEST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +# CONFIG_RBTREE_TEST is not set +# CONFIG_INTERVAL_TREE_TEST is not set +# CONFIG_PERCPU_TEST is not set +# CONFIG_ATOMIC64_SELFTEST is not set +# CONFIG_ASYNC_RAID6_TEST is not set +# CONFIG_TEST_HEXDUMP is not set +# CONFIG_TEST_STRING_HELPERS is not set +# CONFIG_TEST_KSTRTOX is not set +# CONFIG_TEST_PRINTF is not set +# CONFIG_TEST_BITMAP is not set +# CONFIG_TEST_UUID is not set +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_TEST_HASH is not set +# CONFIG_TEST_LKM is not set +CONFIG_TEST_USER_COPY=m +CONFIG_TEST_BPF=m +# CONFIG_FIND_BIT_BENCHMARK is not set +CONFIG_TEST_FIRMWARE=m +# CONFIG_TEST_SYSCTL is not set +# CONFIG_TEST_UDELAY is not set +CONFIG_TEST_STATIC_KEYS=m +# CONFIG_TEST_KMOD is not set +# CONFIG_MEMTEST is not set +CONFIG_BUG_ON_DATA_CORRUPTION=y +# CONFIG_SAMPLES is not set +CONFIG_HAVE_ARCH_KGDB=y +# CONFIG_KGDB is not set +CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y +# CONFIG_UBSAN is not set +CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y +CONFIG_STRICT_DEVMEM=y +CONFIG_IO_STRICT_DEVMEM=y +# CONFIG_ARM64_PTDUMP_DEBUGFS is not set +# CONFIG_PID_IN_CONTEXTIDR is not set +# CONFIG_ARM64_RANDOMIZE_TEXT_OFFSET is not set +# CONFIG_DEBUG_WX is not set +# CONFIG_DEBUG_ALIGN_RODATA is not set +# CONFIG_DEBUG_EFI is not set +# CONFIG_ARM64_RELOC_TEST is not set +# CONFIG_CORESIGHT is not set + +# +# Security options +# +CONFIG_KEYS=y +CONFIG_KEYS_COMPAT=y +# CONFIG_PERSISTENT_KEYRINGS is not set +# CONFIG_BIG_KEYS is not set +# CONFIG_ENCRYPTED_KEYS is not set +# CONFIG_KEY_DH_OPERATIONS is not set +CONFIG_SECURITY_DMESG_RESTRICT=y +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +# CONFIG_SECURITY_INFINIBAND is not set +CONFIG_SECURITY_NETWORK_XFRM=y +CONFIG_SECURITY_PATH=y +CONFIG_LSM_MMAP_MIN_ADDR=32768 +CONFIG_HAVE_HARDENED_USERCOPY_ALLOCATOR=y +CONFIG_HARDENED_USERCOPY=y +CONFIG_HARDENED_USERCOPY_FALLBACK=y +# CONFIG_HARDENED_USERCOPY_PAGESPAN is not set +# CONFIG_FORTIFY_SOURCE is not set +# CONFIG_STATIC_USERMODEHELPER is not set +CONFIG_SECURITY_SELINUX=y +# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_DEVELOP=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=0 +# CONFIG_SECURITY_SMACK is not set +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 +CONFIG_SECURITY_APPARMOR_HASH=y +CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y +# CONFIG_SECURITY_APPARMOR_DEBUG is not set +# CONFIG_SECURITY_LOADPIN is not set +CONFIG_SECURITY_YAMA=y +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_TRUSTED_KEYRING=y +CONFIG_INTEGRITY_AUDIT=y +# CONFIG_IMA is not set +# CONFIG_EVM is not set +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +CONFIG_DEFAULT_SECURITY_APPARMOR=y +# CONFIG_DEFAULT_SECURITY_DAC is not set +CONFIG_DEFAULT_SECURITY="apparmor" +CONFIG_XOR_BLOCKS=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=m +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=m +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=m +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_KPP2=y +CONFIG_CRYPTO_KPP=m +CONFIG_CRYPTO_ACOMP2=y +CONFIG_CRYPTO_RSA=y +CONFIG_CRYPTO_DH=m +CONFIG_CRYPTO_ECDH=m +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +# CONFIG_CRYPTO_MANAGER_DISABLE_TESTS is not set +CONFIG_CRYPTO_GF128MUL=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_CRYPTD=m +# CONFIG_CRYPTO_MCRYPTD is not set +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m +CONFIG_CRYPTO_SIMD=m +CONFIG_CRYPTO_ENGINE=m + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_SEQIV=m +CONFIG_CRYPTO_ECHAINIV=m + +# +# Block modes +# +CONFIG_CRYPTO_CBC=m +CONFIG_CRYPTO_CFB=m +CONFIG_CRYPTO_CTR=m +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=m +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m +# CONFIG_CRYPTO_KEYWRAP is not set + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_VMAC=m + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=m +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_GHASH=m +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=m +CONFIG_CRYPTO_SHA3=m +# CONFIG_CRYPTO_SM3 is not set +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +# CONFIG_CRYPTO_AES_TI is not set +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_SPECK=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=m +CONFIG_CRYPTO_LZO=y +# CONFIG_CRYPTO_842 is not set +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m + +# +# Random Number Generation +# +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_DRBG_MENU=m +CONFIG_CRYPTO_DRBG_HMAC=y +# CONFIG_CRYPTO_DRBG_HASH is not set +# CONFIG_CRYPTO_DRBG_CTR is not set +CONFIG_CRYPTO_DRBG=m +CONFIG_CRYPTO_JITTERENTROPY=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HW=y +CONFIG_CRYPTO_DEV_MARVELL_CESA=m +# CONFIG_CRYPTO_DEV_CCP is not set +CONFIG_CRYPTO_DEV_CPT=m +CONFIG_CAVIUM_CPT=m +CONFIG_CRYPTO_DEV_NITROX=m +CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m +# CONFIG_CRYPTO_DEV_CAVIUM_ZIP is not set +CONFIG_CRYPTO_DEV_QCE=m +# CONFIG_CRYPTO_DEV_ROCKCHIP is not set +CONFIG_CRYPTO_DEV_CHELSIO=m +# CONFIG_CHELSIO_IPSEC_INLINE is not set +CONFIG_CRYPTO_DEV_VIRTIO=m +CONFIG_CRYPTO_DEV_SAFEXCEL=m +# CONFIG_CRYPTO_DEV_CCREE is not set +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_PKCS7_MESSAGE_PARSER=y +# CONFIG_PKCS7_TEST_KEY is not set +# CONFIG_SIGNED_PE_FILE_VERIFICATION is not set + +# +# Certificates for signature checking +# +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="" +# CONFIG_SYSTEM_EXTRA_CERTIFICATE is not set +# CONFIG_SECONDARY_TRUSTED_KEYRING is not set +# CONFIG_SYSTEM_BLACKLIST_KEYRING is not set +CONFIG_ARM64_CRYPTO=y +CONFIG_CRYPTO_SHA256_ARM64=m +# CONFIG_CRYPTO_SHA512_ARM64 is not set +CONFIG_CRYPTO_SHA1_ARM64_CE=m +CONFIG_CRYPTO_SHA2_ARM64_CE=m +# CONFIG_CRYPTO_SHA512_ARM64_CE is not set +# CONFIG_CRYPTO_SHA3_ARM64 is not set +# CONFIG_CRYPTO_SM3_ARM64_CE is not set +CONFIG_CRYPTO_GHASH_ARM64_CE=m +# CONFIG_CRYPTO_CRCT10DIF_ARM64_CE is not set +CONFIG_CRYPTO_CRC32_ARM64_CE=y +CONFIG_CRYPTO_AES_ARM64=m +CONFIG_CRYPTO_AES_ARM64_CE=m +CONFIG_CRYPTO_AES_ARM64_CE_CCM=m +CONFIG_CRYPTO_AES_ARM64_CE_BLK=m +# CONFIG_CRYPTO_AES_ARM64_NEON_BLK is not set +# CONFIG_CRYPTO_CHACHA20_NEON is not set +# CONFIG_CRYPTO_AES_ARM64_BS is not set +CONFIG_CRYPTO_SPECK_NEON=m +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_BITREVERSE=y +CONFIG_HAVE_ARCH_BITREVERSE=y +CONFIG_RATIONAL=y +CONFIG_GENERIC_STRNCPY_FROM_USER=y +CONFIG_GENERIC_STRNLEN_USER=y +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_PCI_IOMAP=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +# CONFIG_INDIRECT_PIO is not set +CONFIG_CRC_CCITT=m +CONFIG_CRC16=m +CONFIG_CRC_T10DIF=y +CONFIG_CRC_ITU_T=m +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +# CONFIG_CRC4 is not set +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +CONFIG_CRC8=m +CONFIG_XXHASH=m +CONFIG_AUDIT_GENERIC=y +CONFIG_AUDIT_ARCH_COMPAT_GENERIC=y +CONFIG_AUDIT_COMPAT_GENERIC=y +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=m +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_ZSTD_COMPRESS=m +CONFIG_ZSTD_DECOMPRESS=m +CONFIG_XZ_DEC=y +# CONFIG_XZ_DEC_X86 is not set +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_ARM is not set +# CONFIG_XZ_DEC_ARMTHUMB is not set +# CONFIG_XZ_DEC_SPARC is not set +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_GENERIC_ALLOCATOR=y +CONFIG_REED_SOLOMON=m +CONFIG_REED_SOLOMON_ENC8=y +CONFIG_REED_SOLOMON_DEC8=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=m +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_BTREE=y +CONFIG_INTERVAL_TREE=y +CONFIG_RADIX_TREE_MULTIORDER=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_HAS_IOMEM=y +CONFIG_HAS_IOPORT_MAP=y +CONFIG_HAS_DMA=y +CONFIG_SGL_ALLOC=y +CONFIG_DMA_DIRECT_OPS=y +CONFIG_DMA_VIRT_OPS=y +CONFIG_CHECK_SIGNATURE=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_GLOB=y +# CONFIG_GLOB_SELFTEST is not set +CONFIG_NLATTR=y +CONFIG_LRU_CACHE=m +CONFIG_CLZ_TAB=y +CONFIG_CORDIC=m +# CONFIG_DDR is not set +CONFIG_IRQ_POLL=y +CONFIG_MPILIB=y +CONFIG_SIGNATURE=y +CONFIG_LIBFDT=y +CONFIG_OID_REGISTRY=y +CONFIG_UCS2_STRING=y +CONFIG_FONT_SUPPORT=y +# CONFIG_FONTS is not set +CONFIG_FONT_8x8=y +CONFIG_FONT_8x16=y +CONFIG_SG_POOL=y +CONFIG_ARCH_HAS_SG_CHAIN=y +CONFIG_ARCH_HAS_PMEM_API=y +CONFIG_ARCH_HAS_UACCESS_FLUSHCACHE=y +CONFIG_SBITMAP=y +# CONFIG_STRING_SELFTEST is not set diff --git a/gnu/packages/aux-files/linux-libre/4.16-i686.conf b/gnu/packages/aux-files/linux-libre/4.17-i686.conf index b9793d997d..66329038cf 100644 --- a/gnu/packages/aux-files/linux-libre/4.16-i686.conf +++ b/gnu/packages/aux-files/linux-libre/4.17-i686.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.16.0-gnu Kernel Configuration +# Linux/x86 4.17.0-gnu Kernel Configuration # # CONFIG_64BIT is not set CONFIG_X86_32=y @@ -25,6 +25,7 @@ CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_ARCH_HAS_CPU_RELAX=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_FILTER_PGPROT=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y @@ -134,7 +135,6 @@ CONFIG_TREE_RCU=y # CONFIG_RCU_EXPERT is not set CONFIG_SRCU=y CONFIG_TREE_SRCU=y -# CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_NEED_SEGCBLIST=y CONFIG_BUILD_BIN2C=y @@ -220,7 +220,6 @@ CONFIG_MEMBARRIER=y CONFIG_CHECKPOINT_RESTORE=y CONFIG_KALLSYMS=y CONFIG_KALLSYMS_ALL=y -# CONFIG_KALLSYMS_ABSOLUTE_PERCPU is not set CONFIG_KALLSYMS_BASE_RELATIVE=y CONFIG_BPF_SYSCALL=y CONFIG_USERFAULTFD=y @@ -259,8 +258,6 @@ CONFIG_JUMP_LABEL=y # CONFIG_STATIC_KEYS_SELFTEST is not set CONFIG_OPTPROBES=y CONFIG_KPROBES_ON_FTRACE=y -# CONFIG_UPROBES is not set -# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_USE_BUILTIN_BSWAP=y CONFIG_KRETPROBES=y @@ -309,7 +306,6 @@ CONFIG_HAVE_CC_STACKPROTECTOR=y # CONFIG_CC_STACKPROTECTOR_REGULAR is not set CONFIG_CC_STACKPROTECTOR_STRONG=y # CONFIG_CC_STACKPROTECTOR_AUTO is not set -CONFIG_THIN_ARCHIVES=y CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y @@ -321,20 +317,14 @@ CONFIG_HAVE_ARCH_MMAP_RND_BITS=y CONFIG_HAVE_EXIT_THREAD=y CONFIG_ARCH_MMAP_RND_BITS=8 CONFIG_HAVE_COPY_THREAD_TLS=y -# CONFIG_HAVE_ARCH_HASH is not set CONFIG_ISA_BUS_API=y CONFIG_CLONE_BACKWARDS=y CONFIG_OLD_SIGSUSPEND3=y CONFIG_OLD_SIGACTION=y -# CONFIG_CPU_NO_EFFICIENT_FFS is not set -# CONFIG_HAVE_ARCH_VMAP_STACK is not set -# CONFIG_ARCH_OPTIONAL_KERNEL_RWX is not set -# CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT is not set CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y CONFIG_STRICT_KERNEL_RWX=y CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y CONFIG_STRICT_MODULE_RWX=y -CONFIG_ARCH_HAS_PHYS_TO_DMA=y CONFIG_ARCH_HAS_REFCOUNT=y CONFIG_REFCOUNT_FULL=y @@ -439,7 +429,6 @@ CONFIG_FREEZER=y CONFIG_ZONE_DMA=y CONFIG_SMP=y CONFIG_X86_FEATURE_NAMES=y -CONFIG_X86_FAST_FEATURE_TESTS=y CONFIG_X86_MPPARSE=y # CONFIG_GOLDFISH is not set CONFIG_RETPOLINE=y @@ -553,7 +542,6 @@ CONFIG_PERF_EVENTS_INTEL_RAPL=y CONFIG_PERF_EVENTS_INTEL_CSTATE=y CONFIG_PERF_EVENTS_AMD_POWER=m # CONFIG_X86_LEGACY_VM86 is not set -# CONFIG_VM86 is not set CONFIG_X86_16BIT=y CONFIG_X86_ESPFIX32=y # CONFIG_TOSHIBA is not set @@ -577,7 +565,6 @@ CONFIG_X86_PAE=y CONFIG_ARCH_PHYS_ADDR_T_64BIT=y CONFIG_ARCH_DMA_ADDR_T_64BIT=y CONFIG_ARCH_HAS_MEM_ENCRYPT=y -CONFIG_NEED_NODE_MEMMAP_SIZE=y CONFIG_ARCH_FLATMEM_ENABLE=y CONFIG_ARCH_SPARSEMEM_ENABLE=y CONFIG_ARCH_SELECT_MEMORY_MODEL=y @@ -593,7 +580,6 @@ CONFIG_HAVE_MEMBLOCK_NODE_MAP=y CONFIG_HAVE_GENERIC_GUP=y CONFIG_ARCH_DISCARD_MEMBLOCK=y CONFIG_MEMORY_ISOLATION=y -# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set CONFIG_MEMORY_HOTPLUG=y CONFIG_MEMORY_HOTPLUG_SPARSE=y # CONFIG_MEMORY_HOTPLUG_DEFAULT_ONLINE is not set @@ -613,7 +599,6 @@ CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 CONFIG_TRANSPARENT_HUGEPAGE=y CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y # CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set -# CONFIG_ARCH_WANTS_THP_SWAP is not set CONFIG_TRANSPARENT_HUGE_PAGECACHE=y CONFIG_CLEANCACHE=y CONFIG_FRONTSWAP=y @@ -716,6 +701,7 @@ CONFIG_ACPI_BATTERY=y CONFIG_ACPI_BUTTON=y CONFIG_ACPI_VIDEO=m CONFIG_ACPI_FAN=y +CONFIG_ACPI_TAD=m CONFIG_ACPI_DOCK=y CONFIG_ACPI_CPU_FREQ_PSS=y CONFIG_ACPI_PROCESSOR_CSTATE=y @@ -726,7 +712,6 @@ CONFIG_ACPI_HOTPLUG_CPU=y CONFIG_ACPI_PROCESSOR_AGGREGATOR=m CONFIG_ACPI_THERMAL=y CONFIG_ACPI_CUSTOM_DSDT_FILE="" -# CONFIG_ACPI_CUSTOM_DSDT is not set CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_TABLE_UPGRADE=y # CONFIG_ACPI_DEBUG is not set @@ -817,7 +802,6 @@ CONFIG_X86_SPEEDSTEP_RELAXED_CAP_CHECK=y CONFIG_CPU_IDLE=y CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_IDLE_GOV_MENU=y -# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set CONFIG_INTEL_IDLE=y # @@ -1002,6 +986,7 @@ CONFIG_NET_IPGRE_DEMUX=m CONFIG_NET_IP_TUNNEL=m CONFIG_NET_IPGRE=m CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE_COMMON=y CONFIG_IP_MROUTE=y # CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set CONFIG_IP_PIMSM_V1=y @@ -1139,8 +1124,8 @@ CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_REDIRECT=m CONFIG_NETFILTER_SYNPROXY=m CONFIG_NF_TABLES=m -CONFIG_NF_TABLES_INET=m -CONFIG_NF_TABLES_NETDEV=m +# CONFIG_NF_TABLES_INET is not set +# CONFIG_NF_TABLES_NETDEV is not set CONFIG_NFT_EXTHDR=m CONFIG_NFT_META=m CONFIG_NFT_RT=m @@ -1160,15 +1145,8 @@ CONFIG_NFT_OBJREF=m CONFIG_NFT_QUEUE=m CONFIG_NFT_QUOTA=m CONFIG_NFT_REJECT=m -CONFIG_NFT_REJECT_INET=m CONFIG_NFT_COMPAT=m CONFIG_NFT_HASH=m -CONFIG_NFT_FIB=m -CONFIG_NFT_FIB_INET=m -CONFIG_NF_DUP_NETDEV=m -CONFIG_NFT_DUP_NETDEV=m -CONFIG_NFT_FWD_NETDEV=m -CONFIG_NFT_FIB_NETDEV=m CONFIG_NF_FLOW_TABLE_INET=m CONFIG_NF_FLOW_TABLE=m CONFIG_NETFILTER_XTABLES=m @@ -1326,22 +1304,15 @@ CONFIG_IP_VS_PE_SIP=m CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_SOCKET_IPV4=m -CONFIG_NF_TABLES_IPV4=m -CONFIG_NFT_CHAIN_ROUTE_IPV4=m -CONFIG_NFT_REJECT_IPV4=m -CONFIG_NFT_DUP_IPV4=m -CONFIG_NFT_FIB_IPV4=m -CONFIG_NF_TABLES_ARP=m +# CONFIG_NF_TABLES_IPV4 is not set +# CONFIG_NF_TABLES_ARP is not set CONFIG_NF_FLOW_TABLE_IPV4=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_IPV4=m CONFIG_NF_REJECT_IPV4=m CONFIG_NF_NAT_IPV4=m -CONFIG_NFT_CHAIN_NAT_IPV4=m CONFIG_NF_NAT_MASQUERADE_IPV4=m -CONFIG_NFT_MASQ_IPV4=m -CONFIG_NFT_REDIR_IPV4=m CONFIG_NF_NAT_SNMP_BASIC=m CONFIG_NF_NAT_PROTO_GRE=m CONFIG_NF_NAT_PPTP=m @@ -1374,20 +1345,13 @@ CONFIG_IP_NF_ARP_MANGLE=m CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_SOCKET_IPV6=m -CONFIG_NF_TABLES_IPV6=m -CONFIG_NFT_CHAIN_ROUTE_IPV6=m -CONFIG_NFT_REJECT_IPV6=m -CONFIG_NFT_DUP_IPV6=m -CONFIG_NFT_FIB_IPV6=m +# CONFIG_NF_TABLES_IPV6 is not set CONFIG_NF_FLOW_TABLE_IPV6=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_REJECT_IPV6=m CONFIG_NF_LOG_IPV6=m CONFIG_NF_NAT_IPV6=m -CONFIG_NFT_CHAIN_NAT_IPV6=m CONFIG_NF_NAT_MASQUERADE_IPV6=m -CONFIG_NFT_MASQ_IPV6=m -CONFIG_NFT_REDIR_IPV6=m CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_EUI64=m @@ -1414,10 +1378,7 @@ CONFIG_IP6_NF_TARGET_NPT=m # DECnet: Netfilter Configuration # CONFIG_DECNET_NF_GRABULATOR=m -CONFIG_NF_TABLES_BRIDGE=m -CONFIG_NFT_BRIDGE_META=m -CONFIG_NFT_BRIDGE_REJECT=m -CONFIG_NF_LOG_BRIDGE=m +# CONFIG_NF_TABLES_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_T_FILTER=m @@ -1467,6 +1428,7 @@ CONFIG_RDS_TCP=m CONFIG_TIPC=m CONFIG_TIPC_MEDIA_IB=y CONFIG_TIPC_MEDIA_UDP=y +CONFIG_TIPC_DIAG=m CONFIG_ATM=m CONFIG_ATM_CLIP=m # CONFIG_ATM_CLIP_NO_ICMP is not set @@ -1596,6 +1558,7 @@ CONFIG_NET_EMATCH_META=m CONFIG_NET_EMATCH_TEXT=m CONFIG_NET_EMATCH_CANID=m CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_IPT=m CONFIG_NET_CLS_ACT=y CONFIG_NET_ACT_POLICE=m CONFIG_NET_ACT_GACT=m @@ -1791,12 +1754,12 @@ CONFIG_BT_HCIBFUSB=m CONFIG_BT_HCIDTL1=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBLUECARD=m -CONFIG_BT_HCIBTUART=m CONFIG_BT_HCIVHCI=m CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m CONFIG_BT_WILINK=m +CONFIG_BT_HCIRSI=m CONFIG_AF_RXRPC=m CONFIG_AF_RXRPC_IPV6=y # CONFIG_AF_RXRPC_INJECT_LOSS is not set @@ -1933,7 +1896,6 @@ CONFIG_DEV_COREDUMP=y # CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set # CONFIG_TEST_ASYNC_DRIVER_PROBE is not set CONFIG_SYS_HYPERVISOR=y -# CONFIG_GENERIC_CPU_DEVICES is not set CONFIG_GENERIC_CPU_AUTOPROBE=y CONFIG_GENERIC_CPU_VULNERABILITIES=y CONFIG_REGMAP=y @@ -1992,13 +1954,8 @@ CONFIG_MTD_GEN_PROBE=m CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y -# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set -# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set -# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set CONFIG_MTD_CFI_I1=y CONFIG_MTD_CFI_I2=y -# CONFIG_MTD_CFI_I4 is not set -# CONFIG_MTD_CFI_I8 is not set CONFIG_MTD_CFI_INTELEXT=m CONFIG_MTD_CFI_AMDSTD=m CONFIG_MTD_CFI_STAA=m @@ -2055,6 +2012,11 @@ CONFIG_MTD_BLOCK2MTD=m CONFIG_MTD_DOCG3=m CONFIG_BCH_CONST_M=14 CONFIG_BCH_CONST_T=4 +CONFIG_MTD_ONENAND=m +CONFIG_MTD_ONENAND_VERIFY_WRITE=y +CONFIG_MTD_ONENAND_GENERIC=m +# CONFIG_MTD_ONENAND_OTP is not set +CONFIG_MTD_ONENAND_2X_PROGRAM=y CONFIG_MTD_NAND_ECC=m # CONFIG_MTD_NAND_ECC_SMC is not set CONFIG_MTD_NAND=m @@ -2064,7 +2026,6 @@ CONFIG_MTD_SM_COMMON=m CONFIG_MTD_NAND_DENALI=m CONFIG_MTD_NAND_DENALI_PCI=m CONFIG_MTD_NAND_GPIO=m -# CONFIG_MTD_NAND_OMAP_BCH_BUILD is not set CONFIG_MTD_NAND_RICOH=m CONFIG_MTD_NAND_DISKONCHIP=m # CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set @@ -2075,11 +2036,6 @@ CONFIG_MTD_NAND_CAFE=m CONFIG_MTD_NAND_CS553X=m CONFIG_MTD_NAND_NANDSIM=m CONFIG_MTD_NAND_PLATFORM=m -CONFIG_MTD_ONENAND=m -CONFIG_MTD_ONENAND_VERIFY_WRITE=y -CONFIG_MTD_ONENAND_GENERIC=m -# CONFIG_MTD_ONENAND_OTP is not set -CONFIG_MTD_ONENAND_2X_PROGRAM=y # # LPDDR & LPDDR2 PCM memory drivers @@ -2106,7 +2062,6 @@ CONFIG_PARPORT_SERIAL=m CONFIG_PARPORT_PC_FIFO=y # CONFIG_PARPORT_PC_SUPERIO is not set CONFIG_PARPORT_PC_PCMCIA=m -# CONFIG_PARPORT_GSC is not set CONFIG_PARPORT_AX88796=m CONFIG_PARPORT_1284=y CONFIG_PARPORT_NOT_PC=y @@ -2159,7 +2114,6 @@ CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set CONFIG_BLK_DEV_DAC960=m CONFIG_BLK_DEV_UMEM=m -# CONFIG_BLK_DEV_COW_COMMON is not set CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 CONFIG_BLK_DEV_CRYPTOLOOP=m @@ -2294,10 +2248,6 @@ CONFIG_VMWARE_VMCI=m # CONFIG_VHOST_RING=m CONFIG_ECHO=m -# CONFIG_CXL_BASE is not set -# CONFIG_CXL_AFU_DRIVER_OPS is not set -# CONFIG_CXL_LIB is not set -# CONFIG_OCXL_BASE is not set CONFIG_MISC_RTSX_PCI=m CONFIG_MISC_RTSX_USB=m CONFIG_HAVE_IDE=y @@ -2407,11 +2357,6 @@ CONFIG_FCOE_FNIC=m CONFIG_SCSI_SNIC=m # CONFIG_SCSI_SNIC_DEBUG_FS is not set CONFIG_SCSI_DMX3191D=m -CONFIG_SCSI_EATA=m -CONFIG_SCSI_EATA_TAGGED_QUEUE=y -CONFIG_SCSI_EATA_LINKED_COMMANDS=y -CONFIG_SCSI_EATA_MAX_TAGS=16 -CONFIG_SCSI_FUTURE_DOMAIN=m CONFIG_SCSI_GDTH=m CONFIG_SCSI_ISCI=m CONFIG_SCSI_GENERIC_NCR5380=m @@ -2422,7 +2367,6 @@ CONFIG_SCSI_PPA=m CONFIG_SCSI_IMM=m # CONFIG_SCSI_IZIP_EPP16 is not set # CONFIG_SCSI_IZIP_SLOW_CTR is not set -CONFIG_SCSI_NCR53C406A=m CONFIG_SCSI_STEX=m CONFIG_SCSI_SYM53C8XX_2=m CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 @@ -2443,7 +2387,6 @@ CONFIG_QEDF=m CONFIG_SCSI_LPFC=m # CONFIG_SCSI_LPFC_DEBUG_FS is not set CONFIG_SCSI_SIM710=m -CONFIG_SCSI_SYM53C416=m CONFIG_SCSI_DC395x=m CONFIG_SCSI_AM53C974=m CONFIG_SCSI_NSP32=m @@ -2456,7 +2399,6 @@ CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m CONFIG_SCSI_LOWLEVEL_PCMCIA=y CONFIG_PCMCIA_AHA152X=m -CONFIG_PCMCIA_FDOMAIN=m CONFIG_PCMCIA_NINJA_SCSI=m CONFIG_PCMCIA_QLOGIC=m CONFIG_PCMCIA_SYM53C500=m @@ -2470,7 +2412,6 @@ CONFIG_SCSI_OSD_ULD=m CONFIG_SCSI_OSD_DPRINT_SENSE=1 # CONFIG_SCSI_OSD_DEBUG is not set CONFIG_ATA=y -# CONFIG_ATA_NONSTANDARD is not set CONFIG_ATA_VERBOSE_ERROR=y CONFIG_ATA_ACPI=y CONFIG_SATA_ZPODD=y @@ -2755,6 +2696,7 @@ CONFIG_MICROCHIP_KSZ=m CONFIG_MICROCHIP_KSZ_SPI_DRIVER=m CONFIG_NET_DSA_MV88E6XXX=m CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y +# CONFIG_NET_DSA_MV88E6XXX_PTP is not set CONFIG_NET_DSA_QCA8K=m CONFIG_NET_DSA_SMSC_LAN9303=m CONFIG_NET_DSA_SMSC_LAN9303_I2C=m @@ -2885,12 +2827,12 @@ CONFIG_IXGBEVF=m CONFIG_I40E=m CONFIG_I40E_DCB=y CONFIG_I40EVF=m +CONFIG_ICE=m CONFIG_FM10K=m CONFIG_NET_VENDOR_I825XX=y CONFIG_JME=m CONFIG_NET_VENDOR_MARVELL=y CONFIG_MVMDIO=m -# CONFIG_MVNETA_BM is not set CONFIG_SKGE=m # CONFIG_SKGE_DEBUG is not set CONFIG_SKGE_GENESIS=y @@ -2929,6 +2871,7 @@ CONFIG_NET_VENDOR_MICROCHIP=y CONFIG_ENC28J60=m # CONFIG_ENC28J60_WRITEVERIFY is not set CONFIG_ENCX24J600=m +CONFIG_LAN743X=m CONFIG_NET_VENDOR_MYRI=y CONFIG_MYRI10GE=m CONFIG_FEALNX=m @@ -2939,6 +2882,7 @@ CONFIG_NET_VENDOR_NETRONOME=y CONFIG_NFP=m # CONFIG_NFP_APP_FLOWER is not set # CONFIG_NFP_DEBUG is not set +CONFIG_NET_VENDOR_NI=y CONFIG_NET_VENDOR_8390=y CONFIG_PCMCIA_AXNET=m CONFIG_NE2000=m @@ -3007,7 +2951,6 @@ CONFIG_SMC9194=m CONFIG_PCMCIA_SMC91C92=m CONFIG_EPIC100=m CONFIG_SMSC911X=m -# CONFIG_SMSC911X_ARCH_HOOKS is not set CONFIG_SMSC9420=m # CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_STMICRO=y @@ -3392,6 +3335,7 @@ CONFIG_RSI_91X=m # CONFIG_RSI_DEBUGFS is not set CONFIG_RSI_SDIO=m CONFIG_RSI_USB=m +CONFIG_RSI_COEX=y CONFIG_WLAN_VENDOR_ST=y CONFIG_CW1200=m CONFIG_CW1200_WLAN_SDIO=m @@ -3461,6 +3405,7 @@ CONFIG_IEEE802154_ATUSB=m CONFIG_IEEE802154_ADF7242=m CONFIG_IEEE802154_CA8210=m # CONFIG_IEEE802154_CA8210_DEBUGFS is not set +CONFIG_IEEE802154_MCR20A=m CONFIG_XEN_NETDEV_FRONTEND=y CONFIG_XEN_NETDEV_BACKEND=m CONFIG_VMXNET3=m @@ -3582,7 +3527,6 @@ CONFIG_ISDN_DIVAS_MAINT=m CONFIG_ISDN_DRV_GIGASET=m # CONFIG_GIGASET_CAPI is not set CONFIG_GIGASET_I4L=y -# CONFIG_GIGASET_DUMMYLL is not set CONFIG_GIGASET_BASE=m CONFIG_GIGASET_M105=m CONFIG_GIGASET_M101=m @@ -3727,6 +3671,7 @@ CONFIG_JOYSTICK_XPAD_LEDS=y CONFIG_JOYSTICK_WALKERA0701=m CONFIG_JOYSTICK_PSXPAD_SPI=m # CONFIG_JOYSTICK_PSXPAD_SPI_FF is not set +CONFIG_JOYSTICK_PXRC=m CONFIG_INPUT_TABLET=y CONFIG_TABLET_USB_ACECAD=m CONFIG_TABLET_USB_AIPTEK=m @@ -3891,6 +3836,7 @@ CONFIG_INPUT_SOC_BUTTON_ARRAY=m CONFIG_INPUT_DRV260X_HAPTICS=m CONFIG_INPUT_DRV2665_HAPTICS=m CONFIG_INPUT_DRV2667_HAPTICS=m +CONFIG_INPUT_RAVE_SP_PWRBUTTON=m CONFIG_RMI4_CORE=m CONFIG_RMI4_I2C=m CONFIG_RMI4_SPI=m @@ -3986,7 +3932,6 @@ CONFIG_SERIAL_8250_HUB6=m CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_RSA=y -# CONFIG_SERIAL_8250_FSL is not set CONFIG_SERIAL_8250_DW=m CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_LPSS=m @@ -4087,7 +4032,7 @@ CONFIG_TCG_NSC=m CONFIG_TCG_ATMEL=m CONFIG_TCG_INFINEON=m CONFIG_TCG_XEN=m -CONFIG_TCG_CRB=m +CONFIG_TCG_CRB=y CONFIG_TCG_VTPM_PROXY=m CONFIG_TCG_TIS_ST33ZP24=m CONFIG_TCG_TIS_ST33ZP24_I2C=m @@ -4168,7 +4113,6 @@ CONFIG_I2C_GPIO=m CONFIG_I2C_KEMPLD=m CONFIG_I2C_OCORES=m CONFIG_I2C_PCA_PLATFORM=m -# CONFIG_I2C_PXA_PCI is not set CONFIG_I2C_SIMTEC=m CONFIG_I2C_XILINX=m @@ -4664,6 +4608,7 @@ CONFIG_SENSORS_XGENE=m CONFIG_SENSORS_ACPI_POWER=m CONFIG_SENSORS_ATK0110=m CONFIG_THERMAL=y +# CONFIG_THERMAL_STATISTICS is not set CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 CONFIG_THERMAL_HWMON=y CONFIG_THERMAL_WRITABLE_TRIPS=y @@ -4913,7 +4858,6 @@ CONFIG_TWL6040_CORE=y CONFIG_MFD_WL1273_CORE=m CONFIG_MFD_LM3533=m CONFIG_MFD_TIMBERDALE=m -# CONFIG_MFD_TMIO is not set CONFIG_MFD_VX855=m CONFIG_MFD_ARIZONA=y CONFIG_MFD_ARIZONA_I2C=m @@ -4936,6 +4880,7 @@ CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=m CONFIG_REGULATOR_VIRTUAL_CONSUMER=m CONFIG_REGULATOR_USERSPACE_CONSUMER=m +CONFIG_REGULATOR_88PG86X=m CONFIG_REGULATOR_88PM800=m CONFIG_REGULATOR_88PM8607=m CONFIG_REGULATOR_ACT8865=m @@ -5031,10 +4976,12 @@ CONFIG_IR_SANYO_DECODER=m CONFIG_IR_SHARP_DECODER=m CONFIG_IR_MCE_KBD_DECODER=m CONFIG_IR_XMP_DECODER=m +CONFIG_IR_IMON_DECODER=m CONFIG_RC_DEVICES=y CONFIG_RC_ATI_REMOTE=m CONFIG_IR_ENE=m CONFIG_IR_IMON=m +CONFIG_IR_IMON_RAW=m CONFIG_IR_MCEUSB=m CONFIG_IR_ITE_CIR=m CONFIG_IR_FINTEK=m @@ -5536,10 +5483,8 @@ CONFIG_VIDEO_M52790=m # # soc_camera sensor drivers # -CONFIG_SOC_CAMERA_IMX074=m CONFIG_SOC_CAMERA_MT9M001=m CONFIG_SOC_CAMERA_MT9M111=m -CONFIG_SOC_CAMERA_MT9T031=m CONFIG_SOC_CAMERA_MT9T112=m CONFIG_SOC_CAMERA_MT9V022=m CONFIG_SOC_CAMERA_OV5642=m @@ -5548,6 +5493,11 @@ CONFIG_SOC_CAMERA_OV9640=m CONFIG_SOC_CAMERA_OV9740=m CONFIG_SOC_CAMERA_RJ54N1=m CONFIG_SOC_CAMERA_TW9910=m + +# +# Media SPI Adapters +# +CONFIG_CXD2880_SPI_DRV=m CONFIG_MEDIA_TUNER=m CONFIG_MEDIA_TUNER_SIMPLE=m CONFIG_MEDIA_TUNER_TDA18250=m @@ -5724,7 +5674,6 @@ CONFIG_DVB_ISL6405=m CONFIG_DVB_ISL6421=m CONFIG_DVB_ISL6423=m CONFIG_DVB_A8293=m -CONFIG_DVB_SP2=m CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_TDA665x=m @@ -5736,9 +5685,14 @@ CONFIG_DVB_ASCOT2E=m CONFIG_DVB_HELENE=m # +# Common Interface (EN50221) controller drivers +# +CONFIG_DVB_CXD2099=m +CONFIG_DVB_SP2=m + +# # Tools to develop new frontends # -# CONFIG_DVB_DUMMY_FE is not set # # Graphics support @@ -5857,7 +5811,6 @@ CONFIG_DRM_HISI_HIBMC=m # CONFIG_DRM_TINYDRM is not set # CONFIG_DRM_LEGACY is not set CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y -# CONFIG_DRM_LIB_RANDOM is not set # # Frame buffer Devices @@ -5871,17 +5824,14 @@ CONFIG_FB_BOOT_VESA_SUPPORT=y CONFIG_FB_CFB_FILLRECT=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set CONFIG_FB_SYS_FILLRECT=m CONFIG_FB_SYS_COPYAREA=m CONFIG_FB_SYS_IMAGEBLIT=m -# CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA is not set # CONFIG_FB_FOREIGN_ENDIAN is not set CONFIG_FB_SYS_FOPS=m CONFIG_FB_DEFERRED_IO=y CONFIG_FB_HECUBA=m CONFIG_FB_SVGALIB=m -# CONFIG_FB_MACMODES is not set CONFIG_FB_BACKLIGHT=y CONFIG_FB_MODE_HELPERS=y CONFIG_FB_TILEBLITTING=y @@ -6282,6 +6232,7 @@ CONFIG_SND_SOC_COMPRESS=y CONFIG_SND_SOC_TOPOLOGY=y CONFIG_SND_SOC_ACPI=m CONFIG_SND_SOC_AMD_ACP=m +CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m CONFIG_SND_ATMEL_SOC=m CONFIG_SND_DESIGNWARE_I2S=m @@ -6311,8 +6262,9 @@ CONFIG_SND_SOC_INTEL_SST=m CONFIG_SND_SOC_INTEL_SST_FIRMWARE=m CONFIG_SND_SOC_INTEL_HASWELL=m CONFIG_SND_SOC_INTEL_BAYTRAIL=m -CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI=m CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_ACPI_INTEL_MATCH=m @@ -6327,6 +6279,7 @@ CONFIG_SND_SOC_INTEL_BYTCR_RT5651_MACH=m CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m +CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=m @@ -6337,6 +6290,7 @@ CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH=m CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m +CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m # # STMicroelectronics STM32 SOC audio support @@ -6357,11 +6311,14 @@ CONFIG_SND_SOC_ADAU1761_I2C=m CONFIG_SND_SOC_ADAU1761_SPI=m CONFIG_SND_SOC_ADAU7002=m CONFIG_SND_SOC_AK4104=m +CONFIG_SND_SOC_AK4458=m CONFIG_SND_SOC_AK4554=m CONFIG_SND_SOC_AK4613=m CONFIG_SND_SOC_AK4642=m CONFIG_SND_SOC_AK5386=m +CONFIG_SND_SOC_AK5558=m CONFIG_SND_SOC_ALC5623=m +CONFIG_SND_SOC_BD28623=m CONFIG_SND_SOC_BT_SCO=m CONFIG_SND_SOC_CS35L32=m CONFIG_SND_SOC_CS35L33=m @@ -6399,12 +6356,15 @@ CONFIG_SND_SOC_INNO_RK3036=m CONFIG_SND_SOC_MAX98090=m CONFIG_SND_SOC_MAX98357A=m CONFIG_SND_SOC_MAX98504=m +CONFIG_SND_SOC_MAX9867=m CONFIG_SND_SOC_MAX98927=m CONFIG_SND_SOC_MAX98373=m CONFIG_SND_SOC_MAX9860=m CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m CONFIG_SND_SOC_PCM1681=m +CONFIG_SND_SOC_PCM1789=m +CONFIG_SND_SOC_PCM1789_I2C=m CONFIG_SND_SOC_PCM179X=m CONFIG_SND_SOC_PCM179X_I2C=m CONFIG_SND_SOC_PCM179X_SPI=m @@ -6423,7 +6383,6 @@ CONFIG_SND_SOC_RT286=m CONFIG_SND_SOC_RT298=m CONFIG_SND_SOC_RT5514=m CONFIG_SND_SOC_RT5514_SPI=m -# CONFIG_SND_SOC_RT5514_SPI_BUILTIN is not set CONFIG_SND_SOC_RT5616=m CONFIG_SND_SOC_RT5631=m CONFIG_SND_SOC_RT5640=m @@ -6452,6 +6411,7 @@ CONFIG_SND_SOC_TAS5086=m CONFIG_SND_SOC_TAS571X=m CONFIG_SND_SOC_TAS5720=m CONFIG_SND_SOC_TAS6424=m +CONFIG_SND_SOC_TDA7419=m CONFIG_SND_SOC_TFA9879=m CONFIG_SND_SOC_TLV320AIC23=m CONFIG_SND_SOC_TLV320AIC23_I2C=m @@ -6486,6 +6446,7 @@ CONFIG_SND_SOC_WM8974=m CONFIG_SND_SOC_WM8978=m CONFIG_SND_SOC_WM8985=m CONFIG_SND_SOC_ZX_AUD96P22=m +CONFIG_SND_SOC_MAX9759=m CONFIG_SND_SOC_NAU8540=m CONFIG_SND_SOC_NAU8810=m CONFIG_SND_SOC_NAU8824=m @@ -6530,6 +6491,7 @@ CONFIG_HID_CYPRESS=m CONFIG_HID_DRAGONRISE=m CONFIG_DRAGONRISE_FF=y CONFIG_HID_EMS_FF=m +CONFIG_HID_ELAN=m CONFIG_HID_ELECOM=m CONFIG_HID_ELO=m CONFIG_HID_EZKEY=m @@ -6537,6 +6499,7 @@ CONFIG_HID_GEMBIRD=m CONFIG_HID_GFRM=m CONFIG_HID_HOLTEK=m CONFIG_HOLTEK_FF=y +CONFIG_HID_GOOGLE_HAMMER=m CONFIG_HID_GT683R=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -6663,7 +6626,6 @@ CONFIG_USB_EHCI_PCI=y CONFIG_USB_EHCI_HCD_PLATFORM=y CONFIG_USB_OXU210HP_HCD=m CONFIG_USB_ISP116X_HCD=m -CONFIG_USB_ISP1362_HCD=m CONFIG_USB_FOTG210_HCD=m CONFIG_USB_MAX3421_HCD=m CONFIG_USB_OHCI_HCD=y @@ -6985,8 +6947,15 @@ CONFIG_TYPEC_FUSB302=m CONFIG_TYPEC_UCSI=m CONFIG_UCSI_ACPI=m CONFIG_TYPEC_TPS6598X=m + +# +# USB Type-C Multiplexer/DeMultiplexer Switch support +# +CONFIG_TYPEC_MUX_PI3USB30532=m +CONFIG_USB_ROLES_INTEL_XHCI=m CONFIG_USB_LED_TRIG=y CONFIG_USB_ULPI_BUS=m +CONFIG_USB_ROLE_SWITCH=m CONFIG_UWB=m CONFIG_UWB_HWA=m CONFIG_UWB_WHCI=m @@ -7095,6 +7064,8 @@ CONFIG_LEDS_MENF21BMC=m # LED driver for blink(1) USB RGB LED is under Special HID drivers (HID_THINGM) # CONFIG_LEDS_BLINKM=m +# CONFIG_LEDS_MLXCPLD is not set +# CONFIG_LEDS_MLXREG is not set CONFIG_LEDS_USER=m CONFIG_LEDS_NIC78BX=m @@ -7124,7 +7095,7 @@ CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_INFINIBAND=m CONFIG_INFINIBAND_USER_MAD=m CONFIG_INFINIBAND_USER_ACCESS=m -# CONFIG_INFINIBAND_EXP_USER_ACCESS is not set +# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set CONFIG_INFINIBAND_USER_MEM=y CONFIG_INFINIBAND_ON_DEMAND_PAGING=y CONFIG_INFINIBAND_ADDR_TRANS=y @@ -7132,7 +7103,6 @@ CONFIG_INFINIBAND_ADDR_TRANS_CONFIGFS=y CONFIG_INFINIBAND_MTHCA=m # CONFIG_INFINIBAND_MTHCA_DEBUG is not set CONFIG_INFINIBAND_CXGB3=m -# CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB4=m CONFIG_INFINIBAND_I40IW=m CONFIG_MLX4_INFINIBAND=m @@ -7399,7 +7369,6 @@ CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y # Microsoft Hyper-V guest support # CONFIG_HYPERV=m -# CONFIG_HYPERV_TSCPAGE is not set CONFIG_HYPERV_UTILS=m CONFIG_HYPERV_BALLOON=m @@ -7433,63 +7402,6 @@ CONFIG_XEN_ACPI=y CONFIG_XEN_SYMS=y CONFIG_XEN_HAVE_VPMU=y CONFIG_STAGING=y -CONFIG_IRDA=m - -# -# IrDA protocols -# -CONFIG_IRLAN=m -CONFIG_IRNET=m -CONFIG_IRCOMM=m -CONFIG_IRDA_ULTRA=y - -# -# IrDA options -# -CONFIG_IRDA_CACHE_LAST_LSAP=y -CONFIG_IRDA_FAST_RR=y -# CONFIG_IRDA_DEBUG is not set - -# -# Infrared-port device drivers -# - -# -# SIR device drivers -# -CONFIG_IRTTY_SIR=m - -# -# Dongle support -# -CONFIG_DONGLE=y -CONFIG_ESI_DONGLE=m -CONFIG_ACTISYS_DONGLE=m -CONFIG_TEKRAM_DONGLE=m -CONFIG_TOIM3232_DONGLE=m -CONFIG_LITELINK_DONGLE=m -CONFIG_MA600_DONGLE=m -CONFIG_GIRBIL_DONGLE=m -CONFIG_MCP2120_DONGLE=m -CONFIG_OLD_BELKIN_DONGLE=m -CONFIG_ACT200L_DONGLE=m -CONFIG_KINGSUN_DONGLE=m -CONFIG_KSDAZZLE_DONGLE=m -CONFIG_KS959_DONGLE=m - -# -# FIR device drivers -# -CONFIG_USB_IRDA=m -CONFIG_SIGMATEL_FIR=m -CONFIG_NSC_FIR=m -CONFIG_WINBOND_FIR=m -CONFIG_TOSHIBA_FIR=m -CONFIG_SMC_IRCC_FIR=m -CONFIG_ALI_FIR=m -CONFIG_VLSI_FIR=m -CONFIG_VIA_FIR=m -CONFIG_MCS_FIR=m CONFIG_IPX=m # CONFIG_IPX_INTERN is not set CONFIG_NCP_FS=m @@ -7732,10 +7644,6 @@ CONFIG_ADE7854_SPI=m CONFIG_AD2S90=m CONFIG_AD2S1200=m CONFIG_AD2S1210=m - -# -# Triggers - standalone -# CONFIG_FB_SM750=m CONFIG_FB_XGI=m @@ -7761,7 +7669,8 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m CONFIG_STAGING_MEDIA=y # CONFIG_INTEL_ATOMISP is not set CONFIG_I2C_BCM2048=m -CONFIG_DVB_CXD2099=m +CONFIG_SOC_CAMERA_IMX074=m +CONFIG_SOC_CAMERA_MT9T031=m # # Android @@ -7835,6 +7744,9 @@ CONFIG_KS7010=m CONFIG_TYPEC_TCPCI=m CONFIG_DRM_VBOXVIDEO=m # CONFIG_PI433 is not set +CONFIG_MTK_MMC=m +# CONFIG_MTK_AEE_KDUMP is not set +# CONFIG_MTK_MMC_CD_POLL is not set CONFIG_X86_PLATFORM_DEVICES=y CONFIG_ACER_WMI=m CONFIG_ACER_WIRELESS=m @@ -7937,15 +7849,13 @@ CONFIG_COMMON_CLK=y # CONFIG_COMMON_CLK_WM831X=m CONFIG_COMMON_CLK_SI5351=m +CONFIG_COMMON_CLK_SI544=m CONFIG_COMMON_CLK_CDCE706=m CONFIG_COMMON_CLK_CS2000_CP=m CONFIG_COMMON_CLK_S2MPS11=m CONFIG_CLK_TWL6040=m -# CONFIG_COMMON_CLK_NXP is not set CONFIG_COMMON_CLK_PALMAS=m CONFIG_COMMON_CLK_PWM=m -# CONFIG_COMMON_CLK_PXA is not set -# CONFIG_COMMON_CLK_PIC32 is not set # CONFIG_HWSPINLOCK is not set # @@ -7956,11 +7866,6 @@ CONFIG_CLKEVT_I8253=y CONFIG_I8253_LOCK=y CONFIG_CLKBLD_I8253=y CONFIG_DW_APB_TIMER=y -# CONFIG_ATMEL_PIT is not set -# CONFIG_SH_TIMER_CMT is not set -# CONFIG_SH_TIMER_MTU2 is not set -# CONFIG_SH_TIMER_TMU is not set -# CONFIG_EM_TIMER_STI is not set CONFIG_MAILBOX=y CONFIG_PCC=y CONFIG_ALTERA_MBOX=m @@ -8011,7 +7916,6 @@ CONFIG_RPMSG_VIRTIO=m # # Qualcomm SoC drivers # -# CONFIG_SUNXI_SRAM is not set CONFIG_SOC_TI=y # @@ -8214,7 +8118,6 @@ CONFIG_AD5761=m CONFIG_AD5764=m CONFIG_AD5791=m CONFIG_AD7303=m -CONFIG_CIO_DAC=m CONFIG_AD8801=m CONFIG_DS4424=m CONFIG_M62332=m @@ -8332,6 +8235,7 @@ CONFIG_JSA1212=m CONFIG_RPR0521=m CONFIG_SENSORS_LM3533=m CONFIG_LTR501=m +CONFIG_LV0104CS=m CONFIG_MAX44000=m CONFIG_OPT3001=m CONFIG_PA12203001=m @@ -8390,9 +8294,11 @@ CONFIG_IIO_SYSFS_TRIGGER=m # # Digital potentiometers # +CONFIG_AD5272=m CONFIG_DS1803=m CONFIG_MAX5481=m CONFIG_MAX5487=m +CONFIG_MCP4018=m CONFIG_MCP4131=m CONFIG_MCP4531=m CONFIG_TPL0102=m @@ -8449,6 +8355,7 @@ CONFIG_SRF08=m CONFIG_MAXIM_THERMOCOUPLE=m CONFIG_HID_SENSOR_TEMP=m CONFIG_MLX90614=m +CONFIG_MLX90632=m CONFIG_TMP006=m CONFIG_TMP007=m CONFIG_TSYS01=m @@ -8494,24 +8401,11 @@ CONFIG_PWM_TWL_LED=m # IRQ chip support # CONFIG_ARM_GIC_MAX_NR=1 -# CONFIG_ARM_GIC_V3_ITS is not set CONFIG_IPACK_BUS=m CONFIG_BOARD_TPCI200=m CONFIG_SERIAL_IPOCTAL=m CONFIG_RESET_CONTROLLER=y -# CONFIG_RESET_ATH79 is not set -# CONFIG_RESET_AXS10X is not set -# CONFIG_RESET_BERLIN is not set -# CONFIG_RESET_IMX7 is not set -# CONFIG_RESET_LANTIQ is not set -# CONFIG_RESET_LPC18XX is not set -# CONFIG_RESET_MESON is not set -# CONFIG_RESET_PISTACHIO is not set -# CONFIG_RESET_SIMPLE is not set -# CONFIG_RESET_SUNXI is not set CONFIG_RESET_TI_SYSCON=m -# CONFIG_RESET_ZYNQ is not set -# CONFIG_RESET_TEGRA_BPMP is not set CONFIG_FMC=m CONFIG_FMC_FAKEDEV=m CONFIG_FMC_TRIVIAL=m @@ -8529,9 +8423,6 @@ CONFIG_PHY_CPCAP_USB=m CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_QCOM_USB_HSIC=m CONFIG_PHY_SAMSUNG_USB2=m -# CONFIG_PHY_EXYNOS4210_USB2 is not set -# CONFIG_PHY_EXYNOS4X12_USB2 is not set -# CONFIG_PHY_EXYNOS5250_USB2 is not set CONFIG_PHY_TUSB1210=m CONFIG_POWERCAP=y CONFIG_INTEL_RAPL=m @@ -8555,9 +8446,14 @@ CONFIG_ND_BLK=m CONFIG_ND_CLAIM=y CONFIG_ND_BTT=m CONFIG_BTT=y +CONFIG_DAX_DRIVER=y CONFIG_DAX=y CONFIG_DEV_DAX=m CONFIG_NVMEM=y + +# +# HW tracing support +# CONFIG_STM=m CONFIG_STM_DUMMY=m CONFIG_STM_SOURCE_CONSOLE=m @@ -8565,6 +8461,7 @@ CONFIG_STM_SOURCE_HEARTBEAT=m CONFIG_STM_SOURCE_FTRACE=m CONFIG_INTEL_TH=m CONFIG_INTEL_TH_PCI=m +CONFIG_INTEL_TH_ACPI=m CONFIG_INTEL_TH_GTH=m CONFIG_INTEL_TH_STH=m CONFIG_INTEL_TH_MSU=m @@ -8578,7 +8475,6 @@ CONFIG_FPGA_MGR_XILINX_SPI=m CONFIG_FPGA_BRIDGE=m CONFIG_XILINX_PR_DECOUPLER=m CONFIG_FPGA_REGION=m -# CONFIG_FSI is not set CONFIG_PM_OPP=y # CONFIG_SIOX is not set # CONFIG_SLIMBUS is not set @@ -8709,6 +8605,7 @@ CONFIG_OVERLAY_FS=m # CONFIG_OVERLAY_FS_REDIRECT_DIR is not set # CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW is not set # CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_XINO_AUTO is not set # # Caches @@ -8831,9 +8728,14 @@ CONFIG_ROMFS_BACKED_BY_BLOCK=y # CONFIG_ROMFS_BACKED_BY_BOTH is not set CONFIG_ROMFS_ON_BLOCK=y CONFIG_PSTORE=y -CONFIG_PSTORE_ZLIB_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS=m # CONFIG_PSTORE_LZO_COMPRESS is not set # CONFIG_PSTORE_LZ4_COMPRESS is not set +# CONFIG_PSTORE_LZ4HC_COMPRESS is not set +# CONFIG_PSTORE_842_COMPRESS is not set +CONFIG_PSTORE_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y +CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_PMSG is not set # CONFIG_PSTORE_FTRACE is not set @@ -9032,12 +8934,12 @@ CONFIG_HAVE_DEBUG_STACKOVERFLOW=y # CONFIG_LOCKUP_DETECTOR=y CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 CONFIG_HARDLOCKUP_DETECTOR_PERF=y CONFIG_HARDLOCKUP_DETECTOR=y # CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 -# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 CONFIG_DETECT_HUNG_TASK=y CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set @@ -9055,13 +8957,15 @@ CONFIG_SCHED_STACK_END_CHECK=y # # Lock Debugging (spinlocks, mutexes, etc...) # +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_MUTEXES is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set # CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_ATOMIC_SLEEP is not set # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set CONFIG_LOCK_TORTURE_TEST=m @@ -9079,7 +8983,6 @@ CONFIG_DEBUG_BUGVERBOSE=y # # RCU Debugging # -# CONFIG_PROVE_RCU is not set CONFIG_TORTURE_TEST=m # CONFIG_RCU_PERF_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set @@ -9190,7 +9093,6 @@ CONFIG_KDB_DEFAULT_ENABLE=0x1 CONFIG_KDB_KEYBOARD=y CONFIG_KDB_CONTINUE_CATASTROPHIC=0 CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y -# CONFIG_ARCH_WANTS_UBSAN_NO_NULL is not set # CONFIG_UBSAN is not set CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y CONFIG_STRICT_DEVMEM=y @@ -9201,7 +9103,6 @@ CONFIG_EARLY_PRINTK=y CONFIG_EARLY_PRINTK_DBGP=y CONFIG_EARLY_PRINTK_EFI=y # CONFIG_EARLY_PRINTK_USB_XDBC is not set -# CONFIG_X86_PTDUMP_CORE is not set # CONFIG_X86_PTDUMP is not set # CONFIG_EFI_PGT_DUMP is not set # CONFIG_DEBUG_WX is not set @@ -9352,7 +9253,6 @@ CONFIG_CRYPTO_CRYPTD=m CONFIG_CRYPTO_MCRYPTD=m CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_TEST=m -CONFIG_CRYPTO_ABLK_HELPER=m CONFIG_CRYPTO_SIMD=m CONFIG_CRYPTO_GLUE_HELPER_X86=m CONFIG_CRYPTO_ENGINE=m @@ -9370,6 +9270,7 @@ CONFIG_CRYPTO_ECHAINIV=m # Block modes # CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CFB=m CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=m CONFIG_CRYPTO_ECB=y @@ -9435,6 +9336,8 @@ CONFIG_CRYPTO_CHACHA20=m CONFIG_CRYPTO_SEED=m CONFIG_CRYPTO_SERPENT=m CONFIG_CRYPTO_SERPENT_SSE2_586=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_SPECK=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_TWOFISH=m CONFIG_CRYPTO_TWOFISH_COMMON=m @@ -9470,7 +9373,6 @@ CONFIG_CRYPTO_DEV_PADLOCK=y CONFIG_CRYPTO_DEV_PADLOCK_AES=m CONFIG_CRYPTO_DEV_PADLOCK_SHA=m CONFIG_CRYPTO_DEV_GEODE=m -# CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC is not set CONFIG_CRYPTO_DEV_CCP=y CONFIG_CRYPTO_DEV_CCP_DD=m CONFIG_CRYPTO_DEV_SP_CCP=y @@ -9484,6 +9386,7 @@ CONFIG_CRYPTO_DEV_QAT_C3XXXVF=m CONFIG_CRYPTO_DEV_QAT_C62XVF=m CONFIG_CRYPTO_DEV_CHELSIO=m # CONFIG_CHELSIO_IPSEC_INLINE is not set +# CONFIG_CRYPTO_DEV_CHELSIO_TLS is not set CONFIG_CRYPTO_DEV_VIRTIO=m CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y @@ -9529,7 +9432,6 @@ CONFIG_BINARY_PRINTF=y # CONFIG_RAID6_PQ=m CONFIG_BITREVERSE=y -# CONFIG_HAVE_ARCH_BITREVERSE is not set CONFIG_RATIONAL=y CONFIG_GENERIC_STRNCPY_FROM_USER=y CONFIG_GENERIC_STRNLEN_USER=y @@ -9554,7 +9456,6 @@ CONFIG_LIBCRC32C=m CONFIG_CRC8=m CONFIG_XXHASH=m CONFIG_AUDIT_GENERIC=y -# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set # CONFIG_RANDOM32_SELFTEST is not set CONFIG_842_COMPRESS=m CONFIG_842_DECOMPRESS=m @@ -9601,7 +9502,7 @@ CONFIG_HAS_IOMEM=y CONFIG_HAS_IOPORT_MAP=y CONFIG_HAS_DMA=y CONFIG_SGL_ALLOC=y -# CONFIG_DMA_DIRECT_OPS is not set +CONFIG_DMA_DIRECT_OPS=y CONFIG_DMA_VIRT_OPS=y CONFIG_CHECK_SIGNATURE=y CONFIG_CPU_RMAP=y @@ -9622,7 +9523,6 @@ CONFIG_FONT_SUPPORT=y # CONFIG_FONTS is not set CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y -# CONFIG_SG_SPLIT is not set CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_SBITMAP=y diff --git a/gnu/packages/aux-files/linux-libre/4.16-x86_64.conf b/gnu/packages/aux-files/linux-libre/4.17-x86_64.conf index e400023497..a4eedfd138 100644 --- a/gnu/packages/aux-files/linux-libre/4.16-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/4.17-x86_64.conf @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.16.0-gnu Kernel Configuration +# Linux/x86 4.17.0-gnu Kernel Configuration # CONFIG_64BIT=y CONFIG_X86_64=y @@ -26,6 +26,7 @@ CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_GENERIC_CALIBRATE_DELAY=y CONFIG_ARCH_HAS_CPU_RELAX=y CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y +CONFIG_ARCH_HAS_FILTER_PGPROT=y CONFIG_HAVE_SETUP_PER_CPU_AREA=y CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y @@ -139,7 +140,6 @@ CONFIG_TREE_RCU=y # CONFIG_RCU_EXPERT is not set CONFIG_SRCU=y CONFIG_TREE_SRCU=y -# CONFIG_TASKS_RCU is not set CONFIG_RCU_STALL_COMMON=y CONFIG_RCU_NEED_SEGCBLIST=y CONFIG_BUILD_BIN2C=y @@ -269,8 +269,6 @@ CONFIG_JUMP_LABEL=y # CONFIG_STATIC_KEYS_SELFTEST is not set CONFIG_OPTPROBES=y CONFIG_KPROBES_ON_FTRACE=y -# CONFIG_UPROBES is not set -# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y CONFIG_ARCH_USE_BUILTIN_BSWAP=y CONFIG_KRETPROBES=y @@ -320,7 +318,6 @@ CONFIG_HAVE_CC_STACKPROTECTOR=y # CONFIG_CC_STACKPROTECTOR_REGULAR is not set CONFIG_CC_STACKPROTECTOR_STRONG=y # CONFIG_CC_STACKPROTECTOR_AUTO is not set -CONFIG_THIN_ARCHIVES=y CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y CONFIG_HAVE_CONTEXT_TRACKING=y CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y @@ -342,20 +339,15 @@ CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y CONFIG_HAVE_COPY_THREAD_TLS=y CONFIG_HAVE_STACK_VALIDATION=y CONFIG_HAVE_RELIABLE_STACKTRACE=y -# CONFIG_HAVE_ARCH_HASH is not set -# CONFIG_ISA_BUS_API is not set +CONFIG_ISA_BUS_API=y CONFIG_OLD_SIGSUSPEND3=y CONFIG_COMPAT_OLD_SIGACTION=y -# CONFIG_CPU_NO_EFFICIENT_FFS is not set CONFIG_HAVE_ARCH_VMAP_STACK=y CONFIG_VMAP_STACK=y -# CONFIG_ARCH_OPTIONAL_KERNEL_RWX is not set -# CONFIG_ARCH_OPTIONAL_KERNEL_RWX_DEFAULT is not set CONFIG_ARCH_HAS_STRICT_KERNEL_RWX=y CONFIG_STRICT_KERNEL_RWX=y CONFIG_ARCH_HAS_STRICT_MODULE_RWX=y CONFIG_STRICT_MODULE_RWX=y -CONFIG_ARCH_HAS_PHYS_TO_DMA=y CONFIG_ARCH_HAS_REFCOUNT=y CONFIG_REFCOUNT_FULL=y @@ -364,7 +356,6 @@ CONFIG_REFCOUNT_FULL=y # # CONFIG_GCOV_KERNEL is not set CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y -# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set CONFIG_RT_MUTEXES=y CONFIG_BASE_SMALL=0 CONFIG_MODULES=y @@ -452,6 +443,7 @@ CONFIG_QUEUED_SPINLOCKS=y CONFIG_ARCH_USE_QUEUED_RWLOCKS=y CONFIG_QUEUED_RWLOCKS=y CONFIG_ARCH_HAS_SYNC_CORE_BEFORE_USERMODE=y +CONFIG_ARCH_HAS_SYSCALL_WRAPPER=y CONFIG_FREEZER=y # @@ -460,7 +452,6 @@ CONFIG_FREEZER=y # CONFIG_ZONE_DMA is not set CONFIG_SMP=y CONFIG_X86_FEATURE_NAMES=y -CONFIG_X86_FAST_FEATURE_TESTS=y CONFIG_X86_X2APIC=y CONFIG_X86_MPPARSE=y # CONFIG_GOLDFISH is not set @@ -552,7 +543,6 @@ CONFIG_PERF_EVENTS_INTEL_UNCORE=y CONFIG_PERF_EVENTS_INTEL_RAPL=y CONFIG_PERF_EVENTS_INTEL_CSTATE=y CONFIG_PERF_EVENTS_AMD_POWER=m -# CONFIG_VM86 is not set CONFIG_X86_16BIT=y CONFIG_X86_ESPFIX64=y CONFIG_X86_VSYSCALL_EMULATION=y @@ -678,6 +668,7 @@ CONFIG_HZ=250 CONFIG_SCHED_HRTICK=y CONFIG_KEXEC=y CONFIG_KEXEC_FILE=y +CONFIG_ARCH_HAS_KEXEC_PURGATORY=y CONFIG_KEXEC_VERIFY_SIG=y CONFIG_CRASH_DUMP=y CONFIG_KEXEC_JUMP=y @@ -686,6 +677,7 @@ CONFIG_RELOCATABLE=y CONFIG_RANDOMIZE_BASE=y CONFIG_X86_NEED_RELOCS=y CONFIG_PHYSICAL_ALIGN=0x1000000 +CONFIG_DYNAMIC_MEMORY_LAYOUT=y CONFIG_RANDOMIZE_MEMORY=y CONFIG_RANDOMIZE_MEMORY_PHYSICAL_PADDING=0xa CONFIG_HOTPLUG_CPU=y @@ -745,6 +737,7 @@ CONFIG_ACPI_BATTERY=y CONFIG_ACPI_BUTTON=y CONFIG_ACPI_VIDEO=m CONFIG_ACPI_FAN=y +CONFIG_ACPI_TAD=m CONFIG_ACPI_DOCK=y CONFIG_ACPI_CPU_FREQ_PSS=y CONFIG_ACPI_PROCESSOR_CSTATE=y @@ -757,7 +750,6 @@ CONFIG_ACPI_PROCESSOR_AGGREGATOR=m CONFIG_ACPI_THERMAL=y CONFIG_ACPI_NUMA=y CONFIG_ACPI_CUSTOM_DSDT_FILE="" -# CONFIG_ACPI_CUSTOM_DSDT is not set CONFIG_ARCH_HAS_ACPI_TABLE_UPGRADE=y CONFIG_ACPI_TABLE_UPGRADE=y # CONFIG_ACPI_DEBUG is not set @@ -830,7 +822,6 @@ CONFIG_X86_SPEEDSTEP_LIB=m CONFIG_CPU_IDLE=y CONFIG_CPU_IDLE_GOV_LADDER=y CONFIG_CPU_IDLE_GOV_MENU=y -# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set CONFIG_INTEL_IDLE=y # @@ -841,6 +832,7 @@ CONFIG_PCI_DIRECT=y CONFIG_PCI_MMCONFIG=y CONFIG_PCI_XEN=y CONFIG_PCI_DOMAINS=y +CONFIG_MMCONF_FAM10H=y # CONFIG_PCI_CNB20LE_QUIRK is not set CONFIG_PCIEPORTBUS=y CONFIG_HOTPLUG_PCI_PCIE=y @@ -950,7 +942,6 @@ CONFIG_COMPAT_BINFMT_ELF=y CONFIG_ELFCORE=y CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y CONFIG_BINFMT_SCRIPT=y -# CONFIG_HAVE_AOUT is not set CONFIG_BINFMT_MISC=m CONFIG_COREDUMP=y CONFIG_IA32_EMULATION=y @@ -1002,6 +993,7 @@ CONFIG_NET_IPGRE_DEMUX=m CONFIG_NET_IP_TUNNEL=m CONFIG_NET_IPGRE=m CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE_COMMON=y CONFIG_IP_MROUTE=y # CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set CONFIG_IP_PIMSM_V1=y @@ -1139,8 +1131,8 @@ CONFIG_NF_NAT_TFTP=m CONFIG_NF_NAT_REDIRECT=m CONFIG_NETFILTER_SYNPROXY=m CONFIG_NF_TABLES=m -CONFIG_NF_TABLES_INET=m -CONFIG_NF_TABLES_NETDEV=m +# CONFIG_NF_TABLES_INET is not set +# CONFIG_NF_TABLES_NETDEV is not set CONFIG_NFT_EXTHDR=m CONFIG_NFT_META=m CONFIG_NFT_RT=m @@ -1160,15 +1152,8 @@ CONFIG_NFT_OBJREF=m CONFIG_NFT_QUEUE=m CONFIG_NFT_QUOTA=m CONFIG_NFT_REJECT=m -CONFIG_NFT_REJECT_INET=m CONFIG_NFT_COMPAT=m CONFIG_NFT_HASH=m -CONFIG_NFT_FIB=m -CONFIG_NFT_FIB_INET=m -CONFIG_NF_DUP_NETDEV=m -CONFIG_NFT_DUP_NETDEV=m -CONFIG_NFT_FWD_NETDEV=m -CONFIG_NFT_FIB_NETDEV=m CONFIG_NF_FLOW_TABLE_INET=m CONFIG_NF_FLOW_TABLE=m CONFIG_NETFILTER_XTABLES=m @@ -1326,22 +1311,15 @@ CONFIG_IP_VS_PE_SIP=m CONFIG_NF_DEFRAG_IPV4=m CONFIG_NF_CONNTRACK_IPV4=m CONFIG_NF_SOCKET_IPV4=m -CONFIG_NF_TABLES_IPV4=m -CONFIG_NFT_CHAIN_ROUTE_IPV4=m -CONFIG_NFT_REJECT_IPV4=m -CONFIG_NFT_DUP_IPV4=m -CONFIG_NFT_FIB_IPV4=m -CONFIG_NF_TABLES_ARP=m +# CONFIG_NF_TABLES_IPV4 is not set +# CONFIG_NF_TABLES_ARP is not set CONFIG_NF_FLOW_TABLE_IPV4=m CONFIG_NF_DUP_IPV4=m CONFIG_NF_LOG_ARP=m CONFIG_NF_LOG_IPV4=m CONFIG_NF_REJECT_IPV4=m CONFIG_NF_NAT_IPV4=m -CONFIG_NFT_CHAIN_NAT_IPV4=m CONFIG_NF_NAT_MASQUERADE_IPV4=m -CONFIG_NFT_MASQ_IPV4=m -CONFIG_NFT_REDIR_IPV4=m CONFIG_NF_NAT_SNMP_BASIC=m CONFIG_NF_NAT_PROTO_GRE=m CONFIG_NF_NAT_PPTP=m @@ -1374,20 +1352,13 @@ CONFIG_IP_NF_ARP_MANGLE=m CONFIG_NF_DEFRAG_IPV6=m CONFIG_NF_CONNTRACK_IPV6=m CONFIG_NF_SOCKET_IPV6=m -CONFIG_NF_TABLES_IPV6=m -CONFIG_NFT_CHAIN_ROUTE_IPV6=m -CONFIG_NFT_REJECT_IPV6=m -CONFIG_NFT_DUP_IPV6=m -CONFIG_NFT_FIB_IPV6=m +# CONFIG_NF_TABLES_IPV6 is not set CONFIG_NF_FLOW_TABLE_IPV6=m CONFIG_NF_DUP_IPV6=m CONFIG_NF_REJECT_IPV6=m CONFIG_NF_LOG_IPV6=m CONFIG_NF_NAT_IPV6=m -CONFIG_NFT_CHAIN_NAT_IPV6=m CONFIG_NF_NAT_MASQUERADE_IPV6=m -CONFIG_NFT_MASQ_IPV6=m -CONFIG_NFT_REDIR_IPV6=m CONFIG_IP6_NF_IPTABLES=m CONFIG_IP6_NF_MATCH_AH=m CONFIG_IP6_NF_MATCH_EUI64=m @@ -1414,10 +1385,7 @@ CONFIG_IP6_NF_TARGET_NPT=m # DECnet: Netfilter Configuration # CONFIG_DECNET_NF_GRABULATOR=m -CONFIG_NF_TABLES_BRIDGE=m -CONFIG_NFT_BRIDGE_META=m -CONFIG_NFT_BRIDGE_REJECT=m -CONFIG_NF_LOG_BRIDGE=m +# CONFIG_NF_TABLES_BRIDGE is not set CONFIG_BRIDGE_NF_EBTABLES=m CONFIG_BRIDGE_EBT_BROUTE=m CONFIG_BRIDGE_EBT_T_FILTER=m @@ -1467,6 +1435,7 @@ CONFIG_RDS_TCP=m CONFIG_TIPC=m CONFIG_TIPC_MEDIA_IB=y CONFIG_TIPC_MEDIA_UDP=y +CONFIG_TIPC_DIAG=m CONFIG_ATM=m CONFIG_ATM_CLIP=m # CONFIG_ATM_CLIP_NO_ICMP is not set @@ -1592,6 +1561,7 @@ CONFIG_NET_EMATCH_META=m CONFIG_NET_EMATCH_TEXT=m CONFIG_NET_EMATCH_CANID=m CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_EMATCH_IPT=m CONFIG_NET_CLS_ACT=y CONFIG_NET_ACT_POLICE=m CONFIG_NET_ACT_GACT=m @@ -1782,12 +1752,12 @@ CONFIG_BT_HCIBFUSB=m CONFIG_BT_HCIDTL1=m CONFIG_BT_HCIBT3C=m CONFIG_BT_HCIBLUECARD=m -CONFIG_BT_HCIBTUART=m CONFIG_BT_HCIVHCI=m CONFIG_BT_MRVL=m CONFIG_BT_MRVL_SDIO=m CONFIG_BT_ATH3K=m CONFIG_BT_WILINK=m +CONFIG_BT_HCIRSI=m CONFIG_AF_RXRPC=m CONFIG_AF_RXRPC_IPV6=y # CONFIG_AF_RXRPC_INJECT_LOSS is not set @@ -1925,7 +1895,6 @@ CONFIG_DEV_COREDUMP=y # CONFIG_DEBUG_TEST_DRIVER_REMOVE is not set # CONFIG_TEST_ASYNC_DRIVER_PROBE is not set CONFIG_SYS_HYPERVISOR=y -# CONFIG_GENERIC_CPU_DEVICES is not set CONFIG_GENERIC_CPU_AUTOPROBE=y CONFIG_GENERIC_CPU_VULNERABILITIES=y CONFIG_REGMAP=y @@ -1984,13 +1953,8 @@ CONFIG_MTD_GEN_PROBE=m CONFIG_MTD_MAP_BANK_WIDTH_1=y CONFIG_MTD_MAP_BANK_WIDTH_2=y CONFIG_MTD_MAP_BANK_WIDTH_4=y -# CONFIG_MTD_MAP_BANK_WIDTH_8 is not set -# CONFIG_MTD_MAP_BANK_WIDTH_16 is not set -# CONFIG_MTD_MAP_BANK_WIDTH_32 is not set CONFIG_MTD_CFI_I1=y CONFIG_MTD_CFI_I2=y -# CONFIG_MTD_CFI_I4 is not set -# CONFIG_MTD_CFI_I8 is not set CONFIG_MTD_CFI_INTELEXT=m CONFIG_MTD_CFI_AMDSTD=m CONFIG_MTD_CFI_STAA=m @@ -2046,6 +2010,11 @@ CONFIG_MTD_BLOCK2MTD=m CONFIG_MTD_DOCG3=m CONFIG_BCH_CONST_M=14 CONFIG_BCH_CONST_T=4 +CONFIG_MTD_ONENAND=m +CONFIG_MTD_ONENAND_VERIFY_WRITE=y +CONFIG_MTD_ONENAND_GENERIC=m +# CONFIG_MTD_ONENAND_OTP is not set +CONFIG_MTD_ONENAND_2X_PROGRAM=y CONFIG_MTD_NAND_ECC=m # CONFIG_MTD_NAND_ECC_SMC is not set CONFIG_MTD_NAND=m @@ -2055,7 +2024,6 @@ CONFIG_MTD_SM_COMMON=m CONFIG_MTD_NAND_DENALI=m CONFIG_MTD_NAND_DENALI_PCI=m CONFIG_MTD_NAND_GPIO=m -# CONFIG_MTD_NAND_OMAP_BCH_BUILD is not set CONFIG_MTD_NAND_RICOH=m CONFIG_MTD_NAND_DISKONCHIP=m # CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADVANCED is not set @@ -2065,11 +2033,6 @@ CONFIG_MTD_NAND_DOCG4=m CONFIG_MTD_NAND_CAFE=m CONFIG_MTD_NAND_NANDSIM=m CONFIG_MTD_NAND_PLATFORM=m -CONFIG_MTD_ONENAND=m -CONFIG_MTD_ONENAND_VERIFY_WRITE=y -CONFIG_MTD_ONENAND_GENERIC=m -# CONFIG_MTD_ONENAND_OTP is not set -CONFIG_MTD_ONENAND_2X_PROGRAM=y # # LPDDR & LPDDR2 PCM memory drivers @@ -2096,7 +2059,6 @@ CONFIG_PARPORT_SERIAL=m CONFIG_PARPORT_PC_FIFO=y # CONFIG_PARPORT_PC_SUPERIO is not set CONFIG_PARPORT_PC_PCMCIA=m -# CONFIG_PARPORT_GSC is not set CONFIG_PARPORT_AX88796=m CONFIG_PARPORT_1284=y CONFIG_PARPORT_NOT_PC=y @@ -2145,7 +2107,6 @@ CONFIG_ZRAM=m # CONFIG_ZRAM_WRITEBACK is not set CONFIG_BLK_DEV_DAC960=m CONFIG_BLK_DEV_UMEM=m -# CONFIG_BLK_DEV_COW_COMMON is not set CONFIG_BLK_DEV_LOOP=y CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 CONFIG_BLK_DEV_CRYPTOLOOP=m @@ -2288,10 +2249,6 @@ CONFIG_VHOST_RING=m CONFIG_GENWQE=m CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 CONFIG_ECHO=m -# CONFIG_CXL_BASE is not set -# CONFIG_CXL_AFU_DRIVER_OPS is not set -# CONFIG_CXL_LIB is not set -# CONFIG_OCXL_BASE is not set CONFIG_MISC_RTSX_PCI=m CONFIG_MISC_RTSX_USB=m CONFIG_HAVE_IDE=y @@ -2398,11 +2355,6 @@ CONFIG_FCOE_FNIC=m CONFIG_SCSI_SNIC=m # CONFIG_SCSI_SNIC_DEBUG_FS is not set CONFIG_SCSI_DMX3191D=m -CONFIG_SCSI_EATA=m -CONFIG_SCSI_EATA_TAGGED_QUEUE=y -CONFIG_SCSI_EATA_LINKED_COMMANDS=y -CONFIG_SCSI_EATA_MAX_TAGS=16 -CONFIG_SCSI_FUTURE_DOMAIN=m CONFIG_SCSI_GDTH=m CONFIG_SCSI_ISCI=m CONFIG_SCSI_IPS=m @@ -2441,7 +2393,6 @@ CONFIG_SCSI_VIRTIO=m CONFIG_SCSI_CHELSIO_FCOE=m CONFIG_SCSI_LOWLEVEL_PCMCIA=y CONFIG_PCMCIA_AHA152X=m -CONFIG_PCMCIA_FDOMAIN=m CONFIG_PCMCIA_QLOGIC=m CONFIG_PCMCIA_SYM53C500=m CONFIG_SCSI_DH=y @@ -2454,7 +2405,6 @@ CONFIG_SCSI_OSD_ULD=m CONFIG_SCSI_OSD_DPRINT_SENSE=1 # CONFIG_SCSI_OSD_DEBUG is not set CONFIG_ATA=y -# CONFIG_ATA_NONSTANDARD is not set CONFIG_ATA_VERBOSE_ERROR=y CONFIG_ATA_ACPI=y CONFIG_SATA_ZPODD=y @@ -2730,6 +2680,7 @@ CONFIG_MICROCHIP_KSZ=m CONFIG_MICROCHIP_KSZ_SPI_DRIVER=m CONFIG_NET_DSA_MV88E6XXX=m CONFIG_NET_DSA_MV88E6XXX_GLOBAL2=y +# CONFIG_NET_DSA_MV88E6XXX_PTP is not set CONFIG_NET_DSA_QCA8K=m CONFIG_NET_DSA_SMSC_LAN9303=m CONFIG_NET_DSA_SMSC_LAN9303_I2C=m @@ -2863,6 +2814,7 @@ CONFIG_IXGBEVF=m CONFIG_I40E=m CONFIG_I40E_DCB=y CONFIG_I40EVF=m +CONFIG_ICE=m CONFIG_FM10K=m CONFIG_NET_VENDOR_I825XX=y CONFIG_JME=m @@ -2906,6 +2858,7 @@ CONFIG_NET_VENDOR_MICROCHIP=y CONFIG_ENC28J60=m # CONFIG_ENC28J60_WRITEVERIFY is not set CONFIG_ENCX24J600=m +CONFIG_LAN743X=m CONFIG_NET_VENDOR_MYRI=y CONFIG_MYRI10GE=m CONFIG_MYRI10GE_DCA=y @@ -2917,6 +2870,7 @@ CONFIG_NET_VENDOR_NETRONOME=y CONFIG_NFP=m # CONFIG_NFP_APP_FLOWER is not set # CONFIG_NFP_DEBUG is not set +CONFIG_NET_VENDOR_NI=y CONFIG_NET_VENDOR_8390=y CONFIG_PCMCIA_AXNET=m CONFIG_NE2K_PCI=m @@ -2981,7 +2935,6 @@ CONFIG_NET_VENDOR_SMSC=y CONFIG_PCMCIA_SMC91C92=m CONFIG_EPIC100=m CONFIG_SMSC911X=m -# CONFIG_SMSC911X_ARCH_HOOKS is not set CONFIG_SMSC9420=m # CONFIG_NET_VENDOR_SOCIONEXT is not set CONFIG_NET_VENDOR_STMICRO=y @@ -3368,6 +3321,7 @@ CONFIG_RSI_91X=m # CONFIG_RSI_DEBUGFS is not set CONFIG_RSI_SDIO=m CONFIG_RSI_USB=m +CONFIG_RSI_COEX=y CONFIG_WLAN_VENDOR_ST=y CONFIG_CW1200=m CONFIG_CW1200_WLAN_SDIO=m @@ -3431,6 +3385,7 @@ CONFIG_IEEE802154_ATUSB=m CONFIG_IEEE802154_ADF7242=m CONFIG_IEEE802154_CA8210=m # CONFIG_IEEE802154_CA8210_DEBUGFS is not set +CONFIG_IEEE802154_MCR20A=m CONFIG_XEN_NETDEV_FRONTEND=y CONFIG_XEN_NETDEV_BACKEND=m CONFIG_VMXNET3=m @@ -3540,7 +3495,6 @@ CONFIG_ISDN_DIVAS_MAINT=m CONFIG_ISDN_DRV_GIGASET=m # CONFIG_GIGASET_CAPI is not set CONFIG_GIGASET_I4L=y -# CONFIG_GIGASET_DUMMYLL is not set CONFIG_GIGASET_BASE=m CONFIG_GIGASET_M105=m CONFIG_GIGASET_M101=m @@ -3682,6 +3636,7 @@ CONFIG_JOYSTICK_XPAD_LEDS=y CONFIG_JOYSTICK_WALKERA0701=m CONFIG_JOYSTICK_PSXPAD_SPI=m # CONFIG_JOYSTICK_PSXPAD_SPI_FF is not set +CONFIG_JOYSTICK_PXRC=m CONFIG_INPUT_TABLET=y CONFIG_TABLET_USB_ACECAD=m CONFIG_TABLET_USB_AIPTEK=m @@ -3844,6 +3799,7 @@ CONFIG_INPUT_SOC_BUTTON_ARRAY=m CONFIG_INPUT_DRV260X_HAPTICS=m CONFIG_INPUT_DRV2665_HAPTICS=m CONFIG_INPUT_DRV2667_HAPTICS=m +CONFIG_INPUT_RAVE_SP_PWRBUTTON=m CONFIG_RMI4_CORE=m CONFIG_RMI4_I2C=m CONFIG_RMI4_SPI=m @@ -3934,7 +3890,6 @@ CONFIG_SERIAL_8250_MANY_PORTS=y CONFIG_SERIAL_8250_SHARE_IRQ=y # CONFIG_SERIAL_8250_DETECT_IRQ is not set CONFIG_SERIAL_8250_RSA=y -# CONFIG_SERIAL_8250_FSL is not set CONFIG_SERIAL_8250_DW=m CONFIG_SERIAL_8250_RT288X=y CONFIG_SERIAL_8250_LPSS=m @@ -4027,7 +3982,7 @@ CONFIG_TCG_NSC=m CONFIG_TCG_ATMEL=m CONFIG_TCG_INFINEON=m CONFIG_TCG_XEN=m -CONFIG_TCG_CRB=m +CONFIG_TCG_CRB=y CONFIG_TCG_VTPM_PROXY=m CONFIG_TCG_TIS_ST33ZP24=m CONFIG_TCG_TIS_ST33ZP24_I2C=m @@ -4107,7 +4062,6 @@ CONFIG_I2C_GPIO=m CONFIG_I2C_KEMPLD=m CONFIG_I2C_OCORES=m CONFIG_I2C_PCA_PLATFORM=m -# CONFIG_I2C_PXA_PCI is not set CONFIG_I2C_SIMTEC=m CONFIG_I2C_XILINX=m @@ -4252,6 +4206,8 @@ CONFIG_GPIO_F7188X=m CONFIG_GPIO_IT87=m CONFIG_GPIO_SCH=m CONFIG_GPIO_SCH311X=m +CONFIG_GPIO_WINBOND=m +CONFIG_GPIO_WS16C48=m # # I2C GPIO expanders @@ -4591,6 +4547,7 @@ CONFIG_SENSORS_XGENE=m CONFIG_SENSORS_ACPI_POWER=m CONFIG_SENSORS_ATK0110=m CONFIG_THERMAL=y +# CONFIG_THERMAL_STATISTICS is not set CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0 CONFIG_THERMAL_HWMON=y CONFIG_THERMAL_WRITABLE_TRIPS=y @@ -4650,6 +4607,7 @@ CONFIG_ACQUIRE_WDT=m CONFIG_ADVANTECH_WDT=m CONFIG_ALIM1535_WDT=m CONFIG_ALIM7101_WDT=m +CONFIG_EBC_C384_WDT=m CONFIG_F71808E_WDT=m CONFIG_SP5100_TCO=m CONFIG_SBC_FITPC2_WATCHDOG=m @@ -4824,7 +4782,6 @@ CONFIG_MFD_TWL4030_AUDIO=y CONFIG_TWL6040_CORE=y CONFIG_MFD_WL1273_CORE=m CONFIG_MFD_LM3533=m -# CONFIG_MFD_TMIO is not set CONFIG_MFD_VX855=m CONFIG_MFD_ARIZONA=y CONFIG_MFD_ARIZONA_I2C=m @@ -4847,6 +4804,7 @@ CONFIG_REGULATOR=y CONFIG_REGULATOR_FIXED_VOLTAGE=m CONFIG_REGULATOR_VIRTUAL_CONSUMER=m CONFIG_REGULATOR_USERSPACE_CONSUMER=m +CONFIG_REGULATOR_88PG86X=m CONFIG_REGULATOR_88PM800=m CONFIG_REGULATOR_88PM8607=m CONFIG_REGULATOR_ACT8865=m @@ -4942,10 +4900,12 @@ CONFIG_IR_SANYO_DECODER=m CONFIG_IR_SHARP_DECODER=m CONFIG_IR_MCE_KBD_DECODER=m CONFIG_IR_XMP_DECODER=m +CONFIG_IR_IMON_DECODER=m CONFIG_RC_DEVICES=y CONFIG_RC_ATI_REMOTE=m CONFIG_IR_ENE=m CONFIG_IR_IMON=m +CONFIG_IR_IMON_RAW=m CONFIG_IR_MCEUSB=m CONFIG_IR_ITE_CIR=m CONFIG_IR_FINTEK=m @@ -5432,10 +5392,8 @@ CONFIG_VIDEO_M52790=m # # soc_camera sensor drivers # -CONFIG_SOC_CAMERA_IMX074=m CONFIG_SOC_CAMERA_MT9M001=m CONFIG_SOC_CAMERA_MT9M111=m -CONFIG_SOC_CAMERA_MT9T031=m CONFIG_SOC_CAMERA_MT9T112=m CONFIG_SOC_CAMERA_MT9V022=m CONFIG_SOC_CAMERA_OV5642=m @@ -5444,6 +5402,11 @@ CONFIG_SOC_CAMERA_OV9640=m CONFIG_SOC_CAMERA_OV9740=m CONFIG_SOC_CAMERA_RJ54N1=m CONFIG_SOC_CAMERA_TW9910=m + +# +# Media SPI Adapters +# +CONFIG_CXD2880_SPI_DRV=m CONFIG_MEDIA_TUNER=m CONFIG_MEDIA_TUNER_SIMPLE=m CONFIG_MEDIA_TUNER_TDA18250=m @@ -5620,7 +5583,6 @@ CONFIG_DVB_ISL6405=m CONFIG_DVB_ISL6421=m CONFIG_DVB_ISL6423=m CONFIG_DVB_A8293=m -CONFIG_DVB_SP2=m CONFIG_DVB_LGS8GXX=m CONFIG_DVB_ATBM8830=m CONFIG_DVB_TDA665x=m @@ -5632,9 +5594,14 @@ CONFIG_DVB_ASCOT2E=m CONFIG_DVB_HELENE=m # +# Common Interface (EN50221) controller drivers +# +CONFIG_DVB_CXD2099=m +CONFIG_DVB_SP2=m + +# # Tools to develop new frontends # -# CONFIG_DVB_DUMMY_FE is not set # # Graphics support @@ -5748,7 +5715,6 @@ CONFIG_DRM_HISI_HIBMC=m # CONFIG_DRM_TINYDRM is not set # CONFIG_DRM_LEGACY is not set CONFIG_DRM_PANEL_ORIENTATION_QUIRKS=y -# CONFIG_DRM_LIB_RANDOM is not set # # Frame buffer Devices @@ -5762,17 +5728,14 @@ CONFIG_FB_BOOT_VESA_SUPPORT=y CONFIG_FB_CFB_FILLRECT=y CONFIG_FB_CFB_COPYAREA=y CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set CONFIG_FB_SYS_FILLRECT=m CONFIG_FB_SYS_COPYAREA=m CONFIG_FB_SYS_IMAGEBLIT=m -# CONFIG_FB_PROVIDE_GET_FB_UNMAPPED_AREA is not set # CONFIG_FB_FOREIGN_ENDIAN is not set CONFIG_FB_SYS_FOPS=m CONFIG_FB_DEFERRED_IO=y CONFIG_FB_HECUBA=m CONFIG_FB_SVGALIB=m -# CONFIG_FB_MACMODES is not set CONFIG_FB_BACKLIGHT=y CONFIG_FB_MODE_HELPERS=y CONFIG_FB_TILEBLITTING=y @@ -5968,7 +5931,6 @@ CONFIG_SND_SEQ_VIRMIDI=m CONFIG_SND_MPU401_UART=m CONFIG_SND_OPL3_LIB=m CONFIG_SND_OPL3_LIB_SEQ=m -# CONFIG_SND_OPL4_LIB_SEQ is not set CONFIG_SND_VX_LIB=m CONFIG_SND_AC97_CODEC=m CONFIG_SND_DRIVERS=y @@ -6018,7 +5980,6 @@ CONFIG_SND_INDIGOIO=m CONFIG_SND_INDIGODJ=m CONFIG_SND_INDIGOIOX=m CONFIG_SND_INDIGODJX=m -# CONFIG_SND_EMU10K1_SEQ is not set CONFIG_SND_ENS1370=m CONFIG_SND_ENS1371=m CONFIG_SND_FM801=m @@ -6110,6 +6071,7 @@ CONFIG_SND_SOC_COMPRESS=y CONFIG_SND_SOC_TOPOLOGY=y CONFIG_SND_SOC_ACPI=m CONFIG_SND_SOC_AMD_ACP=m +CONFIG_SND_SOC_AMD_CZ_DA7219MX98357_MACH=m CONFIG_SND_SOC_AMD_CZ_RT5645_MACH=m CONFIG_SND_ATMEL_SOC=m CONFIG_SND_DESIGNWARE_I2S=m @@ -6139,8 +6101,9 @@ CONFIG_SND_SOC_INTEL_SST=m CONFIG_SND_SOC_INTEL_SST_FIRMWARE=m CONFIG_SND_SOC_INTEL_HASWELL=m CONFIG_SND_SOC_INTEL_BAYTRAIL=m -CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m CONFIG_SND_SST_ATOM_HIFI2_PLATFORM=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_PCI=m +CONFIG_SND_SST_ATOM_HIFI2_PLATFORM_ACPI=m CONFIG_SND_SOC_INTEL_SKYLAKE_SSP_CLK=m CONFIG_SND_SOC_INTEL_SKYLAKE=m CONFIG_SND_SOC_ACPI_INTEL_MATCH=m @@ -6155,6 +6118,7 @@ CONFIG_SND_SOC_INTEL_BYTCR_RT5651_MACH=m CONFIG_SND_SOC_INTEL_CHT_BSW_RT5672_MACH=m CONFIG_SND_SOC_INTEL_CHT_BSW_RT5645_MACH=m CONFIG_SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH=m +CONFIG_SND_SOC_INTEL_CHT_BSW_NAU8824_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_DA7213_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_ES8316_MACH=m CONFIG_SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH=m @@ -6165,6 +6129,7 @@ CONFIG_SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH=m CONFIG_SND_SOC_INTEL_BXT_RT298_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH=m CONFIG_SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH=m +CONFIG_SND_SOC_INTEL_KBL_DA7219_MAX98357A_MACH=m # # STMicroelectronics STM32 SOC audio support @@ -6185,11 +6150,14 @@ CONFIG_SND_SOC_ADAU1761_I2C=m CONFIG_SND_SOC_ADAU1761_SPI=m CONFIG_SND_SOC_ADAU7002=m CONFIG_SND_SOC_AK4104=m +CONFIG_SND_SOC_AK4458=m CONFIG_SND_SOC_AK4554=m CONFIG_SND_SOC_AK4613=m CONFIG_SND_SOC_AK4642=m CONFIG_SND_SOC_AK5386=m +CONFIG_SND_SOC_AK5558=m CONFIG_SND_SOC_ALC5623=m +CONFIG_SND_SOC_BD28623=m CONFIG_SND_SOC_BT_SCO=m CONFIG_SND_SOC_CS35L32=m CONFIG_SND_SOC_CS35L33=m @@ -6227,12 +6195,15 @@ CONFIG_SND_SOC_INNO_RK3036=m CONFIG_SND_SOC_MAX98090=m CONFIG_SND_SOC_MAX98357A=m CONFIG_SND_SOC_MAX98504=m +CONFIG_SND_SOC_MAX9867=m CONFIG_SND_SOC_MAX98927=m CONFIG_SND_SOC_MAX98373=m CONFIG_SND_SOC_MAX9860=m CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m CONFIG_SND_SOC_MSM8916_WCD_DIGITAL=m CONFIG_SND_SOC_PCM1681=m +CONFIG_SND_SOC_PCM1789=m +CONFIG_SND_SOC_PCM1789_I2C=m CONFIG_SND_SOC_PCM179X=m CONFIG_SND_SOC_PCM179X_I2C=m CONFIG_SND_SOC_PCM179X_SPI=m @@ -6251,7 +6222,6 @@ CONFIG_SND_SOC_RT286=m CONFIG_SND_SOC_RT298=m CONFIG_SND_SOC_RT5514=m CONFIG_SND_SOC_RT5514_SPI=m -# CONFIG_SND_SOC_RT5514_SPI_BUILTIN is not set CONFIG_SND_SOC_RT5616=m CONFIG_SND_SOC_RT5631=m CONFIG_SND_SOC_RT5640=m @@ -6280,6 +6250,7 @@ CONFIG_SND_SOC_TAS5086=m CONFIG_SND_SOC_TAS571X=m CONFIG_SND_SOC_TAS5720=m CONFIG_SND_SOC_TAS6424=m +CONFIG_SND_SOC_TDA7419=m CONFIG_SND_SOC_TFA9879=m CONFIG_SND_SOC_TLV320AIC23=m CONFIG_SND_SOC_TLV320AIC23_I2C=m @@ -6314,6 +6285,7 @@ CONFIG_SND_SOC_WM8974=m CONFIG_SND_SOC_WM8978=m CONFIG_SND_SOC_WM8985=m CONFIG_SND_SOC_ZX_AUD96P22=m +CONFIG_SND_SOC_MAX9759=m CONFIG_SND_SOC_NAU8540=m CONFIG_SND_SOC_NAU8810=m CONFIG_SND_SOC_NAU8824=m @@ -6357,6 +6329,7 @@ CONFIG_HID_CYPRESS=m CONFIG_HID_DRAGONRISE=m CONFIG_DRAGONRISE_FF=y CONFIG_HID_EMS_FF=m +CONFIG_HID_ELAN=m CONFIG_HID_ELECOM=m CONFIG_HID_ELO=m CONFIG_HID_EZKEY=m @@ -6364,6 +6337,7 @@ CONFIG_HID_GEMBIRD=m CONFIG_HID_GFRM=m CONFIG_HID_HOLTEK=m CONFIG_HOLTEK_FF=y +CONFIG_HID_GOOGLE_HAMMER=m CONFIG_HID_GT683R=m CONFIG_HID_KEYTOUCH=m CONFIG_HID_KYE=m @@ -6495,7 +6469,6 @@ CONFIG_USB_EHCI_PCI=y CONFIG_USB_EHCI_HCD_PLATFORM=y CONFIG_USB_OXU210HP_HCD=m CONFIG_USB_ISP116X_HCD=m -CONFIG_USB_ISP1362_HCD=m CONFIG_USB_FOTG210_HCD=m CONFIG_USB_MAX3421_HCD=m CONFIG_USB_OHCI_HCD=y @@ -6817,8 +6790,15 @@ CONFIG_TYPEC_FUSB302=m CONFIG_TYPEC_UCSI=m CONFIG_UCSI_ACPI=m CONFIG_TYPEC_TPS6598X=m + +# +# USB Type-C Multiplexer/DeMultiplexer Switch support +# +CONFIG_TYPEC_MUX_PI3USB30532=m +CONFIG_USB_ROLES_INTEL_XHCI=m CONFIG_USB_LED_TRIG=y CONFIG_USB_ULPI_BUS=m +CONFIG_USB_ROLE_SWITCH=m CONFIG_UWB=m CONFIG_UWB_HWA=m CONFIG_UWB_WHCI=m @@ -6925,6 +6905,7 @@ CONFIG_LEDS_MENF21BMC=m # CONFIG_LEDS_BLINKM=m CONFIG_LEDS_MLXCPLD=m +CONFIG_LEDS_MLXREG=m CONFIG_LEDS_USER=m CONFIG_LEDS_NIC78BX=m @@ -6954,7 +6935,7 @@ CONFIG_LEDS_TRIGGER_NETDEV=m CONFIG_INFINIBAND=m CONFIG_INFINIBAND_USER_MAD=m CONFIG_INFINIBAND_USER_ACCESS=m -# CONFIG_INFINIBAND_EXP_USER_ACCESS is not set +# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set CONFIG_INFINIBAND_USER_MEM=y CONFIG_INFINIBAND_ON_DEMAND_PAGING=y CONFIG_INFINIBAND_ADDR_TRANS=y @@ -6964,7 +6945,6 @@ CONFIG_INFINIBAND_MTHCA=m CONFIG_INFINIBAND_QIB=m CONFIG_INFINIBAND_QIB_DCA=y CONFIG_INFINIBAND_CXGB3=m -# CONFIG_INFINIBAND_CXGB3_DEBUG is not set CONFIG_INFINIBAND_CXGB4=m CONFIG_INFINIBAND_I40IW=m CONFIG_MLX4_INFINIBAND=m @@ -7271,62 +7251,6 @@ CONFIG_XEN_ACPI=y CONFIG_XEN_SYMS=y CONFIG_XEN_HAVE_VPMU=y CONFIG_STAGING=y -CONFIG_IRDA=m - -# -# IrDA protocols -# -CONFIG_IRLAN=m -CONFIG_IRNET=m -CONFIG_IRCOMM=m -CONFIG_IRDA_ULTRA=y - -# -# IrDA options -# -CONFIG_IRDA_CACHE_LAST_LSAP=y -CONFIG_IRDA_FAST_RR=y -# CONFIG_IRDA_DEBUG is not set - -# -# Infrared-port device drivers -# - -# -# SIR device drivers -# -CONFIG_IRTTY_SIR=m - -# -# Dongle support -# -CONFIG_DONGLE=y -CONFIG_ESI_DONGLE=m -CONFIG_ACTISYS_DONGLE=m -CONFIG_TEKRAM_DONGLE=m -CONFIG_TOIM3232_DONGLE=m -CONFIG_LITELINK_DONGLE=m -CONFIG_MA600_DONGLE=m -CONFIG_GIRBIL_DONGLE=m -CONFIG_MCP2120_DONGLE=m -CONFIG_OLD_BELKIN_DONGLE=m -CONFIG_ACT200L_DONGLE=m -CONFIG_KINGSUN_DONGLE=m -CONFIG_KSDAZZLE_DONGLE=m -CONFIG_KS959_DONGLE=m - -# -# FIR device drivers -# -CONFIG_USB_IRDA=m -CONFIG_SIGMATEL_FIR=m -CONFIG_NSC_FIR=m -CONFIG_WINBOND_FIR=m -CONFIG_SMC_IRCC_FIR=m -CONFIG_ALI_FIR=m -CONFIG_VLSI_FIR=m -CONFIG_VIA_FIR=m -CONFIG_MCS_FIR=m CONFIG_IPX=m # CONFIG_IPX_INTERN is not set CONFIG_NCP_FS=m @@ -7568,10 +7492,6 @@ CONFIG_ADE7854_SPI=m CONFIG_AD2S90=m CONFIG_AD2S1200=m CONFIG_AD2S1210=m - -# -# Triggers - standalone -# CONFIG_FB_SM750=m CONFIG_FB_XGI=m @@ -7593,7 +7513,8 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m CONFIG_STAGING_MEDIA=y # CONFIG_INTEL_ATOMISP is not set CONFIG_I2C_BCM2048=m -CONFIG_DVB_CXD2099=m +CONFIG_SOC_CAMERA_IMX074=m +CONFIG_SOC_CAMERA_MT9T031=m # # Android @@ -7671,6 +7592,9 @@ CONFIG_KS7010=m CONFIG_TYPEC_TCPCI=m CONFIG_DRM_VBOXVIDEO=m # CONFIG_PI433 is not set +CONFIG_MTK_MMC=m +# CONFIG_MTK_AEE_KDUMP is not set +# CONFIG_MTK_MMC_CD_POLL is not set CONFIG_X86_PLATFORM_DEVICES=y CONFIG_ACER_WMI=m CONFIG_ACER_WIRELESS=m @@ -7770,15 +7694,13 @@ CONFIG_COMMON_CLK=y # CONFIG_COMMON_CLK_WM831X=m CONFIG_COMMON_CLK_SI5351=m +CONFIG_COMMON_CLK_SI544=m CONFIG_COMMON_CLK_CDCE706=m CONFIG_COMMON_CLK_CS2000_CP=m CONFIG_COMMON_CLK_S2MPS11=m CONFIG_CLK_TWL6040=m -# CONFIG_COMMON_CLK_NXP is not set CONFIG_COMMON_CLK_PALMAS=m CONFIG_COMMON_CLK_PWM=m -# CONFIG_COMMON_CLK_PXA is not set -# CONFIG_COMMON_CLK_PIC32 is not set # CONFIG_HWSPINLOCK is not set # @@ -7787,11 +7709,6 @@ CONFIG_COMMON_CLK_PWM=m CONFIG_CLKEVT_I8253=y CONFIG_I8253_LOCK=y CONFIG_CLKBLD_I8253=y -# CONFIG_ATMEL_PIT is not set -# CONFIG_SH_TIMER_CMT is not set -# CONFIG_SH_TIMER_MTU2 is not set -# CONFIG_SH_TIMER_TMU is not set -# CONFIG_EM_TIMER_STI is not set CONFIG_MAILBOX=y CONFIG_PCC=y CONFIG_ALTERA_MBOX=m @@ -7845,7 +7762,6 @@ CONFIG_RPMSG_VIRTIO=m # # Qualcomm SoC drivers # -# CONFIG_SUNXI_SRAM is not set CONFIG_SOC_TI=y # @@ -8165,6 +8081,7 @@ CONFIG_JSA1212=m CONFIG_RPR0521=m CONFIG_SENSORS_LM3533=m CONFIG_LTR501=m +CONFIG_LV0104CS=m CONFIG_MAX44000=m CONFIG_OPT3001=m CONFIG_PA12203001=m @@ -8223,9 +8140,11 @@ CONFIG_IIO_SYSFS_TRIGGER=m # # Digital potentiometers # +CONFIG_AD5272=m CONFIG_DS1803=m CONFIG_MAX5481=m CONFIG_MAX5487=m +CONFIG_MCP4018=m CONFIG_MCP4131=m CONFIG_MCP4531=m CONFIG_TPL0102=m @@ -8282,6 +8201,7 @@ CONFIG_SRF08=m CONFIG_MAXIM_THERMOCOUPLE=m CONFIG_HID_SENSOR_TEMP=m CONFIG_MLX90614=m +CONFIG_MLX90632=m CONFIG_TMP006=m CONFIG_TMP007=m CONFIG_TSYS01=m @@ -8329,24 +8249,11 @@ CONFIG_PWM_TWL_LED=m # IRQ chip support # CONFIG_ARM_GIC_MAX_NR=1 -# CONFIG_ARM_GIC_V3_ITS is not set CONFIG_IPACK_BUS=m CONFIG_BOARD_TPCI200=m CONFIG_SERIAL_IPOCTAL=m CONFIG_RESET_CONTROLLER=y -# CONFIG_RESET_ATH79 is not set -# CONFIG_RESET_AXS10X is not set -# CONFIG_RESET_BERLIN is not set -# CONFIG_RESET_IMX7 is not set -# CONFIG_RESET_LANTIQ is not set -# CONFIG_RESET_LPC18XX is not set -# CONFIG_RESET_MESON is not set -# CONFIG_RESET_PISTACHIO is not set -# CONFIG_RESET_SIMPLE is not set -# CONFIG_RESET_SUNXI is not set CONFIG_RESET_TI_SYSCON=m -# CONFIG_RESET_ZYNQ is not set -# CONFIG_RESET_TEGRA_BPMP is not set CONFIG_FMC=m CONFIG_FMC_FAKEDEV=m CONFIG_FMC_TRIVIAL=m @@ -8364,9 +8271,6 @@ CONFIG_PHY_CPCAP_USB=m CONFIG_PHY_QCOM_USB_HS=m CONFIG_PHY_QCOM_USB_HSIC=m CONFIG_PHY_SAMSUNG_USB2=m -# CONFIG_PHY_EXYNOS4210_USB2 is not set -# CONFIG_PHY_EXYNOS4X12_USB2 is not set -# CONFIG_PHY_EXYNOS5250_USB2 is not set CONFIG_PHY_TUSB1210=m CONFIG_POWERCAP=y CONFIG_INTEL_RAPL=m @@ -8394,10 +8298,15 @@ CONFIG_BTT=y CONFIG_ND_PFN=m CONFIG_NVDIMM_PFN=y CONFIG_NVDIMM_DAX=y +CONFIG_DAX_DRIVER=y CONFIG_DAX=y CONFIG_DEV_DAX=m CONFIG_DEV_DAX_PMEM=m CONFIG_NVMEM=y + +# +# HW tracing support +# CONFIG_STM=m CONFIG_STM_DUMMY=m CONFIG_STM_SOURCE_CONSOLE=m @@ -8405,6 +8314,7 @@ CONFIG_STM_SOURCE_HEARTBEAT=m CONFIG_STM_SOURCE_FTRACE=m CONFIG_INTEL_TH=m CONFIG_INTEL_TH_PCI=m +CONFIG_INTEL_TH_ACPI=m CONFIG_INTEL_TH_GTH=m CONFIG_INTEL_TH_STH=m CONFIG_INTEL_TH_MSU=m @@ -8418,7 +8328,6 @@ CONFIG_FPGA_MGR_XILINX_SPI=m CONFIG_FPGA_BRIDGE=m CONFIG_XILINX_PR_DECOUPLER=m CONFIG_FPGA_REGION=m -# CONFIG_FSI is not set CONFIG_PM_OPP=y CONFIG_UNISYS_VISORBUS=m # CONFIG_SIOX is not set @@ -8551,6 +8460,7 @@ CONFIG_OVERLAY_FS=m # CONFIG_OVERLAY_FS_REDIRECT_DIR is not set # CONFIG_OVERLAY_FS_REDIRECT_ALWAYS_FOLLOW is not set # CONFIG_OVERLAY_FS_INDEX is not set +# CONFIG_OVERLAY_FS_XINO_AUTO is not set # # Caches @@ -8674,9 +8584,14 @@ CONFIG_ROMFS_BACKED_BY_BLOCK=y # CONFIG_ROMFS_BACKED_BY_BOTH is not set CONFIG_ROMFS_ON_BLOCK=y CONFIG_PSTORE=y -CONFIG_PSTORE_ZLIB_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS=m # CONFIG_PSTORE_LZO_COMPRESS is not set # CONFIG_PSTORE_LZ4_COMPRESS is not set +# CONFIG_PSTORE_LZ4HC_COMPRESS is not set +# CONFIG_PSTORE_842_COMPRESS is not set +CONFIG_PSTORE_COMPRESS=y +CONFIG_PSTORE_DEFLATE_COMPRESS_DEFAULT=y +CONFIG_PSTORE_COMPRESS_DEFAULT="deflate" # CONFIG_PSTORE_CONSOLE is not set # CONFIG_PSTORE_PMSG is not set # CONFIG_PSTORE_FTRACE is not set @@ -8879,13 +8794,13 @@ CONFIG_ARCH_HAS_KCOV=y # CONFIG_LOCKUP_DETECTOR=y CONFIG_SOFTLOCKUP_DETECTOR=y +# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set +CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 CONFIG_HARDLOCKUP_DETECTOR_PERF=y CONFIG_HARDLOCKUP_CHECK_TIMESTAMP=y CONFIG_HARDLOCKUP_DETECTOR=y # CONFIG_BOOTPARAM_HARDLOCKUP_PANIC is not set CONFIG_BOOTPARAM_HARDLOCKUP_PANIC_VALUE=0 -# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set -CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 CONFIG_DETECT_HUNG_TASK=y CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 # CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set @@ -8903,13 +8818,15 @@ CONFIG_SCHED_STACK_END_CHECK=y # # Lock Debugging (spinlocks, mutexes, etc...) # +CONFIG_LOCK_DEBUGGING_SUPPORT=y +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_RT_MUTEXES is not set # CONFIG_DEBUG_SPINLOCK is not set # CONFIG_DEBUG_MUTEXES is not set # CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_RWSEMS is not set # CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set # CONFIG_DEBUG_ATOMIC_SLEEP is not set # CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set CONFIG_LOCK_TORTURE_TEST=m @@ -8927,7 +8844,6 @@ CONFIG_DEBUG_BUGVERBOSE=y # # RCU Debugging # -# CONFIG_PROVE_RCU is not set CONFIG_TORTURE_TEST=m # CONFIG_RCU_PERF_TEST is not set # CONFIG_RCU_TORTURE_TEST is not set @@ -9038,7 +8954,6 @@ CONFIG_KDB_DEFAULT_ENABLE=0x1 CONFIG_KDB_KEYBOARD=y CONFIG_KDB_CONTINUE_CATASTROPHIC=0 CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y -# CONFIG_ARCH_WANTS_UBSAN_NO_NULL is not set # CONFIG_UBSAN is not set CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y CONFIG_STRICT_DEVMEM=y @@ -9049,7 +8964,6 @@ CONFIG_EARLY_PRINTK=y CONFIG_EARLY_PRINTK_DBGP=y CONFIG_EARLY_PRINTK_EFI=y # CONFIG_EARLY_PRINTK_USB_XDBC is not set -# CONFIG_X86_PTDUMP_CORE is not set # CONFIG_X86_PTDUMP is not set # CONFIG_EFI_PGT_DUMP is not set # CONFIG_DEBUG_WX is not set @@ -9205,7 +9119,6 @@ CONFIG_CRYPTO_CRYPTD=m CONFIG_CRYPTO_MCRYPTD=m CONFIG_CRYPTO_AUTHENC=m CONFIG_CRYPTO_TEST=m -CONFIG_CRYPTO_ABLK_HELPER=m CONFIG_CRYPTO_SIMD=m CONFIG_CRYPTO_GLUE_HELPER_X86=m CONFIG_CRYPTO_ENGINE=m @@ -9223,6 +9136,7 @@ CONFIG_CRYPTO_ECHAINIV=m # Block modes # CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CFB=m CONFIG_CRYPTO_CTR=y CONFIG_CRYPTO_CTS=m CONFIG_CRYPTO_ECB=y @@ -9307,6 +9221,8 @@ CONFIG_CRYPTO_SERPENT=m CONFIG_CRYPTO_SERPENT_SSE2_X86_64=m CONFIG_CRYPTO_SERPENT_AVX_X86_64=m CONFIG_CRYPTO_SERPENT_AVX2_X86_64=m +CONFIG_CRYPTO_SM4=m +CONFIG_CRYPTO_SPECK=m CONFIG_CRYPTO_TEA=m CONFIG_CRYPTO_TWOFISH=m CONFIG_CRYPTO_TWOFISH_COMMON=m @@ -9343,7 +9259,6 @@ CONFIG_CRYPTO_HW=y CONFIG_CRYPTO_DEV_PADLOCK=y CONFIG_CRYPTO_DEV_PADLOCK_AES=m CONFIG_CRYPTO_DEV_PADLOCK_SHA=m -# CONFIG_CRYPTO_DEV_FSL_CAAM_CRYPTO_API_DESC is not set CONFIG_CRYPTO_DEV_CCP=y CONFIG_CRYPTO_DEV_CCP_DD=m CONFIG_CRYPTO_DEV_SP_CCP=y @@ -9360,6 +9275,7 @@ CONFIG_CRYPTO_DEV_NITROX=m CONFIG_CRYPTO_DEV_NITROX_CNN55XX=m CONFIG_CRYPTO_DEV_CHELSIO=m # CONFIG_CHELSIO_IPSEC_INLINE is not set +# CONFIG_CRYPTO_DEV_CHELSIO_TLS is not set CONFIG_CRYPTO_DEV_VIRTIO=m CONFIG_ASYMMETRIC_KEY_TYPE=y CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y @@ -9407,7 +9323,6 @@ CONFIG_BINARY_PRINTF=y # CONFIG_RAID6_PQ=m CONFIG_BITREVERSE=y -# CONFIG_HAVE_ARCH_BITREVERSE is not set CONFIG_RATIONAL=y CONFIG_GENERIC_STRNCPY_FROM_USER=y CONFIG_GENERIC_STRNLEN_USER=y @@ -9432,7 +9347,6 @@ CONFIG_CRC7=m CONFIG_LIBCRC32C=m CONFIG_CRC8=m CONFIG_XXHASH=m -# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set # CONFIG_RANDOM32_SELFTEST is not set CONFIG_842_COMPRESS=m CONFIG_842_DECOMPRESS=m @@ -9479,7 +9393,7 @@ CONFIG_HAS_IOMEM=y CONFIG_HAS_IOPORT_MAP=y CONFIG_HAS_DMA=y CONFIG_SGL_ALLOC=y -# CONFIG_DMA_DIRECT_OPS is not set +CONFIG_DMA_DIRECT_OPS=y CONFIG_DMA_VIRT_OPS=y CONFIG_CHECK_SIGNATURE=y CONFIG_CPU_RMAP=y @@ -9500,7 +9414,6 @@ CONFIG_FONT_SUPPORT=y # CONFIG_FONTS is not set CONFIG_FONT_8x8=y CONFIG_FONT_8x16=y -# CONFIG_SG_SPLIT is not set CONFIG_SG_POOL=y CONFIG_ARCH_HAS_SG_CHAIN=y CONFIG_ARCH_HAS_PMEM_API=y diff --git a/gnu/packages/aux-files/run-in-namespace.c b/gnu/packages/aux-files/run-in-namespace.c new file mode 100644 index 0000000000..f0cff88552 --- /dev/null +++ b/gnu/packages/aux-files/run-in-namespace.c @@ -0,0 +1,313 @@ +/* GNU Guix --- Functional package management for GNU + Copyright (C) 2018 Ludovic Courtès <ludo@gnu.org> + + This file is part of GNU Guix. + + GNU Guix is free software; you can redistribute it and/or modify it + under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 3 of the License, or (at + your option) any later version. + + GNU Guix is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. */ + +/* Make the given @WRAPPED_PROGRAM@ relocatable by executing it in a separate + mount namespace where the store is mounted in its right place. + + We would happily do that in Scheme using 'call-with-container'. However, + this very program needs to be relocatable, so it needs to be statically + linked, which complicates things (Guile's modules can hardly be "linked" + into a single executable.) */ + +#define _GNU_SOURCE +#include <stdlib.h> +#include <stdio.h> +#include <unistd.h> +#include <sched.h> +#include <sys/mount.h> +#include <errno.h> +#include <libgen.h> +#include <limits.h> +#include <string.h> +#include <assert.h> +#include <sys/stat.h> +#include <sys/types.h> +#include <sys/wait.h> +#include <fcntl.h> +#include <dirent.h> +#include <sys/syscall.h> + +/* Concatenate DIRECTORY, a slash, and FILE. Return the result, which the + caller must eventually free. */ +static char * +concat (const char *directory, const char *file) +{ + char *result = malloc (strlen (directory) + 2 + strlen (file)); + assert (result != NULL); + + strcpy (result, directory); + strcat (result, "/"); + strcat (result, file); + return result; +} + +static void +mkdir_p (const char *directory) +{ + if (strcmp (directory, "/") != 0) + { + char *parent = dirname (strdupa (directory)); + mkdir_p (parent); + int err = mkdir (directory, 0700); + if (err < 0 && errno != EEXIST) + assert_perror (errno); + } +} + +static void +rm_rf (const char *directory) +{ + DIR *stream = opendir (directory); + + for (struct dirent *entry = readdir (stream); + entry != NULL; + entry = readdir (stream)) + { + if (strcmp (entry->d_name, ".") == 0 + || strcmp (entry->d_name, "..") == 0) + continue; + + char *full = concat (directory, entry->d_name); + + int err = unlink (full); + if (err < 0) + { + if (errno == EISDIR) + /* Recurse (we expect a shallow directory structure so there's + little risk of stack overflow.) */ + rm_rf (full); + else + assert_perror (errno); + } + + free (full); + } + + closedir (stream); + + int err = rmdir (directory); + if (err < 0 && errno != ENOENT) + assert_perror (errno); +} + +/* Bind mount all the top-level entries in SOURCE to TARGET. */ +static void +bind_mount (const char *source, const char *target) +{ + DIR *stream = opendir (source); + + for (struct dirent *entry = readdir (stream); + entry != NULL; + entry = readdir (stream)) + { + /* XXX: Some file systems may not report a useful 'd_type'. Ignore them + for now. */ + assert (entry->d_type != DT_UNKNOWN); + + if (strcmp (entry->d_name, ".") == 0 + || strcmp (entry->d_name, "..") == 0) + continue; + + char *abs_source = concat (source, entry->d_name); + char *new_entry = concat (target, entry->d_name); + + if (entry->d_type == DT_LNK) + { + char target[PATH_MAX]; + + ssize_t result = readlink (abs_source, target, sizeof target - 1); + if (result > 0) + { + target[result] = '\0'; + int err = symlink (target, new_entry); + if (err < 0) + assert_perror (errno); + } + } + else + { + /* Create the mount point. */ + if (entry->d_type == DT_DIR) + { + int err = mkdir (new_entry, 0700); + if (err != 0) + assert_perror (errno); + } + else + close (open (new_entry, O_WRONLY | O_CREAT)); + + int err = mount (abs_source, new_entry, "none", + MS_BIND | MS_REC | MS_RDONLY, NULL); + + /* It used to be that only directories could be bind-mounted. Thus, + keep going if we fail to bind-mount a non-directory entry. + That's OK because regular files in the root file system are + usually uninteresting. */ + if (err != 0 && entry->d_type != DT_DIR) + assert_perror (errno); + + free (new_entry); + free (abs_source); + } + } + + closedir (stream); +} + +/* Write the user/group ID map for PID to FILE, mapping ID to itself. See + user_namespaces(7). */ +static void +write_id_map (pid_t pid, const char *file, int id) +{ + char id_map_file[100]; + snprintf (id_map_file, sizeof id_map_file, "/proc/%d/%s", pid, file); + + char id_map[100]; + + /* Map root and the current user. */ + int len = snprintf (id_map, sizeof id_map, "%d %d 1\n", id, id); + int fd = open (id_map_file, O_WRONLY); + if (fd < 0) + assert_perror (errno); + + int n = write (fd, id_map, len); + if (n < 0) + assert_perror (errno); + + close (fd); +} + +/* Disallow setgroups(2) for PID. */ +static void +disallow_setgroups (pid_t pid) +{ + char file[100]; + + snprintf (file, sizeof file, "/proc/%d/setgroups", pid); + + int fd = open (file, O_WRONLY); + if (fd < 0) + assert_perror (errno); + + int err = write (fd, "deny", 5); + if (err < 0) + assert_perror (errno); + + close (fd); +} + + +int +main (int argc, char *argv[]) +{ + ssize_t size; + char self[PATH_MAX]; + size = readlink ("/proc/self/exe", self, sizeof self - 1); + assert (size > 0); + + /* SELF is something like "/home/ludo/.local/gnu/store/…-foo/bin/ls" and we + want to extract "/home/ludo/.local/gnu/store". */ + size_t index = strlen (self) + - strlen ("@WRAPPED_PROGRAM@") + + strlen ("@STORE_DIRECTORY@"); + char *store = strdup (self); + store[index] = '\0'; + + struct stat statbuf; + + /* If STORE is already at the "right" place, we can execute + @WRAPPED_PROGRAM@ right away. This is not just an optimization: it's + needed when running one of these wrappers from within an unshare'd + namespace, because 'unshare' fails with EPERM in that context. */ + if (strcmp (store, "@STORE_DIRECTORY@") != 0 + && lstat ("@WRAPPED_PROGRAM@", &statbuf) != 0) + { + /* Spawn @WRAPPED_PROGRAM@ in a separate namespace where STORE is + bind-mounted in the right place. */ + int err; + char *new_root = mkdtemp (strdup ("/tmp/guix-exec-XXXXXX")); + char *new_store = concat (new_root, "@STORE_DIRECTORY@"); + char *cwd = get_current_dir_name (); + + /* Create a child with separate namespaces and set up bind-mounts from + there. That way, bind-mounts automatically disappear when the child + exits, which simplifies cleanup for the parent. Note: clone is more + convenient than fork + unshare since the parent can directly write + the child uid_map/gid_map files. */ + pid_t child = syscall (SYS_clone, SIGCHLD | CLONE_NEWNS | CLONE_NEWUSER, + NULL, NULL, NULL); + switch (child) + { + case 0: + /* Note: Due to <https://bugzilla.kernel.org/show_bug.cgi?id=183461> + we cannot make NEW_ROOT a tmpfs (which would have saved the need + for 'rm_rf'.) */ + bind_mount ("/", new_root); + mkdir_p (new_store); + err = mount (store, new_store, "none", MS_BIND | MS_REC | MS_RDONLY, + NULL); + if (err < 0) + assert_perror (errno); + + chdir (new_root); + err = chroot (new_root); + if (err < 0) + assert_perror (errno); + + /* Change back to where we were before chroot'ing. */ + chdir (cwd); + break; + + case -1: + fprintf (stderr, "%s: error: 'clone' failed: %m\n", argv[0]); + fprintf (stderr, "\ +This may be because \"user namespaces\" are not supported on this system.\n\ +Consequently, we cannot run '@WRAPPED_PROGRAM@',\n\ +unless you move it to the '@STORE_DIRECTORY@' directory.\n\ +\n\ +Please refer to the 'guix pack' documentation for more information.\n"); + return EXIT_FAILURE; + + default: + { + /* Map the current user/group ID in the child's namespace (the + default is to get the "overflow UID", i.e., the UID of + "nobody"). We must first disallow 'setgroups' for that + process. */ + disallow_setgroups (child); + write_id_map (child, "uid_map", getuid ()); + write_id_map (child, "gid_map", getgid ()); + + int status; + waitpid (child, &status, 0); + chdir ("/"); /* avoid EBUSY */ + rm_rf (new_root); + free (new_root); + exit (status); + } + } + } + + /* The executable is available under @STORE_DIRECTORY@, so we can now + execute it. */ + int err = execv ("@WRAPPED_PROGRAM@", argv); + if (err < 0) + assert_perror (errno); + + return EXIT_FAILURE; +} diff --git a/gnu/packages/avahi.scm b/gnu/packages/avahi.scm index 7734028dc3..df74437631 100644 --- a/gnu/packages/avahi.scm +++ b/gnu/packages/avahi.scm @@ -77,7 +77,7 @@ DNS-SD (for \"DNS-Based Service Discovery\") protocols.") (define-public nss-mdns (package (name "nss-mdns") - (version "0.12") + (version "0.14.1") (home-page "https://github.com/lathiat/nss-mdns") (source (origin (method url-fetch) @@ -85,32 +85,13 @@ DNS-SD (for \"DNS-Based Service Discovery\") protocols.") name "-" version ".tar.gz")) (sha256 (base32 - "1p2vj9fz4kzrjrj81ipf4qwgnr2n7a8cbzw4bpk18xyqhdx8h775")) - (patches - (list (origin - ;; See - ;; <https://github.com/lathiat/nss-mdns/issues/26#issuecomment-364781799>. - (uri (string-append - home-page - "/commit/31ccbec3b4f054e590c7c880d8a8a50cfc97127d.patch")) - (sha256 - (base32 - "0b1jmhnkpsczbph4ala7x3rafwxdg93277s30iaxh37jnvgjnhsd")) - (method url-fetch)))))) + "134wdr0n9cm5ab4g6dwq76lvzqns9dcylr470i2xxjimnw0l22d2")))) (build-system gnu-build-system) (arguments - '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'set-avahi-socket-name - (lambda _ - ;; The Avahi daemon socket is expected by - ;; src/Makefile.am to be at - ;; "$(localstatedir)/run/avahi-daemon/socket", but - ;; nowadays it lives in /run/avahi-daemon/socket. - ;; Remove the "$(localstatedir)" bit. - (substitute* "src/Makefile.in" - (("\\$\\(localstatedir)/run/avahi-daemon/socket") - "/run/avahi-daemon/socket")) - #t))))) + ;; The Avahi daemon socket is expected by 'configure.ac' to be at + ;; "$(localstatedir)/run/avahi-daemon/socket", but nowadays it lives in + ;; /run/avahi-daemon/socket. Remove the "$(localstatedir)" bit. + '(#:configure-flags '("AVAHI_SOCKET=/run/avahi-daemon/socket"))) (synopsis "Multicast DNS Name Service Switch (@dfn{NSS}) plug-in") (description "Nss-mdns is a plug-in for the GNU C Library's Name Service Switch diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index 76ff773ef1..ed35b4c61a 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Roel Janssen <roel@gnu.org> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,17 +29,49 @@ #:use-module (gnu packages statistics) #:use-module (gnu packages bioinformatics)) +(define-public r-bsgenome-dmelanogaster-ucsc-dm6 + (package + (name "r-bsgenome-dmelanogaster-ucsc-dm6") + (version "1.4.1") + (source (origin + (method url-fetch) + ;; We cannot use bioconductor-uri here because this tarball is + ;; located under "data/annotation/" instead of "bioc/". + (uri (string-append "https://www.bioconductor.org/packages/" + "release/data/annotation/src/contrib/" + "BSgenome.Dmelanogaster.UCSC.dm6_" + version ".tar.gz")) + (sha256 + (base32 + "1bhj0rdgf7lspw4xby9y9mf7v7jxxz8001bc8vw8kf04rjsx6060")))) + (properties + `((upstream-name . "BSgenome.Dmelanogaster.UCSC.dm6"))) + (build-system r-build-system) + ;; As this package provides little more than a very large data file it + ;; doesn't make sense to build substitutes. + (arguments `(#:substitutable? #f)) + (propagated-inputs + `(("r-bsgenome" ,r-bsgenome))) + (home-page + "https://www.bioconductor.org/packages/BSgenome.Dmelanogaster.UCSC.dm6/") + (synopsis "Full genome sequences for Fly") + (description + "This package provides full genome sequences for Drosophila +melanogaster (Fly) as provided by UCSC (dm6) and stored in Biostrings +objects.") + (license license:artistic2.0))) + (define-public r-hpar (package (name "r-hpar") - (version "1.20.0") + (version "1.22.2") (source (origin (method url-fetch) (uri (bioconductor-uri "hpar" version)) (sha256 (base32 - "0s5v79mgxdx862v1jrdf5pdap81nz5vjx25ni8s3sl97ldckf6j8")))) + "1b72hvzasf6q739gmx6jblbzzyq22l7crrkbbfkihv3v7s94g388")))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/hpar/") (synopsis "Human Protein Atlas in R") @@ -49,14 +82,14 @@ the Human Protein Atlas project.") (define-public r-regioner (package (name "r-regioner") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "regioneR" version)) (sha256 (base32 - "1vprp3l929hwzmvgskbhawfgnrymwc9n2rxd16rgagnv1dxnjxfp")))) + "09bzlaqdgy7wmzly3zc9y2da50d07mlixlnpaxdxpiwdk8qmhxsb")))) (properties `((upstream-name . "regioneR"))) (build-system r-build-system) (propagated-inputs @@ -65,7 +98,8 @@ the Human Protein Atlas project.") ("r-bsgenome" ,r-bsgenome) ("r-rtracklayer" ,r-rtracklayer) ("r-genomeinfodb" ,r-genomeinfodb) - ("r-iranges" ,r-iranges))) + ("r-iranges" ,r-iranges) + ("r-s4vectors" ,r-s4vectors))) (home-page "https://bioconductor.org/packages/regioneR/") (synopsis "Association analysis of genomic regions") (description "This package offers a statistical framework based on @@ -76,14 +110,14 @@ region sets and other genomic features.") (define-public r-diffbind (package (name "r-diffbind") - (version "2.6.6") + (version "2.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DiffBind" version)) (sha256 (base32 - "1sm5h6nq77hjfis6kr1nqyizcxgfz87dgpqc4fxlfqkmsd9n3vkp")))) + "1w1hybzd732ccg3q8zhirwfilq8sx3frv1x98zfyj3svzw98fish")))) (properties `((upstream-name . "DiffBind"))) (build-system r-build-system) (inputs @@ -95,6 +129,8 @@ region sets and other genomic features.") ("r-dplyr" ,r-dplyr) ("r-edger" ,r-edger) ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-ggplot2" ,r-ggplot2) ("r-ggrepel" ,r-ggrepel) ("r-gplots" ,r-gplots) ("r-iranges" ,r-iranges) @@ -105,6 +141,7 @@ region sets and other genomic features.") ("r-rcpp" ,r-rcpp) ("r-rsamtools" ,r-rsamtools) ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment) ("r-systempiper" ,r-systempiper) ("r-zlibbioc" ,r-zlibbioc))) (home-page "http://bioconductor.org/packages/DiffBind") @@ -118,14 +155,14 @@ occupancy (overlap) analysis and plotting functions.") (define-public r-ripseeker (package (name "r-ripseeker") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RIPSeeker" version)) (sha256 (base32 - "0bqkzwrncww7il36273chkd3gfxmii7p566ycki9qij419pwr35y")))) + "0y9cvzqslfxj3z9mnp47mknff0pky2g5x8x1z1s5yjcx35q89xfi")))) (properties `((upstream-name . "RIPSeeker"))) (build-system r-build-system) (propagated-inputs @@ -151,14 +188,14 @@ processing to visualization and annotation.") (define-public r-multtest (package (name "r-multtest") - (version "2.34.0") + (version "2.36.0") (source (origin (method url-fetch) (uri (bioconductor-uri "multtest" version)) (sha256 (base32 - "0n11rd49xl2vn3ldmfips7d3yb70l8npjcqsxyswr9ypjhgzkv9j")))) + "11949h2kglw13x8haaj4clg4jim1mwh5n98n9zxp9mmgn01z1lp0")))) (build-system r-build-system) (propagated-inputs `(("r-survival" ,r-survival) @@ -189,23 +226,27 @@ expressed genes in DNA microarray experiments.") (define-public r-chippeakanno (package (name "r-chippeakanno") - (version "3.12.7") + (version "3.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ChIPpeakAnno" version)) (sha256 (base32 - "1zab489d7a6bh6ylc68x6yn47gdkmr7p3677grx9l2qafrryjr04")))) + "1kcnc3cnmrhdk1x7q3y6zsz09pgd3xn9xy1hfbxz48cajlb18ad0")))) (properties `((upstream-name . "ChIPpeakAnno"))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-delayedarray" ,r-delayedarray) ("r-go-db" ,r-go-db) ("r-biomart" ,r-biomart) ("r-bsgenome" ,r-bsgenome) ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) ("r-genomeinfodb" ,r-genomeinfodb) + ("r-iranges" ,r-iranges) ("r-matrixstats" ,r-matrixstats) ("r-annotationdbi" ,r-annotationdbi) ("r-limma" ,r-limma) @@ -217,6 +258,7 @@ expressed genes in DNA microarray experiments.") ("r-dbi" ,r-dbi) ("r-ensembldb" ,r-ensembldb) ("r-biobase" ,r-biobase) + ("r-s4vectors" ,r-s4vectors) ("r-seqinr" ,r-seqinr) ("r-idr" ,r-idr) ("r-genomicalignments" ,r-genomicalignments) @@ -239,16 +281,15 @@ enrichedGO (addGeneIDs).") (define-public r-marray (package (name "r-marray") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "marray" version)) (sha256 - (base32 "14c93i86yc7jn4ax8p4l0z6v9xisw1bv7gzb4a0gbxhxn7mddaic")))) + (base32 "0539flh3y1qy5b1bamkfwbskis765c5s33v1y9j51n33mxb9h08d")))) (build-system r-build-system) (propagated-inputs - `(("r-biobase" ,r-biobase) - ("r-limma" ,r-limma))) + `(("r-limma" ,r-limma))) (home-page "http://bioconductor.org/packages/marray") (synopsis "Exploratory analysis for two-color spotted microarray data") (description "This package contains class definitions for two-color spotted @@ -259,12 +300,12 @@ normalization and quality checking.") (define-public r-cghbase (package (name "r-cghbase") - (version "1.38.0") + (version "1.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHbase" version)) (sha256 - (base32 "0fynvcsjdbgp69i0nxrc8ni58rhb1kx9k5r3nb91n9i8s43gjqlm")))) + (base32 "1hf44vma3kgwr61kjbszvfxkava8bjqnam1mdncqvczbypb2xwaq")))) (properties `((upstream-name . "CGHbase"))) (build-system r-build-system) (propagated-inputs @@ -279,12 +320,12 @@ the @code{arrayCGH} packages.") (define-public r-cghcall (package (name "r-cghcall") - (version "2.40.0") + (version "2.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CGHcall" version)) (sha256 - (base32 "11pi6awz3858yb4s0z3qf3kcmsdgp6d4aj41g4lfix1sv5amllch")))) + (base32 "0y71vfxv9x0am3xvv520yr95cb7m7y92dhdx1vkqki80jrmf12dz")))) (properties `((upstream-name . "CGHcall"))) (build-system r-build-system) (propagated-inputs @@ -302,16 +343,17 @@ the @code{arrayCGH} packages.") (define-public r-qdnaseq (package (name "r-qdnaseq") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "QDNAseq" version)) (sha256 - (base32 "0lgbv4s0xqgrs7q6ynb3c273sf7pyrp51jnc8ravq1z5g0a2zshy")))) + (base32 "1pj69mfyxwfd0d7h4kls9xq96sdc55y3rv20qpla50hw9libcwwd")))) (properties `((upstream-name . "QDNAseq"))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) + ("r-biocparallel" ,r-biocparallel) ("r-cghbase" ,r-cghbase) ("r-cghcall" ,r-cghcall) ("r-dnacopy" ,r-dnacopy) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 61e5d8bc34..3628d6231a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -2088,7 +2088,7 @@ accurately delineate genomic rearrangements throughout the genome.") (define-public diamond (package (name "diamond") - (version "0.9.21") + (version "0.9.22") (source (origin (method url-fetch) (uri (string-append @@ -2097,7 +2097,7 @@ accurately delineate genomic rearrangements throughout the genome.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1cf98vcsiwcv3c4apg50w1240v1mpw0zln1sdw3g692dqa4y041z")))) + "0adp87r9ak63frdrdmrdfhsn6g0jnnyq1lr2wibvqbxcl37iir9m")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no "check" target @@ -3154,6 +3154,8 @@ manipulating HTS data.") #:jdk ,icedtea-8 #:phases (modify-phases %standard-phases + ;; FIXME: this phase fails with "duplicate entry: htsjdk/samtools/AbstractBAMFileIndex$1.class" + (delete 'generate-jar-indices) (add-after 'unpack 'use-our-htsjdk (lambda* (#:key inputs #:allow-other-keys) (substitute* "build.xml" @@ -3211,6 +3213,8 @@ VCF.") (sxml xpath)) #:phases (modify-phases %standard-phases + ;; FIXME: this phase fails with "duplicate entry: htsjdk/samtools/AbstractBAMFileIndex$1.class" + (delete 'generate-jar-indices) (add-after 'unpack 'remove-useless-build.xml (lambda _ (delete-file "build.xml") #t)) ;; This is necessary to ensure that htsjdk is found when using @@ -3301,6 +3305,8 @@ VCF.") (list "-Dsamjdk.intel_deflater_so_path=lib/jni/libIntelDeflater.so") #:phases (modify-phases %standard-phases + ;; FIXME: This phase fails. + (delete 'generate-jar-indices) ;; Do not use bundled ant bzip2. (add-after 'unpack 'use-ant-bzip (lambda* (#:key inputs #:allow-other-keys) @@ -3459,6 +3465,42 @@ The main functions of FastQC are: @end itemize\n") (license license:gpl3+))) +(define-public fastp + (package + (name "fastp") + (version "0.14.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/OpenGene/fastp.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1r6ms5zbf5rps4rgp4z73nczadl00b5rqylw8f684isfz27dp0xh")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; there are none + #:make-flags + (list (string-append "BINDIR=" (assoc-ref %outputs "out") "/bin")) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'install 'create-target-dir + (lambda* (#:key outputs #:allow-other-keys) + (mkdir-p (string-append (assoc-ref outputs "out") "/bin")) + #t))))) + (inputs + `(("zlib" ,zlib))) + (home-page "https://github.com/OpenGene/fastp/") + (synopsis "All-in-one FastQ preprocessor") + (description + "Fastp is a tool designed to provide fast all-in-one preprocessing for +FastQ files. This tool has multi-threading support to afford high +performance.") + (license license:expat))) + (define-public htslib (package (name "htslib") @@ -6098,20 +6140,20 @@ information as possible.") (define-public r-vegan (package (name "r-vegan") - (version "2.5-1") + (version "2.5-2") (source (origin (method url-fetch) (uri (cran-uri "vegan" version)) (sha256 (base32 - "0pynr02d1xngda6c3va8fc4nxpgfkawhzcnz1ws4dnarp9b1w90r")))) + "13pyqvlpz64qibi8k5d109v7q09j06mbv6ndix3n4cn21mjx391c")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) (propagated-inputs `(("r-cluster" ,r-cluster) - ("r-knitr" ,r-knitr) + ("r-knitr" ,r-knitr) ; needed for vignettes ("r-lattice" ,r-lattice) ("r-mass" ,r-mass) ("r-mgcv" ,r-mgcv) @@ -6128,14 +6170,14 @@ data types as well.") (define-public r-annotate (package (name "r-annotate") - (version "1.56.2") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "annotate" version)) (sha256 (base32 - "0ybg9k1s289h15nj1kp9821i1rsk1gkn8i8blplmk7gsgpbw1f42")))) + "1qmncyvy147a1ll3iri45p822kcs3s7583jfnq9jf6sz9ilk8cjf")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -6155,13 +6197,13 @@ microarrays.") (define-public r-copynumber (package (name "r-copynumber") - (version "1.18.0") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "copynumber" version)) (sha256 (base32 - "01kcwzl485yjrkgyg8117b1il957ss0v6rq4bbxf4ksd5fzcjmyx")))) + "0y9nnwb0psphp3ix88wj2f8z5gr45r5znf55w892ysm27isdpmms")))) (build-system r-build-system) (propagated-inputs `(("r-s4vectors" ,r-s4vectors) @@ -6178,14 +6220,14 @@ penalized least squares regression method.") (define-public r-geneplotter (package (name "r-geneplotter") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "geneplotter" version)) (sha256 (base32 - "1z3g7frc1iviwrsv2dlm4nqvkc0685h4va0388yfxn102ln8wwma")))) + "055g28xgiazl4l0gkg8xiamks64f5yckjjyvw1abd6d6qjavwx0g")))) (build-system r-build-system) (propagated-inputs `(("r-annotate" ,r-annotate) @@ -6203,14 +6245,14 @@ penalized least squares regression method.") (define-public r-genefilter (package (name "r-genefilter") - (version "1.60.0") + (version "1.62.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genefilter" version)) (sha256 (base32 - "173swlg6gj4kdllbqvyiw5dggbcxiwlwpqmllsv4dxzn7h25i3g7")))) + "14l0ff02spmjwxj0m1czhg5vlkgwcfi73cym8m2n9vn6i7bjdaqi")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -6230,14 +6272,14 @@ high-throughput sequencing experiments.") (define-public r-deseq2 (package (name "r-deseq2") - (version "1.18.1") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq2" version)) (sha256 (base32 - "1iyimg1s0x5pdmvl8x08s8h0v019y0nhjzs50chagbpk2x91fsmv")))) + "1wjnfpb41a9mmf9a22bz4zh7r1d4id50vpdc1mn5vfzrz7li9qik")))) (properties `((upstream-name . "DESeq2"))) (build-system r-build-system) (propagated-inputs @@ -6267,14 +6309,14 @@ distribution.") (define-public r-dexseq (package (name "r-dexseq") - (version "1.24.4") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DEXSeq" version)) (sha256 (base32 - "1a80yv742fx5c7qav7imsdybphf0d5bixsqyf8w5zng7fk8j16d5")))) + "1mqb3mdxcsi3largsl7k27bvqrgps9ixv806xvmf29pw0xn05sg1")))) (properties `((upstream-name . "DEXSeq"))) (build-system r-build-system) (propagated-inputs @@ -6310,14 +6352,14 @@ exploration of the results.") (define-public r-annotationforge (package (name "r-annotationforge") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationForge" version)) (sha256 (base32 - "01vbrf76vqfvxh6vpfxkjwccxggnha3byqzj333glqz2b6kwx5q1")))) + "12ffj7h95adiya5mzyjxazqn1qgr434ajpabfcyhrj5v83s4vk65")))) (properties `((upstream-name . "AnnotationForge"))) (build-system r-build-system) @@ -6340,14 +6382,14 @@ databases. Packages produced are intended to be used with AnnotationDbi.") (define-public r-rbgl (package (name "r-rbgl") - (version "1.54.0") + (version "1.56.0") (source (origin (method url-fetch) (uri (bioconductor-uri "RBGL" version)) (sha256 (base32 - "18jad23i3899ypv4bg3l47cvvs3qnj1pqis2p9x0135yv5y6wnv7")))) + "0hj972mmqpyi5fx1rq33kysavdyz4nspi6gcffzi3rv339m0anhf")))) (properties `((upstream-name . "RBGL"))) (build-system r-build-system) (propagated-inputs `(("r-graph" ,r-graph))) @@ -6361,14 +6403,14 @@ the graph algorithms contained in the Boost library.") (define-public r-gseabase (package (name "r-gseabase") - (version "1.40.1") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GSEABase" version)) (sha256 (base32 - "10cmjxahg2plwacfan6g0k8cwyzya96ypc7m1r79gwqkyykxw5fz")))) + "11bv92svik399q677jv96b71i4bq68xxyxn1yijpdik2lq4hgl7a")))) (properties `((upstream-name . "GSEABase"))) (build-system r-build-system) (propagated-inputs @@ -6388,14 +6430,14 @@ Enrichment Analysis} (GSEA).") (define-public r-category (package (name "r-category") - (version "2.44.0") + (version "2.46.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Category" version)) (sha256 (base32 - "0mkav04vbla0xfa0dssxdd0rjs589sxi83xklf5iq5hj3dm8y0i8")))) + "03wfqa8d1dgwsm327zl2mpkq7dq3mzhq12598qz3ylfhrwplbgx0")))) (properties `((upstream-name . "Category"))) (build-system r-build-system) (propagated-inputs @@ -6419,14 +6461,14 @@ analysis.") (define-public r-gostats (package (name "r-gostats") - (version "2.44.0") + (version "2.46.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GOstats" version)) (sha256 (base32 - "04gqfdlx9fxf97qf0l28x4aaqvl10n6v58qiz5fiaw05sbj1pf1i")))) + "1i5mydz5d95w2k28qr9j01hmbnl2id55jq94jvcpcyp1pvinkdq0")))) (properties `((upstream-name . "GOstats"))) (build-system r-build-system) (propagated-inputs @@ -6450,14 +6492,14 @@ testing and other simple calculations.") (define-public r-shortread (package (name "r-shortread") - (version "1.36.1") + (version "1.38.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ShortRead" version)) (sha256 (base32 - "1cyv47632m9ljkxfsvnvmd19sb607ys5kz8fwh6v39dnw16g0a6m")))) + "038z3z7qaw5bpgjzy91sjkybsny6jwjjsrnnq4gdqdw9ss1qy1fb")))) (properties `((upstream-name . "ShortRead"))) (build-system r-build-system) (inputs @@ -6492,14 +6534,14 @@ ungapped alignment formats.") (define-public r-systempiper (package (name "r-systempiper") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "systemPipeR" version)) (sha256 (base32 - "11mj8pjq5vj25768vmagpzv74fvi3p3kdk5zdlznqyiaggri04cv")))) + "1550pd63mmky0vgkmpni7zf14kqz1741wv63nfaw29kcmhh3m5lm")))) (properties `((upstream-name . "systemPipeR"))) (build-system r-build-system) (propagated-inputs @@ -6538,14 +6580,14 @@ annotation infrastructure.") (define-public r-grohmm (package (name "r-grohmm") - (version "1.12.0") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "groHMM" version)) (sha256 (base32 - "0cjkj0ypyc4dfi9s8dh88kh6q4xlpnc0wal7njg4b4gqj0l2hva7")))) + "1kjb14apyly44qdlx2ld6gr69wlazd4mbhs58l35hir12aphgrzp")))) (properties `((upstream-name . "groHMM"))) (build-system r-build-system) (propagated-inputs @@ -6857,13 +6899,13 @@ barplots or heatmaps.") (define-public r-biocgenerics (package (name "r-biocgenerics") - (version "0.24.0") + (version "0.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocGenerics" version)) (sha256 (base32 - "03wxvhxyrhipbgcg83lqlfn7p9gbzzrnl48y0dq7303xgp232zai")))) + "19qxhy2cd3pykkhzbb5q3crgaxf65cpzf2mkfsz16gqhi8flj72p")))) (properties `((upstream-name . "BiocGenerics"))) (build-system r-build-system) @@ -6877,13 +6919,13 @@ packages.") (define-public r-biocinstaller (package (name "r-biocinstaller") - (version "1.28.0") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocInstaller" version)) (sha256 (base32 - "19fga27bv6q9v5mpil74y76lahmnwvpg2h33rdx1r79nvljkd19d")))) + "1xg1gi1hf5vflp71ji21gnmr4kcjpx8a6c47cllpc7yqnjv5nfg0")))) (properties `((upstream-name . "BiocInstaller"))) (build-system r-build-system) @@ -6896,13 +6938,13 @@ Bioconductor, CRAN, and Github.") (define-public r-biocviews (package (name "r-biocviews") - (version "1.46.0") + (version "1.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biocViews" version)) (sha256 (base32 - "09zyqj1kqc089lmh9sliy0acanx9zimcasvp71dsrg2bqm08r1md")))) + "1yx2lir67ny0j150wyfqca0wsxp84byri8nscbs9qlndkh2jppq9")))) (properties `((upstream-name . "biocViews"))) (build-system r-build-system) @@ -6947,13 +6989,13 @@ authoring books and technical documents with R Markdown.") (define-public r-biocstyle (package (name "r-biocstyle") - (version "2.6.1") + (version "2.8.2") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocStyle" version)) (sha256 (base32 - "03pp04pkcq99kdv2spzr995h2cxsza7l6w3d4gp4112m06prcybm")))) + "17m901ylz00w1a3nq5f910v55zixm1nr6rb3qrsbhqd94qzr0l2p")))) (properties `((upstream-name . "BiocStyle"))) (build-system r-build-system) @@ -6972,13 +7014,13 @@ functionality.") (define-public r-bioccheck (package (name "r-bioccheck") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocCheck" version)) (sha256 (base32 - "1nzp8kgw13z9pgf885rplj6k37jcldfhbz0adqclxr2gq0yalmyx")))) + "1srp1g809f1nn0fyqknr7r6dq89bw1xpjvmygr7cw6ffknbc671s")))) (properties `((upstream-name . "BiocCheck"))) (build-system r-build-system) @@ -7063,13 +7105,13 @@ that accept short and long options.") (define-public r-dnacopy (package (name "r-dnacopy") - (version "1.52.0") + (version "1.54.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DNAcopy" version)) (sha256 (base32 - "127il5rlg1hzjlhwhs64x3nm18p00q1pd9ckb2b9ifl0rax95wai")))) + "03hfhmmc5y60r2gcgm367w2fr7qj115l74m9bp3h9qpn5yci0d8n")))) (properties `((upstream-name . "DNAcopy"))) (build-system r-build-system) @@ -7085,13 +7127,13 @@ abnormal copy number.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.16.0") + (version "0.18.2") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "03s8vz33nl6mivjb7dbvj702dkypi340lji1sjban03fyyls0hw0")))) + "0qvj2j0zl4djjl7vrwc6xak6h8dxr53iwypfbcvfb3sh7jwhdiz5")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) @@ -7137,13 +7179,13 @@ utilities for sequence data management under the ACNUC system.") (define-public r-iranges (package (name "r-iranges") - (version "2.12.0") + (version "2.14.10") (source (origin (method url-fetch) (uri (bioconductor-uri "IRanges" version)) (sha256 (base32 - "1vqczb9wlxsmpwpqig6j1dmiblcfpq6mgnq8qwzcrvddm4cp47m5")))) + "10ccw930vfmkskkrzbps14xglqlkxf588623dr7f1a9ckx7yr2p6")))) (properties `((upstream-name . "IRanges"))) (build-system r-build-system) @@ -7189,13 +7231,13 @@ ID and species. It is used by functions in the GenomeInfoDb package.") (define-public r-genomeinfodb (package (name "r-genomeinfodb") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomeInfoDb" version)) (sha256 (base32 - "1jhm0imkac4gvchbjxj408aakk39xdv2fyh818d3lk295bz6bnyp")))) + "0yhnqhaydmmq7ihmhj3rbal4afq5p993l2qqrd0n5wmbyg7glg2d")))) (properties `((upstream-name . "GenomeInfoDb"))) (build-system r-build-system) @@ -7217,13 +7259,13 @@ names in their natural, rather than lexicographic, order.") (define-public r-edger (package (name "r-edger") - (version "3.20.9") + (version "3.22.2") (source (origin (method url-fetch) (uri (bioconductor-uri "edgeR" version)) (sha256 (base32 - "0y52snwbz37xzdd7gihdkqczbndlfzmmypv6hri3ymjyfmlx6qaw")))) + "07py2g6vg9jbflwhc1hnzr2silbinrjwxq3mkq30nzjgf0n0hrf3")))) (properties `((upstream-name . "edgeR"))) (build-system r-build-system) (propagated-inputs @@ -7245,13 +7287,13 @@ CAGE.") (define-public r-variantannotation (package (name "r-variantannotation") - (version "1.24.5") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantAnnotation" version)) (sha256 (base32 - "07ywn3c4w83l3sr76d0z3b1nv9icgdh3phsjlc6cfx7i6nfmvxw2")))) + "06bccdf57vja7m63chmgc4539lwng3q3b8zxn285fj8524l6mcn7")))) (properties `((upstream-name . "VariantAnnotation"))) (inputs @@ -7283,13 +7325,13 @@ coding changes and predict coding outcomes.") (define-public r-limma (package (name "r-limma") - (version "3.34.9") + (version "3.36.1") (source (origin (method url-fetch) (uri (bioconductor-uri "limma" version)) (sha256 (base32 - "1y2fm61g5i0fn0j3l31xvwh9zww9bpkc4nwzb1d0yv1cag20jkdc")))) + "1982g5v35ilfgxm2vkq1p3j1bbir795pjvfzx4nzam2rlqqymbqm")))) (build-system r-build-system) (home-page "http://bioinf.wehi.edu.au/limma") (synopsis "Package for linear models for microarray and RNA-seq data") @@ -7302,13 +7344,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-xvector (package (name "r-xvector") - (version "0.18.0") + (version "0.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "XVector" version)) (sha256 (base32 - "1i4i3kdxr78lr1kcxq657p11ybi7kq10c8kyaqyh6gfc8i9rhvmk")))) + "1zjlhh9lsyhg0js1858csyw2389kbrzdqnqnha833wazkwxilp3f")))) (properties `((upstream-name . "XVector"))) (build-system r-build-system) @@ -7338,13 +7380,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.30.3") + (version "1.32.3") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "07cszc9ri94nzk4dffwnsj247ih6pchnrzrvnb0q4dkk33gwy8n1")))) + "03gmka6rlz18vd4229796l5l3l6446v5cb90sn2nb5knjbp84hni")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) @@ -7367,13 +7409,13 @@ manipulating genomic intervals and variables defined along a genome.") (define-public r-biobase (package (name "r-biobase") - (version "2.38.0") + (version "2.40.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Biobase" version)) (sha256 (base32 - "1cgm1ja1kp56zdlzyy9ggbkfn8r2vbsd4hncmz8g4hjd47fg18kg")))) + "1iwds2a5ir29k19dbpynlc7nn836cw2gamchhgpi2jf2xar9m9jz")))) (properties `((upstream-name . "Biobase"))) (build-system r-build-system) @@ -7389,13 +7431,13 @@ on Bioconductor or which replace R functions.") (define-public r-annotationdbi (package (name "r-annotationdbi") - (version "1.40.0") + (version "1.42.1") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationDbi" version)) (sha256 (base32 - "1dh4qs1a757n640gs34lf6z2glc96nan86x0sqaw5csadl2rhnlc")))) + "0afkbzli08vq02r2pr9phrz3rxd6ilp1w7yw8y99nbjiz14f8b1c")))) (properties `((upstream-name . "AnnotationDbi"))) (build-system r-build-system) @@ -7416,13 +7458,13 @@ annotation data packages using SQLite data storage.") (define-public r-biomart (package (name "r-biomart") - (version "2.34.2") + (version "2.36.1") (source (origin (method url-fetch) (uri (bioconductor-uri "biomaRt" version)) (sha256 (base32 - "1zlgs2zg0lmnk572p55n7m34nkxka8w10x8f2ndssjkffl2csy79")))) + "0b70s350ffc74v3xz5c3jpazr9zxdb7gjmjfj7aghlsrizrspill")))) (properties `((upstream-name . "biomaRt"))) (build-system r-build-system) @@ -7449,13 +7491,13 @@ powerful online queries from gene annotation to database mining.") (define-public r-biocparallel (package (name "r-biocparallel") - (version "1.12.0") + (version "1.14.1") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocParallel" version)) (sha256 (base32 - "13ng3n2wsgl3fh0v6jnz3vg51k5c1sh44pqdvblcrcd1qyjmmqhd")))) + "00qg1kg2l9qqpyjaw5q910cmf84vwfiw1fhsx3ig784gwinwgj6n")))) (properties `((upstream-name . "BiocParallel"))) (build-system r-build-system) @@ -7474,13 +7516,13 @@ objects.") (define-public r-biostrings (package (name "r-biostrings") - (version "2.46.0") + (version "2.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Biostrings" version)) (sha256 (base32 - "0vg50qdlxqcm2d6axjnzg8wh8pr4c5gz03l8bdl0llmwzp0zclzk")))) + "118b490jk87ydigm6ln25ms4kskzkw0akmh77clzznhzpqnxsi6j")))) (properties `((upstream-name . "Biostrings"))) (build-system r-build-system) @@ -7500,13 +7542,13 @@ biological sequences or sets of sequences.") (define-public r-rsamtools (package (name "r-rsamtools") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rsamtools" version)) (sha256 (base32 - "0pjny5fjvbnfdyhl3bwxin678sha2drvs00sivxh3l772cn6yams")))) + "1s65y5wn4d0x8zsljg2kmhcl6r9884h95kr041j7hp49bmxg3an6")))) (properties `((upstream-name . "Rsamtools"))) (build-system r-build-system) @@ -7544,18 +7586,19 @@ files.") (define-public r-delayedarray (package (name "r-delayedarray") - (version "0.4.1") + (version "0.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedArray" version)) (sha256 (base32 - "0s7h2giyvz04cg6248kbbzpwhxdrpnsvl2s8k5c8ricisd9aaz4b")))) + "0n3w57cwy911q812wc8658y0v3xgpmg379sj98kfqdxa80z1mxdf")))) (properties `((upstream-name . "DelayedArray"))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) ("r-s4vectors" ,r-s4vectors) ("r-iranges" ,r-iranges) ("r-matrixstats" ,r-matrixstats))) @@ -7574,13 +7617,13 @@ array-like objects like @code{DataFrame} objects (typically with Rle columns), (define-public r-summarizedexperiment (package (name "r-summarizedexperiment") - (version "1.8.1") + (version "1.10.1") (source (origin (method url-fetch) (uri (bioconductor-uri "SummarizedExperiment" version)) (sha256 (base32 - "19vlwnby83fqjrilsxvnvgz0gvby7mrxvlmx18nb3p1w591ddfjh")))) + "0v3zxl9cqsv79ag5cnvzlhvgaz5cr8f4rn7flmwnwpqd508cznl1")))) (properties `((upstream-name . "SummarizedExperiment"))) (build-system r-build-system) @@ -7605,13 +7648,13 @@ samples.") (define-public r-genomicalignments (package (name "r-genomicalignments") - (version "1.14.2") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicAlignments" version)) (sha256 (base32 - "1659nj1xps7vliy5955i51x6hvrf16n1z0dfh10mmpaaswn2d2mv")))) + "00pi2cnkkbj2023fg2x2cmglkdalwzy1vr3glsikwz7ix9yylcaw")))) (properties `((upstream-name . "GenomicAlignments"))) (build-system r-build-system) @@ -7638,13 +7681,13 @@ alignments.") (define-public r-rtracklayer (package (name "r-rtracklayer") - (version "1.38.3") + (version "1.40.3") (source (origin (method url-fetch) (uri (bioconductor-uri "rtracklayer" version)) (sha256 (base32 - "1khzfczm35k5lq9h0jlqrq01192spzjyh8s6is89spj006flwn4k")))) + "0kvsjdaypn1jnxbnsxpycildwdyxwnjkigfq8qm8mlyfc4ahdgy3")))) (build-system r-build-system) (arguments `(#:phases @@ -7656,6 +7699,8 @@ alignments.") (substitute* "NAMESPACE" (("import\\(zlibbioc\\)") "")) #t))))) + (native-inputs + `(("pkg-config" ,pkg-config))) (inputs `(("zlib" ,zlib))) (propagated-inputs @@ -7683,13 +7728,13 @@ as well as query and modify the browser state, such as the current viewport.") (define-public r-genomicfeatures (package (name "r-genomicfeatures") - (version "1.30.3") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFeatures" version)) (sha256 (base32 - "010vn8hlwbnw12pd1d8pv6m12yp3xwx557gba5rbjq9p4qypnn3z")))) + "1cqcl72q0k5wylw1brn4g4h7xzys1v06piry19cvp0gjcvm5sp7a")))) (properties `((upstream-name . "GenomicFeatures"))) (build-system r-build-system) @@ -7705,7 +7750,6 @@ as well as query and modify the browser state, such as the current viewport.") ("r-iranges" ,r-iranges) ("r-rcurl" ,r-rcurl) ("r-rsqlite" ,r-rsqlite) - ("r-rmysql" ,r-rmysql) ("r-rtracklayer" ,r-rtracklayer) ("r-s4vectors" ,r-s4vectors) ("r-xvector" ,r-xvector))) @@ -7749,13 +7793,13 @@ information about the latest version of the Gene Ontologies.") (define-public r-graph (package (name "r-graph") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "graph" version)) (sha256 (base32 - "15aajjp8h2z14p80c8hyd4rrmr9vqsm7bvwb989jxjl4k6g52an1")))) + "1zx445lk36g1s6i5dbhhf00nzzazyklfjxxjfax6q8hnhvgm9759")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics))) @@ -7768,13 +7812,13 @@ information about the latest version of the Gene Ontologies.") (define-public r-topgo (package (name "r-topgo") - (version "2.30.1") + (version "2.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "topGO" version)) (sha256 (base32 - "1cgz4knxr328xfqlhl6ypxl6x86rfrlqz748kn94ainxjzz55i6x")))) + "05yxnkid8bgw9lkm90if9fg63djhgvbailfa3qsfqa5c0zjmixw1")))) (properties `((upstream-name . "topGO"))) (build-system r-build-system) @@ -7801,13 +7845,13 @@ dependencies between GO terms can be implemented and applied.") (define-public r-bsgenome (package (name "r-bsgenome") - (version "1.46.0") + (version "1.48.0") (source (origin (method url-fetch) (uri (bioconductor-uri "BSgenome" version)) (sha256 (base32 - "1jbzq7lm2iajajn2bifxnkss0k9fdvgqr30mral17cbhp5f6w4lq")))) + "1rk2piqq5dppkd51ln3r872d7ng3rvq98071mnd0xdv2xwnyn5g8")))) (properties `((upstream-name . "BSgenome"))) (build-system r-build-system) @@ -7862,13 +7906,13 @@ genome data packages and support for efficient SNP representation.") (define-public r-impute (package (name "r-impute") - (version "1.52.0") + (version "1.54.0") (source (origin (method url-fetch) (uri (bioconductor-uri "impute" version)) (sha256 (base32 - "0b8r4swvyx3cjcc2ky8yn0ncpzlbi1pgfsn3wpbjmhh7sqrffm2n")))) + "1d3cpfaqlq2gnb3hsc2yhxwkrnbd7m6ifif32yp0ya0jr5brl4hr")))) (inputs `(("gfortran" ,gfortran))) (build-system r-build-system) @@ -7882,13 +7926,13 @@ microarray data, using nearest neighbor averaging.") (define-public r-seqpattern (package (name "r-seqpattern") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqPattern" version)) (sha256 (base32 - "1kcm5w83q7w0v0vs7nyp4gq5z86c6n6pqy9zmyyhxcrns7f597pm")))) + "0dw0yldfcf0ibvpqxlpx1ijnjf9lma47w9w22siszzhw09i0wp3w")))) (properties `((upstream-name . "seqPattern"))) (build-system r-build-system) @@ -7909,13 +7953,13 @@ reference point and sorted by a user defined feature.") (define-public r-genomation (package (name "r-genomation") - (version "1.11.3") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "genomation" version)) (sha256 (base32 - "1d2g1v6xhrf3gm86pv8ln22df5g6v6k6i4i39v4j82zn4apany6v")))) + "1vdmdyrq0n7pf8cvy2950v7hrcrcbd9zl4fg7dcmyly3iiwdyirp")))) (build-system r-build-system) (propagated-inputs `(("r-biostrings" ,r-biostrings) @@ -8087,14 +8131,14 @@ annotations for the genome of the model mouse Mus musculus.") (define-public r-seqlogo (package (name "r-seqlogo") - (version "1.44.0") + (version "1.46.0") (source (origin (method url-fetch) (uri (bioconductor-uri "seqLogo" version)) (sha256 (base32 - "1ql4q4vx0j61a893dqc3c8zxmgs8sqhy3j1qhyfdvbd01vw9w1kq")))) + "16xvqcdknix9vjm8mrixi6nyfsr45jm844jh1x90m8044lwrsic1")))) (properties `((upstream-name . "seqLogo"))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/seqLogo") @@ -8333,14 +8377,14 @@ Biostrings objects.") (define-public r-motifrg (package (name "r-motifrg") - (version "1.22.0") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "motifRG" version)) (sha256 (base32 - "193zl2rlzwxv9p9q5i7rilj3w05ndqfyp9bdpvagp5s5cin4hf44")))) + "0mxhyidkyd2zqahdbg69y20r550z78lvr1r3pbjymnwfg4hcfq1p")))) (properties `((upstream-name . "motifRG"))) (build-system r-build-system) (propagated-inputs @@ -8385,13 +8429,13 @@ two-dimensional genome scans.") (define-public r-zlibbioc (package (name "r-zlibbioc") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "zlibbioc" version)) (sha256 (base32 - "1zr9hbh55hglfpy15cpxwmddxblhyb0an15953l3rbhmlh2vpy92")))) + "1rwr0mci8a712q0isavi4jmhm94gwivc4nr8j7r4kw05flp4g7gz")))) (properties `((upstream-name . "zlibbioc"))) (build-system r-build-system) @@ -8427,14 +8471,14 @@ secondary structure and comparative analysis in R.") (define-public r-rhtslib (package (name "r-rhtslib") - (version "1.10.0") + (version "1.12.1") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhtslib" version)) (sha256 (base32 - "1dw3p44bfr0m7w39ckc2k37sjcp1zz0b9g12mr8am15jaj6v0q2j")))) + "16ywnb8cmr2xabd1i21b92rfziw7xfbv25yv16ipw617p41wa39z")))) (properties `((upstream-name . "Rhtslib"))) (build-system r-build-system) (propagated-inputs @@ -8442,7 +8486,7 @@ secondary structure and comparative analysis in R.") (inputs `(("zlib" ,zlib))) (native-inputs - `(("autoconf" ,autoconf))) + `(("pkg-config" ,pkg-config))) (home-page "https://github.com/nhayden/Rhtslib") (synopsis "High-throughput sequencing library as an R package") (description @@ -8454,14 +8498,14 @@ of other R packages who wish to make use of HTSlib.") (define-public r-bamsignals (package (name "r-bamsignals") - (version "1.10.0") + (version "1.12.1") (source (origin (method url-fetch) (uri (bioconductor-uri "bamsignals" version)) (sha256 (base32 - "15id6mkj95skb4kfafvfs2j7ylydal60c3pspcl7llhwpq6vcqvl")))) + "141q3p4lzwiqk1mfxi8q1q84axjl0gyiqg59xd3sp4viny4jqmgv")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -8576,18 +8620,19 @@ library implementing most of the pipeline's features.") (define-public r-mutationalpatterns (package (name "r-mutationalpatterns") - (version "1.4.3") + (version "1.6.1") (source (origin (method url-fetch) (uri (bioconductor-uri "MutationalPatterns" version)) (sha256 (base32 - "0ml4gsp5dfv23xqrknxh25q8q65hly1xb1215lcwyc8hj9z8f941")))) + "1yq7351j42mjxn8fd3c5bdxzb2l5s4lvqhjdvv4rwj4f600n6wj9")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) ("r-biostrings" ,r-biostrings) + ;; These two packages are suggested packages ("r-bsgenome-hsapiens-1000g" ,r-bsgenome-hsapiens-1000genomes-hs37d5) ("r-bsgenome-hsapiens-ucsc-hg19" ,r-bsgenome-hsapiens-ucsc-hg19) ("r-genomicranges" ,r-genomicranges) @@ -8751,13 +8796,13 @@ kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.") (define-public r-tximport (package (name "r-tximport") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "tximport" version)) (sha256 (base32 - "1gyqcm91hxg1kgjqcz2qw1n56yp9pymjzs50rwcpb2893dr8sp2h")))) + "1qjc7ah9dzccpvcjrp9k4qnaz13x6kvy1c1xpdj503km6k528lip")))) (build-system r-build-system) (home-page "https://bioconductor.org/packages/tximport") (synopsis "Import and summarize transcript-level estimates for gene-level analysis") @@ -8773,39 +8818,18 @@ of gene-level counts.") (define-public r-rhdf5 (package (name "r-rhdf5") - (version "2.22.0") + (version "2.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "rhdf5" version)) (sha256 (base32 - "145858qg1xan6imxcbprzq3yn3mdf532aahdr6cibvdjg47hs4c1")))) + "15cmmchhk8bnp94gxg0zk9qyzdjx5kv16dzpbnb62mkq7ydmifx6")))) (build-system r-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'unpack-smallhdf5 - (lambda* (#:key outputs #:allow-other-keys) - (system* "tar" "-xzvf" - "src/hdf5source/hdf5small.tgz" "-C" "src/" ) - (substitute* "src/hdf5/configure" - (("/bin/mv") "mv")) - ;; Remove timestamp and host system information to make - ;; the build reproducible. - (substitute* "src/hdf5/src/libhdf5.settings.in" - (("Configured on: @CONFIG_DATE@") - "Configured on: Guix") - (("Uname information:.*") - "Uname information: Linux\n") - ;; Remove unnecessary store reference. - (("C Compiler:.*") - "C Compiler: GCC\n")) - #t))))) (propagated-inputs - `(("r-zlibbioc" ,r-zlibbioc))) + `(("r-rhdf5lib" ,r-rhdf5lib))) (inputs - `(("perl" ,perl) - ("zlib" ,zlib))) + `(("zlib" ,zlib))) (home-page "https://bioconductor.org/packages/rhdf5") (synopsis "HDF5 interface to R") (description @@ -8821,13 +8845,13 @@ the available RAM.") (define-public r-annotationfilter (package (name "r-annotationfilter") - (version "1.2.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationFilter" version)) (sha256 (base32 - "04zf864c1fvdlaay2r5cn30fc1n5i3czh31fs62qlrvs61wjiscs")))) + "1w8ypfdz4g7vnwfrvnhjcpm8waciqyq2cn883ajdwg4vv7a5mj9a")))) (properties `((upstream-name . "AnnotationFilter"))) (build-system r-build-system) @@ -9100,6 +9124,19 @@ replacement for strverscmp.") ("python-numpy" ,python-numpy) ;; MultQC checks for the presence of nose at runtime. ("python-nose" ,python-nose))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'relax-requirements + (lambda _ + (substitute* "setup.py" + ;; MultiQC 1.5 ‘requires’ a version of python-matplotlib older + ;; than the one in Guix, but should work fine with 2.2.2. + ;; See <https://github.com/ewels/MultiQC/issues/725> and + ;; <https://github.com/ewels/MultiQC/issues/732> for details. + (("['\"]matplotlib.*?['\"]") + "'matplotlib'")) + #t))))) (home-page "http://multiqc.info") (synopsis "Aggregate bioinformatics analysis reports") (description @@ -9111,14 +9148,14 @@ common bioinformatics tools.") (define-public r-chipseq (package (name "r-chipseq") - (version "1.28.0") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "chipseq" version)) (sha256 (base32 - "1ymcq77krwjzrkzzcw7i9909cmkqa7c0675z9wzvrrk81hgdssfq")))) + "09f8dgl5ni75qkf7nvvppwr3irpplv4xb3ks59ld7l8i2mplcrx7")))) (build-system r-build-system) (propagated-inputs `(("r-biocgenerics" ,r-biocgenerics) @@ -9163,14 +9200,14 @@ GenomicRanges Bioconductor package.") (define-public r-copywriter (package (name "r-copywriter") - (version "2.10.0") + (version "2.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "CopywriteR" version)) (sha256 (base32 - "17fy2lc5yf3nh6v077kv87h53n263hqz2540lzrl0vjiqrl2plca")))) + "0b7xwq1va2zclb54f07c5ipmmq4iv2hrlph3j93jz5hmyayv50z3")))) (properties `((upstream-name . "CopywriteR"))) (build-system r-build-system) (propagated-inputs @@ -9203,13 +9240,13 @@ number detection tools.") (define-public r-methylkit (package (name "r-methylkit") - (version "1.4.1") + (version "1.6.1") (source (origin (method url-fetch) (uri (bioconductor-uri "methylKit" version)) (sha256 (base32 - "1k0nfn9318sgwm4z963bhnbp4c3zv85v3f9886vc5hgaisr0yvai")))) + "1hr2czi5ybdf7hdmqsv39d17f3mvmw94wa38bc14zzm9mgy9gfy7")))) (properties `((upstream-name . "methylKit"))) (build-system r-build-system) (propagated-inputs @@ -9249,14 +9286,14 @@ TAB-Seq.") (define-public r-sva (package (name "r-sva") - (version "3.26.0") + (version "3.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "sva" version)) (sha256 (base32 - "0q5xb68wfcnchy8rkv5ma67pmz1i91lsnvmwmj8f1c3w4xan3pgw")))) + "0a3jqbz0jp1jxrnjkqfpmca840yqcdwxprdl608bzzx2zb4jl52s")))) (build-system r-build-system) (propagated-inputs `(("r-genefilter" ,r-genefilter) @@ -9359,14 +9396,14 @@ as allowing spectra with different resolutions.") (define-public r-protgenerics (package (name "r-protgenerics") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ProtGenerics" version)) (sha256 (base32 - "16ijp50448wnabp43klx943rhdvh7x45hvy7cnpq1s4dckxhhyni")))) + "05jbadw2aiwy8vi2ia0jxg06cmwhly2cq4dy1ag7kdxf1c5i9ccn")))) (properties `((upstream-name . "ProtGenerics"))) (build-system r-build-system) (home-page "https://github.com/lgatto/ProtGenerics") @@ -9379,14 +9416,14 @@ proteomics packages.") (define-public r-mzr (package (name "r-mzr") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mzR" version)) (sha256 (base32 - "1x3gp30sfxz2v3k3swih9kff9b2rvk7hzhnlkp6ywlnn2wgb0q8c")) + "190m2bq5bqxhljaj4f7vz9wj5h5laaxd8zp5jampnql6xc4zmarg")) (modules '((guix build utils))) (snippet '(begin @@ -9408,12 +9445,14 @@ proteomics packages.") #t))))) (inputs `(("boost" ,boost) ; use this instead of the bundled boost sources - ("netcdf" ,netcdf))) + ("netcdf" ,netcdf) + ("zlib" ,zlib))) (propagated-inputs `(("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) ("r-protgenerics" ,r-protgenerics) ("r-rcpp" ,r-rcpp) + ("r-rhdf5lib" ,r-rhdf5lib) ("r-zlibbioc" ,r-zlibbioc))) (home-page "https://github.com/sneumann/mzR/") (synopsis "Parser for mass spectrometry data files") @@ -9429,14 +9468,14 @@ previously been used in XCMS.") (define-public r-affyio (package (name "r-affyio") - (version "1.48.0") + (version "1.50.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affyio" version)) (sha256 (base32 - "1pzzp3d3dbmyf34gvivfiprkpscn36rgvhrq853a1d3avcwr5ak9")))) + "0sh5wnnchyfpq5n6rchbqmb27byn7kdzn5rgran6i39c81i5z22n")))) (build-system r-build-system) (propagated-inputs `(("r-zlibbioc" ,r-zlibbioc))) @@ -9453,14 +9492,14 @@ CDF file formats.") (define-public r-affy (package (name "r-affy") - (version "1.56.0") + (version "1.58.0") (source (origin (method url-fetch) (uri (bioconductor-uri "affy" version)) (sha256 (base32 - "0jmbkimma5ffsdkk3xp03g4lpz84gd95nkqakif2nqq6wmx0syrj")))) + "0sxq875sigm21sf3qncrfrwfdz9nqw1vldxn3d3hj6aq64jg1ki6")))) (build-system r-build-system) (propagated-inputs `(("r-affyio" ,r-affyio) @@ -9469,6 +9508,8 @@ CDF file formats.") ("r-biocinstaller" ,r-biocinstaller) ("r-preprocesscore" ,r-preprocesscore) ("r-zlibbioc" ,r-zlibbioc))) + (inputs + `(("zlib" ,zlib))) (home-page "https://bioconductor.org/packages/affy") (synopsis "Methods for affymetrix oligonucleotide arrays") (description @@ -9479,14 +9520,14 @@ analysis.") (define-public r-vsn (package (name "r-vsn") - (version "3.46.0") + (version "3.48.1") (source (origin (method url-fetch) (uri (bioconductor-uri "vsn" version)) (sha256 (base32 - "18y62phzirj75gg6v5l41jwybmk23ia6w7qhch0kxc4bl2rysw6j")))) + "0k6mah3g3zqbfap31xmvig4fn452a18xwwa5y0mfj5mj8588p57h")))) (build-system r-build-system) (propagated-inputs `(("r-affy" ,r-affy) @@ -9513,14 +9554,14 @@ and specific in detecting differential transcription.") (define-public r-mzid (package (name "r-mzid") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "mzID" version)) (sha256 (base32 - "0yk70dka56zd8w62f03ggx3mandj91gfa767h9ajj0sd3mjmfqb9")))) + "060k0xlhg8q802c6zsb4b8ps0ccd9ybyaz0gnsvqkxb786i2vk40")))) (properties `((upstream-name . "mzID"))) (build-system r-build-system) (propagated-inputs @@ -9543,14 +9584,14 @@ specific parser.") (define-public r-pcamethods (package (name "r-pcamethods") - (version "1.70.0") + (version "1.72.0") (source (origin (method url-fetch) (uri (bioconductor-uri "pcaMethods" version)) (sha256 (base32 - "0ii235g0x0492kh8cfrf28ni0b6vd6fh7kizkqmczzqggd6b1bk8")))) + "0v99yf8m7ryh6z0r3z0ggpqfnflcq5bn1q1i1cl9b7q4p6b4sa07")))) (properties `((upstream-name . "pcaMethods"))) (build-system r-build-system) (propagated-inputs @@ -9573,14 +9614,14 @@ structure (pcaRes) to provide a common interface to the PCA results.") (define-public r-msnbase (package (name "r-msnbase") - (version "2.4.2") + (version "2.6.1") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnbase" version)) (sha256 (base32 - "1ig64bf881p118dwqfr0ry41m7yhnyv165smv8fdwfv7sb6sagif")))) + "0zrpx9r93q5ca2zdak5rs2m9sjm0wjdra1xfj3d3sx6p5gzfyg6n")))) (properties `((upstream-name . "MSnbase"))) (build-system r-build-system) (propagated-inputs @@ -9594,6 +9635,7 @@ structure (pcaRes) to provide a common interface to the PCA results.") ("r-iranges" ,r-iranges) ("r-lattice" ,r-lattice) ("r-maldiquant" ,r-maldiquant) + ("r-mass" ,r-mass) ("r-mzid" ,r-mzid) ("r-mzr" ,r-mzr) ("r-pcamethods" ,r-pcamethods) @@ -9602,6 +9644,7 @@ structure (pcaRes) to provide a common interface to the PCA results.") ("r-protgenerics" ,r-protgenerics) ("r-rcpp" ,r-rcpp) ("r-s4vectors" ,r-s4vectors) + ("r-scales" ,r-scales) ("r-vsn" ,r-vsn) ("r-xml" ,r-xml))) (home-page "https://github.com/lgatto/MSnbase") @@ -9614,14 +9657,14 @@ of mass spectrometry based proteomics data.") (define-public r-msnid (package (name "r-msnid") - (version "1.12.1") + (version "1.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "MSnID" version)) (sha256 (base32 - "1zw508kk4f8brg69674wp18gqkpx2kpya5f6x9cl3qng7v4h5pxx")))) + "172q5chi44104iz4y0g42wrimfp7hlhrfa8vzybx6m0ccrkkhl17")))) (properties `((upstream-name . "MSnID"))) (build-system r-build-system) (propagated-inputs @@ -9653,13 +9696,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.") (define-public r-seurat (package (name "r-seurat") - (version "2.3.0") + (version "2.3.1") (source (origin (method url-fetch) (uri (cran-uri "Seurat" version)) (sha256 (base32 - "0kp3lw1s896zkjd6x2wp8qcg7wnm5b40g8vihps13f1m7j4nx7r0")) + "0hi59rgdrr2iqfvx5bq7yq02hbjxkjl1fzidqj14z0ypq0nzbjys")) ;; Delete pre-built jar. (snippet '(begin (delete-file "inst/java/ModularityOptimizer.jar") @@ -9703,7 +9746,6 @@ Main-Class: ModularityOptimizer\n"))) ("r-ggplot2" ,r-ggplot2) ("r-ggridges" ,r-ggridges) ("r-gplots" ,r-gplots) - ("r-gridextra" ,r-gridextra) ("r-hmisc" ,r-hmisc) ("r-ica" ,r-ica) ("r-igraph" ,r-igraph) @@ -9724,6 +9766,7 @@ Main-Class: ModularityOptimizer\n"))) ("r-rcppeigen" ,r-rcppeigen) ("r-rcppprogress" ,r-rcppprogress) ("r-reshape2" ,r-reshape2) + ("r-reticulate" ,r-reticulate) ("r-rocr" ,r-rocr) ("r-rtsne" ,r-rtsne) ("r-sdmtools" ,r-sdmtools) @@ -9746,14 +9789,14 @@ discovery of differentially expressed genes and markers.") (define-public r-aroma-light (package (name "r-aroma-light") - (version "3.8.0") + (version "3.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "aroma.light" version)) (sha256 (base32 - "0crnk6851jwypqr5l5jcbbay0vi5vvdjyisaf6z2d69c39wmr6sc")))) + "1dxsiwsrwcq9mj573f9vpdzrhagdqzal328ma8076px4gg6khxkn")))) (properties `((upstream-name . "aroma.light"))) (build-system r-build-system) (propagated-inputs @@ -9773,14 +9816,14 @@ classes.") (define-public r-deseq (package (name "r-deseq") - (version "1.30.0") + (version "1.32.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DESeq" version)) (sha256 (base32 - "0mn5w3cy16iwwk8zxs7za6aa6cnrca75z0g45zd5zh1py5d7nfv9")))) + "0ykxw8ksif026xy25wx50j2sdsrp156aqkmhcgfjkpgcw699glnm")))) (properties `((upstream-name . "DESeq"))) (build-system r-build-system) (propagated-inputs @@ -9804,14 +9847,14 @@ distribution.") (define-public r-edaseq (package (name "r-edaseq") - (version "2.12.0") + (version "2.14.0") (source (origin (method url-fetch) (uri (bioconductor-uri "EDASeq" version)) (sha256 (base32 - "07zm89zcivyn2261aq9grqmly8ji482kr9h9dyfknfdfrpv7jpwv")))) + "1832pb3jkim4vrqzb8lajwx9r482bhww5n9nz3s6crvyamlp2dj0")))) (properties `((upstream-name . "EDASeq"))) (build-system r-build-system) (propagated-inputs @@ -9842,14 +9885,14 @@ global-scaling and full-quantile normalization.") (define-public r-interactivedisplaybase (package (name "r-interactivedisplaybase") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "interactiveDisplayBase" version)) (sha256 (base32 - "01yb945jqqimwjgriza6yy4dnp303cdirxrhl4hjyprfdlmnz5p5")))) + "05w58z3i9vkma4jd6rhjaxls4yiq4kwrppgcdq9xrr1pxp99k575")))) (properties `((upstream-name . "interactiveDisplayBase"))) (build-system r-build-system) @@ -9866,14 +9909,14 @@ Shiny-based display methods for Bioconductor objects.") (define-public r-annotationhub (package (name "r-annotationhub") - (version "2.10.1") + (version "2.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "AnnotationHub" version)) (sha256 (base32 - "14v8g44a6zg9j2rwn9x9y8509k0wr2cw8yccliz24glplb40wva4")))) + "11gh7qkgazs90czdqgv74gh2hz26xrmdp6wsz9x5pygbxls8xdw3")))) (properties `((upstream-name . "AnnotationHub"))) (build-system r-build-system) (propagated-inputs @@ -9901,14 +9944,14 @@ by the user, helping with quick and reproducible access.") (define-public r-fastseg (package (name "r-fastseg") - (version "1.24.0") + (version "1.26.0") (source (origin (method url-fetch) (uri (bioconductor-uri "fastseg" version)) (sha256 (base32 - "0dd7nr3klwz9ailwshnbynhd62lwb8zbbpj6jf3igpb94yi6x2jp")))) + "1yw6hai6hb8qy7akdm4frfp6h4zy93zb68kdj094sanm7kgqmgik")))) (build-system r-build-system) (propagated-inputs `(("r-biobase" ,r-biobase) @@ -9931,14 +9974,14 @@ microarrays or GRanges for sequencing data.") (define-public r-keggrest (package (name "r-keggrest") - (version "1.18.1") + (version "1.20.0") (source (origin (method url-fetch) (uri (bioconductor-uri "KEGGREST" version)) (sha256 (base32 - "02gwmm79djj55a90dzc80hlgwc6bafl7xd7fnx2q59pk945k3z9c")))) + "1349vidgl9m10l1rbrp3pkwwgi2xcbsw9h9z2xqbvg97lmqc4r8j")))) (properties `((upstream-name . "KEGGREST"))) (build-system r-build-system) (propagated-inputs @@ -9955,14 +9998,14 @@ microarrays or GRanges for sequencing data.") (define-public r-gage (package (name "r-gage") - (version "2.28.2") + (version "2.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gage" version)) (sha256 (base32 - "0h0mlhns9j7cpfksvdlvx9jb7szm3r1dwqb3s4s8p8hmkb9byyii")))) + "0j3cqxy97lpf146wkmdfaq9680gicmzxvhp6w5pxq3j7ipiy7262")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -9984,14 +10027,14 @@ analysis using other methods.") (define-public r-genomicfiles (package (name "r-genomicfiles") - (version "1.14.0") + (version "1.16.0") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicFiles" version)) (sha256 (base32 - "0r0wmrs5jycf1kckhnc2sgjmp336srlcjdkpbb1ymm7kazdd0s9n")))) + "0bhsq5czigrjyl9gkb2kpkpl367b3ac5g8s280adkcxggn9g7sxq")))) (properties `((upstream-name . "GenomicFiles"))) (build-system r-build-system) (propagated-inputs @@ -10017,14 +10060,14 @@ provide added flexibility for data combination and manipulation.") (define-public r-complexheatmap (package (name "r-complexheatmap") - (version "1.17.1") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ComplexHeatmap" version)) (sha256 (base32 - "1x6kp55iqqsd8bhdl3qch95nfiy2y46ldbbsx1sj1v8f0b0ywwcy")))) + "0z57mrginzd40niy51dvnyqgbrij05ji0dbwqs3x2as80sq28i3q")))) (properties `((upstream-name . "ComplexHeatmap"))) (build-system r-build-system) @@ -10047,14 +10090,14 @@ self-defined annotation graphics.") (define-public r-dirichletmultinomial (package (name "r-dirichletmultinomial") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DirichletMultinomial" version)) (sha256 (base32 - "1c4s6x0qm20556grcd1xys9kkpnlzpasaai474malwcg6qvgi4x1")))) + "0vcyp81b90in4ls5nbadc66cw2g9aydr94aqifq5j4b7diq74yfs")))) (properties `((upstream-name . "DirichletMultinomial"))) (build-system r-build-system) @@ -10076,19 +10119,18 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2): (define-public r-ensembldb (package (name "r-ensembldb") - (version "2.2.2") + (version "2.4.1") (source (origin (method url-fetch) (uri (bioconductor-uri "ensembldb" version)) (sha256 (base32 - "1yngndkf3588z91z0a2fvkg423p26ajm6xv1p27x0l9mzhhaqq3k")))) + "1l2b4cxiycv05mz4z4f3dhx57r9ksha02psc114h30ldm5rxz8w6")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-annotationfilter" ,r-annotationfilter) - ("r-annotationhub" ,r-annotationhub) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) ("r-biostrings" ,r-biostrings) @@ -10120,14 +10162,14 @@ chromosome region or transcript models of lincRNA genes.") (define-public r-organismdbi (package (name "r-organismdbi") - (version "1.20.0") + (version "1.22.0") (source (origin (method url-fetch) (uri (bioconductor-uri "OrganismDbi" version)) (sha256 (base32 - "0yxvhwn0m53wfwp0zi81x96argdf7cf1lpymc2as51apvfcnjdl8")))) + "0hb9ni41bjfy5s5ryw2qmqs2sx3i7j47w1g0l8g1pvn7ppnxb6cv")))) (properties `((upstream-name . "OrganismDbi"))) (build-system r-build-system) (propagated-inputs @@ -10152,14 +10194,14 @@ the fact that each of these packages implements a select methods.") (define-public r-biovizbase (package (name "r-biovizbase") - (version "1.26.0") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "biovizBase" version)) (sha256 (base32 - "14l4vhj0a4ssr9m9zdzz3qpd4qw1mhgq5bmxq7jhrq3j9kmd6i2f")))) + "0lkiqdr3ics6hgv47lwkykcy761823bbkhffbn4ykyfzyqwl4p67")))) (properties `((upstream-name . "biovizBase"))) (build-system r-build-system) (propagated-inputs @@ -10193,14 +10235,14 @@ effort and encourages consistency.") (define-public r-ggbio (package (name "r-ggbio") - (version "1.26.1") + (version "1.28.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ggbio" version)) (sha256 (base32 - "1xlmlngn27iwnr21s9di4059kav1a7c1sajx08wja8yn8f7j06hp")))) + "0wszh3w8yia5zw758h837i1q35k99sn444y2hahcxqbdmmlbf7in")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10269,14 +10311,14 @@ organisms via the @code{g:Profiler} toolkit.") (define-public r-gqtlbase (package (name "r-gqtlbase") - (version "1.10.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLBase" version)) (sha256 (base32 - "1756vfcj2dkkgcmfkkg7qdaig36dv9gfvpypn9rbrky56wm1p035")))) + "1m3ajpqjhw1nwwsn372r44xfxq0a9a0pzsnrprzdjp6mh52p9b5m")))) (properties `((upstream-name . "gQTLBase"))) (build-system r-build-system) (propagated-inputs @@ -10304,14 +10346,14 @@ and more.") (define-public r-snpstats (package (name "r-snpstats") - (version "1.28.0") + (version "1.30.0") (source (origin (method url-fetch) (uri (bioconductor-uri "snpStats" version)) (sha256 (base32 - "1x9qwynh2hwl24vq02naf4mchpch7xi2pkdrlgw896k28kx0lvir")))) + "0iydgfnm053iw860qa1bbh4f6nwzlsf3vhgq92gvl2v4xsz1jbbs")))) (properties `((upstream-name . "snpStats"))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -10363,24 +10405,26 @@ several related annotation packages.") (define-public r-erma (package (name "r-erma") - (version "0.10.1") + (version "0.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "erma" version)) (sha256 (base32 - "1fi8nc6fbd7i4p9i9hli31xplmdpsxqcdrb8v3nf8fx9klllbdav")))) + "1ka68n18yizlyvb8bpwwcl4hqbsasg8hw8jb3vgy3cd4szji87hh")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-foreach" ,r-foreach) + ("r-biocparallel" ,r-biocparallel) + ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicfiles" ,r-genomicfiles) ("r-genomicranges" ,r-genomicranges) ("r-ggplot2" ,r-ggplot2) ("r-homo-sapiens" ,r-homo-sapiens) + ("r-iranges" ,r-iranges) ("r-rtracklayer" ,r-rtracklayer) ("r-s4vectors" ,r-s4vectors) ("r-shiny" ,r-shiny) @@ -10399,17 +10443,18 @@ by Ernst and Kellis.") (define-public r-ldblock (package (name "r-ldblock") - (version "1.8.1") + (version "1.10.0") (source (origin (method url-fetch) (uri (bioconductor-uri "ldblock" version)) (sha256 (base32 - "1q8dz8wcq1r7kr635s9q21g36sxkdybk8khhpa4p57qv8r0gppl0")))) + "0c24zvnwsp39d3q0bps13sc441jj9ms2zi34xsb8c392lqmbypvd")))) (build-system r-build-system) (propagated-inputs - `(("r-erma" ,r-erma) + `(("r-biocgenerics" ,r-biocgenerics) + ("r-erma" ,r-erma) ("r-genomeinfodb" ,r-genomeinfodb) ("r-genomicfiles" ,r-genomicfiles) ("r-go-db" ,r-go-db) @@ -10430,14 +10475,14 @@ defining LD blocks.") (define-public r-gqtlstats (package (name "r-gqtlstats") - (version "1.10.1") + (version "1.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gQTLstats" version)) (sha256 (base32 - "0gvq1sf2zjbkk431x40z6wql3c1rpclnnwa2f1hvykb8mmw70kmq")))) + "19g8qhfgngdc14cw9k4i44cxhs3qva87x56gjzmn25k1yj8qgsp1")))) (properties `((upstream-name . "gQTLstats"))) (build-system r-build-system) (propagated-inputs @@ -10460,8 +10505,8 @@ defining LD blocks.") ("r-ggplot2" ,r-ggplot2) ("r-gqtlbase" ,r-gqtlbase) ("r-hardyweinberg" ,r-hardyweinberg) + ("r-homo-sapiens" ,r-homo-sapiens) ("r-iranges" ,r-iranges) - ("r-ldblock" ,r-ldblock) ("r-limma" ,r-limma) ("r-mgcv" ,r-mgcv) ("r-plotly" ,r-plotly) @@ -10484,14 +10529,14 @@ family of feature/genome hypotheses.") (define-public r-gviz (package (name "r-gviz") - (version "1.22.3") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Gviz" version)) (sha256 (base32 - "1grjzrjpzkw572pbvpsvdnfkfgwybl0cnjd7nnk2xdr26wnbsi9a")))) + "1fhli7ahkl5r43j0hc89ib41mfadj6qyrg36i03ncz8zs6iqwpx4")))) (properties `((upstream-name . "Gviz"))) (build-system r-build-system) (propagated-inputs @@ -10530,14 +10575,14 @@ with your data.") (define-public r-gwascat (package (name "r-gwascat") - (version "2.10.0") + (version "2.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "gwascat" version)) (sha256 (base32 - "0n5x5i5v6a8wpn5mxmlpkl34b4kyypmymiwww6g61zch7xqrgywi")))) + "08ba9il4vbjjwlbwmqg4ai6ya1p09js9agn95sw0dhc9gqln42hx")))) (build-system r-build-system) (propagated-inputs `(("r-annotationdbi" ,r-annotationdbi) @@ -10570,13 +10615,13 @@ EMBL-EBI GWAS catalog.") (define-public r-sushi (package (name "r-sushi") - (version "1.16.0") + (version "1.18.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Sushi" version)) (sha256 (base32 - "0axaqm480z8d0b2ldgxwm0swava1p4irc62bpl17p2k8k78g687g")))) + "1m15hmg4k0qhshyn65xfj5hx7xbaf0kxqw70lxisak6pj1w00l41")))) (properties `((upstream-name . "Sushi"))) (build-system r-build-system) (propagated-inputs @@ -10592,13 +10637,13 @@ visualizations for publication-quality multi-panel figures.") (define-public r-fithic (package (name "r-fithic") - (version "1.4.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (bioconductor-uri "FitHiC" version)) (sha256 (base32 - "12ylhrppi051m7nqsgq95kzd9g9wmp34i0zzfi55cjqawlpx7c6n")))) + "06w4q836bi1mvkbl1saghv4r5p4hxpjg8cp7kgad13ls450kqmyd")))) (properties `((upstream-name . "FitHiC"))) (build-system r-build-system) (propagated-inputs @@ -10616,13 +10661,13 @@ assays such as Hi-C.") (define-public r-hitc (package (name "r-hitc") - (version "1.22.1") + (version "1.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HiTC" version)) (sha256 (base32 - "0da1jw9my2n2gihs31zyn14wwr23d8v2vij39ll7rm6fma3ydfbl")))) + "0qkk5139f51lwwy1yh7nbkflh5d69prirmhniwam34nlg9rzjm2z")))) (properties `((upstream-name . "HiTC"))) (build-system r-build-system) (propagated-inputs @@ -10645,14 +10690,14 @@ provided.") (define-public r-qvalue (package (name "r-qvalue") - (version "2.10.0") + (version "2.12.0") (source (origin (method url-fetch) (uri (bioconductor-uri "qvalue" version)) (sha256 (base32 - "1rd9rnf16kh8wc076kahd9hsb9rfwsbzmz3kjmp0pj6rbiq0051i")))) + "1ndwkj0hh7v4lwylq1v0fkxqs7mfmbcj8kxbdpj1wkvf131z2ns8")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -10674,14 +10719,14 @@ problems in genomics, brain imaging, astrophysics, and data mining.") (define-public r-hdf5array (package (name "r-hdf5array") - (version "1.6.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "HDF5Array" version)) (sha256 (base32 - "0kcdza41saqv6vlpvqd841awbiwkg84lh0plx6c7fmfgbqv7a0jh")))) + "1l0276qxkhgdxsfck3jmi8jvnsr20g10gjki53g0mqa45wnhm3ck")))) (properties `((upstream-name . "HDF5Array"))) (build-system r-build-system) (propagated-inputs @@ -10700,14 +10745,14 @@ block processing.") (define-public r-rhdf5lib (package (name "r-rhdf5lib") - (version "1.0.0") + (version "1.2.1") (source (origin (method url-fetch) (uri (bioconductor-uri "Rhdf5lib" version)) (sha256 (base32 - "0kkc4rprjbqn2wvbx4d49kk9l91vihccxbl4843qr1wqk6v33r1w")))) + "1y59acac6v8hrhv84gghn9ifsni9xxxacaj177rrl4frmkrz4x3c")))) (properties `((upstream-name . "Rhdf5lib"))) (build-system r-build-system) (arguments @@ -10718,10 +10763,10 @@ block processing.") (for-each delete-file '("configure" "configure.ac")) ;; Do not make other packages link with the proprietary libsz. (substitute* "R/zzz.R" - (("'%s/libhdf5_cpp.a %s/libhdf5.a %s/libsz.a'") - "'%s/libhdf5_cpp.a %s/libhdf5.a %s/libhdf5.a'") - (("'%s/libhdf5.a %s/libsz.a'") - "'%s/libhdf5.a %s/libhdf5.a'")) + (("'%s/libhdf5_cpp.a %s/libhdf5.a %s/libsz.a -lz'") + "'%s/libhdf5_cpp.a %s/libhdf5.a %s/libhdf5.a -lz'") + (("'%s/libhdf5.a %s/libsz.a -lz'") + "'%s/libhdf5.a %s/libhdf5.a -lz'")) (with-directory-excursion "src" (invoke "tar" "xvf" (assoc-ref inputs "hdf5-source")) (rename-file (string-append "hdf5-" ,(package-version hdf5)) @@ -10748,8 +10793,7 @@ block processing.") (("HDF5_INCLUDE=.*") "HDF5_INCLUDE=./hdf5/src\n") ;; szip is non-free software (("cp \\$\\{SZIP_LIB\\}.*") "") - (("PKG_LIBS = \\$\\{HDF5_LIB\\} \\$\\{SZIP_LIB\\}") - "PKG_LIBS = ${HDF5_LIB}\n"))) + (("\\$\\{USER_LIB_DIR\\}libsz.a") ""))) #t))))) (inputs `(("zlib" ,zlib))) @@ -10766,17 +10810,18 @@ packages.") (define-public r-beachmat (package (name "r-beachmat") - (version "1.0.2") + (version "1.2.1") (source (origin (method url-fetch) (uri (bioconductor-uri "beachmat" version)) (sha256 (base32 - "0b6dzja5fbx4dawb7ixj67mlhw4fy62pfp20mfp918fy96zmdwqz")))) + "1w90v0jx1zgrfxzx99gdkk0dz2vi25hr51jml1bvq33i64rj7996")))) (build-system r-build-system) (inputs - `(("hdf5" ,hdf5))) + `(("hdf5" ,hdf5) + ("zlib" ,zlib))) (propagated-inputs `(("r-delayedarray" ,r-delayedarray) ("r-hdf5array" ,r-hdf5array) @@ -10793,14 +10838,14 @@ matrices.") (define-public r-singlecellexperiment (package (name "r-singlecellexperiment") - (version "1.0.0") + (version "1.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "SingleCellExperiment" version)) (sha256 (base32 - "1r276i97w64a5vdlg6952gkj7bls909p42zl8fn8yz87cdwyaars")))) + "0mz3chia250v8v6q8r5cqv5fc4bpcw1hhrfr3p7l5i4xi85scpka")))) (properties `((upstream-name . "SingleCellExperiment"))) (build-system r-build-system) @@ -10820,27 +10865,27 @@ libraries.") (define-public r-scater (package (name "r-scater") - (version "1.6.3") + (version "1.8.0") (source (origin (method url-fetch) (uri (bioconductor-uri "scater" version)) (sha256 (base32 - "0q3s96gf8saa1dq2fvmpl0jyj7bx3wrdfck3hanb8pxkcir2p7dn")))) + "0bhpikgz3b9f510dawsay4zry9rlp8vjx5n6zvwbcpwrd94p3903")))) (build-system r-build-system) (propagated-inputs `(("r-beachmat" ,r-beachmat) ("r-biobase" ,r-biobase) ("r-biocgenerics" ,r-biocgenerics) - ("r-biomart" ,r-biomart) ("r-data-table" ,r-data-table) + ("r-delayedarray" ,r-delayedarray) + ("r-delayedmatrixstats" ,r-delayedmatrixstats) ("r-dplyr" ,r-dplyr) ("r-edger" ,r-edger) ("r-ggbeeswarm" ,r-ggbeeswarm) ("r-ggplot2" ,r-ggplot2) ("r-limma" ,r-limma) ("r-matrix" ,r-matrix) - ("r-matrixstats" ,r-matrixstats) ("r-plyr" ,r-plyr) ("r-rcpp" ,r-rcpp) ("r-reshape2" ,r-reshape2) @@ -10864,19 +10909,21 @@ quality control.") (define-public r-scran (package (name "r-scran") - (version "1.6.9") + (version "1.8.2") (source (origin (method url-fetch) (uri (bioconductor-uri "scran" version)) (sha256 (base32 - "0cs64cnf0xjcgmawr210y99j3gxs6aqgh8081n9827kkqnx2y5dm")))) + "0nbn5x75gf9d0p18w7vpkbv30cpdqvp5bz8xvila0h7jla7xdyih")))) (build-system r-build-system) (propagated-inputs `(("r-beachmat" ,r-beachmat) ("r-biocgenerics" ,r-biocgenerics) ("r-biocparallel" ,r-biocparallel) + ("r-delayedarray" ,r-delayedarray) + ("r-delayedmatrixstats" ,r-delayedmatrixstats) ("r-dt" ,r-dt) ("r-dynamictreecut" ,r-dynamictreecut) ("r-edger" ,r-edger) @@ -10893,8 +10940,7 @@ quality control.") ("r-singlecellexperiment" ,r-singlecellexperiment) ("r-statmod" ,r-statmod) ("r-summarizedexperiment" ,r-summarizedexperiment) - ("r-viridis" ,r-viridis) - ("r-zoo" ,r-zoo))) + ("r-viridis" ,r-viridis))) (home-page "https://bioconductor.org/packages/scran") (synopsis "Methods for single-cell RNA-Seq data analysis") (description "This package implements a variety of low-level analyses of @@ -10906,14 +10952,14 @@ variable and significantly correlated genes.") (define-public r-delayedmatrixstats (package (name "r-delayedmatrixstats") - (version "1.0.3") + (version "1.2.0") (source (origin (method url-fetch) (uri (bioconductor-uri "DelayedMatrixStats" version)) (sha256 (base32 - "1cxjbjdq9hg9cm95rci0al7a4pk2h73ym276ahw9q4977zbg6381")))) + "1dasghfy8x27zzmd0igag4mc1gxxxbchsl4hpc1050dj3wnw9w3y")))) (properties `((upstream-name . "DelayedMatrixStats"))) (build-system r-build-system) @@ -11151,25 +11197,22 @@ with narrow binding events such as transcription factor ChIP-seq.") (define-public trim-galore (package (name "trim-galore") - (version "0.4.2") + (version "0.4.5") (source (origin - (method url-fetch) - (uri (string-append "http://www.bioinformatics.babraham.ac.uk/" - "projects/trim_galore/trim_galore_v" - version ".zip")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/FelixKrueger/TrimGalore.git") + (commit version))) + (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0b9qdxi4521gsrjvbhgky8g7kry9b5nx3byzaxkgxz7p4k8bn1mn")))) + "0x5892l48c816pf00wmnz5vq0zq6170d3xc8zrxncd4jcz7h1p71")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no tests #:phases (modify-phases %standard-phases - ;; The archive contains plain files. - (replace 'unpack - (lambda* (#:key source #:allow-other-keys) - (zero? (system* "unzip" source)))) (delete 'configure) (delete 'build) (add-after 'unpack 'hardcode-tool-references @@ -11550,7 +11593,9 @@ browser.") (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((target (assoc-ref outputs "out")) - (doc (string-append target "/share/doc/f-seq/"))) + (bin (string-append target "/bin")) + (doc (string-append target "/share/doc/f-seq")) + (lib (string-append target "/lib"))) (mkdir-p target) (mkdir-p doc) (substitute* "bin/linux/fseq" @@ -11559,11 +11604,11 @@ browser.") (string-append (assoc-ref inputs "java-commons-cli") "/share/java/commons-cli.jar")) (("REALDIR=.*") - (string-append "REALDIR=" target "/bin\n"))) + (string-append "REALDIR=" bin "\n"))) (install-file "README.txt" doc) - (install-file "bin/linux/fseq" (string-append target "/bin")) - (install-file "build~/fseq.jar" (string-append target "/lib")) - (copy-recursively "lib" (string-append target "/lib")) + (install-file "bin/linux/fseq" bin) + (install-file "build~/fseq.jar" lib) + (copy-recursively "lib" lib) #t)))))) (inputs `(("perl" ,perl) @@ -11581,47 +11626,61 @@ Browser.") (define-public bismark (package (name "bismark") - (version "0.16.3") + (version "0.19.1") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/FelixKrueger/Bismark/" - "archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/FelixKrueger/Bismark.git") + (commit version))) + (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1204i0pa02ll2jn5pnxypkclnskvv7a2nwh5nxhagmhxk9wfv9sq")))) + "0yb5l36slwg02fp4b1jdlplgljcsxgqfzvzihzdnphd87dghcc84")) + (snippet + '(begin + ;; highcharts.js is non-free software. The code is available under + ;; CC-BY-NC or proprietary licenses only. + (delete-file "bismark_sitrep/highcharts.js") + #t)))) (build-system perl-build-system) (arguments - `(#:tests? #f ; there are no tests + `(#:tests? #f ; there are no tests #:phases (modify-phases %standard-phases (delete 'configure) (delete 'build) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((bin (string-append (assoc-ref outputs "out") - "/bin")) - (docdir (string-append (assoc-ref outputs "out") - "/share/doc/bismark")) - (docs '("Bismark_User_Guide.pdf" - "RELEASE_NOTES.txt")) - (scripts '("bismark" - "bismark_genome_preparation" - "bismark_methylation_extractor" - "bismark2bedGraph" - "bismark2report" - "coverage2cytosine" - "deduplicate_bismark" - "bismark_sitrep.tpl" - "bam2nuc" - "bismark2summary"))) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (share (string-append out "/share/bismark")) + (docdir (string-append out "/share/doc/bismark")) + (docs '("Docs/Bismark_User_Guide.html")) + (scripts '("bismark" + "bismark_genome_preparation" + "bismark_methylation_extractor" + "bismark2bedGraph" + "bismark2report" + "coverage2cytosine" + "deduplicate_bismark" + "filter_non_conversion" + "bam2nuc" + "bismark2summary"))) + (substitute* "bismark2report" + (("\\$RealBin/bismark_sitrep") + (string-append share "/bismark_sitrep"))) + (mkdir-p share) (mkdir-p docdir) (mkdir-p bin) (for-each (lambda (file) (install-file file bin)) scripts) (for-each (lambda (file) (install-file file docdir)) docs) + (copy-recursively "Docs/Images" (string-append docdir "/Images")) + (copy-recursively "bismark_sitrep" + (string-append share "/bismark_sitrep")) + ;; Fix references to gunzip (substitute* (map (lambda (file) (string-append bin "/" file)) @@ -11748,7 +11807,7 @@ accurate as existing quantification tools.") code that is used in the Cufflinks codebase. The goal of this library is to provide this functionality without the necessity of drawing in a heavy-weight dependency like SeqAn.") - (license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt")))) + (license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt")))) (define-public libdivsufsort (package @@ -12655,6 +12714,9 @@ contains (guix build ant-build-system)) #:phases (modify-phases %standard-phases + ;; FIXME: fails with "java.io.FileNotFoundException: + ;; /gnu/store/q76y0ximcziplgfpbn26kbw4h3s14f33-dropseq-tools-1.13/share/java/lib/biojava-alignment.jar" + (delete 'generate-jar-indices) ;; All dependencies must be linked to "lib", because that's where ;; they will be searched for when the Class-Path property of the ;; manifest is computed. @@ -12981,7 +13043,7 @@ methylation and segmentation.") (define-public pigx-scrnaseq (package (name "pigx-scrnaseq") - (version "0.0.3") + (version "0.0.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/BIMSBbioinfo/pigx_scrnaseq/" @@ -12989,7 +13051,7 @@ methylation and segmentation.") "/pigx_scrnaseq-" version ".tar.gz")) (sha256 (base32 - "12qdq0nj1wdkyighdxj6924bmbpd1a0b3gam6w64l4hiqrv5sijz")))) + "1pvjm6f3mascprs65vflggwwg5v925knvgal7k7a6nnlmw5qndrf")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -13012,7 +13074,7 @@ methylation and segmentation.") ("perl" ,perl) ("dropseq-tools" ,dropseq-tools) ("fastqc" ,fastqc) - ("java-picard" ,java-picard) + ("java-picard" ,java-picard-2.10.3) ; same as for dropseq ("java" ,icedtea-8) ("python-wrapper" ,python-wrapper) ("python-pyyaml" ,python-pyyaml) @@ -13123,3 +13185,54 @@ Extinction), \"QuaSSE\", \"GeoSSE\", and \"BiSSE-ness\" Other included methods include Markov models of discrete and continuous trait evolution and constant rate speciation and extinction.") (license license:gpl2+))) + +(define-public sjcount + ;; There is no tag for version 3.2, nor is there a release archive. + (let ((commit "292d3917cadb3f6834c81e509c30e61cd7ead6e5") + (revision "1")) + (package + (name "sjcount") + (version (git-version "3.2" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/pervouchine/sjcount-full.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0gdgj35j249f04rqgq8ymcc1xg1vi9kzbajnjqpaq2wpbh8bl234")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; requires a 1.4G test file + #:make-flags + (list (string-append "SAMTOOLS_DIR=" + (assoc-ref %build-inputs "samtools") + "/lib/")) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "makefile" + (("-I \\$\\{SAMTOOLS_DIR\\}") + (string-append "-I" (assoc-ref inputs "samtools") + "/include/samtools")) + (("-lz ") "-lz -lpthread ")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (for-each (lambda (tool) + (install-file tool + (string-append (assoc-ref outputs "out") + "/bin"))) + '("j_count" "b_count" "sjcount")) + #t))))) + (inputs + `(("samtools" ,samtools-0.1) + ("zlib" ,zlib))) + (home-page "https://github.com/pervouchine/sjcount-full/") + (synopsis "Annotation-agnostic splice junction counting pipeline") + (description "Sjcount is a utility for fast quantification of splice +junctions in RNA-seq data. It is annotation-agnostic and offset-aware. This +version does count multisplits.") + (license license:gpl3+)))) diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index 9df4f097ac..a9d62a5664 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2018 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 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Tomáš Čech <sleep_walker@gnu.org> ;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org> @@ -62,7 +62,7 @@ (define-public transmission (package (name "transmission") - (version "2.93") + (version "2.94") (source (origin (method url-fetch) (uri (string-append @@ -70,7 +70,7 @@ "master/transmission-" version ".tar.xz")) (sha256 (base32 - "02xrp49gsv4jkbzp37qrwlnb9nlja08s92dyvgdbr6a4187945c8")))) + "0zbbj7rlm6m7vb64x68a64cwmijhsrwx9l63hbwqs7zr9742qi1m")))) (build-system glib-or-gtk-build-system) (outputs '("out" ; library and command-line interface "gui")) ; graphical user interface @@ -257,7 +257,7 @@ maintained upstream.") (define-public aria2 (package (name "aria2") - (version "1.33.1") + (version "1.34.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/tatsuhiro-t/aria2/" @@ -265,7 +265,7 @@ maintained upstream.") name "-" version ".tar.xz")) (sha256 (base32 - "06syqxia701dk96rcbhnd4x0arjj6d22gm3aqksz38am9y2f8f95")))) + "18vpgr430vxlwbcc3598rr1srfmwypls6wp1m4wf21hncc1ahi1s")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-libaria2" diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index 6f96e55710..fbd0425c96 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -68,16 +68,7 @@ ;; Set the RUNPATH to $libdir so that the libs find each other. (string-append "linkflags=-Wl,-rpath=" - (assoc-ref %outputs "out") "/lib") - - ;; Boost's 'context' library is not yet supported on mips64, so - ;; we disable it. The 'coroutine' library depends on 'context', - ;; so we disable that too. - ,@(if (string-prefix? "mips64" (or (%current-target-system) - (%current-system))) - '("--without-context" - "--without-coroutine" "--without-coroutine2") - '())) + (assoc-ref %outputs "out") "/lib")) #:phases (modify-phases %standard-phases (delete 'bootstrap) @@ -111,12 +102,12 @@ (lambda* (#:key make-flags #:allow-other-keys) (apply invoke "./b2" "install" make-flags)))))) - (home-page "http://www.boost.org") + (home-page "https://www.boost.org") (synopsis "Peer-reviewed portable C++ source libraries") (description "A collection of libraries intended to be widely useful, and usable across a broad spectrum of applications.") - (license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt" + (license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt" "Some components have other similar licences.")))) (define-public boost-sync @@ -149,7 +140,7 @@ across a broad spectrum of applications.") (description "The Boost.Sync library provides mutexes, semaphores, locks and events and other thread related facilities. Boost.Sync originated from Boost.Thread.") - (license (license:x11-style "http://www.boost.org/LICENSE_1_0.txt"))))) + (license (license:x11-style "https://www.boost.org/LICENSE_1_0.txt"))))) (define-public mdds (package diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 0db6ad3f6a..a86c73731e 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -33,6 +33,7 @@ #:use-module (gnu packages disk) #:use-module (gnu packages bison) #:use-module (gnu packages cdrom) + #:use-module (gnu packages check) #:use-module (gnu packages cross-base) #:use-module (gnu packages disk) #:use-module (gnu packages firmware) @@ -49,6 +50,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages texinfo) #:use-module (gnu packages tls) + #:use-module (gnu packages sdl) #:use-module (gnu packages swig) #:use-module (gnu packages virtualization) #:use-module (gnu packages web) @@ -338,7 +340,7 @@ tree binary files. These are board description files used by Linux and BSD.") (define u-boot (package (name "u-boot") - (version "2018.01") + (version "2018.05") (source (origin (method url-fetch) (uri (string-append @@ -346,11 +348,15 @@ tree binary files. These are board description files used by Linux and BSD.") "u-boot-" version ".tar.bz2")) (sha256 (base32 - "1nidnnjprgxdhiiz7gmaj8cgcf52l5gbv64cmzjq4gmkjirmk3wk")))) + "0j60p4iskzb4hamxgykc6gd7xchxfka1zwh8hv08r9rrc4m3r8ad")))) (native-inputs `(("bc" ,bc) - ;("dtc" ,dtc) ; they have their own incompatible copy. + ("dtc" ,dtc) + ("openssl" ,openssl) ("python-2" ,python-2) + ("python2-coverage" ,python2-coverage) + ("python2-pytest" ,python2-pytest) + ("sdl" ,sdl) ("swig" ,swig))) (build-system gnu-build-system) (home-page "http://www.denx.de/wiki/U-Boot/") @@ -359,6 +365,80 @@ tree binary files. These are board description files used by Linux and BSD.") also initializes the boards (RAM etc).") (license license:gpl2+))) +(define-public u-boot-tools + (package + (inherit u-boot) + (name "u-boot-tools") + (arguments + `(#:make-flags '("HOSTCC=gcc") + #:test-target "tests" + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Makefile" + (("/bin/pwd") (which "pwd")) + (("/bin/false") (which "false"))) + (substitute* "tools/dtoc/fdt_util.py" + (("'cc'") "'gcc'")) + (substitute* "test/run" + ;; Make it easier to find test failures. + (("#!/bin/bash") "#!/bin/bash -x") + ;; pytest doesn't find it otherwise. + (("test/py/tests/test_ofplatdata.py") + "tests/test_ofplatdata.py") + ;; This test would require git. + (("\\./tools/patman/patman") (which "true")) + ;; This test would require internet access. + (("\\./tools/buildman/buildman") (which "true"))) + (substitute* "test/py/tests/test_sandbox_exit.py" + (("def test_ctrl_c") + "@pytest.mark.skip(reason='Guix has problems with SIGINT') +def test_ctrl_c")) + (substitute* "tools/binman/binman.py" + (("100%") "99%")) ; TODO: Find out why that is needed. + #t)) + (replace 'configure + (lambda* (#:key make-flags #:allow-other-keys) + (call-with-output-file "configs/tools_defconfig" + (lambda (port) + (display "CONFIG_SYS_TEXT_BASE=0\n" port))) + (apply invoke "make" "tools_defconfig" make-flags))) + (replace 'build + (lambda* (#:key inputs make-flags #:allow-other-keys) + (apply invoke "make" "tools-only" make-flags) + (apply invoke "make" "envtools" make-flags))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (for-each (lambda (name) + (install-file name bin)) + '("tools/netconsole" + "tools/jtagconsole" + "tools/gen_eth_addr" + "tools/gen_ethaddr_crc" + "tools/img2srec" + "tools/mkenvimage" + "tools/dumpimage" + "tools/mkimage" + "tools/proftool" + "tools/fdtgrep" + "tools/env/fw_printenv")) + #t))) + (delete 'check) + (add-after 'install 'check + (lambda* (#:key make-flags test-target #:allow-other-keys) + (apply invoke "make" "mrproper" make-flags) + (setenv "SDL_VIDEODRIVER" "dummy") + (setenv "PAGER" "cat") + (apply invoke "make" test-target make-flags) + (symlink "build-sandbox_spl" "sandbox") + (invoke "test/image/test-imagetools.sh")))))) + (description "U-Boot is a bootloader used mostly for ARM boards. It +also initializes the boards (RAM etc). This package provides its +board-independent tools."))) + (define (make-u-boot-package board triplet) "Returns a u-boot package for BOARD cross-compiled for TRIPLET." (let ((same-arch? (if (string-prefix? (%current-system) @@ -392,25 +472,29 @@ also initializes the boards (RAM etc).") (if (file-exists? (string-append "configs/" config-name)) (zero? (apply system* "make" `(,@make-flags ,config-name))) (begin - (display "Invalid board name. Valid board names are:") - (let ((suffix-len (string-length "_defconfig"))) - (scandir "configs" - (lambda (file-name) - (when (string-suffix? "_defconfig" file-name) - (format #t - "- ~A\n" - (string-drop-right file-name - suffix-len)))))) + (display "Invalid board name. Valid board names are:" + (current-error-port)) + (let ((suffix-len (string-length "_defconfig")) + (entries (scandir "configs"))) + (for-each (lambda (file-name) + (when (string-suffix? "_defconfig" file-name) + (format (current-error-port) + "- ~A\n" + (string-drop-right file-name + suffix-len)))) + (sort entries string-ci<))) #f))))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (libexec (string-append out "/libexec")) (uboot-files (append - (find-files "." ".*\\.(bin|efi|img|spl|itb|dtb)$") + (find-files "." ".*\\.(bin|efi|img|spl|itb|dtb|rksd)$") (find-files "." "^(MLO|SPL)$")))) (mkdir-p libexec) (install-file ".config" libexec) + ;; Useful for "qemu -kernel". + (install-file "u-boot" libexec) (for-each (lambda (file) (let ((target-file (string-append libexec "/" file))) @@ -440,9 +524,10 @@ also initializes the boards (RAM etc).") (let ((bl31 (string-append (assoc-ref inputs "firmware") "/bl31.bin"))) (setenv "BL31" bl31) - ;; This is necessary while we're using the bundled dtc. - (setenv "PATH" (string-append (getenv "PATH") ":" - "scripts/dtc"))) + ;; This is necessary when we're using the bundled dtc. + ;(setenv "PATH" (string-append (getenv "PATH") ":" + ; "scripts/dtc")) + ) #t)))))) (native-inputs `(("firmware" ,arm-trusted-firmware-pine64-plus) @@ -469,6 +554,43 @@ also initializes the boards (RAM etc).") (define-public u-boot-mx6cuboxi (make-u-boot-package "mx6cuboxi" "arm-linux-gnueabihf")) +(define-public u-boot-novena + (make-u-boot-package "novena" "arm-linux-gnueabihf")) + +(define-public u-boot-cubieboard + (make-u-boot-package "Cubieboard" "arm-linux-gnueabihf")) + +(define-public u-boot-puma-rk3399 + (let ((base (make-u-boot-package "puma-rk3399" "aarch64-linux-gnu"))) + (package + (inherit base) + (arguments + (substitute-keyword-arguments (package-arguments base) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'set-environment + (lambda* (#:key inputs #:allow-other-keys) + ;; Need to copy the firmware into u-boot build + ;; directory. + (copy-file (string-append (assoc-ref inputs "firmware") + "/bl31.bin") "bl31-rk3399.bin") + (copy-file (string-append (assoc-ref inputs "firmware-m0") + "/rk3399m0.bin") "rk3399m0.bin") + #t)) + (add-after 'build 'build-itb + (lambda* (#:key make-flags #:allow-other-keys) + ;; The u-boot.itb is not built by default. + (apply invoke "make" `(,@make-flags ,"u-boot.itb")))) + (add-after 'build-itb 'build-rksd + (lambda* (#:key inputs #:allow-other-keys) + ;; Build Rockchip SD card images. + (invoke "./tools/mkimage" "-T" "rksd" "-n" "rk3399" "-d" + "spl/u-boot-spl.bin" "u-boot-spl.rksd"))))))) + (native-inputs + `(("firmware" ,arm-trusted-firmware-puma-rk3399) + ("firmware-m0" ,rk3399-cortex-m0) + ,@(package-native-inputs base)))))) + (define-public vboot-utils (package (name "vboot-utils") diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 09cb7c9e97..a6d9fa8cfc 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -87,6 +87,8 @@ makes a few sacrifices to acquire fast full and incremental build times.") (base32 "1m0w0wqnz983l7fpp5p9pdsqr7n3ybrzp8ywjcvn0rihsrzj65j6")))) (build-system cmake-build-system) + (inputs + `(("python" ,python-wrapper))) (home-page "https://github.com/rizsotto/Bear") (synopsis "Tool for generating a compilation database") (description "A JSON compilation database is used in the Clang project to @@ -98,7 +100,7 @@ generate such a compilation database.") (define-public meson (package (name "meson") - (version "0.45.0") + (version "0.45.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/mesonbuild/meson/" @@ -106,7 +108,7 @@ generate such a compilation database.") version ".tar.gz")) (sha256 (base32 - "1r3wlimllakrswx2rb4mbdk1iricqk6myvdvib6dkyx362yanm9l")))) + "1yqa4337nb8w92bvr91rsxmn0xkf7pmdybq9ljvnqmdvn7dv02sd")))) (build-system python-build-system) (arguments `(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm index b4e17cb53a..bc6042874b 100644 --- a/gnu/packages/c.scm +++ b/gnu/packages/c.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; @@ -83,7 +83,7 @@ standard.") (build-system trivial-build-system) (native-inputs '()) (inputs `(("tcc" ,tcc) - ("guile" ,guile-2.0))) + ("guile" ,guile-2.2))) ;; By default TCC does not honor any search path environment variable. ;; This wrapper adds them. diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index b2f6aec83d..79cef99826 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com> ;;; Copyright © 2016 Stefan Reichoer <stefan@xsteve.at> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -95,13 +96,13 @@ data units.") (define-public khal (package (name "khal") - (version "0.9.8") + (version "0.9.9") (source (origin (method url-fetch) (uri (pypi-uri "khal" version)) (sha256 (base32 - "1blx3gxnv7sj302biqphfw7i6ilzl2xlmvzp130n3113scg9w17y")))) + "0dq9aqb9pqjfqrnfg43mhpb7m0szmychxy1ydb3lwzf3500c9rsh")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -110,24 +111,24 @@ data units.") (lambda* (#:key inputs outputs #:allow-other-keys) ;; Make installed package available for running the tests (add-installed-pythonpath inputs outputs) - (and - (zero? (system* "make" "--directory=doc/" "man")) - (install-file - "doc/build/man/khal.1" - (string-append (assoc-ref outputs "out") "/share/man/man1"))))) + (invoke "make" "--directory=doc/" "man") + (install-file + "doc/build/man/khal.1" + (string-append (assoc-ref outputs "out") "/share/man/man1")) + #t)) (replace 'check (lambda* (#:key inputs #:allow-other-keys) ;; The tests require us to choose a timezone. (setenv "TZ" (string-append (assoc-ref inputs "tzdata") "/share/zoneinfo/Zulu")) - (zero? (system* "py.test" "tests" "-k" - (string-append - ;; These tests are known to fail in when not - ;; running in a TTY: - ;; https://github.com/pimutils/khal/issues/683 - "not test_printics_read_from_stdin " - "and not test_import_from_stdin")))))))) + (invoke "py.test" "tests" "-k" + (string-append + ;; These tests are known to fail in when not + ;; running in a TTY: + ;; https://github.com/pimutils/khal/issues/683 + "not test_printics_read_from_stdin " + "and not test_import_from_stdin"))))))) (native-inputs `(("python-pytest" ,python-pytest) ("python-pytest-cov" ,python-pytest-cov) diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index bfc5ff169f..3f592cf17b 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -76,7 +76,7 @@ (define-public nss-certs (package (name "nss-certs") - (version "3.36") + (version "3.36.1") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -87,7 +87,7 @@ "nss-" version ".tar.gz"))) (sha256 (base32 - "1580qc0a4s8v3k3vg7zz4xly4alkjrw7qq9zy2nf6p4v56wcfg53")))) + "1zrb49mp7cy3snnday1zv8d76h1mgppbcwxnlkqsgxlga8fl89b0")))) (build-system gnu-build-system) (outputs '("out")) (native-inputs diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 4578961acc..3e959bde92 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -163,6 +163,8 @@ supervised tests.") (base32 "1027cyfx5gsjkdkaf6c2wnjh68882grw8n672018cj3vs9lrhmix")))))) +;; When dependent packages upgraded to use newer version of catch, this one should +;; be removed. (define-public catch-framework (package (name "catch") @@ -201,6 +203,24 @@ supervised tests.") multi-paradigm automated test framework for C++ and Objective-C.") (license license:boost1.0))) +(define-public catch-framework2 + (package + (name "catch2") + (version "1.12.2") + (home-page "https://github.com/catchorg/Catch2") + (source (origin + (method url-fetch) + (uri (string-append home-page "/archive/v" version ".tar.gz")) + (sha256 + (base32 + "0g2ysxc6adqca5wh7nsicnxb9wkxg75cd5izjsl39rcj0v903gr7")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system cmake-build-system) + (synopsis "Automated test framework for C++ and Objective-C") + (description "Catch2 stands for C++ Automated Test Cases in Headers and is +a multi-paradigm automated test framework for C++ and Objective-C.") + (license license:boost1.0))) + (define-public cmdtest (package (name "cmdtest") @@ -396,6 +416,8 @@ test coverage and has a web user interface that will refresh automatically.") (home-page "https://github.com/smartystreets/goconvey") (license license:expat))) +;; XXX When updating, check whether ZNC's GOOGLETEST-SOURCES can be +;; switched back to simply using (PACKAGE-SOURCE ...). (define-public googletest (package (name "googletest") diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm index e43707389b..cc2d90712d 100644 --- a/gnu/packages/cmake.scm +++ b/gnu/packages/cmake.scm @@ -29,6 +29,7 @@ #:use-module (guix download) #:use-module (guix utils) #:use-module (guix build-system gnu) + #:use-module (guix build-system emacs) #:use-module (gnu packages) #:use-module (gnu packages backup) #:use-module (gnu packages compression) @@ -161,3 +162,20 @@ and workspaces that can be used in the compiler environment of your choice.") license:bsd-2 ; cmlibarchive license:expat ; cmjsoncpp is dual MIT/public domain license:public-domain)))) ; cmlibarchive/archive_getdate.c + +(define-public emacs-cmake-mode + (package + (inherit cmake) + (name "emacs-cmake-mode") + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir-elisp + ;; Elisp directory is not in root of the source. + (lambda _ + (chdir "Auxiliary")))))) + (synopsis "Emacs major mode for editing Cmake expressions") + (description "@code{cmakeos-mode} provides an Emacs major mode for editing +Cmake files. It supports syntax highlighting, indenting and refilling of +comments."))) diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index d636945176..a8c85fdb5e 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -7,6 +7,10 @@ ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> +;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com> +;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,12 +30,16 @@ (define-module (gnu packages code) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system trivial) #:use-module (gnu packages) + #:use-module (gnu packages autogen) + #:use-module (gnu packages autotools) #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages cpp) #:use-module (gnu packages databases) @@ -39,15 +47,13 @@ #:use-module (gnu packages gcc) #:use-module (gnu packages graphviz) #:use-module (gnu packages pcre) - #:use-module (gnu packages pkg-config) #:use-module (gnu packages perl) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages texinfo) - #:use-module (gnu packages autogen) #:use-module (gnu packages ncurses) - #:use-module (gnu packages autotools) #:use-module (gnu packages llvm) - #:use-module (gnu packages lua) - #:use-module (gnu packages bash)) + #:use-module (gnu packages lua)) ;;; Tools to deal with source code: metrics, cross-references, etc. @@ -529,3 +535,164 @@ produce colored output.") output is a graphviz-dot file, a Gexf-XML file or a list of the deepest independent targets.") (license license:expat))) + +(define-public uncrustify + (package + (name "uncrustify") + (version "0.67") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/uncrustify/uncrustify/archive/" + "uncrustify-" version ".zip")) + (sha256 + (base32 + "0n13kq0nsm35fxhdp0f275n4x0w88hdv3bdjy0hgvv42x0dx5zyp")))) + (build-system cmake-build-system) + (native-inputs + `(("unzip" ,unzip))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'unpack-etc + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Configuration samples are not installed by default. + (let* ((output (assoc-ref outputs "out")) + (etcdir (string-append output "/etc"))) + (for-each (lambda (l) + (install-file l etcdir)) + (find-files "etc" "\\.cfg$"))) + #t))))) + (home-page "http://uncrustify.sourceforge.net/") + (synopsis "Code formatter for C and other related languages") + (description + "Beautify source code in many languages of the C family (C, C++, C#, +Objective@tie{}C, D, Java, Pawn, and Vala). Features: +@itemize +@item Indent and align code. +@item Reformat comments (a little bit). +@item Fix inter-character spacing. +@item Add or remove parens / braces. +@item Supports embedded SQL @code{EXEC SQL} stuff. +@item Highly configurable - More than 600 configurable options. +@end itemize\n") + (license license:gpl2+))) + +(define-public astyle + (package + (name "astyle") + (version "2.05") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/astyle/astyle/astyle%20" + version "/astyle_" version "_linux.tar.gz")) + (sha256 + (base32 + "0f9sh9kq5ajp1yz133h00fr9235p1m698x7n3h7zbrhjiwgynd6s")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ;no tests + #:make-flags (list (string-append "prefix=" %output) + "INSTALL=install" + "all") + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda _ (chdir "build/gcc") #t)) + (add-after 'install 'install-libs + (lambda* (#:key outputs #:allow-other-keys) + ;; Libraries are not installed by default + (let* ((output (assoc-ref outputs "out")) + (libdir (string-append output "/lib"))) + (begin + (mkdir-p libdir) + (for-each (lambda (l) + (copy-file + l (string-append libdir "/" (basename l)))) + (find-files "bin" "lib*")))) + #t))))) + (home-page "http://astyle.sourceforge.net/") + (synopsis "Source code indenter, formatter, and beautifier") + (description + "Artistic Style is a source code indenter, formatter, and beautifier for +the C, C++, C++/CLI, Objective‑C, C#, and Java programming languages.") + (license license:lgpl3+))) + +(define-public indent + (package + (name "indent") + (version "2.2.10") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/indent/indent-" version + ".tar.gz")) + (sha256 (base32 + "0f9655vqdvfwbxvs1gpa7py8k1z71aqh8hp73f65vazwbfz436wa")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-docdir + (lambda _ + ;; Although indent uses a modern autoconf in which docdir + ;; defaults to PREFIX/share/doc, the doc/Makefile.am + ;; overrides this to be in PREFIX/doc. Fix this. + (substitute* "doc/Makefile.in" + (("^docdir = .*$") "docdir = @docdir@\n")) + #t))))) + (synopsis "Code reformatter") + (description + "Indent is a program that makes source code easier to read by +reformatting it in a consistent style. It can change the style to one of +several different styles such as GNU, BSD or K&R. It has some flexibility to +deal with incomplete or malformed syntax. GNU indent offers several +extensions over the standard utility.") + (license license:gpl3+) + (home-page "https://www.gnu.org/software/indent/"))) + +(define-public amalgamate + (let* ((commit "c91f07eea1133aa184f652b8f1398eaf03586208") + (revision "0") + (version (git-version "1.1.1" revision commit))) + (package + (name "amalgamate") + (version version) + (home-page "https://github.com/edlund/amalgamate") + (source + (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "0cllaraw8mxs8q2nr28nhgzkb417gj2wcklqg59w84f4lc78k3yb")) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + (snippet + '(substitute* "test.sh" + (("test_command \"cc -Wall -Wextra -o source.out source.c\"" all) + "test_command \"gcc -Wall -Wextra -o source.out source.c\""))))) + (build-system gnu-build-system) + (inputs + `(("python" ,python-wrapper))) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "amalgamate.py" bin)))) + (replace 'check + (lambda _ + (invoke "./test.sh")))))) + (synopsis "Tool for amalgamating C source and header files") + ;; The package is indeed a script file, and the term "amalgamate.py" is + ;; used by upstream. + (description "amalgamate.py aims to make it easy to use SQLite-style C +source and header amalgamation in projects.") + (license license:bsd-3)))) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 9f85781db2..e998e9981e 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -30,7 +30,7 @@ #:use-module (gnu packages bash) #:use-module (gnu packages gcc) #:use-module (gnu packages m4) - #:use-module (gnu packages indent) + #:use-module (gnu packages code) #:use-module (gnu packages file) #:use-module (gnu packages gawk) #:use-module (gnu packages bison) @@ -267,7 +267,7 @@ ;; Drop trailing letters, as gmp-6.0.0a unpacks ;; into gmp-6.0.0. `(symlink ,(string-trim-right - (package-full-name lib) + (package-full-name lib "-") char-set:letter) ,(package-name lib))) (list gmp-6.0 mpfr mpc)) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 4a34e89324..1c27beb134 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org> -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2015 Jeff Mickey <j@codemac.net> ;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> @@ -22,6 +22,7 @@ ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> +;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -659,7 +660,7 @@ decompression of some loosely related file formats used by Microsoft.") (define-public perl-compress-raw-bzip2 (package (name "perl-compress-raw-bzip2") - (version "2.074") + (version "2.081") (source (origin (method url-fetch) @@ -667,7 +668,7 @@ decompression of some loosely related file formats used by Microsoft.") "Compress-Raw-Bzip2-" version ".tar.gz")) (sha256 (base32 - "0b5jwqf15zr787acnx8sfyy2zavdd7gfkd98n1dgy8fs6r8yb8a4")))) + "081mpkjy688lg48997fqh3d7ja12vazmz02fw84495civg4vb4l6")))) (build-system perl-build-system) ;; TODO: Use our bzip2 package. (home-page "http://search.cpan.org/dist/Compress-Raw-Bzip2") @@ -679,7 +680,7 @@ compression library.") (define-public perl-compress-raw-zlib (package (name "perl-compress-raw-zlib") - (version "2.076") + (version "2.081") (source (origin (method url-fetch) @@ -687,7 +688,7 @@ compression library.") "Compress-Raw-Zlib-" version ".tar.gz")) (sha256 (base32 - "1al2h0i6mspldmlf5c09fy5a4j8swsxd31v6zi8zx9iyqk1lw7in")))) + "06rsm9ahp20xfyvd3jc69sd0k8vqysryxc6apzdbn96jbcsdwmp1")))) (build-system perl-build-system) (inputs `(("zlib" ,zlib))) @@ -714,7 +715,7 @@ compression library.") (define-public perl-io-compress (package (name "perl-io-compress") - (version "2.074") + (version "2.081") (source (origin (method url-fetch) @@ -722,11 +723,11 @@ compression library.") "IO-Compress-" version ".tar.gz")) (sha256 (base32 - "1wlpy2026djfmq0bjync531yq6s695jf7bcnpvjphrasi776igdl")))) + "1na66ns1g3nni0m9q5494ym4swr21hfgpv88mw8wbj2daiswf4aj")))) (build-system perl-build-system) (propagated-inputs - `(("perl-compress-raw-zlib" ,perl-compress-raw-zlib) ; >=2.074 - ("perl-compress-raw-bzip2" ,perl-compress-raw-bzip2))) ; >=2.074 + `(("perl-compress-raw-zlib" ,perl-compress-raw-zlib) ; >=2.081 + ("perl-compress-raw-bzip2" ,perl-compress-raw-bzip2))) ; >=2.081 (home-page "http://search.cpan.org/dist/IO-Compress") (synopsis "IO Interface to compressed files/buffers") (description "IO-Compress provides a Perl interface to allow reading and @@ -754,7 +755,7 @@ writing of compressed data created with the zlib and bzip2 libraries.") (string-append "prefix=" (assoc-ref %outputs "out"))) #:phases (modify-phases %standard-phases (delete 'configure)))) ; no configure script - (home-page "http://www.lz4.org") + (home-page "https://www.lz4.org") (synopsis "Compression algorithm focused on speed") (description "LZ4 is a lossless compression algorithm, providing compression speed at 400 MB/s per core (0.16 Bytes/cycle). It also features an @@ -855,6 +856,23 @@ systems where low overhead is needed. This package allows you to create and extract such file systems.") (license license:gpl2+))) +;; We need this for building squashfs images with symlinks. +(define-public squashfs-tools-next + (let ((commit "fb33dfc32b131a1162dcf0e35bd88254ae10e265") + (revision "1")) + (package (inherit squashfs-tools) + (name "squashfs-tools-next") + (version (string-append "4.3-" revision (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/plougher/squashfs-tools.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1x2skf8hxzfch978nzx5mh46d4hhi6gl22270hiarjszsjk3bnsx"))))))) + (define-public pigz (package (name "pigz") @@ -2158,3 +2176,75 @@ with @code{deflate} but offers more dense compression. The specification of the Brotli Compressed Data Format is defined in RFC 7932.") (license license:expat))) + +(define-public ucl + (package + (name "ucl") + (version "1.03") + (source (origin + (method url-fetch) + (uri (string-append "http://www.oberhumer.com/opensource/" + name "/download/" name "-" version ".tar.gz")) + (sha256 + (base32 + "0j036lkwsxvm15gr29n8wn07cqq79dswjs9k54939ms5zngjjrdq")))) + (build-system gnu-build-system) + (home-page "http://www.oberhumer.com/opensource/ucl/") + (synopsis "Portable lossless data compression library") + (description "UCL implements a number of compression algorithms that +achieve an excellent compression ratio while allowing fast decompression. +Decompression requires no additional memory. + +Compared to LZO, the UCL algorithms achieve a better compression ratio but +decompression is a little bit slower.") + (license license:gpl2+))) + +(define-public upx + (package + (name "upx") + (version "3.94") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/upx/upx/releases/download/v" + version "/" name "-" version "-src.tar.xz")) + (sha256 + (base32 + "08anybdliqsbsl6x835iwzljahnm9i7v26icdjkcv33xmk6p5vw1")))) + (build-system gnu-build-system) + (native-inputs `(("perl" ,perl) + ("ucl" ,ucl))) + (inputs `(("zlib" ,zlib))) + (arguments + `(#:make-flags + (list "all" + ;; CHECK_WHITESPACE does not seem to work. + ;; See https://git.archlinux.org/svntogit/community.git/tree/trunk/PKGBUILD?h=packages/upx. + "CHECK_WHITESPACE=true") + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check) + (delete 'install) + (add-before 'build 'patch-exec-bin-sh + (lambda _ + (substitute* (find-files "Makefile") + (("/bin/sh") (which "sh"))) + (substitute* "src/Makefile" + (("/bin/sh") (which "sh"))) + #t)) + (add-after 'build 'install-upx + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (mkdir-p bin) + (copy-file "src/upx.out" (string-append bin "/upx"))) + #t)) + ))) + (home-page "https://upx.github.io/") + (synopsis "Compression tool for executables") + (description + "The Ultimate Packer for eXecutables (UPX) is an executable file +compressor. UPX typically reduces the file size of programs and shared +libraries by around 50%--70%, thus reducing disk space, network load times, +download times, and other distribution and storage costs.") + (license license:gpl2+))) diff --git a/gnu/packages/connman.scm b/gnu/packages/connman.scm index 7e87cd8968..55dd4a632b 100644 --- a/gnu/packages/connman.scm +++ b/gnu/packages/connman.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,7 +43,7 @@ (define-public connman (package (name "connman") - (version "1.35") + (version "1.36") (source (origin (method url-fetch) @@ -51,7 +51,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "1apj5j25kj7v1bsfv3nh54aiq873nfrsjfbj85p5qm3ihfwxxmv6")))) + "0x00dq5c2frz06md3g5y0jh5kbcj2hrfl5qjcqga8gs4ri0xp2f7")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index 3e9c39df61..cc5375095b 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -29,7 +29,9 @@ #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages check) + #:use-module (gnu packages code) #:use-module (gnu packages compression) + #:use-module (gnu packages llvm) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls)) @@ -124,3 +126,148 @@ unified access to TCP/UDP sockets, serial ports, console, and files streams. It also allows a server application to wait for any activity on any combination of these streams.") (license license:bsd-3))) + +(define-public xsimd + (package + (name "xsimd") + (version "4.1.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/QuantStack/xsimd/archive/" + version ".tar.gz")) + (sha256 + (base32 + "0x05l4xpqr9b66sm6lkf48n6x7999ks921x6k2hzkkg6mh3gqd46")) + (file-name (string-append name "-" version ".tar.gz")))) + (home-page "https://github.com/QuantStack/xsimd") + (build-system cmake-build-system) + (arguments + `(#:test-target "xtest")) + (native-inputs + `(("googletest" ,googletest))) + (synopsis "C++ wrappers for SIMD intrinsics and math implementations") + (description "xsimd provides a unified means for using SIMD features for +library authors. Namely, it enables manipulation of batches of numbers with +the same arithmetic operators as for single values. It also provides +accelerated implementation of common mathematical functions operating on +batches.") + (license license:bsd-3))) + +(define-public fifo-map + (let* ((commit "0dfbf5dacbb15a32c43f912a7e66a54aae39d0f9") + (revision "0") + (version (git-version "1.1.1" revision commit))) + (package + (name "fifo-map") + (version version) + (home-page "https://github.com/nlohmann/fifo_map") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "0pi77b75kp0l7z454ihcd14nzpi3nc5m4nyjbsgy5f9bw3676196")) + (patches (search-patches "fifo-map-remove-catch.hpp.patch" + "fifo-map-fix-flags-for-gcc.patch")) + (file-name (git-file-name name version)) + (modules '((guix build utils))) + (snippet '(delete-file-recursively "./test/thirdparty")))) + (native-inputs + `(("catch2" ,catch-framework2))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + (invoke "./unit"))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (inc (string-append out "/include/fifo_map"))) + (with-directory-excursion + (string-append "../" ,name "-" ,version "-checkout") + (install-file "src/fifo_map.hpp" inc) + #t))))))) + (synopsis "FIFO-ordered associative container for C++") + (description "Fifo_map is a C++ header only library for associative +container which uses the order in which keys were inserted to the container +as ordering relation.") + (license license:expat)))) + +(define-public json-modern-cxx + (package + (name "json-modern-cxx") + (version "3.1.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/nlohmann/json/archive/v" version ".tar.gz")) + (sha256 + (base32 + "0m5fhdpx2qll933db2nsi30nns3cifavzvijzz6mxhdkpmngmzz8")) + (file-name (string-append name "-" version ".tar.gz")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "./third_party") + (delete-file-recursively "./test/thirdparty") + (delete-file-recursively "./benchmarks/thirdparty") + ;; Splits catch and fifo_map + (with-directory-excursion "test/src" + (let ((files (find-files "." ".*\\.cpp"))) + (substitute* files + (("#include ?\"(catch.hpp)\"" all catch-hpp) + (string-append "#include <catch/" catch-hpp ">"))) + (substitute* files + (("#include ?\"(fifo_map.hpp)\"" all fifo-map-hpp) + (string-append + "#include <fifo_map/" fifo-map-hpp ">"))))))))) + (native-inputs + `(("amalgamate" ,amalgamate))) + (inputs + `(("catch2" ,catch-framework2) + ("fifo-map" ,fifo-map))) + (home-page "https://github.com/nlohmann/json") + (build-system cmake-build-system) + (synopsis "JSON parser and printer library for C++") + (description "JSON for Modern C++ is a C++ JSON library that provides +intutive syntax and trivial integration.") + (license license:expat))) + +(define-public xtl + (package + (name "xtl") + (version "0.4.8") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/QuantStack/xtl/archive/" + version ".tar.gz")) + (sha256 + (base32 + "05bcz9y590b77bxcip0k31rgsapmkwqi1smvsvc84zz7m87d4jvy")) + (file-name (string-append name "-" version ".tar.gz")))) + (native-inputs + `(("googletest" ,googletest) + ("json-modern-cxx" ,json-modern-cxx))) + (arguments + `(#:configure-flags + '("-DBUILD_TESTS=ON") + #:phases + (modify-phases %standard-phases + (replace 'check + (lambda* _ + (with-directory-excursion "test" + (invoke "./test_xtl") + #t)))))) + (home-page "https://github.com/QuantStack/xtl") + (build-system cmake-build-system) + (synopsis "C++ template library providing some basic tools") + (description "xtl is a C++ header-only template library providing basic +tools (containers, algorithms) used by other QuantStack packages.") + (license license:bsd-3))) diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index bc95fd2aa4..10cdd1b307 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -36,7 +36,9 @@ #:use-module (gnu packages mpi) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages python) #:use-module (gnu packages statistics) + #:use-module (gnu packages tls) #:use-module (gnu packages web)) (define-public r-tidyverse @@ -167,21 +169,18 @@ such as copy/paste from an R session.") (define-public r-callr (package (name "r-callr") - (version "2.0.3") + (version "2.0.4") (source (origin (method url-fetch) (uri (cran-uri "callr" version)) (sha256 (base32 - "1k3mflgn10hcvy74y4pbigpv74zb66fz1phfd3c8isqmn88xbxzi")))) + "1053qqq632z94pqq2v5dynjpgyv1b1c8zvidmcllw7zn8zha8gqf")))) (build-system r-build-system) (propagated-inputs - `(("r-assertthat" ,r-assertthat) - ("r-crayon" ,r-crayon) - ("r-debugme" ,r-debugme) - ("r-r6" ,r-r6) - ("r-testthat" ,r-testthat))) + `(("r-r6" ,r-r6) + ("r-processx" ,r-processx))) (home-page "https://github.com/r-lib/callr#readme") (synopsis "Call R from R") (description @@ -219,14 +218,14 @@ the embedded @code{RapidXML} C++ library.") (define-public r-modelr (package (name "r-modelr") - (version "0.1.1") + (version "0.1.2") (source (origin (method url-fetch) (uri (cran-uri "modelr" version)) (sha256 (base32 - "1rqw0b583vp107zqp4h3wj51dvv4hb3wszfr1f5f48xassc53f95")))) + "09whg3q5xq6csbqwgwfwav09vda8vgady5j70sk52xcn232k363a")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -271,13 +270,13 @@ embedded @url{https://github.com/WizardMac/ReadStat,ReadStat} C library.") (define-public r-amap (package (name "r-amap") - (version "0.8-14") + (version "0.8-16") (source (origin (method url-fetch) (uri (cran-uri "amap" version)) (sha256 (base32 - "1dz37z9v4zvyvqrs4xvpfv468jwvpxav60qn2w0049bw8llj6xdl")))) + "1qnl2x98x64iaipkx5126rsddq2sx5ml43h75xyiyn30yvbmlxyk")))) (build-system r-build-system) (inputs `(("gfortran" ,gfortran))) @@ -316,14 +315,14 @@ and several other tools.") (define-public r-abbyyr (package (name "r-abbyyr") - (version "0.5.1") + (version "0.5.4") (source (origin (method url-fetch) (uri (cran-uri "abbyyR" version)) (sha256 (base32 - "1s8zf18sh0s89vk3dl09fzrq50csmmfvmsanf5vfkv9n5lx6pklg")))) + "1jh1c1ad6mgw7brdh2isnza1qpjlfxnqr7jl76yd93axyfl76xjx")))) (properties `((upstream-name . "abbyyR"))) (build-system r-build-system) (propagated-inputs @@ -427,13 +426,13 @@ error stream.") (define-public r-rcpp (package (name "r-rcpp") - (version "0.12.16") + (version "0.12.17") (source (origin (method url-fetch) (uri (cran-uri "Rcpp" version)) (sha256 - (base32 "1rm8hcy72p1jvxikvmkwg20pjqmvmfvqb45lfghmddp2adp67qfl")))) + (base32 "08xg8h3w25sdb3xr18g9pa0x8cirkdgljqapxmw56ss1j9fc89s2")))) (build-system r-build-system) (home-page "http://www.rcpp.org") (synopsis "Seamless R and C++ integration") @@ -653,14 +652,14 @@ rows, dropping names) to see if the modified versions are identical.") (define-public r-dendextend (package (name "r-dendextend") - (version "1.7.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (cran-uri "dendextend" version)) (sha256 (base32 - "1krvqadnnh53xx5ql7bwzxaif6a317jzbs1m00gnc6jnj03rfl5d")))) + "1virn3c232xwcq3d0hhkgjh5gpzl01s39iwii5gxcm9mnsxjzdrh")))) (build-system r-build-system) (propagated-inputs `(("r-fpc" ,r-fpc) @@ -729,14 +728,14 @@ any subsequent lookup as it keeps the hash table in memory.") (define-public r-ff (package (name "r-ff") - (version "2.2-13") + (version "2.2-14") (source (origin (method url-fetch) (uri (cran-uri "ff" version)) (sha256 (base32 - "1nvd6kx46xzyc99a44mgynd94pvd2h495m5a7b1g67k5w2phiywb")))) + "1w724q4jpzbvzpilb2ifviaxkjgk9lzwxz9gksnvicbmfa20fqqw")))) (build-system r-build-system) (propagated-inputs `(("r-bit" ,r-bit))) (home-page "http://ff.r-forge.r-project.org/") @@ -843,23 +842,26 @@ package also provides a C++ API, that works with or without Rcpp.") (define-public r-ggally (package (name "r-ggally") - (version "1.3.2") + (version "1.4.0") (source (origin (method url-fetch) (uri (cran-uri "GGally" version)) (sha256 (base32 - "02px7j28wzbhcgcwm2m0pxb6g7s5zvphl64ix55pkvag4m2ky57l")))) + "1zjmcc5bzagvy7c5cmdcl39xmx07fwi98yrj4i05w7y40kqcsiws")))) (properties `((upstream-name . "GGally"))) (build-system r-build-system) + (inputs + `(("libressl" ,libressl))) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) ("r-gtable" ,r-gtable) ("r-plyr" ,r-plyr) ("r-progress" ,r-progress) ("r-rcolorbrewer" ,r-rcolorbrewer) - ("r-reshape" ,r-reshape))) + ("r-reshape" ,r-reshape) + ("r-rlang" ,r-rlang))) (home-page "https://ggobi.github.io/ggally") (synopsis "Extension to ggplot2") (description @@ -1077,13 +1079,13 @@ by Li, Brown, Huang, and Bickel") (define-public r-inline (package (name "r-inline") - (version "0.3.14") + (version "0.3.15") (source (origin (method url-fetch) (uri (cran-uri "inline" version)) (sha256 (base32 - "0cf9vya9h4znwgp6s1nayqqmh6mwyw7jl0isk1nx4j2ijszxcd7x")))) + "0s4wssvpan189fijahknxq5s22ww9bzmdlmyhnra748r7khky17z")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/inline") (synopsis "Functions to inline C, C++, Fortran function calls from R") @@ -1122,14 +1124,14 @@ classes in the @code{stats4} package.") (define-public r-emdbook (package (name "r-emdbook") - (version "1.3.9") + (version "1.3.10") (source (origin (method url-fetch) (uri (cran-uri "emdbook" version)) (sha256 (base32 - "09xbdyw8a4pvrsg3ryr8drby0njy4avc5wsjj4ffibdaicpchy69")))) + "0880cx6rqm9vgd2zxnd2k0igfl80gy7ak15w36clwlzavab59hmv")))) (build-system r-build-system) (propagated-inputs `(("r-bbmle" ,r-bbmle) @@ -1234,14 +1236,14 @@ data). Weighted versions of MLE, MME and QME are available.") (define-public r-energy (package (name "r-energy") - (version "1.7-2") + (version "1.7-4") (source (origin (method url-fetch) (uri (cran-uri "energy" version)) (sha256 (base32 - "19c7bgjnm4ggf7w5mk64c5shkma3sa9wc8x117iqv7pk1bvvyy3p")))) + "12skvlridfq4jd5mh0yxl79ps0zi2xnlh4hsdgxad0gm7qky8awd")))) (build-system r-build-system) (propagated-inputs `(("r-boot" ,r-boot) @@ -1287,14 +1289,14 @@ George Marsaglia are included.") (define-public r-ksamples (package (name "r-ksamples") - (version "1.2-7") + (version "1.2-8") (source (origin (method url-fetch) (uri (cran-uri "kSamples" version)) (sha256 (base32 - "0f19rjngk0lg6s8c6h5l55qpxp8sl4vxj3kpi05cizzncny9b9bj")))) + "15d5q5vpp4wx5rk5kjxjdxpwc8mkq5sbdz8gi07iscrvhzb5rzfr")))) (properties `((upstream-name . "kSamples"))) (build-system r-build-system) (propagated-inputs @@ -1315,14 +1317,14 @@ samples.") (define-public r-cvst (package (name "r-cvst") - (version "0.2-1") + (version "0.2-2") (source (origin (method url-fetch) (uri (cran-uri "CVST" version)) (sha256 (base32 - "17xacyi8cf37rr2xswx96qy7pwkaqq394awdlswykz3qlyzx4zx2")))) + "05l3yzkfrbds09ah9cdwn2sn4ryhq78lz33ryzrgkv176jc8qjw5")))) (properties `((upstream-name . "CVST"))) (build-system r-build-system) (propagated-inputs @@ -1537,14 +1539,14 @@ Delaunay triangulation and convex hull computation.") (define-public r-ddalpha (package (name "r-ddalpha") - (version "1.3.2") + (version "1.3.3") (source (origin (method url-fetch) (uri (cran-uri "ddalpha" version)) (sha256 (base32 - "1i2zcz20zy9xd42kdz09njbkq07mj2pp6f07z6dnwi5hrmvhbh9r")))) + "0g4iqhrz2gym05q40ih6srilyajw2l2mv46pchn65bc7hw4vkgrk")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -1774,14 +1776,14 @@ for certain use cases.") (define-public r-ggrepel (package (name "r-ggrepel") - (version "0.7.0") + (version "0.8.0") (source (origin (method url-fetch) (uri (cran-uri "ggrepel" version)) (sha256 (base32 - "0g0qfm6g71rv27423c1x846ipilnj213knyzrcr09vrpxc87l618")))) + "1m3p84d6nh9mzzvxb82vgig3ngcvkz86rjwzl9a66ckdf5p611k3")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -1841,23 +1843,98 @@ can be computed between character vectors while taking proper care of encoding or between integer vectors representing generic sequences.") (license license:gpl3+))) +(define-public r-jomo + (package + (name "r-jomo") + (version "2.6-2") + (source + (origin + (method url-fetch) + (uri (cran-uri "jomo" version)) + (sha256 + (base32 + "0zyqwa2y08asj9xqwnngh6da1b9cqcx8pzc9cxwrmgnxd5nnsjb7")))) + (build-system r-build-system) + (propagated-inputs + `(("r-lme4" ,r-lme4) + ("r-survival" ,r-survival))) + (home-page "https://cran.r-project.org/web/packages/jomo/") + (synopsis "Multilevel Joint Modelling Multiple Imputation") + (description + "Similarly to Schafer's package pan, jomo is a package for multilevel +joint modelling multiple imputation @url{Carpenter and Kenward (2013), +http://doi.org/10.1002/9781119942283}. Novel aspects of jomo are the +possibility of handling binary and categorical data through latent normal +variables, the option to use cluster-specific covariance matrices and to +impute compatibly with the substantive model.") + (license license:gpl2))) + +(define-public r-pan + (package + (name "r-pan") + (version "1.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "pan" version)) + (sha256 + (base32 + "1p3nigmhrnlch86g89hn7l0wvkifx3k9n59g0psi95yck43kza76")))) + (build-system r-build-system) + (native-inputs `(("gfortran" ,gfortran))) + (home-page "https://cran.r-project.org/web/packages/pan/") + (synopsis "Multiple imputation for multivariate panel or clustered data") + (description + "This package implements multiple imputation for multivariate panel or +clustered data.") + (license license:gpl3))) + +(define-public r-mitml + (package + (name "r-mitml") + (version "0.3-5") + (source + (origin + (method url-fetch) + (uri (cran-uri "mitml" version)) + (sha256 + (base32 + "1s888r9y2ri39b48h1iypps6lddqkqv3g31l2sjmi2pvyccfpkwb")))) + (build-system r-build-system) + (propagated-inputs + `(("r-haven" ,r-haven) + ("r-jomo" ,r-jomo) + ("r-pan" ,r-pan))) + (home-page "https://cran.r-project.org/web/packages/mitml/") + (synopsis "Tools for multiple imputation in multilevel modeling") + (description + "This package provides tools for multiple imputation of missing data in +multilevel modeling. It includes a user-friendly interface to the packages +pan and jomo, and several functions for visualization, data management and the +analysis of multiply imputed data sets.") + (license license:gpl2+))) + (define-public r-mice (package (name "r-mice") - (version "2.46.0") + (version "3.0.0") (source (origin (method url-fetch) (uri (cran-uri "mice" version)) (sha256 (base32 - "1gjvlk67zvgipfczsca8zqk97vg3sivv82hblsdwp14s7smhjcax")))) + "1p8a5ham90iaak4w17114pdnw535r2l9sxr402yrkc4gbwfbpdlq")))) (build-system r-build-system) (propagated-inputs - `(("r-lattice" ,r-lattice) + `(("r-broom" ,r-broom) + ("r-dplyr" ,r-dplyr) + ("r-lattice" ,r-lattice) ("r-mass" ,r-mass) + ("r-mitml" ,r-mitml) ("r-nnet" ,r-nnet) ("r-rcpp" ,r-rcpp) + ("r-rlang" ,r-rlang) ("r-rpart" ,r-rpart) ("r-survival" ,r-survival))) (home-page "https://cran.r-project.org/web/packages/mice/") @@ -1923,14 +2000,14 @@ programming} (SQP) based solver).") (define-public r-hardyweinberg (package (name "r-hardyweinberg") - (version "1.5.9") + (version "1.6.1") (source (origin (method url-fetch) (uri (cran-uri "HardyWeinberg" version)) (sha256 (base32 - "0qk3lly5qczn61rj0q9xzscppspvk238yjgr4p71pkzkjhiv40jz")))) + "16n8qanxx0p5ny5zqxafn8hwb1xv94y1wig1iql8as5a5qh8lwcz")))) (properties `((upstream-name . "HardyWeinberg"))) (build-system r-build-system) (propagated-inputs @@ -1955,14 +2032,14 @@ acceptance regions, log-ratio plots and Q-Q plots.") (define-public r-sm (package (name "r-sm") - (version "2.2-5.4") + (version "2.2-5.5") (source (origin (method url-fetch) (uri (cran-uri "sm" version)) (sha256 (base32 - "0hnq5s2fv94gaj0nyqc1vjdjd64vsp9z23nqa8hxvjcaf996rwj9")))) + "1rw2mxygxsmk8mn4wag1ppjgzk0rlvh6zd8q02qrhjrn9jhi5qj3")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) (home-page "http://www.stats.gla.ac.uk/~adrian/sm/") @@ -2146,14 +2223,14 @@ Analysis with R\" by Michael Friendly and David Meyer (2015).") (define-public r-ica (package (name "r-ica") - (version "1.0-1") + (version "1.0-2") (source (origin (method url-fetch) (uri (cran-uri "ica" version)) (sha256 (base32 - "1bkl4a72l0k6gm82l3jxnib898z20cw17zg81jj39l9dn65rlmcq")))) + "0ya1nph1zwhad0bfz4yxs27kl45yk1dhnphdlrq34p8pqrpmj8g7")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/ica/") (synopsis "Independent component analysis") @@ -2166,14 +2243,14 @@ of Eigenmatrices} (JADE).") (define-public r-dtw (package (name "r-dtw") - (version "1.18-1") + (version "1.20-1") (source (origin (method url-fetch) (uri (cran-uri "dtw" version)) (sha256 (base32 - "1b91vahba09cqlb8b1ry4dlv4rbldb4s2p6w52gmyw31vxdv5nnr")))) + "1w301xwizncy5r8v9rwwdxfshydgp3l1pnjla1fjn6n8lx3imjj3")))) (build-system r-build-system) (propagated-inputs `(("r-proxy" ,r-proxy))) (home-page "http://dtw.r-forge.r-project.org/") @@ -2256,14 +2333,14 @@ plots in @code{ggplot2}.") (define-public r-ggjoy (package (name "r-ggjoy") - (version "0.4.0") + (version "0.4.1") (source (origin (method url-fetch) (uri (cran-uri "ggjoy" version)) (sha256 (base32 - "1s24zn7gmk52bvjjhanxby7rxbnc2yfl0nx5nv7x7z0zja8gg7nb")))) + "012md2m0jqfcccb933j423m3ck31v3p0pd41gjxpyg9082y7ixyj")))) (build-system r-build-system) (propagated-inputs `(("r-ggplot2" ,r-ggplot2) @@ -2341,20 +2418,20 @@ constants, and control debugging of packages via environment variables.") (define-public r-processx (package (name "r-processx") - (version "2.0.0.1") + (version "3.1.0") (source (origin (method url-fetch) (uri (cran-uri "processx" version)) (sha256 (base32 - "0yw23lp9xjvbpswzghkmjiayw7p19hbvmgv58k3i6b8g5nav4qcg")))) + "0wjr3cqwvnjxbvln25szffmkns5w0xysivdjr6chxap4nh515b0i")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) ("r-crayon" ,r-crayon) - ("r-debugme" ,r-debugme) - ("r-r6" ,r-r6))) + ("r-r6" ,r-r6) + ("r-testthat" ,r-testthat))) (home-page "https://github.com/r-lib/processx3") (synopsis "Execute and control system processes") (description @@ -2370,14 +2447,14 @@ timeout. It can also poll several processes at once.") (define-public r-tsp (package (name "r-tsp") - (version "1.1-5") + (version "1.1-6") (source (origin (method url-fetch) (uri (cran-uri "TSP" version)) (sha256 (base32 - "03xxfr5kk4zhzpb1q1pwncdp0dhchm9b48wzhvvxn2dxf3mnby2w")))) + "1ym97xl2icjpfkrici0wig29w06bb704hp51v7h5liygjlwpkhlc")))) (properties `((upstream-name . "TSP"))) (build-system r-build-system) (propagated-inputs `(("r-foreach" ,r-foreach))) @@ -2489,46 +2566,6 @@ dissimilarity plots, and visual assessment of cluster tendency plots (VAT and iVAT).") (license license:gpl3))) -(define-public r-heatmaply - (package - (name "r-heatmaply") - (version "0.14.1") - (source - (origin - (method url-fetch) - (uri (cran-uri "heatmaply" version)) - (sha256 - (base32 - "03p2caclhfgqgpx3wwck5h06jy3mxgs05gjmwkb7hmwghkjh41jc")))) - (build-system r-build-system) - (propagated-inputs - `(("r-assertthat" ,r-assertthat) - ("r-colorspace" ,r-colorspace) - ("r-dendextend" ,r-dendextend) - ("r-ggplot2" ,r-ggplot2) - ("r-gplots" ,r-gplots) - ("r-htmlwidgets" ,r-htmlwidgets) - ("r-magrittr" ,r-magrittr) - ("r-plotly" ,r-plotly) - ("r-rcolorbrewer" ,r-rcolorbrewer) - ("r-reshape2" ,r-reshape2) - ("r-scales" ,r-scales) - ("r-seriation" ,r-seriation) - ("r-viridis" ,r-viridis) - ("r-webshot" ,r-webshot))) - (home-page "https://cran.r-project.org/package=heatmaply") - (synopsis "Interactive cluster heat maps using plotly") - (description "Heatmaps are used in many fields for visualizing -observations, correlations, missing values patterns, and more. Interactive -heatmaps allow the inspection of specific value by hovering the mouse over a -cell, as well as zooming into a region of the heatmap by dragging a rectangle -around the relevant area. This work is based on the @code{ggplot2} and -@code{plotly.js} engine. It produces similar heatmaps as @code{heatmap.2} or -@code{d3heatmap}, with the advantage of speed, the ability to zoom from the -dendrogram panes, and the placing of factor variables in the sides of the -heatmap.") - (license (list license:gpl2 license:gpl3)))) - (define-public r-xfun (package (name "r-xfun") @@ -2551,14 +2588,14 @@ packages maintained by Yihui Xie.") (define-public r-utf8 (package (name "r-utf8") - (version "1.1.3") + (version "1.1.4") (source (origin (method url-fetch) (uri (cran-uri "utf8" version)) (sha256 (base32 - "03s4j6059q0nly68vpk6wy3p3f5ypakw93fj35kzd82b4z1r9cs3")))) + "0m0ywg8k3blfiahxvh1i4zn9dksrlc937d2lbza5fc38zjnrrnpn")))) (build-system r-build-system) (home-page "https://github.com/patperry/r-utf8") (synopsis "Unicode text processing") @@ -2571,14 +2608,14 @@ display.") (define-public r-pillar (package (name "r-pillar") - (version "1.2.2") + (version "1.2.3") (source (origin (method url-fetch) (uri (cran-uri "pillar" version)) (sha256 (base32 - "1kmqvny3rw4p5kgxz6mhqfpp7j3nnpp22dfai4kjrr2cfmj6wvb7")))) + "1rzhssprqgam1nq3s0f5rzxhxsq02azcghvxf6k8kmsmddf1n7f8")))) (build-system r-build-system) (propagated-inputs `(("r-cli" ,r-cli) @@ -2859,14 +2896,14 @@ financial trading strategies.") (define-public r-tseries (package (name "r-tseries") - (version "0.10-44") + (version "0.10-45") (source (origin (method url-fetch) (uri (cran-uri "tseries" version)) (sha256 (base32 - "0nz6v76hsxcprpgf84al5r0p08sr9qacqal4adndz9wmg604l4ag")))) + "14s1glh5zzdvdl05a2z7ymhgf962svxf8xircghg5sc649lb33n0")))) (build-system r-build-system) (propagated-inputs `(("r-quadprog" ,r-quadprog) @@ -3125,18 +3162,19 @@ creation and manipulation of WAVE audio files.") (define-public r-np (package (name "r-np") - (version "0.60-6") + (version "0.60-8") (source (origin (method url-fetch) (uri (cran-uri "np" version)) (sha256 (base32 - "1y72x5j9j9mcgcy2xizk31gl843hfkngxdn8s4qw7yhw2qj79hsr")))) + "17h67a510wh83800ri6g02wvznrlhigxni8shyijz1iaxcpk8k4j")))) (build-system r-build-system) (propagated-inputs `(("r-boot" ,r-boot) ("r-cubature" ,r-cubature) + ("r-quadprog" ,r-quadprog) ("r-quantreg" ,r-quantreg))) (home-page "https://github.com/JeffreyRacine/R-Package-np") (synopsis "Non-parametric kernel smoothing methods for mixed data types") @@ -3190,6 +3228,7 @@ exponentiation.") ("r-ggplot2" ,r-ggplot2) ("r-gplots" ,r-gplots) ("r-htmlwidgets" ,r-htmlwidgets) + ("r-knitr" ,r-knitr) ; needed for vignettes ("r-magrittr" ,r-magrittr) ("r-plotly" ,r-plotly) ("r-rcolorbrewer" ,r-rcolorbrewer) @@ -3262,18 +3301,19 @@ files.") (define-public r-shinyace (package (name "r-shinyace") - (version "0.2.1") + (version "0.3.1") (source (origin (method url-fetch) (uri (cran-uri "shinyAce" version)) (sha256 (base32 - "0ycka8rsw0178q9klfid97vdn5cbyx3r778nis5s3dqipdyazdm9")))) + "1hqgszbiv99dibhwr21v21ll4s2hjn3ccqdicsm0z3gk77bh8iyb")))) (properties `((upstream-name . "shinyAce"))) (build-system r-build-system) (propagated-inputs - `(("r-shiny" ,r-shiny))) + `(("r-shiny" ,r-shiny) + ("r-jsonlite" ,r-jsonlite))) (home-page "http://cran.r-project.org/web/packages/shinyAce") (synopsis "Ace editor bindings for Shiny") (description @@ -3383,14 +3423,14 @@ It also includes interpolation functions.") (define-public r-psych (package (name "r-psych") - (version "1.8.3.3") + (version "1.8.4") (source (origin (method url-fetch) (uri (cran-uri "psych" version)) (sha256 (base32 - "1zhp8j81nkzd65168zdw9ylypb9n07ajan21x0wqcn8jdbg970sg")))) + "1kzv9nc7rwn1sj1zxd8xrbs6c7qlka7j2c8lsr4f20znkd3qx8gf")))) (build-system r-build-system) (propagated-inputs `(("r-foreign" ,r-foreign) @@ -3765,19 +3805,41 @@ measuring the accuracy of ABC estimates, and to calculate the misclassification probabilities of different models.") (license license:gpl3+))) +(define-public r-zip + (package + (name "r-zip") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "zip" version)) + (sha256 + (base32 + "0rgr9pcdhdq3k8n29h2ircp3ri1ibhrx81gja1y7331v15xyrabg")))) + (build-system r-build-system) + (home-page "https://github.com/gaborcsardi/zip") + (synopsis "Cross-platform Zip compression") + (description + "This package provides a cross-platform Zip compression library for R. +It is a replacement for the @code{zip} function, that does not require any +additional external tools on any platform.") + (license license:cc0))) + (define-public r-openxlsx (package (name "r-openxlsx") - (version "4.0.17") + (version "4.1.0") (source (origin (method url-fetch) (uri (cran-uri "openxlsx" version)) (sha256 (base32 - "1mq4lasp12kc30sxcsmz9gskd114l8s7z7wd6svv2nm8qllrhsqi")))) + "1n7z22pm78xa77fvn77kdn68az6xzxk36y11sqf0w6h6adri4yxb")))) (build-system r-build-system) - (propagated-inputs `(("r-rcpp" ,r-rcpp))) + (propagated-inputs + `(("r-rcpp" ,r-rcpp) + ("r-zip" ,r-zip))) (home-page "https://github.com/awalker89/openxlsx") (synopsis "Read, write and edit XLSX files") (description @@ -3853,14 +3915,14 @@ exchanging spatial objects with other R packages.") (define-public r-later (package (name "r-later") - (version "0.7.1") + (version "0.7.2") (source (origin (method url-fetch) (uri (cran-uri "later" version)) (sha256 (base32 - "0z9jymmclkq9zcg1fd8p6gsnm5z1sn3n9pfz3bs03qjrkbizgrvz")))) + "0l5ln7sjyi2rj7bx8iamxykqlfarv05zb9882ikizppb1cr1hgyw")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -3973,3 +4035,134 @@ including the ability to summarize or get a high-level view of code, determining dependencies between variables, code improvement suggestions.") ;; Any version of the GPL (license (list license:gpl2+ license:gpl3+)))) + +(define-public r-rappdirs + (package + (name "r-rappdirs") + (version "0.3.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "rappdirs" version)) + (sha256 + (base32 + "0ji6sg3bdn5gazkq14xmmcq7jnbsyxw4lzmmbgv6526j2vn93n1g")))) + (build-system r-build-system) + (home-page "https://cran.r-project.org/web/packages/rappdirs/") + (synopsis "Determine where to save data, caches, and logs") + (description + "This package provides an easy way to determine which directories on the +user's computer should be used to save data, caches and logs. It is a port of +Python's @url{https://github.com/ActiveState/appdirs,Appdirs} to R.") + (license license:expat))) + +(define-public r-learnr + (package + (name "r-learnr") + (version "0.9.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "learnr" version)) + (sha256 + (base32 + "1z04c1djg7ghsl7p9ypc6k5m7snahnmjy10xmrzqfayx1wkfkn9n")))) + (build-system r-build-system) + (propagated-inputs + `(("r-evaluate" ,r-evaluate) + ("r-htmltools" ,r-htmltools) + ("r-htmlwidgets" ,r-htmlwidgets) + ("r-jsonlite" ,r-jsonlite) + ("r-knitr" ,r-knitr) + ("r-markdown" ,r-markdown) + ("r-rappdirs" ,r-rappdirs) + ("r-rmarkdown" ,r-rmarkdown) + ("r-rprojroot" ,r-rprojroot) + ("r-shiny" ,r-shiny) + ("r-withr" ,r-withr))) + (home-page "https://rstudio.github.io/learnr/") + (synopsis "Interactive tutorials for R") + (description + "This package provides tools to create interactive tutorials using R +Markdown. Use a combination of narrative, figures, videos, exercises, and +quizzes to create self-paced tutorials for learning about R and R packages.") + (license license:asl2.0))) + +(define-public r-analytics + (package + (name "r-analytics") + (version "2.0") + (source + (origin + (method url-fetch) + (uri (cran-uri "analytics" version)) + (sha256 + (base32 + "1jkdjqc3fnvvsgi6x9ncf36rxzq0a55cmgkcv92mfmpcramg2lk6")))) + (build-system r-build-system) + (propagated-inputs + `(("r-car" ,r-car) + ("r-cluster" ,r-cluster) + ("r-fractal" ,r-fractal) + ("r-lmtest" ,r-lmtest) + ("r-mass" ,r-mass) + ("r-np" ,r-np) + ("r-powerplus" ,r-powerplus) + ("r-robust" ,r-robust) + ("r-trend" ,r-trend) + ("r-tsa" ,r-tsa) + ("r-urca" ,r-urca))) + (home-page "https://cran.r-project.org/web/packages/analytics/") + (synopsis "Collection of data analysis tools") + (description + "This package is a collection of data analysis tools. It includes tools +for regression outlier detection in a fitted linear model, stationary +bootstrap using a truncated geometric distribution, a comprehensive test for +weak stationarity, column means by group, weighted biplots, and a heuristic to +obtain a better initial configuration in non-metric MDS.") + (license license:gpl2))) + +(define-public r-reticulate + (package + (name "r-reticulate") + (version "1.7") + (source + (origin + (method url-fetch) + (uri (cran-uri "reticulate" version)) + (sha256 + (base32 + "1ghhc4hbmwpp79ilbdbshynhs61i8sv8z6p1al04jy7ij0lcglxy")))) + (build-system r-build-system) + (inputs `(("python" ,python))) + (propagated-inputs + `(("r-jsonlite" ,r-jsonlite) + ("r-matrix" ,r-matrix) + ("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/rstudio/reticulate") + (synopsis "R interface to Python") + (description + "This package provides an interface from R to Python modules, classes, +and functions. When calling into Python, R data types are automatically +converted to their equivalent Python types. When values are returned from +Python to R they are converted back to R types.") + (license license:asl2.0))) + +(define-public r-bibtex + (package + (name "r-bibtex") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "bibtex" version)) + (sha256 + (base32 + "0wl3925ryd54g1nv3ncwllc493d39dpgy5md61940h69c0van1hz")))) + (build-system r-build-system) + (propagated-inputs `(("r-stringr" ,r-stringr))) + (home-page "https://github.com/romainfrancois/bibtex") + (synopsis "Bibtex parser") + (description "This package provides a utility for R to parse a bibtex +file.") + (license license:gpl2+))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index a574e652eb..929fbb5bc2 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -363,14 +363,14 @@ no man page, refer to the home page for usage details.") (define-public tomb (package (name "tomb") - (version "2.4") + (version "2.5") (source (origin (method url-fetch) (uri (string-append "https://files.dyne.org/tomb/" "Tomb-" version ".tar.gz")) (sha256 (base32 - "1hv1w79as7swqj0n137vz8n8mwvcgwlvd91sdyssz41jarg7f1vr")))) + "12c6qldngaw520gvb02inzkhnxbl4k0dwmddrgnaf7xashy6j0wc")))) (build-system gnu-build-system) (native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase (inputs @@ -382,7 +382,8 @@ no man page, refer to the home page for usage details.") ("mlocate" ,mlocate) ("pinentry" ,pinentry) ("qrencode" ,qrencode) - ("steghide" ,steghide))) + ("steghide" ,steghide) + ("util-linux" ,util-linux))) (arguments `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) ;; TODO: Build and install gtk and qt trays @@ -405,7 +406,7 @@ no man page, refer to the home page for usage details.") (error "program not found:" program))) '("seq" "mkfs.ext4" "pinentry" "sudo" "gpg" "cryptsetup" "gettext" - "qrencode" "steghide"))))) + "qrencode" "steghide" "findmnt"))))) #t))) (delete 'check) (add-after 'wrap 'check @@ -671,7 +672,7 @@ BLAKE.") (define-public rhash (package (name "rhash") - (version "1.3.5") + (version "1.3.6") (source (origin (method url-fetch) @@ -680,32 +681,27 @@ BLAKE.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0bhz3xdl6r06k1bqigdjz42l31iqz2qdpg7zk316i7p2ra56iq4q")))) + "14ngzfgmd1lfp7m78sn49x8ymf2s37nrr67c6p5vas85nrrgjkcn")))) (build-system gnu-build-system) (arguments - `(#:make-flags (list "CC=gcc" - (string-append "PREFIX=" %output)) - #:test-target "test" + `(#:make-flags + ;; The binaries in /bin need some help finding librhash.so.0. + (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")) + #:test-target "test" ; ‘make check’ just checks the sources #:phases (modify-phases %standard-phases (replace 'configure + ;; ./configure is not GNU autotools' and doesn't gracefully handle + ;; unrecognized options, so we must call it manually. (lambda* (#:key outputs #:allow-other-keys) - (substitute* "Makefile" - (("\\$\\(DESTDIR\\)/etc") - (string-append (assoc-ref outputs "out") "/etc"))) - #t)) - (add-after 'build 'build-library + (invoke "./configure" + (string-append "--prefix=" (assoc-ref outputs "out"))))) + (add-after 'install 'install-library-extras (lambda* (#:key make-flags #:allow-other-keys) - (apply invoke "make" "lib-shared" make-flags))) - (add-after 'install 'install-library - (lambda* (#:key make-flags #:allow-other-keys) - (apply invoke "make" "install-lib-shared" make-flags) (apply invoke - "make" "-C" "librhash" "install-headers" - "install-so-link" make-flags))) - (add-after 'check 'check-library - (lambda* (#:key make-flags #:allow-other-keys) - (apply invoke "make" "test-shared-lib" make-flags)))))) + "make" "-C" "librhash" + "install-headers" "install-so-link" + make-flags)))))) (home-page "https://sourceforge.net/projects/rhash/") (synopsis "Utility for computing hash sums") (description "RHash is a console utility for calculation and verification diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 78dcc64d86..65bc698389 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -51,6 +51,7 @@ (package (name "curl") (version "7.59.0") + (replacement curl-7.60.0) (source (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" @@ -140,6 +141,19 @@ tunneling, and so on.") "See COPYING in the distribution.")) (home-page "https://curl.haxx.se/"))) +(define-public curl-7.60.0 + (package + (inherit curl) + (version "7.60.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://curl.haxx.se/download/curl-" + version ".tar.xz")) + (sha256 + (base32 + "1876ck0smbqz3xakm7s6q6gh4zarh9pv3izf4vlzgpc9xn6zydl7")))))) + (define-public kurly (package (name "kurly") diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index bd12f4cdb1..94eb68486b 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -28,7 +28,7 @@ ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com> -;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Kristofer Buffington <kristoferbuffington@gmail.com> ;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> @@ -627,7 +627,7 @@ Language.") (define-public mariadb (package (name "mariadb") - (version "10.1.29") + (version "10.1.33") (source (origin (method url-fetch) (uri (string-append "https://downloads.mariadb.org/f/" @@ -635,7 +635,7 @@ Language.") name "-" version ".tar.gz")) (sha256 (base32 - "1m3ya6c3snnsyscd0waklayqfv0vhws52iizv2j5masj5xhdbfvk")))) + "0bax748j4srsyhw5cs5jvwigndh0zwmf4r2cjvhja31ckx8jqccl")))) (build-system cmake-build-system) (arguments '(#:configure-flags @@ -1125,7 +1125,7 @@ extremely small.") (define-public perl-dbix-class (package (name "perl-dbix-class") - (version "0.082840") + (version "0.082841") (source (origin (method url-fetch) @@ -1133,7 +1133,7 @@ extremely small.") "DBIx-Class-" version ".tar.gz")) (sha256 (base32 - "1vw1f756g8m5hq11nqf5dk2cw2y4mqq91ca5p75fn5g3fp8syja0")))) + "1gf3hgv8f9rnr8bl4ljgsqk4aliphmvljhsk4282kvdc4mcgh1fp")))) (build-system perl-build-system) (native-inputs `(("perl-dbd-sqlite" ,perl-dbd-sqlite) @@ -1233,7 +1233,7 @@ introspected and examined.") (define-public perl-dbix-class-schema-loader (package (name "perl-dbix-class-schema-loader") - (version "0.07047") + (version "0.07049") (source (origin (method url-fetch) @@ -1241,7 +1241,7 @@ introspected and examined.") "DBIx-Class-Schema-Loader-" version ".tar.gz")) (sha256 (base32 - "06s2q6xj95600sdlfph57spjk2z1gjs4zwq5b7mz7d5izcxgnwb6")))) + "0r57fv71ypxafb85cpxph1hdqii7ipjwvc19yb6fpkvq2ggcssg8")))) (build-system perl-build-system) (native-inputs `(("perl-config-any" ,perl-config-any) @@ -1927,13 +1927,13 @@ etc., and an SQL engine for performing simple SQL queries.") (define-public python-lmdb (package (name "python-lmdb") - (version "0.93") + (version "0.94") (source (origin (method url-fetch) (uri (pypi-uri "lmdb" version)) (sha256 (base32 - "0xdpb298fyl68acadbwv5801wcwfpnhc7sm4bnrq1x4bd5dhhsql")) + "1zh38gvkqw1jm5105if6rr7ccbgyxr7k2rm5ygb9ab3bq82pyaww")) (modules '((guix build utils))) (snippet ;; Delete bundled lmdb source files. @@ -2061,14 +2061,14 @@ and web services platform functionality.") (define-public r-rmysql (package (name "r-rmysql") - (version "0.10.14") + (version "0.10.15") (source (origin (method url-fetch) (uri (cran-uri "RMySQL" version)) (sha256 (base32 - "01891kn263b02y6addgpy3gn5axg7m10bqbqv7dg9yx9k85am590")))) + "0bmc7w5fnkjaf333sgc0hskiy332m9gmfaxg0yzkjxscpizdw43n")))) (properties `((upstream-name . "RMySQL"))) (build-system r-build-system) (native-inputs diff --git a/gnu/packages/debian.scm b/gnu/packages/debian.scm index 01df30c558..d3438a1f4c 100644 --- a/gnu/packages/debian.scm +++ b/gnu/packages/debian.scm @@ -112,7 +112,7 @@ contains the archive keys used for that.") (define-public debootstrap (package (name "debootstrap") - (version "1.0.95") + (version "1.0.101") (source (origin (method url-fetch) @@ -120,7 +120,7 @@ contains the archive keys used for that.") name "_" version ".tar.gz")) (sha256 (base32 - "1xpd1yblcgwhri64hzgxhalpf5j8gqbmkrsm1fs0pbwiy0wdz0ry")))) + "1p1a81s8hq73byd7256iljdls389x2q7w6srgrgfmx5bl1csnzp3")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index 2ff26aebae..7cb162918a 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -31,7 +31,7 @@ #:use-module (gnu packages bash) #:use-module (gnu packages flex) #:use-module (gnu packages golang) - #:use-module (gnu packages indent) + #:use-module (gnu packages code) #:use-module (gnu packages llvm) #:use-module (gnu packages perl) #:use-module (gnu packages pretty-print) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index d7bf726830..bdd24a315c 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org> +;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,6 +54,7 @@ #:use-module (gnu packages guile) #:use-module (gnu packages compression) #:use-module (gnu packages vim) + #:use-module (gnu packages w3m) #:use-module (gnu packages xml)) (define-public parted @@ -464,15 +466,15 @@ a card with a smaller capacity than stated.") (define-public duperemove (package (name "duperemove") - (version "v0.11.beta4") + (version "0.11") (source (origin (method url-fetch) (uri (string-append - "https://github.com/markfasheh/duperemove/archive/" + "https://github.com/markfasheh/duperemove/archive/v" version ".tar.gz")) (sha256 (base32 - "1h5nk03kflfnzihvn2rvfz1h623x1zpkn9hp29skd7n3f2bc5k7x")) + "0rjmmh42yqw9a5j6sp31cqwxk3s97dsi4xz0wpxpllj7bsp3aiw5")) (file-name (string-append name "-" version ".tar.gz")))) (build-system gnu-build-system) (native-inputs @@ -481,11 +483,10 @@ a card with a smaller capacity than stated.") `(("glib" ,glib) ("sqlite" ,sqlite))) (arguments - `(#:tests? #f ;no test suite + `(#:tests? #f ; no test suite #:phases (modify-phases %standard-phases - ;; no configure script - (delete 'configure)) + (delete 'configure)) ; no configure script #:make-flags (list (string-append "PREFIX=" %output) "CC=gcc"))) (home-page "https://github.com/markfasheh/duperemove") @@ -517,12 +518,28 @@ Duperemove can also take input from the @command{fdupes} program.") (base32 "1lnzkrxcnlwnyi3z0v8ybyp8d5rm26qm35rr68kbs2lbs06inha0")))) (build-system python-build-system) + (inputs + `(("w3m" ,w3m))) (native-inputs ;for tests `(("python-pytest" ,python-pytest) ("python-pylint" ,python-pylint) ("python-flake8" ,python-flake8) ("which" ,which))) - (arguments '(#:test-target "test")) + (arguments + '(#:test-target "test" + #:phases + (modify-phases %standard-phases + (add-after 'configure 'wrap-program + ;; Tell 'ranger' where 'w3mimgdisplay' is. + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (ranger (string-append out "/bin/ranger")) + (w3m (assoc-ref inputs "w3m")) + (w3mimgdisplay (string-append w3m + "/libexec/w3m/w3mimgdisplay"))) + (wrap-program ranger + `("W3MIMGDISPLAY_PATH" ":" prefix (,w3mimgdisplay))) + #t)))))) (home-page "https://ranger.github.io/") (synopsis "Console file manager") (description "ranger is a console file manager with Vi key bindings. It diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm index 6e3d4912de..b0ad3df788 100644 --- a/gnu/packages/display-managers.scm +++ b/gnu/packages/display-managers.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -143,7 +144,8 @@ Qt-style API for Wayland clients.") "sddm-" version ".tar.xz")) (sha256 (base32 - "0ch6rdppgy2vbzw0c2x9a4c6ry46vx7p6b76d8xbh2nvxh23xv0k")))) + "0ch6rdppgy2vbzw0c2x9a4c6ry46vx7p6b76d8xbh2nvxh23xv0k")) + (patches (search-patches "sddm-fix-build-with-qt-5.11-1024.patch")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 56090779a2..0b8d8be574 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -98,7 +98,7 @@ and BOOTP/TFTP for network booting of diskless machines.") (define-public isc-bind (package (name "bind") - (version "9.12.1") + (version "9.12.1-P2") (source (origin (method url-fetch) (uri (string-append @@ -106,7 +106,7 @@ and BOOTP/TFTP for network booting of diskless machines.") version ".tar.gz")) (sha256 (base32 - "043mjcw405qa0ghm5dkhfsq35gsy279724fz3mjqpr1mbi14dr0n")))) + "0a9dvyg1dk7vpqn9gz7p5jas3bz7z22bjd66b98g1qk16i2w7rqd")))) (build-system gnu-build-system) (outputs `("out" "utils")) (inputs @@ -492,14 +492,14 @@ Extensions} (DNSSEC).") (define-public knot (package (name "knot") - (version "2.6.6") + (version "2.6.7") (source (origin (method url-fetch) (uri (string-append "https://secure.nic.cz/files/knot-dns/" name "-" version ".tar.xz")) (sha256 (base32 - "02h8qdkja4kic3br79svws6r2pq1ijz945238v99d998d2jxh6ci")) + "0hr2m664ckjicv3pq2lk16m61pscknywxv2ydnrzfqf10m5h0ahw")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/dunst.scm b/gnu/packages/dunst.scm index 6df37894da..eaad227747 100644 --- a/gnu/packages/dunst.scm +++ b/gnu/packages/dunst.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015, 2017, 2018 Alex Kost <alezost@gmail.com> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,7 +33,7 @@ (define-public dunst (package (name "dunst") - (version "1.3.1") + (version "1.3.2") (source (origin (method url-fetch) (uri (string-append @@ -41,7 +42,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1mkdp1vqc376z8clwm5s9070jq1g92j8hv2rr231jr2468fnwaga")))) + "12nj8qw3y3nl8sm24wizy2a7k06v1p88bnz1xr9l39h527xyidma")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no check target diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index 58f06c3106..15b893c30d 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -3,6 +3,8 @@ ;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,27 +24,33 @@ (define-module (gnu packages education) #:use-module (ice-9 regex) #:use-module (gnu packages) - #:use-module (gnu packages qt) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages databases) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gtk) + #:use-module (gnu packages javascript) #:use-module (gnu packages kde-frameworks) ; extra-cmake-modules #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages qt) #:use-module (gnu packages sdl) #:use-module (gnu packages texinfo) #:use-module (gnu packages xml) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix svn-download) #:use-module (guix utils) - #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) + #:use-module (guix build-system trivial) #:use-module (srfi srfi-1)) (define-public gcompris @@ -107,7 +115,7 @@ of categories with some of the activities available in that category. (define-public gcompris-qt (package (name "gcompris-qt") - (version "0.90") + (version "0.91") (source (origin (method url-fetch) @@ -116,11 +124,18 @@ of categories with some of the activities available in that category. version ".tar.xz")) (sha256 (base32 - "1i5adxnhig849qxwi3c4v7r84q6agx1zxkd69fh4y7lcmq2qiaza")))) + "09h098w9q79hnzla1pcpqlnnr6dbafm4q6zmdp7wlk11ym8n9kvg")))) (build-system cmake-build-system) (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'patch-for-qt5.11 + (lambda _ + (substitute* "src/core/CMakeLists.txt" + (("qt5_use_modules") "target_link_libraries") + (("Qml Quick Gui Multimedia Network XmlPatterns Svg Xml Sensors Core") + "Qt5::Qml Qt5::Quick Qt5::Gui Qt5::Multimedia Qt5::Core Qt5::Svg Qt5::Xml Qt5::XmlPatterns Qt5::Sensors")) + #t)) (add-after 'install 'wrap-executable (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) @@ -209,7 +224,7 @@ Currently available boards include: (substitute* "def/defines.h" (("\"/usr/") (string-append "\"" out "/"))) ;; Recreate Makefile - (zero? (system* "qmake")))))))) + (invoke "qmake"))))))) (inputs `(("qt4" ,qt-4) ("sqlite" ,sqlite))) @@ -224,3 +239,65 @@ Useful support functions and an extensive progress tracker, topical lessons and the ability to create your own practice lessons make learning to type easy.") (license license:gpl2))) + +(define-public snap + (package + (name "snap") + (version "4.1.2.7") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jmoenig/Snap--Build-Your-Own-Blocks.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0cy3jhqqpmivqnfm9kmlnh3fhf3m3y4xqhikblk8vfjprh6vmcvd")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((source (assoc-ref %build-inputs "source")) + (out (assoc-ref %outputs "out")) + (share (string-append out "/share/snap"))) + (copy-recursively source share) + ;; Replace the sole minified file in the package. + (with-directory-excursion share + (delete-file "FileSaver.min.js") + (symlink (string-append (assoc-ref %build-inputs "js-filesaver") + "/share/javascript/FileSaver.min.js") + "FileSaver.min.js")) + ;; Create a "snap" executable. + (let* ((bin (string-append out "/bin")) + (script (string-append bin "/snap")) + (snap (string-append share "/snap.html")) + (bash (string-append (assoc-ref %build-inputs "bash") + "/bin/sh")) + (xdg-open (string-append (assoc-ref %build-inputs "xdg-utils") + "/bin/xdg-open"))) + (mkdir-p bin) + (call-with-output-file script + (lambda (port) + (format port "#!~a\n~a '~a'" bash xdg-open snap))) + (chmod script #o555))) + #t))) + (inputs + `(("bash" ,bash-minimal) + ("js-filesaver" ,js-filesaver) + ("xdg-utils" ,xdg-utils))) + (home-page "https://snap.berkeley.edu") + (synopsis "Visual, blocks based programming language") + (description "Snap! (formerly BYOB) is a visual, drag-and-drop +programming language. It is an extended reimplementation of Scratch (a +project of the Lifelong Kindergarten Group at the MIT Media Lab) that +allows you to Build Your Own Blocks. It also features first class +lists, first class procedures, and continuations. These added +capabilities make it suitable for a serious introduction to computer +science for high school or college students. + +This package provides a @command{snap} executable calling @command{xdg-open} +to open the application in a web browser, for offline usage.") + (license license:agpl3+))) diff --git a/gnu/packages/elf.scm b/gnu/packages/elf.scm index eaa9ab5f51..9b120751d2 100644 --- a/gnu/packages/elf.scm +++ b/gnu/packages/elf.scm @@ -56,6 +56,14 @@ `(#:configure-flags (list (string-append "LDFLAGS=-Wl,-rpath=" (assoc-ref %outputs "out") "/lib")) + + ;; Disable tests on MIPS (without changing + ;; the arguments list on other systems). + ,@(if (string-prefix? "mips" (or (%current-target-system) + (%current-system))) + '(#:tests? #f) + '()) + #:phases (modify-phases %standard-phases ;; No reason has been found for this test to reliably fail on aarch64-linux. diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 3bd15989ad..e90660a236 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Alex Kost <alezost@gmail.com> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2016, 2017 Chris Marusich <cmmarusich@gmail.com> +;;; Copyright © 2016, 2017, 2018 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2015, 2016 Christopher Allan Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> @@ -18,7 +18,7 @@ ;;; Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net> -;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2017, 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2017, 2018 Kyle Meyer <kyle@kyleam.com> @@ -34,6 +34,7 @@ ;;; Copyright © 2017, 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2018 Sohom Bhattacharjee <soham.bhattacharjee15@gmail.com> ;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org> +;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -65,6 +66,7 @@ #:use-module (gnu packages) #:use-module (gnu packages audio) #:use-module (gnu packages bash) + #:use-module (gnu packages cmake) #:use-module (gnu packages code) #:use-module (gnu packages databases) #:use-module (gnu packages guile) @@ -104,6 +106,8 @@ #:use-module (gnu packages gd) #:use-module (gnu packages fontutils) #:use-module (gnu packages password-utils) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages shells) #:use-module (guix utils) #:use-module (srfi srfi-1) #:use-module (ice-9 match)) @@ -111,14 +115,14 @@ (define-public emacs (package (name "emacs") - (version "25.3") + (version "26.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/emacs/emacs-" version ".tar.xz")) (sha256 (base32 - "02y00y9q42g1iqgz5qhmsja75hwxd88yrn9zp14lanay0zkwafi5")) + "0b6k1wq44rc8gkvxhi1bbjxbz3cwg29qbq8mklq2az6p1hjgrx0w")) (patches (search-patches "emacs-exec-path.patch" "emacs-fix-scheme-indent-function.patch" "emacs-source-date-epoch.patch")) @@ -157,7 +161,8 @@ #t)))) (build-system glib-or-gtk-build-system) (arguments - `(#:phases + `(#:tests? #f ; no check target + #:phases (modify-phases %standard-phases (add-before 'configure 'fix-/bin/pwd (lambda _ @@ -243,10 +248,11 @@ languages.") (synopsis "The extensible text editor (used only for byte-compilation)") (build-system gnu-build-system) (arguments - (substitute-keyword-arguments (package-arguments emacs) - ((#:phases phases) - `(modify-phases ,phases - (delete 'install-site-start))))) + `(#:configure-flags (list "--with-gnutls=no") + ,@(substitute-keyword-arguments (package-arguments emacs) + ((#:phases phases) + `(modify-phases ,phases + (delete 'install-site-start)))))) (inputs `(("ncurses" ,ncurses))) (native-inputs @@ -340,7 +346,7 @@ editor (without an X toolkit)" ) "/share/emacs/site-lisp/" "geiser-autoloads.el")) #t))))) - (inputs `(("guile" ,guile-2.0))) + (inputs `(("guile" ,guile-2.2))) (native-inputs `(("emacs" ,emacs-minimal))) (home-page "https://nongnu.org/geiser/") (synopsis "Collection of Emacs modes for Guile and Racket hacking") @@ -353,10 +359,6 @@ implementation, Emacs and, ultimately, the schemer, giving them access to live metadata.") (license license:bsd-3))) -(define-public geiser-next - ;; This has become "geiser". - (deprecated-package "geiser-next" geiser)) - (define-public paredit (package (name "emacs-paredit") @@ -382,9 +384,6 @@ for those who may want transient periods of unbalanced parentheses, such as when typing parentheses directly or commenting out code line by line.") (license license:gpl3+))) -(define-public paredit/old-name - (deprecated-package "paredit" paredit)) - (define-public git-modes (package (name "emacs-git-modes") @@ -437,7 +436,7 @@ on stdout instead of using a socket as the Emacsclient does.") (define-public magit (package (name "magit") - (version "2.11.0") + (version "2.12.1") (source (origin (method url-fetch) (uri (string-append @@ -445,7 +444,7 @@ on stdout instead of using a socket as the Emacsclient does.") version "/" name "-" version ".tar.gz")) (sha256 (base32 - "11xly5bma9jc1jhs8fqbqrci8kz1y26yfq7dqjkqfy956wvfg6hz")))) + "1czzknmhzbggcv3bxl5amvfpp0zrkdwl1x05qarsq6qakvc85xy3")))) (build-system gnu-build-system) (native-inputs `(("texinfo" ,texinfo) ("emacs" ,emacs-minimal))) @@ -454,7 +453,8 @@ on stdout instead of using a socket as the Emacsclient does.") ("perl" ,perl))) (propagated-inputs `(("dash" ,emacs-dash) - ;; XXX Add 'magit-popup' dependency for the next release (after 2.11.0). + ("ghub" ,emacs-ghub) + ("magit-popup" ,emacs-magit-popup) ("with-editor" ,emacs-with-editor))) (arguments `(#:test-target "test" @@ -468,6 +468,14 @@ on stdout instead of using a socket as the Emacsclient does.") (assoc-ref %build-inputs "dash") "/share/emacs/site-lisp/guix.d/dash-" ,(package-version emacs-dash)) + (string-append "GHUB_DIR=" + (assoc-ref %build-inputs "ghub") + "/share/emacs/site-lisp/guix.d/ghub-" + ,(package-version emacs-ghub)) + (string-append "MAGIT_POPUP_DIR=" + (assoc-ref %build-inputs "magit-popup") + "/share/emacs/site-lisp/guix.d/magit-popup-" + ,(package-version emacs-magit-popup)) (string-append "WITH_EDITOR_DIR=" (assoc-ref %build-inputs "with-editor") "/share/emacs/site-lisp/guix.d/with-editor-" @@ -483,7 +491,7 @@ on stdout instead of using a socket as the Emacsclient does.") (substitute* "lisp/magit-sequence.el" (("perl") (string-append perl "/bin/perl"))) #t)))))) - (home-page "http://magit.github.io/") + (home-page "https://magit.vc/") (synopsis "Emacs interface for the Git version control system") (description "With Magit, you can inspect and modify your Git repositories with Emacs. @@ -591,6 +599,37 @@ these arguments. The prototypical use is for the command to call an external process, passing on the arguments as command line arguments.") (license license:gpl3+))) +(define-public emacs-ghub + (package + (name "emacs-ghub") + (version "2.0.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/magit/ghub/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1zrb3xk04a228g2ahx0r02d0d3xskj60q73qavvmm2i56r66cxvc")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'install 'make-info + (lambda _ + (zero? (system* "make" "info"))))))) + (native-inputs + `(("texinfo" ,texinfo))) + (home-page "https://github.com/magit/ghub") + (synopsis "Emacs client library for Github API and Gitlab API") + (description + "This package provides 2 files: @file{ghub.el} and @file{glab.el}, +which are the libraries that provide basic support for using the Github and +Gitlab APIs from Emacs packages. It abstracts access to API resources using +only a handful of functions that are not resource-specific.") + (license license:gpl3+))) + (define-public haskell-mode (package (name "haskell-mode") @@ -713,77 +752,91 @@ provides an optional IDE-like error list.") ;;; (define-public emacs-w3m - (package - (name "emacs-w3m") - (version "1.4.538+0.20141022") - (source (origin - (method url-fetch) - (uri (string-append "mirror://debian/pool/main/w/w3m-el/w3m-el_" - version ".orig.tar.gz")) - (sha256 - (base32 - "0zfxmq86pwk64yv0426gnjrvhjrgrjqn08sdcdhmmjmfpmqvm79y")))) - (build-system gnu-build-system) - (native-inputs `(("autoconf" ,autoconf) - ("emacs" ,emacs-minimal))) - (inputs `(("w3m" ,w3m) - ("imagemagick" ,imagemagick))) - (arguments - `(#:modules ((guix build gnu-build-system) - (guix build utils) - (guix build emacs-utils)) - #:imported-modules (,@%gnu-build-system-modules - (guix build emacs-utils)) - #:configure-flags - (let ((out (assoc-ref %outputs "out"))) - (list (string-append "--with-lispdir=" - out "/share/emacs/site-lisp") - (string-append "--with-icondir=" - out "/share/images/emacs-w3m") - ;; Leave .el files uncompressed, otherwise GC can't - ;; identify run-time dependencies. See - ;; <http://lists.gnu.org/archive/html/guix-devel/2015-12/msg00208.html> - "--without-compress-install")) - #:tests? #f ; no check target - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - (zero? (system* "autoconf")))) - (add-before 'build 'patch-exec-paths - (lambda* (#:key inputs outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out")) - (w3m (assoc-ref inputs "w3m")) - (imagemagick (assoc-ref inputs "imagemagick")) - (coreutils (assoc-ref inputs "coreutils"))) - (emacs-substitute-variables "w3m.el" - ("w3m-command" (string-append w3m "/bin/w3m")) - ("w3m-touch-command" - (string-append coreutils "/bin/touch")) - ("w3m-image-viewer" - (string-append imagemagick "/bin/display")) - ("w3m-icon-directory" - (string-append out "/share/images/emacs-w3m"))) - (emacs-substitute-variables "w3m-image.el" - ("w3m-imagick-convert-program" - (string-append imagemagick "/bin/convert")) - ("w3m-imagick-identify-program" - (string-append imagemagick "/bin/identify"))) - #t))) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (and (zero? (system* "make" "install" "install-icons")) - (with-directory-excursion - (string-append (assoc-ref outputs "out") - "/share/emacs/site-lisp") - (for-each delete-file '("ChangeLog" "ChangeLog.1")) - (symlink "w3m-load.el" "w3m-autoloads.el") - #t))))))) - (home-page "http://emacs-w3m.namazu.org/") - (synopsis "Simple Web browser for Emacs based on w3m") - (description - "Emacs-w3m is an emacs interface for the w3m web browser.") - (license license:gpl2+))) + ;; Emacs-w3m follows a "rolling release" model from its CVS repo. We could + ;; use CVS, sure, but instead we choose to use this Git mirror described on + ;; the home page as an "unofficial" mirror. + (let ((commit "0dd5691f46d314a84da63f3a7277d721815811a2")) + (package + (name "emacs-w3m") + (version (git-version "1.5" "0" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ecbrown/emacs-w3m") + (commit commit))) + (sha256 + (base32 + "02xalyxbrkgl4n8nj7xxkmsbm6lshhwdc8bzs2l4wz3hkpgkj7x4")))) + (build-system gnu-build-system) + (native-inputs `(("autoconf" ,autoconf) + ("texinfo" ,texinfo) + ("emacs" ,emacs-minimal))) + (inputs `(("w3m" ,w3m) + ("imagemagick" ,imagemagick))) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (guix build emacs-utils)) + #:imported-modules (,@%gnu-build-system-modules + (guix build emacs-utils)) + #:configure-flags + (let ((out (assoc-ref %outputs "out"))) + (list (string-append "--with-lispdir=" + out "/share/emacs/site-lisp") + (string-append "--with-icondir=" + out "/share/images/emacs-w3m") + ;; Leave .el files uncompressed, otherwise GC can't + ;; identify run-time dependencies. See + ;; <http://lists.gnu.org/archive/html/guix-devel/2015-12/msg00208.html> + "--without-compress-install")) + #:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'autoconf + (lambda _ + (zero? (system* "autoconf")))) + (add-before 'configure 'support-emacs! + (lambda _ + ;; For some reason 'AC_PATH_EMACS' thinks that 'Emacs 26' is + ;; unsupported. + (substitute* "configure" + (("EMACS_FLAVOR=unsupported") + "EMACS_FLAVOR=emacs")) + #t)) + (add-before 'build 'patch-exec-paths + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (w3m (assoc-ref inputs "w3m")) + (imagemagick (assoc-ref inputs "imagemagick")) + (coreutils (assoc-ref inputs "coreutils"))) + (make-file-writable "w3m.el") + (emacs-substitute-variables "w3m.el" + ("w3m-command" (string-append w3m "/bin/w3m")) + ("w3m-touch-command" + (string-append coreutils "/bin/touch")) + ("w3m-icon-directory" + (string-append out "/share/images/emacs-w3m"))) + (make-file-writable "w3m-image.el") + (emacs-substitute-variables "w3m-image.el" + ("w3m-imagick-convert-program" + (string-append imagemagick "/bin/convert")) + ("w3m-imagick-identify-program" + (string-append imagemagick "/bin/identify"))) + #t))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (and (zero? (system* "make" "install" "install-icons")) + (with-directory-excursion + (string-append (assoc-ref outputs "out") + "/share/emacs/site-lisp") + (for-each delete-file '("ChangeLog" "ChangeLog.1")) + (symlink "w3m-load.el" "w3m-autoloads.el") + #t))))))) + (home-page "http://emacs-w3m.namazu.org/") + (synopsis "Simple Web browser for Emacs based on w3m") + (description + "Emacs-w3m is an emacs interface for the w3m web browser.") + (license license:gpl2+)))) (define-public emacs-wget (package @@ -839,14 +892,14 @@ provides an optional IDE-like error list.") (define-public emms (package (name "emacs-emms") - (version "4.4") + (version "5.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/emms/emms-" version ".tar.gz")) (sha256 (base32 - "1b0kalhn81dir26jgsma30i5bbly7d3s1ngqpf01zjjpr7lw5v0h")) + "08f9lj77jlk96grqgjsv63s2i8ywvp4wvnmgmhnslwyx2lsdxza3")) (modules '((guix build utils))) (snippet '(begin @@ -870,7 +923,8 @@ provides an optional IDE-like error list.") (arguments `(#:modules ((guix build gnu-build-system) (guix build utils) - (guix build emacs-utils)) + (guix build emacs-utils) + (ice-9 ftw)) #:imported-modules (,@%gnu-build-system-modules (guix build emacs-utils)) @@ -933,13 +987,21 @@ provides an optional IDE-like error list.") (man1 (string-append out "/share/man/man1"))) (mkdir-p bin) (mkdir-p man1) + + ;; Ensure that files are not rejected by gzip + (let ((early-1980 315619200)) ; 1980-01-02 UTC + (ftw "." (lambda (file stat flag) + (unless (<= early-1980 (stat:mtime stat)) + (utime file early-1980 early-1980)) + #t))) #t))) (add-after 'install 'post-install (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (symlink "emms-auto.el" (string-append out "/share/emacs/site-lisp/" - "emms-autoloads.el")))))) + "emms-autoloads.el"))) + #t))) #:tests? #f)) (native-inputs `(("emacs" ,emacs-minimal) ;for (guix build emacs-utils) ("texinfo" ,texinfo))) @@ -1192,6 +1254,42 @@ or XEmacs.") a set of simplified face specifications and a user-supplied color palette") (license license:gpl3+))) +(define-public emacs-howm + (package + (name "emacs-howm") + (version "1.4.4") + (source + (origin + (method url-fetch) + (uri (string-append "http://howm.sourceforge.jp/a/howm-" + version ".tar.gz")) + (sha256 + (base32 + "0ddm91l6z58j7x59fa966j6q1rg4cinyza4r8ibg80hprn5h31qk")))) + (build-system gnu-build-system) + (native-inputs + `(("emacs" ,emacs-minimal))) + (arguments + `(#:configure-flags + (list (string-append "--with-howmdir=" %output + "/share/emacs/site-lisp/guix.d/howm-" ,version)) + #:modules ((guix build gnu-build-system) + ((guix build emacs-build-system) #:prefix emacs:) + (guix build utils)) + #:imported-modules (,@%gnu-build-system-modules + (guix build emacs-build-system) + (guix build emacs-utils)) + #:phases + (modify-phases %standard-phases + (add-after 'rename-lispdir 'make-autoloads + (assoc-ref emacs:%standard-phases 'make-autoloads))))) + (home-page "http://howm.osdn.jp/") + (synopsis "Note-taking tool for Emacs") + (description "Howm is a note-taking tool for Emacs. Like +code@{emacs-wiki.el}, it facilitates using hyperlinks and doing full-text +searches. Unlike code@{emacs-wiki.el}, it can be combined with any format.") + (license license:gpl1+))) + (define-public emacs-calfw (package (name "emacs-calfw") @@ -1207,6 +1305,8 @@ a set of simplified face specifications and a user-supplied color palette") (base32 "17ssg8gx66yp63nhygjq2r6kgl4h45cacmrxsxs9f0lrfcx37k0l")))) (build-system emacs-build-system) + (propagated-inputs + `(("emacs-howm" ,emacs-howm))) (home-page "https://github.com/kiwanami/emacs-calfw/") (synopsis "Calendar framework for Emacs") (description @@ -1510,16 +1610,16 @@ and stored in memory.") (define-public emacs-dash (package (name "emacs-dash") - (version "2.13.0") + (version "2.14.1") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/magnars/dash.el/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/magnars/dash.el.git") + (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "1pjlkrzr8n45bnp3xs3dybvy0nz3gwamrfc7vsi1nhpkkw99ihhb")))) + "1kzijmjxjxgr7p8clphzvmm47vczckbs8mza9an77c25bn627ywl")))) (build-system emacs-build-system) (arguments `(#:tests? #t @@ -1556,7 +1656,7 @@ type, for example: packages, buffers, files, etc.") (define-public emacs-guix (package (name "emacs-guix") - (version "0.3.4") + (version "0.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/alezost/guix.el" @@ -1564,7 +1664,7 @@ type, for example: packages, buffers, files, etc.") "/emacs-guix-" version ".tar.gz")) (sha256 (base32 - "152zf9vkafmnnf7by5armg165npznb961csgnvr8iwdj3smvivjf")))) + "1nn4b0gd895g0k4fynzrip7z8yb1r3qmvznq9v8a6q7sm84irmqq")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -1573,6 +1673,7 @@ type, for example: packages, buffers, files, etc.") (dash (assoc-ref %build-inputs "dash")) (bui (assoc-ref %build-inputs "bui")) (magit-popup (assoc-ref %build-inputs "magit-popup")) + (edit-indirect (assoc-ref %build-inputs "edit-indirect")) (site-lisp "/share/emacs/site-lisp")) (list (string-append "--with-guix-site-dir=" (car (find-files (string-append guix @@ -1596,6 +1697,9 @@ type, for example: packages, buffers, files, etc.") (string-append "--with-bui-lispdir=" bui site-lisp "/guix.d/bui-" ,(package-version emacs-bui)) + (string-append "--with-editindirect-lispdir=" + edit-indirect site-lisp "/guix.d/edit-indirect-" + ,(package-version emacs-edit-indirect)) (string-append "--with-popup-lispdir=" magit-popup site-lisp "/guix.d/magit-popup-" ,(package-version emacs-magit-popup)))))) @@ -1609,6 +1713,7 @@ type, for example: packages, buffers, files, etc.") `(("geiser" ,geiser) ("dash" ,emacs-dash) ("bui" ,emacs-bui) + ("edit-indirect" ,emacs-edit-indirect) ("magit-popup" ,emacs-magit-popup))) (home-page "https://alezost.github.io/guix.el/") (synopsis "Emacs interface for GNU Guix") @@ -1717,6 +1822,7 @@ allows easily move between them.") (build-system emacs-build-system) (arguments `(#:tests? #t + #:emacs ,emacs ; FIXME: tests fail with emacs-minimal #:test-command '("./run-tests.sh"))) (home-page "https://github.com/magnars/s.el") (synopsis "Emacs string manipulation library") @@ -2502,17 +2608,19 @@ framework for Emacs Lisp to be used with @code{ert}.") (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'set-shell + ;; Setting the SHELL environment variable is required for the tests + ;; to find sh. + (lambda _ + (setenv "SHELL" (which "sh")) + #t)) (add-before 'check 'fix-makefile (lambda _ (substitute* "Makefile" (("\\$\\(CASK\\) exec ") "")) #t))) #:tests? #t - ;; FIXME: Normally we'd run the "test" target but for some reason the - ;; test-deferred target fails when run in the Guix build environment - ;; with the error: (file-error "Searching for program" "No such file or - ;; directory" "/bin/sh"). - #:test-command '("make" "test-concurrent" "test-concurrent-compiled"))) + #:test-command '("make" "test"))) (native-inputs `(("emacs-ert-expectations" ,emacs-ert-expectations) ("emacs-undercover" ,emacs-undercover) @@ -2684,6 +2792,57 @@ implementation in Emacs. To use it just load this file and bind that function to a key in your preferred mode.") (license license:public-domain)))) +(define-public emacs-scel + (let ((version "20170629") + (revision "1") + (commit "aeea3ad4be9306d14c3a734a4ff54fee10ac135b")) + (package + (name "emacs-scel") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/supercollider/scel.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0jvmzs1lsjyndqshhii2y4mnr3wghai26i3p75453zrpxpg0zvvw")))) + (build-system emacs-build-system) + (arguments + `(#:modules ((guix build emacs-build-system) + ((guix build cmake-build-system) #:prefix cmake:) + (guix build utils)) + #:imported-modules (,@%emacs-build-system-modules + (guix build cmake-build-system)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "el/CMakeLists.txt" + (("share/emacs/site-lisp/SuperCollider") + (string-append + "share/emacs/site-lisp/guix.d/scel-" ,version))) + ((assoc-ref cmake:%standard-phases 'configure) + #:outputs outputs + #:configure-flags '("-DSC_EL_BYTECOMPILE=OFF")))) + (add-after 'set-emacs-load-path 'add-el-dir-to-emacs-load-path + (lambda _ + (setenv "EMACSLOADPATH" + (string-append (getcwd) "/el:" (getenv "EMACSLOADPATH"))) + #t)) + (replace 'install (assoc-ref cmake:%standard-phases 'install))))) + (inputs + `(("supercollider" ,supercollider))) + (native-inputs + `(("cmake" ,cmake))) + (home-page "https://github.com/supercollider/scel") + (synopsis "SuperCollider Emacs interface") + (description "@code{emacs-scel} is an Emacs interface to SuperCollider. +SuperCollider is a platform for audio synthesis and algorithmic composition.") + (license license:gpl2+)))) + (define-public emacs-mit-scheme-doc (package (name "emacs-mit-scheme-doc") @@ -3588,7 +3747,7 @@ navigate code in a tree-like fashion.") (define-public emacs-lispy ;; Release 0.26.0 was almost 3 years ago, and there have been ~772 commits ;; since. - (let ((commit "a7e1cf742e72199cc75aa5e1e686991ba4a23bc4") + (let ((commit "c2a358a7a15fcf056a5b7461a8e690b481b03b80") (revision "0")) (package (name "emacs-lispy") @@ -3599,7 +3758,7 @@ navigate code in a tree-like fashion.") (uri (git-reference (url home-page) (commit commit))) (sha256 (base32 - "0qg85gz5akayvhb5fmn1qx7s9847gry4g20xcnq8llr839lq28dl")) + "1g6756qqx2n4cx8jac6mlwayilsiyc5rz8nrqjnywvzc75xdinjd")) (file-name (git-file-name name version)))) (build-system emacs-build-system) (propagated-inputs @@ -4030,7 +4189,7 @@ If you want to mark a folder manually as a project just create an empty (define-public emacs-elfeed (package (name "emacs-elfeed") - (version "2.3.0") + (version "3.0.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/skeeto/elfeed/archive/" @@ -4038,7 +4197,7 @@ If you want to mark a folder manually as a project just create an empty (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1fd1mx0q1qb9vgdzls5ppxfriyid48blg8smgjspiazp7kxakzxv")))) + "1wkdrxr6zzqb48czqqv34l87bx8aqjk1739ddqg933aqh241kfvn")))) (build-system emacs-build-system) (arguments `(#:tests? #t @@ -4606,6 +4765,29 @@ used for reverse direction.") distribution, primarily targeting Clojure users") (license license:gpl3+))) +(define-public emacs-orgalist + (package + (name "emacs-orgalist") + (version "1.7") + (source + (origin + (method url-fetch) + (uri (string-append "https://elpa.gnu.org/packages/" + "orgalist-" version ".el")) + (sha256 + (base32 + "13dl0l727vlny3y88gqpngcy90ly5r719s1pbmkva5gmcryb68xr")))) + (build-system emacs-build-system) + (home-page "http://elpa.gnu.org/packages/orgalist.html") + (synopsis "Manage Org-like lists in non-Org buffers") + (description "Write Org mode's plain lists in non-Org buffers. More +specifically, Orgalist supports the syntax of Org mode for numbered, +unnumbered, description items, checkboxes, and counter cookies. + +The library also implements radio lists, i.e., lists written in Org +syntax later translated into the host format, e.g., LaTeX or HTML.") + (license license:gpl3+))) + (define-public emacs-writegood-mode (package (name "emacs-writegood-mode") @@ -4652,35 +4834,35 @@ passive voice.") (name "emacs-org") ;; emacs-org-contrib inherits from this package. Please update its sha256 ;; checksum as well. - (version "9.1.11") + (version "9.1.13") (source (origin (method url-fetch) (uri (string-append "http://elpa.gnu.org/packages/org-" version ".tar")) (sha256 (base32 - "0i27g5qbkfqbxhgiz917pjwkxg3rwid99d0ickwx43bzq0zi7c1m")))) + "1vx0n32gvrgy2bl2b4pvxf00cywxwm57gi46f2b2zlrnmd5n85pr")))) (build-system emacs-build-system) (home-page "https://orgmode.org/") (synopsis "Outline-based notes management and organizer") (description "Org is an Emacs mode for keeping notes, maintaining TODO -lists, and project planning with a fast and effective plain-text system. It -also is an authoring system with unique support for literate programming and -reproducible research.") +lists, and project planning with a fast and effective lightweight markup +language. It also is an authoring system with unique support for literate +programming and reproducible research.") (license license:gpl3+))) (define-public emacs-org-contrib (package (inherit emacs-org) (name "emacs-org-contrib") - (version "20180423") + (version "20180507") (source (origin (method url-fetch) (uri (string-append "https://orgmode.org/elpa/org-plus-contrib-" version ".tar")) (sha256 (base32 - "1aggvdy74q8p79xyc19zring5gjvlzp6lbsq8ar319zkmcjrapqd")))) + "190iwjpdjrhg7gl2d4bri2y0y679vlrwd841r6dvhza0yy338d2d")))) (arguments `(#:modules ((guix build emacs-build-system) (guix build utils) @@ -4705,7 +4887,8 @@ reproducible research.") (for-each delete-file duplicates)) #t)))))) (propagated-inputs - `(("emacs-org" ,emacs-org))) + `(("emacs-org" ,emacs-org) + ("emacs-scel" ,emacs-scel))) (synopsis "Contributed packages to Org mode") (description "Org is an Emacs mode for keeping notes, maintaining TODO lists, and project planning with a fast and effective plain-text system. @@ -8020,3 +8203,2613 @@ Emacs.") in @code{emacs-lisp-mode}, together with an elisp equivalent of @code{slime-describe-symbol}.") (license license:gpl3+))) + +(define-public emacs-dedicated + (package + (name "emacs-dedicated") + (version "1.0.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/emacsorphanage/dedicated/archive/" + version + ".tar.gz")) + (sha256 + (base32 + "0nhbkp278cvcznb5rp3jp9ii3mjgb79zx8iwfrw7zfk3yg8688ni")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system emacs-build-system) + (home-page "https://github.com/emacsorphanage/dedicated") + (synopsis "Emacs minor mode for toggling a windows's \"dedicated\" flag") + (description + "This simple Emacs minor mode allows you to toggle a window's +\"dedicated\" flag. When a window is \"dedicated\", Emacs will not select +files into that window. This can be quite handy since many commands will use +another window to show results (compilation mode, starting info, and so on). +A dedicated window won't be used for such a purpose. For details, please read +the source file.") + (license license:gpl2+))) + +(define-public emacs-nnreddit + (let ((commit "9843f99d01fd8f1eea2fc685965a7c7f4eeb187a") + (revision "1")) + (package + (name "emacs-nnreddit") + (version (string-append "0.0.1-" revision "." + (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/paul-issartel/nnreddit.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0j4h3bnga640250jdq8bwyja49r41ssrsjd6lba4gzzllqk02nbn")))) + (build-system emacs-build-system) + (home-page "https://github.com/paul-issartel/nnreddit") + (synopsis "Reddit backend for the Gnus newsreader") + (description "@url{https://www.reddit.com} backend for the Gnus +newsreader.") + (license license:gpl3+)))) + +(define-public emacs-makey + (package + (name "emacs-makey") + (version "0.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/mickeynp/makey/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0kzl4q1wf2zhkx9nrymxa67n99iq0bj7zqhpaz4byksna1hsxfmv")))) + (build-system emacs-build-system) + (home-page "https://github.com/mickeynp/makey") + (synopsis "Emacs interactive command-line mode") + (description + "This package provides an Emacs interactive command-line mode.") + (license license:gpl3+))) + +(define-public emacs-outorg + (let ((commit "78b0695121fb974bc4e971eb4ef7f8afd6d89d64")) + (package + (name "emacs-outorg") + (version (git-version "2.0" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alphapapa/outorg") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03aclh4m3f7rb821gr9pwvnqkkl91px3qxdcarpf3ypa1x4fxvlj")))) + (build-system emacs-build-system) + (home-page "https://github.com/alphapapa/outorg") + (synopsis "Org-style comment editing") + (description "Outorg is for editing comment-sections of source-code +files in temporary Org-mode buffers. It turns conventional +literate-programming upside-down in that the default mode is the +programming-mode, and special action has to be taken to switch to the +text-mode (i.e. Org-mode).") + (license license:gpl3+)))) + +(define-public emacs-outshine + (let ((commit "5f1a6b70231d2811c522e4e5e8c89ff461b311d6")) + (package + (name "emacs-outshine") + (version (git-version "2.0" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alphapapa/outshine.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1l9v1dfhgg7il11ifbhvcvrg3acfjk9sdxlc3lja1k54d7dp60jv")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-outorg" ,emacs-outorg))) + (home-page "https://github.com/alphapapa/outshine") + (synopsis "Emacs outline with outshine") + (description "Outshine attempts to bring the look and feel of +@code{org-mode} to an Emacs outside of the Org major-mode. It is an extension +of @code{outline-minor-mode} (@code{org-mode} itself derives from +outline-mode), so there is no such thing like an outshine mode, only +@code{outline-minor-mode} with outshine extensions loaded.") + (license license:gpl3+)))) + +(define-public emacs-parsebib + (package + (name "emacs-parsebib") + (version "2.3.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/joostkremers/parsebib/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0cxagnmc5ab6idmb26axpizhr4sqglkncc59768yavn3p04jyq63")))) + (build-system emacs-build-system) + (home-page "https://github.com/joostkremers/parsebib") + (synopsis "Library for parsing bib files") + (description + "This package provides an Emacs library for parsing bib files.") + (license license:gpl3+))) + +(define-public emacs-biblio + (package + (name "emacs-biblio") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/cpitclaudel/biblio.el/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "109fvivsb4r0rbqljngqrmxqvbnbkqlivczx6brrvlr7ci625lhf")))) + (build-system emacs-build-system) + (home-page "https://github.com/cpitclaudel/biblio.el") + (synopsis "Browse and import bibliographic references") + (description "This package provides an extensible Emacs package for +browsing and fetching references. + +@file{biblio.el} makes it easy to browse and gather bibliographic references +and publications from various sources, by keywords or by DOI. References are +automatically fetched from well-curated sources, and formatted as BibTeX.") + (license license:gpl3+))) + +(define-public emacs-helm-bibtex + (let ((commit "8ed898fb5a68f18e9bb9973832a5c1f8abcfc463") + (revision "1")) + (package + (name "emacs-helm-bibtex") + (version (string-append "2.0.0" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tmalsburg/helm-bibtex.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "14lyx0vbqr97p3anzrsp7m3q0kqclyjcdwplpraim403fcklzbnz")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm) + ("emacs-parsebib" ,emacs-parsebib) + ("emacs-s" ,emacs-s) + ("emacs-dash" ,emacs-dash) + ("emacs-f" ,emacs-f) + ("emacs-biblio" ,emacs-biblio))) + (home-page "https://github.com/tmalsburg/helm-bibtex") + (synopsis "Bibliography manager based on Helm") + (description "This package provides bibliography manager for Emacs, +based on Helm and the bibtex-completion backend. + +Key features: + +@itemize +@item Quick access to your bibliography from within Emacs +@item Powerful search capabilities +@item Provides instant search results as you type +@item Tightly integrated with LaTeX authoring, emails, Org mode, etc. +@item Open the PDFs, URLs, or DOIs associated with an entry +@item Insert LaTeX cite commands, Ebib links, or Pandoc citations, +BibTeX entries, or plain text references at point, attach PDFs to emails +@item Support for note taking +@item Quick access to online bibliographic databases such as Pubmed, +arXiv, Google Scholar, Library of Congress, etc. +@item Imports BibTeX entries from CrossRef and other sources. +@end itemize\n") + (license license:gpl3+)))) + +(define-public emacs-ewmctrl + (let ((commit "3d0217c4d6cdb5c308b6cb4293574f470d4faacf")) + (package + (name "emacs-ewmctrl") + (version (git-version "0.0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/flexibeast/ewmctrl.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ilwvx0qryv3v6xf0gxqwnfm6pf96gxap8h9g3f6z6lk9ff4n1wi")))) + (build-system emacs-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-ewmctrl + ;; This build phase makes sure ‘ewmctrl’ looks + ;; for ‘wmctrl’ in the right place. + (lambda _ + (let ((file "ewmctrl.el")) + (chmod file #o644) + (emacs-substitute-sexps file + ("(defcustom ewmctrl-wmctrl-path" (which "wmctrl"))))))))) + (inputs + `(("wmctrl" ,wmctrl))) + (home-page "https://github.com/flexibeast/ewmctrl") + (synopsis "Emacs interface to @code{wmctrl}") + (description "@code{ewmctrl} provides an Emacs interface to +@code{wmctrl} command-line window-management program.") + (license license:gpl3+)))) + +(define-public emacs-helm-gtags + (package + (name "emacs-helm-gtags") + (version "1.5.6") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/syohex/emacs-helm-gtags/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1a10snhg6nnnan6w9a7mcziy26vxbsr3c35i0gcarnkdp2yqng36")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) + (home-page "https://github.com/syohex/emacs-helm-gtags") + (synopsis "Emacs Helm interface to GNU Global") + (description + "@code{emacs-helm-gtags} provides a Emacs Helm interface to GNU Global.") + (license license:gpl3+))) + +(define-public emacs-list-utils + (package + (name "emacs-list-utils") + (version "0.4.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/rolandwalker/list-utils/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1xc1xh8c82h5gdjbgpdsdclgwxkxbb7h3x3a2bscpm41g8pnan4p")))) + (build-system emacs-build-system) + (home-page "https://github.com/rolandwalker/list-utils") + (synopsis "List-manipulation utility functions") + (description "This package provides a list manipulation library for Emacs.") + (license license:gpl3+))) + +(define-public emacs-move-text + (package + (name "emacs-move-text") + (version "2.0.8") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/emacsfodder/move-text/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1sjfja9r25692pgcldgnjzkapzy970m14jh9l4pajysiqcdk72g0")))) + (build-system emacs-build-system) + (home-page "https://github.com/emacsfodder/move-text") + (synopsis "Move current line or region with M-up or M-down") + (description "This package provide functions to move the current line +using @kbd{M-up} or @kbd{M-down} if a region is marked, it will move the +region instead.") + (license license:gpl3+))) + +(define-public emacs-validate + (package + (name "emacs-validate") + (version "1.0.5") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/Malabarba/validate.el" + "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "125mbd111f1h1baw0z3fzm48y1bvaigljyzvvnqgrn0shxbj0khg")))) + (build-system emacs-build-system) + (home-page "https://github.com/Malabarba/validate.el") + (synopsis "Emacs library for scheme validation") + (description "This Emacs library provides two functions that perform +schema validation.") + (license license:gpl3+))) + +(define-public emacs-load-relative + (let ((commit "738896e3da491b35399178ed2c6bc92cc728d119") + (revision "1")) + (package + (name "emacs-load-relative") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rocky/emacs-load-relative") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1rpy5mfncncl6gqgg53d3g25g1700g4b9bivd4c0cfcv5dbxhp73")))) + (build-system emacs-build-system) + (home-page "https://github.com/rocky/emacs-load-relative") + (synopsis "Relative loads for Emacs Lisp files") + (description "@code{load-relative} allows to write small Emacs +functions or modules in a larger multi-file Emacs package and +facilitate running from the source tree without having to install the +code or fiddle with evil @code{load-path}.") + (license license:gpl3+)))) + +(define-public emacs-rainbow-blocks + (let ((commit "dd435d7bb34ff6f162a5f315df308b90b7e9f842")) + (package + (name "emacs-rainbow-blocks") + (version (git-version "1.0.0" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/istib/rainbow-blocks.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "06yfb3i7wzvqrhkb61zib9xvpb5i00s4frizkzff66im05k0n795")))) + (build-system emacs-build-system) + (home-page "https://github.com/istib/rainbow-blocks") + (synopsis "Highlight sexp blocks") + (description "Rainbow-blocks is an Emacs mode that highlights blocks +made of parentheses, brackets, and braces according to their depth. Each +successive level is highlighted in a different color. This makes it easy to +orient yourself in the code, and tell which statements are at a given level.") + (license license:gpl3+)))) + +(define-public emacs-hierarchy + (package + (name "emacs-hierarchy") + (version "0.7.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/DamienCassou/hierarchy/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1a463v5zk6zis2p8cs4mads3iyxh266yahi6j6y0paggfl2yhkc8")))) + (build-system emacs-build-system) + (home-page "https://github.com/DamienCassou/hierarchy") + (synopsis "Library to create and display hierarchy structures") + (description "This package provides an Emacs library to create, query, +navigate and display hierarchy structures.") + (license license:gpl3+))) + +(define-public emacs-tree-mode + (let ((commit "b06078826d5875d74b0e7b7ac47b0d0917610534") + (revision "1")) + (package + (name "emacs-tree-mode") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacsorphanage/tree-mode.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "13bbdhdmqg4x9yghanhr8fsbsxbnypzxdxgicz31sjjm675kpnix")))) + (build-system emacs-build-system) + (home-page "https://github.com/emacsorphanage/tree-mode") + (synopsis "Emacs mode to manage tree widgets") + (description + "This package provides an Emacs library to manage tree widgets.") + (license license:gpl3+)))) + +(define-public emacs-md4rd + (let ((commit "be0fc4951b2d1f5194ffa1fcaac706dbac560500") + (revision "1")) + (package + (name "emacs-md4rd") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ahungry/md4rd.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1i93shx5x192gd7cl2r6gvcvhhwyi1k08abi5w3izv1hn3pmksgq")))) + (propagated-inputs + `(("emacs-hierarchy" ,emacs-hierarchy) + ("emacs-request" ,emacs-request) + ("emacs-dash" ,emacs-dash) + ("emacs-s" ,emacs-s) + ("emacs-tree-mode" ,emacs-tree-mode))) + (build-system emacs-build-system) + (home-page "https://github.com/ahungry/md4rd") + (synopsis "Emacs Mode for Reddit") + (description + "This package allows to read Reddit from within Emacs interactively.") + (license license:gpl3+)))) + +(define-public emacs-pulseaudio-control + (let ((commit "08c59e1dc45ec96edb62f34036e82cf5f14c0e8b") + (revision "1")) + (package + (name "emacs-pulseaudio-control") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/flexibeast/pulseaudio-control.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "10cgg1r00kz2fsnnryvzay5pf8s1pwb1dzlds1fbjdnyfvdgammv")))) + (build-system emacs-build-system) + (home-page "https://github.com/flexibeast/pulseaudio-control") + (synopsis "Control @code{pulseaudio} from Emacs") + (description + "This package allows to control @code{pulseaudio} from Emacs.") + (license license:gpl3+)))) + +(define-public emacs-datetime + (package + (name "emacs-datetime") + (version "0.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/doublep/datetime/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "12wqpj67rjij2ki7nmw38rz3k2bsq68pk6zswknlcn9qhp1zd9w9")))) + (build-system emacs-build-system) + (home-page "https://github.com/doublep/datetime/") + (synopsis "Library to work with dates in Emacs") + (description "Parsing, formatting, matching and recoding +timestamps and date-time format strings library for Emacs.") + (license license:gpl3+))) + +(define-public emacs-org-mind-map + (let ((commit "9d6e262bedd94daf9de269f4d56de277275677cb") + (revision "1")) + (package + (name "emacs-org-mind-map") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/theodorewiles/org-mind-map.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0jgkkgq7g64zckrmjib0hvz0qy3ynz5vz13qbmlpf096l3bb65wn")))) + (propagated-inputs + `(("emacs-dash" ,emacs-dash))) + (build-system emacs-build-system) + (home-page "https://github.com/theodorewiles/org-mind-map") + (synopsis "Create Graphviz directed graphs from Org files") + (description + "This package creates Graphviz directed graphs from Org files.") + (license license:gpl3+)))) + +(define-public emacs-npm-mode + (package + (name "emacs-npm-mode") + (version "0.6.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/mojochao/npm-mode/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1kq1ww22dwf8c2i2b4z2ldbbmnihj65kb7n5vzvwkch9h4hxpqh5")))) + (build-system emacs-build-system) + (home-page "https://github.com/mojochao/npm-mode") + (synopsis "Minor mode for working with @code{npm} projects") + (description + "@code{npm-mode} provides a minor mode to work with @code{npm} projects.") + (license license:gpl3+))) + +(define-public emacs-seq + (package + (name "emacs-seq") + (version "2.20") + (source + (origin + (method url-fetch) + (uri (string-append "http://elpa.gnu.org/packages/seq-" version ".tar")) + (sha256 + (base32 + "0vrpx6nnyjb0gsypknzagimlhvcvi5y1rcdkpxyqr42415zr8d0n")))) + (build-system emacs-build-system) + (home-page "http://elpa.gnu.org/packages/seq.html") + (synopsis "Sequence manipulation functions") + (description "Sequence-manipulation functions that complement basic +functions provided by @file{subr.el}.") + (license license:gpl3+))) + +(define-public emacs-itail + (let ((commit "6e43c20da03be3b9c6ece93b7dc3495975ec1888") + (revision "1")) + (package + (name "emacs-itail") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/re5et/itail.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "044nzxh1hq41faxw3lix0wy78vfz304pjcaa5a11dqfz7q3gx5cv")))) + (build-system emacs-build-system) + (home-page "https://github.com/re5et/itail") + (synopsis "Interactive @code{tail} Emacs mode") + (description "@code{itail} provides interactive @code{tail} mode +that allows you to filter the tail with unix pipes and highlight the +contents of the tailed file. Works locally or on remote files using +tramp.") + (license license:gpl3+)))) + +(define-public emacs-loop + (package + (name "emacs-loop") + (version "1.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Wilfred/loop.el/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1z3rhh3zyjabz36410yz0lp4a0qwwj0387as662wvx3z9y54jia9")))) + (build-system emacs-build-system) + (home-page "https://github.com/Wilfred/loop.el") + (synopsis "Imperative loop structures for Emacs") + (description "Loop structures familiar to users of other languages. This +library adds a selection of popular loop structures as well as break and +continue.") + (license license:gpl3+))) + +(define-public emacs-elisp-refs + (package + (name "emacs-elisp-refs") + (version "1.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Wilfred/elisp-refs/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0fj6wphwrvbslw46w7wgdk3b4bfr312ygj3lbgr9qw63lpqw26nl")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-f" ,emacs-f) + ("emacs-list-utils" ,emacs-list-utils) + ("emacs-loop" ,emacs-loop) + ("emacs-s" ,emacs-s))) + (home-page "https://github.com/Wilfred/elisp-refs") + (synopsis "Find callers of elisp functions or macros") + (description "Find references to functions, macros or variables. Unlike a +dumb text search, @code{elisp-refs} actually parses the code, so it's never +confused by comments or @code{foo-bar} matching @code{foo}.") + (license license:gpl3+))) + +(define-public emacs-crux + (let ((commit "4f5c8fefd5a6aa52e128c4a0401cc86410d6ac8f") + (revision "1")) + (package + (name "emacs-crux") + (version (string-append "0.3.0" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bbatsov/crux.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1fdxvv25cs01sg6fmvmzxpzvs50i6v8n2jya60lbavxqqhi0sbxd")))) + (build-system emacs-build-system) + (home-page "https://github.com/bbatsov/crux") + (synopsis "Collection of useful functions for Emacs") + (description + "@code{crux} provides a collection of useful functions for Emacs.") + (license license:gpl3+)))) + +(define-public emacs-edit-server + (package + (name "emacs-edit-server") + (version "1.13") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/stsquad/emacs_chrome/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1r92kqggslqasza718z4ka883mqfbnibdm43f0j9gaipk0msm2wf")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir-elisp + ;; Elisp directory is not in root of the source. + (lambda _ + (chdir "servers")))))) + (home-page "https://github.com/stsquad/emacs_chrome") + (synopsis "Server that responds to edit requests from Chromium") + (description + "This package provides an edit server to respond to requests from Emacs.") + (license license:gpl3+))) + +(define-public emacs-m-buffer-el + (package + (name "emacs-m-buffer-el") + (version "0.15") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/phillord/m-buffer-el" + "/archive/" "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "17vdcc8q37q9db98jyww1c0ivinmwfcw4l04zccfacalra63a214")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'install 'check + (lambda* (#:key inputs #:allow-other-keys) + (zero? (system* "emacs" "--batch" "-L" "." + "-l" "test/m-buffer-test.el" + "-l" "test/m-buffer-at-test.el" + "-f" "ert-run-tests-batch-and-exit"))))))) + (build-system emacs-build-system) + (home-page "https://github.com/phillord/m-buffer-el") + (synopsis "List oriented buffer operations for Emacs") + (description "@code{m-buffer} provides a set of list-orientated functions +for operating over the contents of Emacs buffers.") + (license license:gpl3+))) + +(define-public emacs-let-alist + (package + (name "emacs-let-alist") + (version "1.0.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://elpa.gnu.org/packages/let-alist-" version ".el")) + (sha256 + (base32 + "0r7b9jni50la1m79kklml11syg8d2fmdlr83pv005sv1wh02jszw")))) + (build-system emacs-build-system) + (home-page "https://elpa.gnu.org/packages/let-alist.html") + (synopsis "Easily let-bind values of an assoc-list by their names") + (description "This package offers a single macro, @code{let-alist}. This +macro takes a first argument (whose value must be an alist) and a body.") + (license license:gpl3+))) + +(define-public emacs-esup + (let ((commit "a589005a9a888537deef94d6fe38a9b8790c97c7") + (revision "1")) + (package + (name "emacs-esup") + (version (string-append "0.6" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jschaf/esup.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "04lxmd0h7mfjjl0qghrycgff0vcv950j1wqv0dbkr61jxp64n5fv")))) + ;; TODO: Add tests + (build-system emacs-build-system) + (home-page "https://github.com/jschaf/esup") + (synopsis "Emacs start up profiler") + (description "Benchmark Emacs Startup time without ever leaving +your Emacs.") + (license license:gpl2+)))) + +(define-public emacs-sourcemap + (package + (name "emacs-sourcemap") + (version "0.03") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/syohex/emacs-sourcemap/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0bmd5l3cx2iyl7vxn84xdhs80b07kpdpfwki28lh5d0kmm5qs6m6")))) + (build-system emacs-build-system) + (home-page "https://github.com/syohex/emacs-sourcemap") + (synopsis "Sourcemap parser") + (description "Sourcemap parser") + (license license:gpl3+))) + +(define-public emacs-macrostep + (let ((commit "424e3734a1ee526a1bd7b5c3cd1d3ef19d184267")) + (package + (name "emacs-macrostep") + (version (git-version "0.9" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/joddie/macrostep.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1fm40mxdn289cyzgw992223dgrjmwxn4q8svyyxfaxjrpb38jhjz")))) + (build-system emacs-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'remove-test + ;; Fails because of requirement ‘/bin/sh’. + (lambda _ + (let ((file "macrostep-test.el")) + (chmod file #o644) + (emacs-batch-edit-file file + `(progn (progn (goto-char (point-min)) + (re-search-forward + "(ert-deftest macrostep-expand-c-macros") + (beginning-of-line) + (kill-sexp)) + (basic-save-buffer)))))) + (add-before 'install 'check + (lambda _ + (invoke "emacs" "--batch" "-L" "." + "-l" "macrostep-test.el" + "-f" "ert-run-tests-batch-and-exit")))))) + (home-page "https://github.com/joddie/macrostep") + (synopsis "Interactive macro-expander for Emacs") + (description "@code{macrostep} is an Emacs minor mode for interactively +stepping through the expansion of macros in Emacs Lisp source code. It lets +you see exactly what happens at each step of the expansion process by +pretty-printing the expanded forms inline in the source buffer, which is +temporarily read-only while macro expansions are visible. You can expand and +collapse macro forms one step at a time, and evaluate or instrument the +expansions for debugging with Edebug as normal (but see “Bugs and known +limitations”, below). Single-stepping through the expansion is particularly +useful for debugging macros that expand into another macro form. These can be +difficult to debug with Emacs’ built-in macroexpand, which continues expansion +until the top-level form is no longer a macro call.") + (license license:gpl3+)))) + +(define-public emacs-parent-mode + (package + (name "emacs-parent-mode") + (version "2.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Fanael/parent-mode/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0gxbl5s1w96v6v55b7aaansgw4sxhzfx9nrsvpk3pfhsibs6yqjd")))) + (build-system emacs-build-system) + (home-page "https://github.com/Fanael/parent-mode") + (synopsis "Get major mode's parent modes") + (description "Get major mode's parent modes") + (license license:gpl3+))) + +(define-public emacs-lacarte + (package + (name "emacs-lacarte") + (version "0.1") + (source (origin + (method url-fetch) + (uri "https://www.emacswiki.org/emacs/download/lacarte.el") + (sha256 + (base32 + "1sbmk37ljq5j7dsw5c37sbxvlfgdqswh7bi4dknyjzfxlq50f4am")))) + (build-system emacs-build-system) + (home-page "https://www.emacswiki.org/emacs/lacarte.el") + (synopsis "Execute menu items as commands, with completion") + (description "Execute menu items as commands, with completion.") + (license license:gpl3))) + +(define-public emacs-company-lua + (let ((commit "0be8122f3adf57ad27953bf4b03545d6298d3da4")) + (package + (name "emacs-company-lua") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ptrv/company-lua.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1d9i165apgmwns7b2fd5wcpjpkah3dyj20v5sb8ynvz6qhhr5r9c")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-company" ,emacs-company) + ("emacs-s" ,emacs-s) + ("emacs-f" ,emacs-f) + ("emacs-lua-mode" ,emacs-lua-mode))) + (home-page "https://github.com/ptrv/company-lua") + (synopsis "Company backend for Lua") + (description + "This package provides Company backend for Lua programming language.") + (license license:gpl3+)))) + +(define-public emacs-beginend + (package + (name "emacs-beginend") + (version "2.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/DamienCassou/beginend/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0z4rbwffh9vxfvcrlvym4p73z7gf72q0b5iv33llbpcpbijknnrq")))) + ;; TODO: Run tests. + (build-system emacs-build-system) + (inputs + `(("emacs-undercover" ,emacs-undercover))) ; For tests. + (home-page "https://github.com/DamienCassou/beginend") + (synopsis "Redefine @code{M-<} and @code{M->} for Emacs modes") + (description "@code{beginend} redefines @code{M-<} and @code{M->} +keybindings for Emacs modes so that point moves to meaningful +locations. Redefined keys are still accessible by pressing the same +key again.") + (license license:gpl3+))) + +(define-public emacs-mbsync + (let ((commit "42077e83ae2db778ce0f8e22f8357b40355526b3") + (revision "1")) + (package + (name "emacs-mbsync") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dimitri/mbsync-el.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0yj93y2mpxlir8x73znlg1slxlv4blm1vjv5h2w3j8lxg8bxvmn6")))) + (build-system emacs-build-system) + (home-page "https://github.com/dimitri/mbsync-el") + (synopsis "Interface to mbsync for Emacs") + (description "This package allows to call the @code{mbsync} from +within Emacs.") + (license license:gpl3+)))) + +(define-public emacs-ibuffer-projectile + (let ((commit "c18ac540ee46cb759fc5df18747f6e8d23563011") + (revision "1")) + (package + (name "emacs-ibuffer-projectile") + (version (string-append "0.2" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/purcell/ibuffer-projectile.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1nd26cwwdpnwj0g4w393rd59klpyr6wqrnyr6scmwb5d06bsm44n")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-projectile" ,emacs-projectile))) + (home-page "https://github.com/purcell/ibuffer-projectile") + (synopsis "Group ibuffer's list by projectile root") + (description "Adds functionality to Emacs @code{ibuffer} for +grouping buffers by their projectile root directory.") + (license license:gpl3+)))) + +(define-public emacs-helm-mode-manager + (package + (name "emacs-helm-mode-manager") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/istib/helm-mode-manager/" + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0wllj321z16hgrx0ddwzk5wz4mnnx5am7w5nclqclfc5dfdn92wm")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) + (home-page "https://github.com/istib/helm-mode-manager/") + (synopsis "Switch and toggle Emacs major and minor modes using Helm") + (description "This package provides a Helm interface for toggling Emacs +major or minor mode. + +@itemize +@item @code{helm-switch-major-mode} list of all major modes +@item @code{helm-enable-minor-mode} list of all inactive minor modes +@item @code{helm-disable-minor-mode} list of all ACTIVE minor modes +@end itemize\n + +Hitting @code{RET} enables the mode, @code{C-z} shows the mode +documentation.") + (license license:gpl3+))) + +(define-public emacs-hy-mode + (package + (name "emacs-hy-mode") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/hylang/hy-mode/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0sbga36zkyhzrzcczsyjzll7b9qsa215pnlw51m4li2irm23jh17")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-s" ,emacs-s))) + (home-page "https://github.com/hylang/hy-mode") + (synopsis "Major mode for Hylang") + (description "This package provides a major mode for Hylang.") + (license license:gpl3+))) + +(define-public emacs-web-beautify + (package + (name "emacs-web-beautify") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/yasuyk/web-beautify/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1j57hwid74id4swkx2g0iljfawx0k9c7qjrwqc0mv657x9p78hcs")))) + (build-system emacs-build-system) + (home-page "https://github.com/yasuyk/web-beautify") + (synopsis "Format HTML, CSS and JavaScript, JSON") + (description "This package provides an Emacs functions to format HTML, +CSS, JavaScript, JSON.") + (license license:gpl3+))) + +(define-public emacs-helm-shell-history + (let ((commit "110d3c35c52fe4b89b29e79ea4c8626bce7266a1")) + (package + (name "emacs-helm-shell-history") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/yuutayamada/helm-shell-history.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "18fkjcz69g4dyaxhf9j8svr5x6dhsdnglddwisis8hdn504scpfj")))) + (build-system emacs-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'patch-helm-shell-history-file + (lambda _ + (let ((file "helm-shell-history.el")) + (chmod file #o644) + (emacs-substitute-sexps file + ("(defvar helm-shell-history-file" + `(expand-file-name "~/.bash_history")))) + #t))))) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) + (home-page "https://github.com/yuutayamada/helm-shell-history") + (synopsis "Find shell history with Emacs Helm") + (description "This package provides an Emacs Helm interface to search +throw a shell history.") + (license license:gpl3+)))) + +(define-public emacs-discover-my-major + (package + (name "emacs-discover-my-major") + (version "1.0") + (source + (origin + (method url-fetch) + (uri + (string-append "https://github.com/steckerhalter/discover-my-major" + "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0nah41f92rrl2l405kpqr6iaks11jyclgl4z7ilfymbr4ifmsiyl")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-makey" ,emacs-makey))) + (home-page "https://github.com/steckerhalter/discover-my-major") + (synopsis "Discover key bindings for the current Emacs major mode") + (description "This package provides allows to discover key bindings and +their meaning for the current Emacs major-mode.") + (license license:gpl3+))) + +(define-public emacs-org-ref + (let ((commit "8c9b5d7efb9f0c1ad5186b8203bdd017f4249129") + (revision "1")) + (package + (name "emacs-org-ref") + (version (string-append "1.1.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jkitchin/org-ref.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1rxz0bjdsayk0slv23i07d9xhj2m7s4hsc81wc2d1cs52dkr5zmz")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-helm" ,emacs-helm) + ("emacs-helm-bibtex" ,emacs-helm-bibtex) + ("emacs-ivy" ,emacs-ivy) + ("emacs-hydra" ,emacs-hydra) + ("emacs-key-chord" ,emacs-key-chord) + ("emacs-s" ,emacs-s) + ("emacs-f" ,emacs-f) + ("emacs-pdf-tools" ,emacs-pdf-tools))) + (home-page "https://github.com/jkitchin/org-ref") + (synopsis "Citations, cross-references and bibliographies in org-mode") + (description + "Lisp code to setup bibliography, cite, ref and label org-mode links. +Also sets up reftex and helm for org-mode citations. The links are +clickable and do things that are useful. + +The default setup uses helm-bibtex. + +You should really read org-ref.org in this package for details.") + (license license:gpl3+)))) + +(define-public emacs-add-hooks + (package + (name "emacs-add-hooks") + (version "3.1.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/nickmccurdy/add-hooks/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "03a28gb3298g7pc2qji9hi44p4d99ljp5mpi9cmg42ldv8fl6549")))) + (build-system emacs-build-system) + (home-page "https://github.com/nickmccurdy/add-hooks/") + (synopsis "Emacs function for setting multiple hooks") + (description "This package provides a @code{add-hooks} function tidies up +duplicate hook and function names further into a single declarative call.") + (license license:gpl3+))) + +(define-public emacs-fancy-narrow + (package + (name "emacs-fancy-narrow") + (version "0.9.5") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Malabarba/fancy-narrow/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0rf2rnzg82pdqch041yyx3f9ddixffkk9s2ydzg8hwy66sg3385n")))) + (build-system emacs-build-system) + (home-page "https://github.com/Malabarba/fancy-narrow/releases") + (synopsis "Immitate narrow-to-region with more eye-candy") + (description "Unlike narrow-to-region, which completely hides text outside +the narrowed region, this package simply deemphasizes the text, makes it +readonly, and makes it unreachable. This leads to a much more natural +feeling, where the region stays static (instead of being brutally moved to a +blank slate) and is clearly highlighted with respect to the rest of the +buffer.") + (license license:gpl2+))) + +(define-public emacs-know-your-http-well + (package + (name "emacs-know-your-http-well") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/for-GET/know-your-http-well/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1y3kwz88awcgwaivlswq0q4g2i02762r23lpwg61bfqy5lrjjqnj")))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'install-json-files + (lambda* (#:key outputs #:allow-other-keys) + (for-each (lambda (directory) + (copy-recursively directory + (string-append + (assoc-ref outputs "out") + directory))) + '("js" "json")))) + (add-after 'unpack 'chdir-elisp + ;; Elisp directory is not in root of the source. + (lambda _ + (chdir "emacs")))))) + (build-system emacs-build-system) + (home-page "https://github.com/for-GET/know-your-http-well") + (synopsis "Meaning of HTTP headers codes") + (description "Meaning of HTTP headers codes.") + (license license:gpl3+))) + +(define-public emacs-navi-mode + (let ((commit "c1d38e8237f4e14af020a0b7d4f118ea198ab674")) + (package + (name "emacs-navi-mode") + (version (git-version "2.0" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/alphapapa/navi.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0jj5spk14hgb7zb1cd2n8whcw4k1kd5zb6llwj96v178yaws7l8k")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-outshine" ,emacs-outshine) + ("emacs-outorg" ,emacs-outorg))) + (home-page "https://github.com/alphapapa/navi") + (synopsis "Emacs major-mode for easy buffer-navigation") + (description + "This package provides an Emacs major-mode for easy buffer-navigation") + (license license:gpl3+)))) + +(define-public emacs-download-region + (let ((commit "eb9e557529a73b4cfc8281c70dd0d95db333fffa") + (revision "1")) + (package + (name "emacs-download-region") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/zk-phi/download-region.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0v52djg39b6k2snizd9x0qc009ws5y0ywqsfwhqgcbs5ymzh7dsc")))) + (build-system emacs-build-system) + (home-page "https://github.com/zk-phi/download-region") + (synopsis "In buffer download manager for Emacs") + (description "@code{download-region} provides in buffer +downloading manager for Emacs.") + (license license:gpl3+)))) + +(define-public emacs-csv-mode + (package + (name "emacs-csv-mode") + (version "1.7") + (source + (origin + (method url-fetch) + (uri (string-append "http://elpa.gnu.org/packages/csv-mode-" + version ".el")) + (sha256 + (base32 + "0r4bip0w3h55i8h6sxh06czf294mrhavybz0zypzrjw91m1bi7z6")))) + (build-system emacs-build-system) + (home-page "http://elpa.gnu.org/packages/csv-mode.html") + (synopsis "Major mode for editing comma or char separated values") + (description + "This package provides an Emacs CSV mode, a major mode for editing +records in a generalized CSV (character-separated values) format.") + (license license:gpl3+))) + +(define-public emacs-helpful + (package + (name "emacs-helpful") + (version "0.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/Wilfred/helpful/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "16dx566qzrjj0bf43lnw7h1qlvgs94brqplamw8kppp2ylr72qs9")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-elisp-refs" ,emacs-elisp-refs))) + (home-page "https://github.com/Wilfred/helpful") + (synopsis "More contextual information in Emacs help") + (description "@code{helpful} is an alternative to the built-in Emacs help +that provides much more contextual information. + +@itemize +@item Show the source code for interactively defined functions (unlike the +built-in Help). +@item Fall back to the raw sexp if no source is available. +@item Show where a function is being called. +@item Docstrings will Highlight the summary (the first sentence), include +cross-references, hide superfluous puncuation. +@item Show you the properties that have been applied to the current +symbol. This provides visibility of features like edebug or byte-code +optimisation. +@item Provide a separate @code{helpful-command} function to view interactive +functions. +@item Display any keybindings that apply to interactive functions. +@item Trace, disassemble functions from inside Helpful. This is discoverable +and doesn't require memorisation of commands. +@end itemize\n") + (license license:gpl3+))) + +(define-public emacs-logview + (package + (name "emacs-logview") + (version "0.9") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/doublep/logview/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1vd11ppm46ldqsiwhqgw91p34gbjh1y82r9mxcn9r2gj65nvhxcp")))) + (propagated-inputs + `(("emacs-datetime" ,emacs-datetime))) + (build-system emacs-build-system) + (home-page "https://github.com/doublep/logview/") + (synopsis "Emacs mode for viewing log files") + (description "@code{logview} provides an Emacs mode to view log files.") + (license license:gpl3+))) + +(define-public emacs-suggest + (package + (name "emacs-suggest") + (version "0.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Wilfred/suggest.el/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1760fm3j19w8xxcawq6s859h86q1rdg69pg9yz48n76kwfk3vlgp")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-loop" ,emacs-loop) + ("emacs-dash" ,emacs-dash) + ("emacs-s" ,emacs-s) + ("emacs-f" ,emacs-f))) + (home-page "https://github.com/Wilfred/suggest.el") + (synopsis "Suggest Elisp functions that give the output requested") + (description "Suggest.el will find functions that give the output +requested. It's a great way of exploring list, string and arithmetic +functions.") + (license license:gpl3+))) + +(define-public emacs-benchmark-init + (package + (name "emacs-benchmark-init") + (version "1.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/dholm/benchmark-init-el/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0szyqr4nncwz4vd5gww1vz31kf9r2lx25p4d0d09pm35974x53kz")))) + (build-system emacs-build-system) + (home-page "https://github.com/dholm/benchmark-init-el") + (synopsis "Benchmark Emacs @code{require} and @code{load} calls") + (description "@code{benchmark-init} provides a way to keep track of where +time is being spent during Emacs startup in order to optimize startup time.") + (license license:gpl3+))) + +(define-public emacs-emms-player-simple-mpv + (let ((commit "101d120ccdee1c2c213fd2f0423c858b21649c00") + (revision "1")) + (package + (name "emacs-emms-player-simple-mpv") + (version (string-append "0.4.0" "-" revision "." + (string-take commit 7))) + + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/momomo5717/emms-player-simple-mpv.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1i6rxkm0ra0jbkkwgkwxg3vk5xfl794h1gkgnlpscynz0v94b6ll")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-emms" ,emms))) + (home-page "https://github.com/momomo5717/emms-player-simple-mpv") + (synopsis "Extension of @file{emms-player-simple.el} for mpv JSON IPC") + (description "@code{emms-player-simple-mpv} provides macros and +functions for defining emms simple players of mpv.") + (license license:gpl3+)))) + +(define-public emacs-magit-org-todos-el + (let ((commit "df206287737b9671f2e36ae7b1474ebbe9940d2a")) + (package + (name "emacs-magit-org-todos-el") + (version (git-version "0.1.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/danielma/magit-org-todos.el.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0kdp7k7jnnrkhsg0xh1c3h7iz0vgi120gf5xwl1hxy61avivnxrn")))) + (propagated-inputs + `(("magit" ,magit))) + (build-system emacs-build-system) + (home-page "https://github.com/danielma/magit-org-todos.el") + (synopsis "Get todo.org into Emacs Magit status") + (description "This package allows you to get @file{todo.org} into your +magit status. + +If you have a @file{todo.org} file with @code{TODO} items in the root of your +repository, @code{magit-org-todos} will create a section in your Magit status +buffer with each of your todos.") + (license license:gpl3+)))) + +(define-public emacs-f3 + (package + (name "emacs-f3") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/cosmicexplorer/f3/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "06b8i1jvklm5k3k90n65f197l1miq1xlxqkqpbppw4h3rhl4y98h")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) + (home-page "https://github.com/cosmicexplorer/f3") + (synopsis "Fantastic File Finder for Emacs") + (description + "The Fantastic File Finder for Emacs. Find files fast, using helm.") + (license license:gpl3+))) + +(define-public emacs-lice-el + (let ((commit "4339929927c62bd636f89bb39ea999d18d269250")) + (package + (name "emacs-lice-el") + (version (git-version "0.2" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/buzztaiki/lice-el.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0879z761b7gajkhq176ps745xpdrivch349crransv8fnsc759yb")))) + (build-system emacs-build-system) + (home-page "https://github.com/buzztaiki/lice-el") + (synopsis "License and header template for Emacs") + (description "@code{lice.el} provides following features: + +@itemize +@item License template management. +@item File header insertion. +@end itemize\n") + (license license:gpl3+)))) + +(define-public emacs-academic-phrases + (let ((commit "0823ed8c24b26c32f909b896a469833ec4d7b656")) + (package + (name "emacs-academic-phrases") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/nashamri/academic-phrases.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0qfzsq8jh05w4zkr0cvq3i1hdn97bq344vcqjg46sib26x3wpz6r")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-s" ,emacs-s) + ("emacs-ht" ,emacs-ht))) + (home-page "https://github.com/nashamri/academic-phrases") + (synopsis "Bypass that mental block when writing your papers") + (description + "When writing your academic paper, you might get stuck trying to find +the right phrase that captures your intention. This package tries to +alleviate that problem by presenting you with a list of phrases organized by +the topic or by the paper section that you are writing. This package has +around 600 phrases so far. + +Using this package is easy, just call @code{academic-phrases} to get a list of +phrases organized by topic, or call @code{academic-phrases-by-section} to +browse the phrases by the paper section and fill-in the blanks if required.") + (license license:gpl3+)))) + +(define-public emacs-auto-yasnippet + (let ((commit "d1ccfea87312c6dd8cf8501ab5b71b1d3d44d95b")) + (package + (name "emacs-auto-yasnippet") + (version (git-version "0.3.0" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/abo-abo/auto-yasnippet.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1i8k2qiyzd5rq0zplk4xb5nfa5mp0ibxbzwqj6c7877waq7244xk")))) + (build-system emacs-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'install 'check + (lambda _ + (invoke "emacs" "--batch" + "-l" "auto-yasnippet.el" + "-l" "auto-yasnippet-test.el" + "-f" "ert-run-tests-batch-and-exit")))))) + (propagated-inputs + `(("emacs-yasnippet" ,emacs-yasnippet))) + (home-page "https://github.com/abo-abo/auto-yasnippet/") + (synopsis "Quickly create disposable yasnippets") + (description "This package provides a hybrid of keyboard macros and +yasnippet. You create the snippet on the go, usually to be used just in the +one place. It's fast, because you're not leaving the current buffer, and all +you do is enter the code you'd enter anyway, just placing ~ where you'd like +yasnippet fields and mirrors to be.") + (license license:gpl3+)))) + +(define-public emacs-highlight-numbers + (package + (name "emacs-highlight-numbers") + (version "0.2.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/Fanael/highlight-numbers/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "030v5p11d4n0581ncv499l1fqrmfziy756q6378x2bv22ixghqqp")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-parent-mode" ,emacs-parent-mode))) + (home-page "https://github.com/Fanael/highlight-numbers") + (synopsis "Highlight numbers in source code") + (description "@code{highlight-numbers-mode} provides a minor mode for +syntax highlighting of numeric literals in source code. + +It s customizable: it's easy to add or redefine what exactly consitutes a +\"number\" in given major mode. See @code{highlight-numbers-modelist}.") + (license license:gpl3+))) + +(define-public emacs-darkroom + (package + (name "emacs-darkroom") + (version "0.1") + (source (origin + (method url-fetch) + (uri (string-append "https://elpa.gnu.org/packages/darkroom-" + version ".el")) + (sha256 + (base32 + "0fif8fm1h7x7g16949shfnaik5f5488clsvkf8bi5izpqp3vi6ak")))) + (build-system emacs-build-system) + (home-page "https://elpa.gnu.org/packages/darkroom.html") + (synopsis "Remove visual distractions and focus on writing") + (description "@code{darkroom-mode} makes visual distractions disappear. +The mode-line is temporarily elided, text is enlarged and margins are adjusted +so that it's centered on the window. + +@code{darkroom-tentative-mode} is similar, but it doesn't immediately turn-on +@code{darkroom-mode}, unless the current buffer lives in the sole window of +the Emacs frame (i.e. all other windows are deleted). Whenever the frame is +split to display more windows and more buffers, the buffer exits +@code{darkroom-mode}. Whenever they are deleted, the buffer re-enters +@code{darkroom-mode}.") + (license license:gpl3+))) + +(define-public emacs-rsw-elisp + (package + (name "emacs-rsw-elisp") + (version "1.0.5") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/rswgnu/rsw-elisp" + "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1jnn7xfwl3wxc87v44ccsf1wwp80par3xgcvfb1icd6zchjmlcps")))) + (build-system emacs-build-system) + (home-page "https://github.com/rswgnu/rsw-elisp") + (synopsis "Improved expressions that interactively evaluate Emacs Lisp") + (description "This package improves and replaces the GNU Emacs commands +that interactively evaluate Emacs Lisp expressions. The new commands replace +standard key bindings and are all prefixed with @code{rsw-elisp-}. They work +the same way as the old commands when called non-interactively; only the +interactive behavior should be different.") + (license license:gpl3+))) + +(define-public emacs-default-text-scale + (let ((commit "968e985e219235f3e744d6d967e592acbaf6e0a8") + (revision "1")) + (package + (name "emacs-default-text-scale") + (version (string-append "0.1" "-" revision "." + (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/purcell/default-text-scale") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0zds01c3q5yny6ab1fxfkzzgn1kgl3q23lxxap905f4qd70v922h")))) + (build-system emacs-build-system) + (home-page "https://github.com/purcell/default-text-scale") + (synopsis "Adjust the font size in all Emacs frames") + (description "This package provides commands for increasing or +decreasing the default font size in all GUI Emacs frames.") + (license license:gpl3+)))) + +(define-public emacs-visual-regexp + (package + (name "emacs-visual-regexp") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/benma/visual-regexp.el/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1czmhvcivlcdyz7rfm0vd4a3xsgmy4qbvbl6yjxc217wrxqflr92")))) + (build-system emacs-build-system) + (home-page "https://github.com/benma/visual-regexp.el/") + (synopsis "Regexp command with interactive visual feedback") + (description "This package provides an Emacs regexp command with +interactive visual feedback.") + (license license:gpl3+))) + +(define-public emacs-faceup + (let ((commit "6c92dad56a133e14e7b27831e1bcf9b3a71ff154") + (revision "1")) + (package + (name "emacs-faceup") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Lindydancer/faceup.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1yzmy7flrhrh0i10bdszx8idx6r8h6czm4vm4q0z6fp5fw94zwrx")))) + (build-system emacs-build-system) + (home-page "https://github.com/Lindydancer/faceup") + (synopsis "Markup language for faces and font-lock regression testing") + (description "Emacs is capable of highlighting buffers based on +language-specific @code{font-lock} rules. This package makes it possible to +perform regression test for packages that provide font-lock rules.") + (license license:gpl3+)))) + +(define-public emacs-racket-mode + (let ((commit "33877b1bb24faea68842e0396bd5718b84e47451") + (revision "1")) + (package + (name "emacs-racket-mode") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/greghendershott/racket-mode") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0681mzwx08zwbh8qg3s26jw1jn4fw2ljp1akxqkhy08sxhafqvb1")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-faceup" ,emacs-faceup) + ("emacs-s" ,emacs-s))) + (home-page "https://github.com/greghendershott/racket-mode") + (synopsis "Major mode for Racket language") + (description "@code{racket-mode} provides: + +@itemize +@item Focus on Racket (not various Schemes). +@item Follow DrRacket concepts where applicable. +@item Thorough font-lock and indent. +@end itemize\n") + (license license:gpl3+)))) + +(define-public emacs-grep-context + (let ((commit "a17c57e66687a54e195e08afe776bdd60cb6c0a7")) + (package + (name "emacs-grep-context") + (version (git-version "0.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/mkcms/grep-context.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1nqfa6kjzjshww4hnwg1c0vcr90bdjihy3kmixq3c3jkvxg99b62")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash))) + (home-page "https://github.com/nashamri/academic-phrases") + (synopsis "Increase context in compilation and grep buffers") + (description + "This package provides an Emacs package for more context in +compilation/grep buffers. Works with @code{wgrep}, @code{ack}, @code{ag}, +@code{ivy}.") + (license license:gpl3+)))) + +(define-public emacs-helm-firefox + (let ((commit "0ad34b7b5abc485a86cae6920c14de861cbeb085") + (revision "1")) + (package + (name "emacs-helm-firefox") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-helm/helm-firefox.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "08mjsi2f9s29fkk35cj1rrparjnkm836qmbfdwdz7y51f9varjbs")))) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) + (build-system emacs-build-system) + (home-page "https://github.com/emacs-helm/helm-firefox") + (synopsis "Display firefox bookmarks with Emacs Helm interface") + (description "Display firefox bookmarks with Emacs Helm interface") + (license license:gpl3+)))) + +(define-public emacs-interactive-align + (package + (name "emacs-interactive-align") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/mkcms/interactive-align/" + "archive/" "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0sibpgb4lp6yy3pziak8f3hz4b28yj0dqy2nzh51z3d0b63h528m")))) + (build-system emacs-build-system) + (home-page "https://github.com/mkcms/interactive-align/") + (synopsis "Interactive align-regexp command in Emacs") + (description "Interactive align-regexp command in Emacs") + (license license:gpl3+))) + +(define-public emacs-shift-number + (package + (name "emacs-shift-number") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/alezost/shift-number.el" + "/archive/" "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1g79m0hqn9jgpm565vvh8pdfzndc4vw7xisnh5qysj55qfg8cb1x")))) + (build-system emacs-build-system) + (home-page "https://github.com/alezost/shift-number.el") + (synopsis "Increase or decrease the number at point") + (description "@code{emacs-shift-number} provides commands +@code{shift-number-up} to increase and @code{shift-number-down} to +decrease the number at point.") + (license license:gpl3+))) + +(define-public emacs-highlight-defined + (package + (name "emacs-highlight-defined") + (version "0.1.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/Fanael/highlight-defined/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ryd66989b5byqdw8jmjrjf0c78iiz72wibld750skcnj5h5h506")))) + (build-system emacs-build-system) + (home-page "https://github.com/Fanael/highlight-defined") + (synopsis "Syntax highlighting of known Elisp symbols") + (description "Minor mode providing syntax highlighting of known Emacs Lisp +symbols. Currently the code distinguishes Lisp functions, built-in functions, +macros, faces and variables. To enable call @code{highlight-defined-mode}. ") + (license license:gpl3+))) + +(define-public emacs-parinfer-mode + (package + (name "emacs-parinfer-mode") + (version "0.4.10") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/DogLooksGood/parinfer-mode/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "06ba9qi59sm9ih9m38fbr8kj4qkvrm58n0c0ngfjz60gnr9x9pcv")))) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-rainbow-delimiters" ,emacs-rainbow-delimiters) + ("emacs-company" ,emacs-company))) + (build-system emacs-build-system) + (home-page "https://github.com/DogLooksGood/parinfer-mode/") + (synopsis "Lisp structure editing mode") + (description "@code{parinfer-mode} is a proof-of-concept editor +mode for Lisp programming languages. It will infer some changes to +keep Parens and Indentation inline with one another.") + (license license:gpl3+))) + +(define-public emacs-helm-eww + (let ((commit "5d6c2c66d4694415ef8a16a6d38a37aeae76c5ac")) + (package + (name "emacs-helm-eww") + (version (git-version "0.1" "1" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-helm/helm-eww.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1x442ylrr7cx587s4rvfh187h3qbkr79qp95qr57a4igxkkw6183")))) + (propagated-inputs + `(("emacs-helm" ,emacs-helm))) + (build-system emacs-build-system) + (home-page "https://github.com/emacs-helm/helm-eww/") + (synopsis "Helm interface to EWW") + (description "This package provides a Helm interface for EWW buffers, +bookmarks and history.") + (license license:gpl3+)))) + +(define-public emacs-stumpwm-mode + (let ((commit "8fbe071d2c6c040794060a354eb377218dc10b35") + (revision "1")) + (package + (name "emacs-stumpwm-mode") + (version (string-append "0.0.1-" revision "." + (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stumpwm/stumpwm-contrib.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1dfwsvz1c8w6j4jp0kzaz78ml3f5dp0a5pvf090kwpbpg176r7iq")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'chdir-elisp + ;; Elisp directory is not in root of the source. + (lambda _ + (chdir "util/swm-emacs")))))) + (home-page "https://github.com/stumpwm/stumpwm-contrib") + (synopsis "Emacs minor-mode for Stumpwm") + (description "Emacs minor-mode for Stumpwm") + (license license:gpl3+)))) + +(define-public emacs-irfc + (package + (name "emacs-irfc") + (version "20130824.507") + (source + (origin + (method url-fetch) + (uri "https://www.emacswiki.org/emacs/download/irfc.el") + (file-name (string-append "irfc-" version ".el")) + (sha256 + (base32 + "197ybqwbj8qjh2p9pkf5mvqnrkpcgmv8c5s2gvl6msyrabk0mnca")))) + (build-system emacs-build-system) + (home-page "https://www.emacswiki.org/emacs/download/irfc.el") + (synopsis "Interface for IETF RFC document") + (description + "This package provides an Emacs interface for IETF RFC document.") + (license license:gpl3+))) + +(define-public emacs-ido-vertical-mode + (package + (name "emacs-ido-vertical-mode") + (version "0.1.6") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/creichert/ido-vertical-mode.el/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0dprdxq8wvqd45dinwj92k0kixr07c8xvspa6i613mjcpxgwjg53")))) + (build-system emacs-build-system) + (home-page "https://github.com/creichert/ido-vertical-mode.el") + (synopsis "Makes ido-mode display vertically") + (description "Makes ido-mode display prospects vertically.") + (license license:gpl3+))) + +(define-public emacs-wordgen + (package + (name "emacs-wordgen") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Fanael/wordgen.el/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1h2iyixdm49h53pwj9ics9gb9h3g6wa4hainpnjg6mfarf49jkmg")))) + (build-system emacs-build-system) + (home-page "https://github.com/Fanael/wordgen.el") + (synopsis "Random word generator") + (description "This package provides functions to generate random words +using user-provided rules.") + (license license:gpl3+))) + +(define-public emacs-on-screen + (package + (name "emacs-on-screen") + (version "1.3.2") + (source + (origin + (method url-fetch) + (uri (string-append + "http://elpa.gnu.org/packages/on-screen-" version ".el")) + (file-name (string-append name "-" version ".el")) + (sha256 + (base32 + "15d18mjgv1pnwl6kf3pr5w64q1322p1l1qlfvnckglwmzy5sl2qv")))) + (build-system emacs-build-system) + (home-page + "https://github.com/michael-heerdegen/on-screen.el") + (synopsis "Guide your eyes while scrolling") + (description + "Scrolling can be distracting because your eyes may lose +orientation. This library implements a minor mode that highlights +the previously visible buffer part after each scroll.") + (license license:gpl3+))) + +(define-public emacs-highlight-escape-sequences + (let ((commit "08d846a7aa748209d65fecead2b6a766c3e5cb41") + (revision "1")) + (package + (name "emacs-highlight-escape-sequences") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dgutov/highlight-escape-sequences.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "05mc3w1f8ykf80914a1yddw6j8cmh0h57llm07xh89s53821v2is")))) + (build-system emacs-build-system) + (home-page "https://github.com/dgutov/highlight-escape-sequences") + (synopsis "Highlight escape sequences in Emacs") + (description "@code{highlight-escape-sequences} provides an +Emacs minor mode to escape sequences in code.") + (license license:gpl3+)))) + +(define-public emacs-dashboard + (package + (name "emacs-dashboard") + (version "1.2.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/rakanalh/emacs-dashboard/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1738lmbgq6gk24hcwic0qjyajr21l5xzhya4pv58dw1bhd6vxv9g")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-page-break-lines" ,emacs-page-break-lines))) + (arguments '(#:include '("\\.el$" "\\.txt$" "\\.png$"))) + (home-page "https://github.com/rakanalh/emacs-dashboard") + (synopsis "Startup screen extracted from Spacemacs") + (description "This package provides an extensible Emacs dashboard, with +sections for bookmarks, projectil projects, org-agenda and more. ") + (license license:gpl3+))) + +(define-public emacs-slime-company + (package + (name "emacs-slime-company") + (version "1.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/anwyn/slime-company/archive/" + "v" version ".tar.gz")) + (sha256 + (base32 + "1myl79pxj501xfr5qc5a24qddsn2l5iaamg7rf7fpny7mr9v70ar")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-slime" ,emacs-slime) + ("emacs-company" ,emacs-company))) + (home-page "https://company-mode.github.io") + (synopsis "SLIME completion backend for @code{company-mode}") + (description + "This is a backend implementation for the completion package +@code{company-mode} which supports the normal and the fuzzy completion +modes of SLIME.") + (license license:gpl3+))) + +(define-public emacs-sml-mode + (package + (name "emacs-sml-mode") + (version "6.8") + (source + (origin + (method url-fetch) + (uri (string-append "http://elpa.gnu.org/packages/sml-mode-" + version ".el")) + (sha256 + (base32 + "105fcrz5qp95f2n3fdm3awr6z58sbrjihjss6qnrg4lz2ggbc328")))) + (build-system emacs-build-system) + (home-page "http://elpa.gnu.org/packages/sml-mode.html") + (synopsis "Major mode for editing (Standard) ML") + (description "SML-MODE is a major Emacs mode for editing Standard ML. +It provides syntax highlighting and automatic indentation and +comes with sml-proc which allows interaction with an inferior SML +interactive loop.") + (license license:gpl3+))) + +(define-public emacs-eros + (let ((commit "a42e45c9b2397156c684330b0fc90ee0eba773f5") + (revision "1")) + (package + (name "emacs-eros") + (version (string-append "0.0.1" "-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/xiongtx/eros.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0whlsq90v13fz69k3wjrwcwb9gkpfxqjd75mg3nrp85j9nwhb5i4")))) + (build-system emacs-build-system) + (home-page "https://github.com/xiongtx/eros") + (synopsis "Evaluation result overlays") + (description "@code{eros} provides evaluation result overlays.") + (license license:gpl3+)))) + +(define-public emacs-stickyfunc-enhance + (let ((commit "13bdba51fcd83ccbc3267959d23afc94d458dcb0") + (revision "1")) + (package + (name "emacs-stickyfunc-enhance") + (version "0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tuhdo/semantic-stickyfunc-enhance.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "16dxjsr5nj20blww4xpd4jzgjprzzh1nwvb810ggdmp9paf4iy0g")))) + (build-system emacs-build-system) + (home-page "https://github.com/tuhdo/semantic-stickyfunc-enhance") + (synopsis "Enhancement to stock @code{semantic-stickyfunc-mode}") + (description + "@code{semantic-stickyfunc-mode} shows the function point is currently +in at the first line of the current buffer. This is useful when you have a +very long function that spreads more than a screen, and you don't have to +scroll up to read the function name and then scroll down to original position.") + (license license:gpl3+)))) + +(define-public emacs-git-auto-commit-mode + (package + (name "emacs-git-auto-commit-mode") + (version "4.4.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/ryuslash/git-auto-commit-mode/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "04avxmalsl3b7zi2vipfw9rb4wrwysnipsbch96skviql9axk870")))) + (build-system emacs-build-system) + (home-page "https://github.com/ryuslash/git-auto-commit-mode") + (synopsis "Emacs Minor mode to automatically commit and push") + (description "@code{git-auto-commit-mode} is an Emacs minor mode that +tries to commit changes to a file after every save. + +When @code{gac-automatically-push-p} is non-nil, it also tries to push to +the current upstream.") + (license license:gpl3+))) + +(define-public emacs-company-restclient + (package + (name "emacs-company-restclient") + (version "0.1.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/iquiw/company-restclient/archive/" + "v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1kr3f0wgqlk7r171bvb2kinv7fanwj2md01wdpx04qkgwcr1as00")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-company" ,emacs-company) + ("emacs-know-your-http-well" ,emacs-know-your-http-well) + ("emacs-restclient" ,emacs-restclient))) + (home-page "https://github.com/iquiw/company-restclient") + (synopsis "Company-mode completion back-end for restclient-mode") + (description "@code{company-mode} back-end for +@code{restclient-mode}. + +It provides auto-completion for HTTP methods and headers in +@code{restclient-mode}. Completion source is given by +@code{know-your-http-well}.") + (license license:gpl3+))) + +(define-public emacs-noflet + (let ((version "20170629") + (revision "1") + (commit "7ae84dc3257637af7334101456dafe1759c6b68a")) + (package + (name "emacs-noflet") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/nicferrier/emacs-noflet") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0g70gnmfi8n24jzfci9nrj0n9bn1qig7b8f9f325rin8h7x32ypf")))) + (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'require-dash + ;; noflet.el uses -map from dash, but (require 'dash) is + ;; missing. So, add it. + (lambda _ + (substitute* "noflet.el" + ((";;; Code:") ";;; Code:\n(require 'dash)")) + #t))))) + (propagated-inputs + `(("emacs-dash" ,emacs-dash))) + (home-page "https://github.com/nicferrier/emacs-noflet") + (synopsis "Locally override functions") + (description "@code{emacs-noflet} let's you locally override functions, +in the manner of @command{flet}, but with access to the original function +through the symbol: @command{this-fn}.") + (license license:gpl3+)))) + +(define-public emacs-dumb-jump + (package + (name "emacs-dumb-jump") + (version "0.5.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/jacktasia/dumb-jump/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "07n0xjgpxjpf3vp9gxchkjpydyj0zm166930as0kwiwkhjlsirsf")))) + (build-system emacs-build-system) + (arguments + `(#:tests? #f ; FIXME: Tests freeze when run. + #:test-command '("ert-runner") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'set-shell + (lambda _ + ;; Setting the SHELL environment variable is required for the + ;; tests to find sh. + (setenv "SHELL" (which "sh")) + #t))))) + (native-inputs + `(("emacs-el-mock" ,emacs-el-mock) + ("emacs-noflet" ,emacs-noflet) + ("emacs-undercover" ,emacs-undercover) + ("ert-runner" ,ert-runner))) + (propagated-inputs + `(("emacs-f" ,emacs-f) + ("emacs-popup" ,emacs-popup))) + (home-page "https://github.com/jacktasia/dumb-jump") + (synopsis "Jump to definition for multiple languages without configuration") + (description "Dumb Jump is an Emacs \"jump to definition\" package with +support for multiple programming languages that favors \"just working\" over +speed or accuracy. This means minimal --- and ideally zero --- configuration +with absolutely no stored indexes (tags) or persistent background processes. +Dumb Jump performs best with The Silver Searcher @command{ag} or ripgrep +@command{rg} installed.") + (license license:gpl3+))) + +(define-public emacs-dts-mode + (let ((commit "9ee0854446dcc6c53d2b8d2941051768dba50344") + (revision "1")) + (package + (name "emacs-dts-mode") + (version (string-append "0.1.0-" revision "." (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bgamari/dts-mode.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1k8lljdbc90nd29xrhdrsscxavzdq532wq2mg7ljc94krj7538b1")))) + (build-system emacs-build-system) + (home-page "https://github.com/bgamari/dts-mode.git") + (synopsis "Emacs minor mode for editing device tree files") + (description + "This package provides an Emacs minor mode for highlighting +device tree files.") + (license license:gpl3+)))) + +(define-public emacs-daemons + (package + (name "emacs-daemons") + (version "1.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cbowdon/daemons.el") + (commit version))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "00ijgm22ck76gw0x79krl05yy0m8a502yfakazfy5xhpn1zi6ab7")))) + (build-system emacs-build-system) + (home-page "https://github.com/cbowdon/daemons.el") + (synopsis "Emacs UI for managing init system services") + (description + "This is an Emacs mode to give you a UI for managing init system +daemons (services) for those getting tired of typing out @code{sudo service +my_thing reload} all the time. It offers a consistent UI over different init +systems.") + (license license:gpl3+))) + +(define-public emacs-esh-autosuggest + (package + (name "emacs-esh-autosuggest") + (version "2.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/dieggsy/esh-autosuggest") + (commit version))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "116pdjgpjy9b0psm5kzwkwy7dq8vn0p6dy75dl1zsy2xrjf1iqdw")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-company" ,emacs-company))) + (home-page "https://github.com/dieggsy/esh-autosuggest") + (synopsis "Fish-like autosuggestions in Eshell") + (description + "This package assumes you use something other than company for eshell +completion (e.g. @code{eshell-pcomplete}, @code{completion-at-point}, +@code{helm-esh-pcomplete}). @code{company-mode} is used solely as a mechanism +for history autosuggestions. + +Unless you're using @code{use-package}'s hook keyword, you can enable the +autosuggestions with: +@code{(add-hook 'eshell-mode-hook #'esh-autosuggest-mode)}") + (license license:gpl3+))) + +(define-public emacs-desktop-environment + (package + (name "emacs-desktop-environment") + (version "0.2.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/DamienCassou/desktop-environment.git") + (commit (string-append "v" version)))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1fal3yfmqg10cb53qsf5gsq2gvyz9w16wmlpnpjwjzwnjfn6l73r")))) + (build-system emacs-build-system) + (home-page "https://gitlab.petton.fr/DamienCassou/desktop-environment") + (synopsis "Control your GNU/Linux desktop environment from Emacs") + (description + "This package helps you control your GNU/Linux desktop from Emacs. +With @code{desktop-environment}, you can control the brightness and volume as +well as take screenshots and lock your screen. The package depends on the +availability of shell commands to do the hard work for us. These commands can +be changed by customizing the appropriate variables.") + (license license:gpl3+))) + +(define-public emacs-org-caldav + (package + (name "emacs-org-caldav") + (version "20180403") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/dengste/org-caldav/raw/" + "8d3492c27a09f437d2d94f2736c56d7652e87aa0" + "/org-caldav.el")) + (sha256 + (base32 + "1fh4gh68ddj0is99z2ccyh97v6psnyda61n2dsadzqhcxn51amlc")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-org" ,emacs-org))) + (home-page "https://github.com/dengste/org-caldav") + (synopsis + "Sync Org files with external calendars via the CalDAV protocol") + (description + "Synchronize between events in Org-mode files and a CalDAV calendar. +This code is still alpha.") + (license license:gpl3+))) + +(define-public emacs-zotxt + (package + (name "emacs-zotxt") + (version "20180518") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/egh/zotxt-emacs/archive/" + "23a4a9f74a658222027d53a9a83cd4bcc583ca8b" + ".tar.gz")) + (sha256 + (base32 + "1qlibaciqgsva6fc7vv9krssjq00bi880396jk7llbi3c52q9n1y")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-deferred" ,emacs-deferred) + ("emacs-request" ,emacs-request))) + (home-page "https://github.com/egh/zotxt-emacs") + (synopsis "Integrate Emacs with Zotero") + (description "This package provides two integration features between Emacs +and the Zotero research assistant: Insertion of links to Zotero items into an +Org-mode file, and citations of Zotero items in Pandoc Markdown files.") + (license license:gpl3+))) + +(define-public emacs-evil-ediff + (package + (name "emacs-evil-ediff") + (version "20170724") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/emacs-evil/evil-ediff/archive/" + "67b0e69f65c196eff5b39dacb7a9ec05bb919c74" + ".tar.gz")) + (sha256 + (base32 + "0j2x26zfc6md54mjf76qpybil4yal70lp5bifcz62l1f8fc1vvlq")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-evil" ,emacs-evil))) + (home-page "https://github.com/emacs-evil/evil-ediff") + (synopsis "Make Ediff a little evil") + (description + "This Emacs package configures Ediff to be friendlier to users of Vi-like +keybindings. Consult the help buffer for more information.") + (license license:gpl3+))) + +(define-public emacs-evil-magit + (let ((commit "dbf5a646a7ce1c35c229dfdc423bd5ecd927a3a8")) + (package + (name "emacs-evil-magit") + (version (git-version "0.4.2" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emacs-evil/evil-magit") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0ya0dkviq4pi92ab69a4j674y5r1hc1x3x7r7hlm97ag3a6zfkav")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-evil" ,emacs-evil) + ("magit" ,magit))) + (home-page + "https://github.com/emacs-evil/evil-magit") + (synopsis "Evil-based key bindings for Magit") + (description + "This Emacs library configures Magit and Evil to play well with each other. +For some background see @url{https://github.com/magit/evil-magit/issues/1}. +See the README at @url{https://github.com/justbur/evil-magit} for a table +describing the key binding changes.") + (license license:gpl3+)))) + +(define-public emacs-evil-mu4e + (package + (name "emacs-evil-mu4e") + (version "0.0.8") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/JorisE/evil-mu4e/archive/" + "c03a0e11afda3092eb1461be09fa6a61ebc0e4f6" + ".tar.gz")) + (sha256 + (base32 + "1k3z5h04bqslrkq13paqf8pv9r0rf0zjl0zbb57ly043ds3nvxr2")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-dash" ,emacs-dash) + ("emacs-evil" ,emacs-evil) + ("mu" ,mu))) + (home-page "https://github.com/JorisE/evil-mu4e") + (synopsis "Evil-based key bindings for mu4e") + (description + "Use keybindings for the mu4e mail reader in Emacs that make sense for +Evil users.") + (license license:gpl3+))) + +(define-public emacs-evil-multiedit + (let ((commit "ea3d9177b74ab0bc65e55df9cc0a0b42e4ef815d")) + (package + (name "emacs-evil-multiedit") + (version (git-version "1.3.9" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hlissner/evil-multiedit") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "17zm35r474z8ras4xy7124pcb972d385pbdv4jxyj5vq042vq07w")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-evil" ,emacs-evil) + ("emacs-iedit" ,emacs-iedit))) + (home-page + "https://github.com/hlissner/evil-multiedit") + (synopsis "Multiple cursors for Evil mode") + (description + "This plugin was an answer to the lack of proper multiple cursor support +in Emacs+Evil. It allows you to select and edit matches interactively, +integrating @code{iedit-mode} into Evil mode with an attempt at sensible +defaults.") + (license license:gpl3+)))) + +(define-public emacs-evil-org + (let ((commit "b6d652a9163d3430a9e0933a554bdbee5244bbf6")) + (package + (name "emacs-evil-org") + (version (git-version "0.1.1" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Somelauw/evil-org-mode") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "176hrw7y7nczffbyhsa167b8rvfacsmcafm2gpkrdjqlrikbmrhl")))) + (build-system emacs-build-system) + (propagated-inputs `(("emacs-evil" ,emacs-evil))) + (home-page + "https://github.com/Somelauw/evil-org-mode") + (synopsis "Evil keybindings for Org mode") + (description + "This package adds supplemental Evil mode key-bindings to Emacs +Org-mode. It features: +@itemize +@item normal, visual and insert mode bindings; +@item key bindings organised in key themes; +@item operators like > and < to work on headings; +@item text objects; +@item table support; +@item calendar (date selection) support; +@item agenda support. +@end itemize\n") + (license license:gpl3+)))) + +(define-public emacs-fish-completion + (package + (name "emacs-fish-completion") + (version "20180329") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/Ambrevar/emacs-fish-completion/archive/" + "3e3ed1f19fa778b7c35ad88e033dce5a6b1fc153" + ".tar.gz")) + (sha256 + (base32 + "16329py7fvid0bap1qhqxhdc68m9qqy1p8gc2bhng81zhm5a5zsm")))) + (build-system emacs-build-system) + (propagated-inputs `(("fish" ,fish))) + (home-page + "https://github.com/Ambrevar/emacs-fish-completion") + (synopsis "Fish completion for Emacs pcomplete") + (description + "This package provides completion for the Fish shell to pcomplete (used +by shell and Eshell). You can set it up globally with: + +@example +(when (and (executable-find \"fish\") + (require 'fish-completion nil t)) + (global-fish-completion-mode)) +@end example + +Alternatively, you can call the @code{fish-completion-mode} manually or in +shell/Eshell mode hook. + +The package @code{emacs-bash-completion} is an optional dependency: if available, +@code{fish-completion-complete} can be configured to fall back on bash to further +try completing. See @code{fish-completion-fallback-on-bash-p}.") + (license license:gpl3+))) diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 7943d51cf4..8fbb804e57 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015, 2018 David Thompson <dthompson2@worcester.edu> ;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> ;;; @@ -33,6 +33,7 @@ #:use-module (guix svn-download) #:use-module (gnu packages) #:use-module (gnu packages algebra) + #:use-module (gnu packages assembly) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages base) @@ -45,6 +46,7 @@ #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages game-development) + #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages gl) #:use-module (gnu packages glib) @@ -54,6 +56,7 @@ #:use-module (gnu packages libedit) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) + #:use-module (gnu packages mp3) #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) #:use-module (gnu packages pulseaudio) @@ -107,8 +110,8 @@ ;; Building from recent Git because the official 5.0 release no longer builds. (define-public dolphin-emu - (let ((commit "d04b179111f8d863f360839474cb82c766f762b8") - (revision "0")) + (let ((commit "47fd8c6eff4cdea7660d0fa78040f98d1d4fa136") + (revision "1")) (package (name "dolphin-emu") (version (git-version "5.0" revision commit)) @@ -134,7 +137,7 @@ #t)) (sha256 (base32 - "0g725wmhlim73zrhi47wmr1bmplpy4b7sbimd5pm8xpfhj5nm10l")))) + "1gp2sshnr0dswdawxd5ix96nksp435b52bqvpjx8pmn523k29zsw")))) (build-system cmake-build-system) (arguments '(#:tests? #f @@ -143,13 +146,17 @@ #:phases (modify-phases %standard-phases + (add-before 'configure 'fixgcc7 + (lambda _ + (unsetenv "C_INCLUDE_PATH") + (unsetenv "CPLUS_INCLUDE_PATH"))) (add-before 'configure 'generate-fonts&hardcore-libvulkan-path (lambda* (#:key inputs outputs #:allow-other-keys) (let ((fontfile (string-append (assoc-ref inputs "font-wqy-microhei") "/share/fonts/truetype/wqy-microhei.ttc")) (libvulkan - (string-append (assoc-ref inputs "vulkan-icd-loader") + (string-append (assoc-ref inputs "vulkan-loader") "/lib/libvulkan.so"))) (chdir "docs") (invoke "bash" "-c" "g++ -O2 -std=c++11 $(freetype-config \ @@ -179,6 +186,7 @@ "-DX11_FOUND=1"))) (native-inputs `(("pkg-config" ,pkg-config) + ("gcc" ,gcc-7) ; Building with gcc@5 doesn't work anymore. ("gettext" ,gnu-gettext))) (inputs `(("alsa-lib" ,alsa-lib) @@ -211,7 +219,7 @@ ("sfml" ,sfml) ("soil" ,soil) ("soundtouch" ,soundtouch) - ("vulkan-icd-loader" ,vulkan-icd-loader) + ("vulkan-loader" ,vulkan-loader) ("wxwidgets" ,wxwidgets-gtk2-3.1) ("zlib" ,zlib))) (home-page "https://dolphin-emu.org/") @@ -1046,7 +1054,7 @@ emulation community. It provides highly accurate emulation.") (define-public retroarch (package (name "retroarch") - (version "1.7.2") + (version "1.7.3") (source (origin (method url-fetch) @@ -1054,7 +1062,7 @@ emulation community. It provides highly accurate emulation.") version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "1y9fakr41h6xpddpkj12mcw1kgldvy76nzvxm5jk5v7iyiks4c6k")))) + (base32 "1si78dbwbsq4i0r42q94nmlpaxdyqch113nxavdprf4vc1224356")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests @@ -1064,7 +1072,7 @@ emulation community. It provides highly accurate emulation.") (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (etc (string-append out "/etc")) - (vulkan (assoc-ref inputs "vulkan-icd-loader"))) + (vulkan (assoc-ref inputs "vulkan-loader"))) ;; Hard-code the path to libvulkan.so. (substitute* "gfx/common/vulkan_common.c" (("libvulkan.so") (string-append vulkan "/lib/libvulkan.so"))) @@ -1088,9 +1096,10 @@ emulation community. It provides highly accurate emulation.") ("openal" ,openal) ("pulseaudio" ,pulseaudio) ("python" ,python) + ("qtbase" ,qtbase) ("sdl" ,sdl2) ("udev" ,eudev) - ("vulkan-icd-loader" ,vulkan-icd-loader) + ("vulkan-loader" ,vulkan-loader) ("wayland" ,wayland) ("zlib" ,zlib))) (native-inputs @@ -1105,3 +1114,59 @@ straight into any libretro-compatible frontend. RetroArch is the official reference frontend for the libretro API, currently used by most as a modular multi-system game/emulator system.") (license license:gpl3+))) + +(define-public scummvm + (package + (name "scummvm") + (version "2.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.scummvm.org/frs/scummvm/" version + "/scummvm-" version ".tar.xz")) + (sha256 + (base32 + "0q6aiw97wsrf8cjw9vjilzhqqsr2rw2lll99s8i5i9svan6l314p")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ;require "git" + #:configure-flags (list "--enable-release") ;for optimizations + #:phases + (modify-phases %standard-phases + (replace 'configure + ;; configure does not work followed by both "SHELL=..." and + ;; "CONFIG_SHELL=..."; set environment variables instead + (lambda* (#:key outputs configure-flags #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bash (which "bash")) + (flags `(,(string-append "--prefix=" out) + ,@configure-flags))) + (setenv "SHELL" bash) + (setenv "CONFIG_SHELL" bash) + (apply invoke "./configure" flags))))))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("alsa-lib" ,alsa-lib) + ("faad2" ,faad2) + ("fluidsynth" ,fluidsynth) + ("freetype" ,freetype) + ("libflac" ,flac) + ("libjpeg-turbo" ,libjpeg-turbo) + ("libmad" ,libmad) + ("libmpeg2" ,libmpeg2) + ("libogg" ,libogg) + ("libpng" ,libpng) + ("libtheora" ,libtheora) + ("libvorbis" ,libvorbis) + ("nasm" ,nasm) + ("sdl2" ,sdl2) + ("zlib" ,zlib))) + (home-page "https://www.scummvm.org/") + (synopsis "Engine for several graphical adventure games") + (description "ScummVM is a program which allows you to run certain +classic graphical point-and-click adventure games, provided you +already have their data files. The clever part about this: ScummVM +just replaces the executables shipped with the games, allowing you to +play them on systems for which they were never designed!") + (license license:gpl2+))) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index ed0239a613..6c3846ff76 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2016, 2017 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -110,6 +111,13 @@ (string-append "#include <boost/serialization/array_wrapper.hpp>\n" line))) #t)) + ;; Fix build against Qt 5.11. + (add-after 'unpack 'add-missing-headers + (lambda _ + (substitute* "librecad/src/ui/generic/widgetcreator.cpp" + (("#include <QPushButton>") "#include <QPushButton> +#include <QActionGroup>")) + #t)) (add-after 'unpack 'patch-paths (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) @@ -525,35 +533,17 @@ ready for production.") (define-public gerbv (package (name "gerbv") - (version "2.6.1") + (version "2.6.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/gerbv/gerbv/gerbv-" version "/gerbv-" version ".tar.gz")) (sha256 (base32 - "0v6ry0mxi5qym4z0y0lpblxsw9dfjpgxs4c4v2ngg7yw4b3a59ks")))) + "1cw8k6ni0q8kswad03kha86fk7n06vq8p0wzsfhcnalsdshrn17i")))) (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'autoconf - (lambda _ - ;; Build rules contain references to Russian translation, but the - ;; needed files are missing; see - ;; http://sourceforge.net/p/gerbv/bugs/174/ - (delete-file "po/LINGUAS") - (substitute* "man/Makefile.am" - (("PO_FILES= gerbv.ru.1.in.po") "") - (("man_MANS = gerbv.1 gerbv.ru.1") "man_MANS = gerbv.1")) - (zero? (system* "autoreconf" "-vfi"))))))) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("libtool" ,libtool) - ("gettext" ,gettext-minimal) - ("po4a" ,po4a) - ("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config))) (inputs `(("cairo" ,cairo) ("gtk" ,gtk+-2) @@ -771,7 +761,7 @@ render model libraries.") (define-public linsmith (package (name "linsmith") - (version "0.99.30") + (version "0.99.31") (source (origin (method url-fetch) (uri (string-append @@ -779,13 +769,13 @@ render model libraries.") version "/linsmith-" version ".tar.gz")) (sha256 (base32 - "18qslhr2r45rhpj4v6bjcqx189vs0bflvsj271wr7w8kvh69qwvn")))) + "13qj7n9826qc9shkkgd1p6vcpj78v4h9d67wbg45prg7rbnzkzds")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("gtk" ,gtk+-2) ("libgnome" ,libgnomeui))) - (home-page "http://jcoppens.com/soft/linsmith/index.en.php") + (home-page "https://jcoppens.com/soft/linsmith/index.en.php") (synopsis "Smith Charting program") (description "LinSmith is a Smith Charting program, mainly designed for educational use. As such, there is an emphasis on capabilities that improve @@ -1082,14 +1072,14 @@ bindings for Python, Java, OCaml and more.") (define-public radare2 (package (name "radare2") - (version "1.6.0") + (version "2.5.0") (source (origin (method url-fetch) (uri (string-append "http://radare.mikelloc.com/get/" version "/" name "-" version ".tar.gz")) (sha256 (base32 - "16ggsk40zz6hyvclvqj1r4bh4hb78jf0d6ppry1jk4r0j30wm7cm")) + "17h4ba5qqahfi8mi4x2dcvq87cqpir5v2dlaqbvmay6vby4zh4v7")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index ef2be9ad41..d749ada9f0 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -259,11 +259,11 @@ Libraries with some extra bells and whistles.") name "/" name "-" version ".tar.xz")) (sha256 (base32 - "16zydv7z94aw3rywmb9gr8ya85k7b75h22wng95lfx1x0y1yb0ad")))) + "16zydv7z94aw3rywmb9gr8ya85k7b75h22wng95lfx1x0y1yb0ad")) + (patches (search-patches "enlightenment-fix-setuid-path.patch")))) (build-system gnu-build-system) (arguments - `(#:configure-flags '("--enable-mount-eeze") - #:phases + `(#:phases (modify-phases %standard-phases (add-before 'configure 'set-system-actions (lambda* (#:key inputs #:allow-other-keys) @@ -275,6 +275,8 @@ Libraries with some extra bells and whistles.") (("/usr/share/X11/xkb/rules/xorg.lst") (string-append xkeyboard "/share/X11/xkb/rules/base.lst"))) + (substitute* "src/modules/everything/evry_plug_apps.c" + (("/usr/bin/") "")) (substitute* "configure" (("/bin/mount") (string-append utils "/bin/mount")) (("/bin/umount") (string-append utils "/bin/umount")) diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 6522662c4e..4fd33ae901 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; @@ -107,17 +107,17 @@ single file can be mounted.") (define-public disorderfs (package (name "disorderfs") - (version "0.5.2") + (version "0.5.3") (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/ReproducibleBuilds/disorderfs.git") - (commit "0.5.2"))) + (url "https://salsa.debian.org/reproducible-builds/disorderfs.git") + (commit version))) (file-name (git-file-name name version)) (sha256 (base32 - "1j028dq3d4m64mn9xmfamcnnc7i2drmra4pdmxdmqdsi8p7yj4sv")))) + "1nmhfvxpvz3xsfxl9wqnh6r2l5m7hjq6n0vpblsl5xdcvwaqcf50")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/firmware.scm b/gnu/packages/firmware.scm index 9e91ceca4e..986e1d6219 100644 --- a/gnu/packages/firmware.scm +++ b/gnu/packages/firmware.scm @@ -404,3 +404,66 @@ such as: (sha256 (base32 "0r4xnlq7v9khjfcg6gqp7nmrmnw4z1r8bipwdr07png1dcbb8214"))))))) + +(define-public arm-trusted-firmware-puma-rk3399 + (let ((base (make-arm-trusted-firmware "rk3399")) + ;; Vendor's arm trusted firmware branch hasn't been upstreamed yet. + (commit "d71e6d83612df896774ec4c03d49500312d2c324") + (revision "1")) + (package + (inherit base) + (name "arm-trusted-firmware-puma-rk3399") + (version (git-version "1.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.theobroma-systems.com/arm-trusted-firmware.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0vqhwqqh8h9qlkpybg2v94911091c1418bc4pnzq5fd7zf0fjkf8"))))))) + +(define-public rk3399-cortex-m0 + (package + (name "rk3399-cortex-m0") + (version "1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://git.theobroma-systems.com/rk3399-cortex-m0.git") + (commit (string-append "v" version)))) + (file-name (git-file-name "rk3399-cortex-m0" version)) + (sha256 + (base32 + "02wz1vkf4j3zc8rx289z76xhrf71jhb2p05lvmygky393a9gjh9w")))) + (home-page "https://git.theobroma-systems.com/rk3399-cortex-m0.git/about/") + (synopsis "PMU Cortex M0 firmware for RK3399 Q7 (Puma)") + (description + "Cortex-M0 firmware used with the RK3399 to implement +power-management functionality and helpers (e.g. DRAM frequency +switching support).\n") + (license license:bsd-3) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'check) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (mzerofiles (find-files "." "rk3399m0.(elf|bin)$"))) + (for-each + (lambda (file) + (install-file file out)) + mzerofiles)) + #t)) + (add-before 'build 'setenv + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CROSS_COMPILE" "arm-none-eabi-") + #t))))) + (native-inputs `(("cross-gcc" ,(cross-gcc "arm-none-eabi" #:xgcc gcc-7)) + ("cross-binutils" ,(cross-binutils "arm-none-eabi")))))) diff --git a/gnu/packages/flex.scm b/gnu/packages/flex.scm index b09ac0bb89..29c5c92766 100644 --- a/gnu/packages/flex.scm +++ b/gnu/packages/flex.scm @@ -26,7 +26,7 @@ #:use-module (gnu packages m4) #:use-module (gnu packages man) #:use-module (gnu packages bison) - #:use-module (gnu packages indent) + #:use-module (gnu packages code) #:use-module (srfi srfi-1)) (define-public flex diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 7e15537205..031df7faa7 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -139,7 +139,7 @@ TrueType (TTF) files.") "/share/fontconfig/conf.avail"))) (copy-recursively "fontconfig" conf-dir) #t)))))) - (home-page "http://dejavu-fonts.org/") + (home-page "https://dejavu-fonts.github.io/") (synopsis "Vera font family derivate with additional characters") (description "DejaVu provides an expanded version of the Vera font family aiming for quality and broader Unicode coverage while retaining the original diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 49e391f9db..a6b79f41b0 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -3,13 +3,13 @@ ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015, 2017 Andy Wingo <wingo@pobox.com> ;;; Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2017, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> -;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> +;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; @@ -82,7 +82,7 @@ (define-public xdg-utils (package (name "xdg-utils") - (version "1.1.2") + (version "1.1.3") (source (origin (method url-fetch) @@ -91,7 +91,7 @@ version ".tar.gz")) (sha256 (base32 - "1k4b4m3aiyqn9k12a0ihcdahzlspl3zhskmm1d7228dvqvi546cm")))) + "1nai806smz3zcb2l5iny4x7li0fak0rzmjg6vlyhdqm8z25b166p")))) (build-system gnu-build-system) (native-inputs `(("docbook-xsl" ,docbook-xsl) @@ -147,14 +147,14 @@ freedesktop.org project.") (define-public libinput (package (name "libinput") - (version "1.10.2") + (version "1.10.3") (source (origin (method url-fetch) (uri (string-append "https://freedesktop.org/software/libinput/" name "-" version ".tar.xz")) (sha256 (base32 - "1fbv354ii1g4wc4k7d7gbnalqjpzmk9zlpi8linqrzlf6inpc28m")))) + "0002xk9cqzpqrlhgav1wp8nimsbp9d2w8rd8mgygczq2hjar0lhd")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=false"))) @@ -437,14 +437,14 @@ Python.") (define-public wayland (package (name "wayland") - (version "1.14.0") + (version "1.15.0") (source (origin (method url-fetch) (uri (string-append "https://wayland.freedesktop.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "1f3sla6h0bw15fz8pjc67jhwj7pwmfdc7qlj42j5k9v116ycm07d")))) + "1c5fnys8hi71cnzjv5k7j0r8gx80p0yyqlrpmn06mmarhnxvwgzb")))) (build-system gnu-build-system) (arguments `(#:parallel-tests? #f)) @@ -473,7 +473,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") (define-public wayland-protocols (package (name "wayland-protocols") - (version "1.12") + (version "1.13") (source (origin (method url-fetch) (uri (string-append @@ -481,7 +481,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") "wayland-protocols-" version ".tar.xz")) (sha256 (base32 - "1cn8ny4zr9xlcdh8qi1qnkmvia8cp4ixnsbhd9sp9571w6lyh69v")))) + "0f4gqvmz53q9d8h0ilhf4z773nb4vskzx11a3d1jycym120bqn07")))) (build-system gnu-build-system) (inputs `(("wayland" ,wayland))) @@ -495,7 +495,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") (define-public weston (package (name "weston") - (version "3.0.0") + (version "4.0.0") (source (origin (method url-fetch) (uri (string-append @@ -503,7 +503,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") "weston-" version ".tar.xz")) (sha256 (base32 - "19936zlkb75xcaidd8fag4ah8000wrh2ziqy7nxkq36pimgdbqfd")))) + "0n2big8xw6g6n46zm1jyf00dv9r4d84visdz5b8vxpw3xzkhmz50")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -529,6 +529,7 @@ applications, X servers (rootless or fullscreen) or other display servers.") (string-append "--with-xserver-path=" (assoc-ref %build-inputs "xorg-server-xwayland") "/bin/Xwayland")) + #:parallel-tests? #f ; Parallel tests cause failures. #:phases (modify-phases %standard-phases (add-before 'configure 'use-elogind @@ -840,7 +841,11 @@ which speak the Qualcomm MSM Interface (QMI) protocol.") (build-system gnu-build-system) (arguments '(#:configure-flags - `(,(string-append "--with-udev-base-dir=" %output "/lib/udev")))) + `(,(string-append "--with-udev-base-dir=" %output "/lib/udev") + ;; FIXME: Without this flag the build fails with "error: assignment + ;; from incompatible pointer type" whenever the return value of + ;; "g_object_ref" is assigned to "ctx->self". + "--disable-more-warnings"))) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-mkenums ("gobject-introspection" ,gobject-introspection) diff --git a/gnu/packages/freeipmi.scm b/gnu/packages/freeipmi.scm index 77400d51f3..523f9e6334 100644 --- a/gnu/packages/freeipmi.scm +++ b/gnu/packages/freeipmi.scm @@ -27,14 +27,14 @@ (define-public freeipmi (package (name "freeipmi") - (version "1.6.1") + (version "1.6.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/freeipmi/freeipmi-" version ".tar.gz")) (sha256 (base32 - "0jdm1nwsnkj0nzjmcqprmjk25449mhjj25khwzpq3mpjw440wmd2")))) + "0jhjf21gn1m9lhjsc1ard9zymq25mk7rxcyygjfxgy0vb4j36l9i")))) (build-system gnu-build-system) (inputs `(("libgcrypt" ,libgcrypt))) diff --git a/gnu/packages/ftp.scm b/gnu/packages/ftp.scm index 58f707fc48..cb837e554e 100644 --- a/gnu/packages/ftp.scm +++ b/gnu/packages/ftp.scm @@ -169,7 +169,7 @@ as required.") (define-public libfilezilla (package (name "libfilezilla") - (version "0.12.1") + (version "0.12.2") (source (origin (method url-fetch) @@ -177,7 +177,7 @@ as required.") name "/" name "-" version ".tar.bz2")) (sha256 (base32 - "1gbqm42dd0m3fvqz3bk53889479dvn8679zp6ba8a9q2br2wkvv0")))) + "1v461hwdk74whp89s490dj1z18gfqf9bz9140m5f11rsvrpid33p")))) (build-system gnu-build-system) (native-inputs `(("cppunit" ,cppunit) diff --git a/gnu/packages/fvwm.scm b/gnu/packages/fvwm.scm index 63b1052e07..386edba591 100644 --- a/gnu/packages/fvwm.scm +++ b/gnu/packages/fvwm.scm @@ -35,7 +35,7 @@ (define-public fvwm (package (name "fvwm") - (version "2.6.7") + (version "2.6.8") (source (origin (method url-fetch) (uri (string-append @@ -43,7 +43,7 @@ version "/" name "-" version ".tar.gz")) (sha256 (base32 - "0wzghjgy65pkn31rgl14fngizw7nbkzbxsfa670xmrndpmd4sr81")))) + "0hgkkdzcqjnaabvv9cnh0bz90nnjskbhjg9qnzpi2x0mbliwjdpv")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index 3ff27b4a1b..3d6a038d9d 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -233,10 +233,19 @@ PCM data.") (base32 "13j1m92zhxwkaaja3lg5x0h0b28mrrawdzk9d3hd19031akfxwb3")))) (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (add-before 'build 'no-Werror + (lambda _ + ;; Don't abort builds due to things like GLib + ;; deprecation warnings. + (substitute* (find-files "." "^Makefile\\.in$") + (("-Werror") "")) + #t))))) (native-inputs `(("pkgconfig" ,pkg-config))) (inputs `(("bdb" ,bdb) ("glib" ,glib) - ("guile" ,guile-2.0) + ("guile" ,guile-2.2) ("libmicrohttpd" ,libmicrohttpd) ("ncurses" ,ncurses) ("sdl" ,sdl) @@ -387,7 +396,7 @@ support.") (define-public tiled (package (name "tiled") - (version "1.1.4") + (version "1.1.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/bjorn/tiled/archive/v" @@ -395,7 +404,7 @@ support.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0xb3zwcdk7khdrza6spl02g5n2xbij6nbszv8vi27vagjnmz1wxh")))) + "1zrq1nhb50mwqzw3fln6vj49ljddil1v7yby3ahjbcm94s25ll1y")))) (build-system gnu-build-system) (inputs `(("qtbase" ,qtbase) @@ -541,22 +550,14 @@ archive on a per-file basis.") (define-public love (package (name "love") - (version "0.10.2") + (version "11.1") (source (origin (method url-fetch) (uri (string-append "https://bitbucket.org/rude/love/downloads/" "love-" version "-linux-src.tar.gz")) (sha256 (base32 - "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)))) + "1pkwiszmjs0xrwk0wqbc5cp9108b1y8gwsid0gqk1s0x09q9lpmw")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index b62d679a91..5568de033b 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -19,7 +19,7 @@ ;;; Copyright © 2016 Albin Söderqvist <albin@fripost.org> ;;; Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> -;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2016 Steve Webber <webber.sl@gmail.com> ;;; Copyright © 2017 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info> @@ -67,6 +67,7 @@ #:use-module (gnu packages audio) #:use-module (gnu packages avahi) #:use-module (gnu packages boost) + #:use-module (gnu packages crypto) #:use-module (gnu packages documentation) #:use-module (gnu packages docbook) #:use-module (gnu packages fltk) @@ -90,6 +91,7 @@ #:use-module (gnu packages haskell) #:use-module (gnu packages mp3) #:use-module (gnu packages music) + #:use-module (gnu packages multiprecision) #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages ncurses) @@ -310,6 +312,7 @@ tired of cows, a variety of other ASCII-art messengers are available.") #:tests? #f ; no check target #:phases (modify-phases %standard-phases + (delete 'bootstrap) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((dejavu (assoc-ref inputs "font-dejavu")) @@ -777,90 +780,110 @@ utilizing the art assets from the @code{SuperTux} project.") license:gpl3+)))) (define-public roguebox-adventures - (let ((commit "19a2c340b34d5b4e7cc89118c7aedc058babbd93") - (revision "1")) - (package - (name "roguebox-adventures") - (version (git-version "2.1.2" revision commit)) - (source - (origin - (method git-fetch) - (uri - (git-reference - (url "https://git.postactiv.com/themightyglider/RogueBoxAdventures.git") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0afmg8fjdcs3sqdp5rc7irgr7riil8jwysfjn1imfxslf1wcx5ah")))) - (build-system python-build-system) - (arguments - '(#:tests? #f ; no check target - #:phases - (modify-phases %standard-phases - ;; no setup.py script - (replace 'build - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (data (string-append - out "/share/games/roguebox-adventures"))) - ;; Use the correct data directory. - (substitute* '("main.py" "LIB/getch.py" "LIB/getch_gcwz.py") - (("basic_path + os\\.sep + 'DATA'") - (string-append "'" data "'")) - (("^basic_path.*$") - (string-append "basic_path ='" data "'\n"))) - (substitute* "LIB/gra_files.py" - (("basic_path = b_path\\.replace\\('/LIB',''\\)") - (string-append "basic_path ='" data "'\n"))) - - ;; The game must save in the user's home directory because - ;; the store is read-only. - (substitute* "main.py" - (("home_save = False") "home_save = True") - (("'icon_small.png'") - (string-append "'" data "/icon_small.png'")))) - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (data (string-append - out "/share/games/roguebox-adventures")) - (doc (string-append - out "/share/doc/roguebox-adventures"))) - (mkdir-p bin) - (mkdir-p doc) - (copy-file "main.py" - (string-append bin "/roguebox-adventures")) - (chmod (string-append bin "/roguebox-adventures") #o555) - - (for-each (lambda (file) - (copy-recursively file - (string-append data "/" file))) - '("AUDIO" "FONT" "GRAPHIC" "LIB" "LICENSE" - "icon_big.png" "icon_small.png")) - - (copy-recursively "DOC" doc) - - (wrap-program (string-append bin "/roguebox-adventures") - `("PYTHONPATH" ":" prefix (,(string-append data "/LIB"))))) - #t))))) - (inputs - `(("python-pygame" ,python-pygame) - ("python-tmx" ,python-tmx))) - (home-page "https://rogueboxadventures.tuxfamily.org") - (synopsis "A classical roguelike/sandbox game") - (description - "RogueBox Adventures is a graphical roguelike with strong influences + (package + (name "roguebox-adventures") + (version "2.2.1") + (source + (origin + (method url-fetch) + (uri (string-append + "http://download.tuxfamily.org/rba/RogueBoxAdventures_v" + (string-join (string-split version #\.) "_") "_Source.zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "0kmzdgnik8fsf3bg55546l77p3mfxn2awkzfzzdn20n82rd2babw")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ; no check target + #:phases + (modify-phases %standard-phases + (replace 'unpack + (lambda* (#:key source #:allow-other-keys) + (and (invoke "unzip" source) + ;; The actual source is buried a few directories deep. + (chdir (string-append "RogueBoxAdventures_v" + (string-join + (string-split ,version #\.) "_") + "_Source"))))) + ;; no setup.py script + (replace 'build + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (data (string-append + out "/share/games/roguebox-adventures"))) + ;; Use the correct data directory. + (substitute* '("main.py" "LIB/getch.py" "LIB/getch_gcwz.py") + (("basic_path + os\\.sep + 'DATA'") + (string-append "'" data "'")) + (("^basic_path.*$") + (string-append "basic_path ='" data "'\n"))) + (substitute* "LIB/gra_files.py" + (("basic_path = b_path\\.replace\\('/LIB',''\\)") + (string-append "basic_path ='" data "'\n"))) + + ;; The game must save in the user's home directory because + ;; the store is read-only. + (substitute* "main.py" + (("home_save = False") "home_save = True") + (("'icon_small.png'") + (string-append "'" data "/icon_small.png'")))) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (roguebox-adventures + (string-append bin "/roguebox-adventures")) + (data (string-append + out "/share/games/roguebox-adventures")) + (lib (string-append data "/LIB")) + (doc (string-append + out "/share/doc/roguebox-adventures"))) + (mkdir-p bin) + (mkdir-p doc) + + (for-each (lambda (file) + (copy-recursively file + (string-append data "/" file))) + '("AUDIO" "FONT" "GRAPHIC" "LIB" "LICENSE" + "icon_big.png" "icon_small.png")) + (for-each (lambda (file) + (chmod file #o555) + (install-file file lib)) + '("main.py" "run.py")) + + (copy-recursively "DOC" doc) + + (call-with-output-file + roguebox-adventures + (lambda (p) + (format p "\ +#!~a +export PYTHONPATH=~a/LIB:~a +exec -a \"~a\" ~a \"$@\"\n" + (which "bash") data (getenv "PYTHONPATH") + (which "python3") + (string-append lib "/main.py")))) + (chmod roguebox-adventures #o555)) + #t))))) + (native-inputs + `(("unzip" ,unzip))) + (inputs + `(("python-pygame" ,python-pygame) + ("python-tmx" ,python-tmx))) + (home-page "https://rogueboxadventures.tuxfamily.org") + (synopsis "A classical roguelike/sandbox game") + (description + "RogueBox Adventures is a graphical roguelike with strong influences from sandbox games like Minecraft or Terraria. The main idea of RogueBox Adventures is to offer the player a kind of roguelike toy-world. This world can be explored and changed freely.") - ;; The GPL3+ is for code, the rest are for art. - (license (list license:cc0 - license:cc-by3.0 - license:gpl3+ - license:silofl1.1))))) + ;; The GPL3+ is for code, the rest are for art. + (license (list license:cc0 + license:cc-by3.0 + license:gpl3+ + license:silofl1.1)))) (define-public xshogi (package @@ -1799,7 +1822,7 @@ falling, themeable graphics and sounds, and replays.") (define-public wesnoth (package (name "wesnoth") - (version "1.12.6") + (version "1.14.1") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/wesnoth/wesnoth-" @@ -1808,17 +1831,10 @@ falling, themeable graphics and sounds, and replays.") name "-" version ".tar.bz2")) (sha256 (base32 - "0kifp6g1dsr16m6ngjq2hx19h851fqg326ps3krnhpyix963h3x5")))) + "1mzrnbv71b4s41c5x8clhb53l8lidiwzny1hl828228pvys5bxkb")))) (build-system cmake-build-system) (arguments - '(#:tests? #f ; no check target - #:configure-flags - ;; XXX: Failed to compile with '-Werror=old-style-cast'. - ;; boost/mpl/assert.hpp:313:58: error: - ;; use of old-style cast [-Werror=old-style-cast] - ;; [...] - ;; cc1plus: all warnings being treated as errors - '("-DENABLE_STRICT_COMPILATION=OFF"))) + `(#:tests? #f)) ; no check target (native-inputs `(("gettext" ,gettext-minimal) ("pkg-config" ,pkg-config))) @@ -1827,12 +1843,10 @@ falling, themeable graphics and sounds, and replays.") ("dbus" ,dbus) ("fribidi" ,fribidi) ("libvorbis" ,libvorbis) + ("openssl" ,openssl) ("pango" ,pango) - ("sdl-image" ,sdl-image) - ("sdl-mixer" ,sdl-mixer) - ("sdl-net" ,sdl-net) - ("sdl-ttf" ,sdl-ttf))) - (home-page "http://www.wesnoth.org/") + ("sdl-union" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf))))) + (home-page "https://www.wesnoth.org/") (synopsis "Turn-based strategy game") (description "The Battle for Wesnoth is a fantasy, turn based tactical strategy game, @@ -1851,19 +1865,12 @@ next campaign.") (name "wesnoth-server") (inputs `(("boost" ,boost) - ("sdl-net" ,sdl-net))) + ("icu4c" ,icu4c) + ("openssl" ,openssl) + ("sdl2" ,sdl2))) (arguments - (append - (substitute-keyword-arguments (package-arguments wesnoth) - ((#:configure-flags configure-flags) - `(append ,configure-flags (list "-DENABLE_GAME=OFF")))) - `(#:phases - (modify-phases %standard-phases - ;; Delete game assets not required by the server. - (add-after 'install 'delete-data - (lambda* (#:key outputs #:allow-other-keys) - (delete-file-recursively (string-append (assoc-ref outputs "out") - "/share/wesnoth")))))))) + `(#:configure-flags '("-DENABLE_GAME=OFF") + ,@(package-arguments wesnoth))) (synopsis "Dedicated @emph{Battle for Wesnoth} server") (description "This package contains a dedicated server for @emph{The Battle for Wesnoth}."))) @@ -4057,16 +4064,16 @@ fight against their plot and save his fellow rabbits from slavery.") (define-public 0ad-data (package (name "0ad-data") - (version "0.0.22-alpha") + (version "0.0.23-alpha") (source (origin (method url-fetch) - (uri (string-append "http://releases.wildfiregames.com/0ad-" + (uri (string-append "https://releases.wildfiregames.com/0ad-" version "-unix-data.tar.xz")) (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "0vknk9ay9h2p34r7mym2g066f3s3c5d5vmap0ckcs5b86h5cscjc")) + "1b6qcvd8yyyxavgdwpcs7asmln3xgnvjkglz6ggvwb956x37ggzx")) (modules '((guix build utils))) (snippet #~(begin @@ -4110,19 +4117,18 @@ fight against their plot and save his fellow rabbits from slavery.") (define-public 0ad (package (name "0ad") - (version "0.0.22-alpha") + (version "0.0.23-alpha") (source (origin (method url-fetch) - (uri (string-append "http://releases.wildfiregames.com/0ad-" + (uri (string-append "https://releases.wildfiregames.com/0ad-" version "-unix-build.tar.xz")) (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "1cgmr4g5g9wv36v7ylbrvqhsjwgcsdgbqwc8zlqmnayk9zgkdpgx")) + "0qz1sg4n5y766qwgi63drrrx6k17kk0rcnn9a4a9crllk2vf78fg")))) ;; A snippet here would cause a build failure because of timestamps ;; reset. See https://bugs.gnu.org/26734. - )) (inputs `(("0ad-data" ,0ad-data) ("curl" ,curl) @@ -4130,6 +4136,7 @@ fight against their plot and save his fellow rabbits from slavery.") ("gloox" ,gloox) ("icu4c" ,icu4c) ("libpng" ,libpng) + ("libsodium" ,libsodium) ("libvorbis" ,libvorbis) ("libxcursor" ,libxcursor) ("libxml2" ,libxml2) @@ -4477,7 +4484,7 @@ some graphical niceities, and numerous bug-fixes and other improvements.") (arguments `(#:make-flags (let ((vulkanlib (string-append (assoc-ref %build-inputs - "vulkan-icd-loader") "/lib"))) + "vulkan-loader") "/lib"))) (list "CC=gcc" "MP3LIB=mpg123" "USE_CODEC_FLAC=1" @@ -4490,7 +4497,7 @@ some graphical niceities, and numerous bug-fixes and other improvements.") (add-after 'unpack 'fix-makefile-paths (lambda* (#:key outputs #:allow-other-keys) (let ((vulkan (assoc-ref %build-inputs - "vulkan-icd-loader")) + "vulkan-loader")) (out (assoc-ref outputs "out"))) (mkdir-p (string-append out "/bin")) (substitute* "Quake/Makefile" ((" /usr") @@ -4501,7 +4508,7 @@ some graphical niceities, and numerous bug-fixes and other improvements.") #t)))) ,@(strip-keyword-arguments '(#:make-flags #:phases) (package-arguments quakespasm)))) - (inputs `(("vulkan-icd-loader" ,vulkan-icd-loader) + (inputs `(("vulkan-loader" ,vulkan-loader) ,@(package-inputs quakespasm))) (description "vkquake is a modern engine for id software's Quake 1. It includes support for 64 bit CPUs, custom music playback, a new sound driver, @@ -4703,7 +4710,7 @@ Github or Gitlab.") (define-public colobot (package (name "colobot") - (version "0.1.11-alpha") + (version "0.1.11.1-alpha") (source (origin (method url-fetch) @@ -4711,7 +4718,7 @@ Github or Gitlab.") "colobot-gold-" version ".tar.gz")) (sha256 (base32 - "160rq9fp5vd0qaqr3jvzvzrcxk9cac532y8vx4cvq0a8hgylrbad")))) + "0h6f4icarramhjkxxbzz6siv3v11z5r8ghqisgr1rscw217vhmwf")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;no test @@ -4749,7 +4756,7 @@ Github or Gitlab.") "colobot-gold-" version ".tar.gz")) (sha256 (base32 - "1pdpsyr41g7xmk03k2g76l214f53ahk04qnkzmsv1fdbbaq7p109")))) + "0riznycx2jbxmg4m9nn3mcpqws2c0s7cn2m9skz9zj1w39r5qpjy")))) ("colobot-music" ,(origin (method url-fetch) @@ -4922,3 +4929,244 @@ Strife, Chex Quest, and fan-created games like Harmony, Hacx and Freedoom.") (description "Fortune is a command-line utility which displays a random quotation from a collection of quotes.") (license license:bsd-4))) + +(define xonotic-data + (package + (name "xonotic-data") + (version "0.8.2") + (source + (origin + (method url-fetch) + (uri (string-append "http://dl.xonotic.org/xonotic-" + version ".zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "1mcs6l4clvn7ibfq3q69k2p0z6ww75rxvnngamdq5ic6yhq74bx2")))) + (build-system trivial-build-system) + (native-inputs + `(("unzip" ,unzip))) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (xonotic (string-append out "/share/xonotic")) + (source (assoc-ref %build-inputs "source")) + (unzip (string-append (assoc-ref %build-inputs "unzip") "/bin/unzip"))) + (copy-file source (string-append ,name "-" ,version ".zip")) + (invoke unzip (string-append ,name "-" ,version ".zip")) + (mkdir-p out) + (mkdir-p xonotic) + (chdir "Xonotic") + (copy-recursively "data" + (string-append xonotic "/data")) + (copy-recursively "server" + (string-append xonotic "/server")) + (install-file "key_0.d0pk" xonotic))))) + (home-page "http://xonotic.org") + (synopsis "Data files for Xonotic") + (description + "Xonotic-data provides the data files required by the game Xonotic.") + (license (list license:gpl2+ + (license:x11-style "file://server/rcon.pl"))))) + +(define-public xonotic + (package + (name "xonotic") + (version "0.8.2") + (source + (origin + (method url-fetch) + (uri (string-append "http://dl.xonotic.org/xonotic-" + version "-source.zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "0axxw04fyz6jlfqd0kp7hdrqa0li31sx1pbipf2j5qp9wvqicsay")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags (list (string-append "--prefix=" + (assoc-ref %outputs "out")) + "--disable-rijndael") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'make-darkplaces + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (sharedir (string-append out "/share/xonotic/"))) + (invoke "make" "-C" "source/darkplaces" + (string-append "DP_FS_BASEDIR=" + sharedir) + "DP_LINK_TO_LIBJPEG=1" + "DP_SOUND_API=ALSA" + "CC=gcc" + "-f" "makefile" + "cl-release") + (invoke "make" "-C" "source/darkplaces" + (string-append "DP_FS_BASEDIR=" + sharedir) + "DP_LINK_TO_LIBJPEG=1" + "DP_SOUND_API=ALSA" + "CC=gcc" + "-f" "makefile" + "sdl-release") + (invoke "make" "-C" "source/darkplaces" + (string-append "DP_FS_BASEDIR=" + sharedir) + "DP_LINK_TO_LIBJPEG=1" + "DP_SOUND_API=ALSA" + "CC=gcc" + "-f" "makefile" + "sv-release")))) + (add-before 'configure 'bootstrap + (lambda _ + (chdir "source/d0_blind_id") + (invoke "sh" "autogen.sh"))) + (add-after 'build 'install-desktop-entry + (lambda* (#:key outputs #:allow-other-keys) + ;; Add .desktop files for the 2 variants and the symlink + (let* ((output (assoc-ref outputs "out")) + (apps (string-append output "/share/applications"))) + (mkdir-p apps) + (with-output-to-file + (string-append apps "/xonotic-glx.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=xonotic-glx~@ + Comment=Xonotic glx~@ + Exec=~a/bin/xonotic-glx~@ + TryExec=~@*~a/bin/xonotic-glx~@ + Icon=~@ + Type=Application~%" + output))) + (with-output-to-file + (string-append apps "/xonotic-sdl.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=xonotic-sdl~@ + Comment=Xonotic sdl~@ + Exec=~a/bin/xonotic-sdl~@ + TryExec=~@*~a/bin/xonotic-sdl~@ + Icon=~@ + Type=Application~%" + output))) + (with-output-to-file + (string-append apps "/xonotic.desktop") + (lambda _ + (format #t + "[Desktop Entry]~@ + Name=xonotic~@ + Comment=Xonotic~@ + Exec=~a/bin/xonotic-glx~@ + TryExec=~@*~a/bin/xonotic~@ + Icon=~@ + Type=Application~%" + output))) + #t))) + (add-after 'install-desktop-entry 'install-icons + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (with-directory-excursion "../../misc/logos/icons_png/" + (for-each + (lambda (file) + (let* ((size (string-filter char-numeric? file)) + (icons (string-append out "/share/icons/hicolor/" + size "x" size "/apps"))) + (mkdir-p icons) + (copy-file file (string-append icons "/xonotic.png")))) + '("xonotic_16.png" "xonotic_22.png" "xonotic_24.png" + "xonotic_32.png" "xonotic_48.png" "xonotic_64.png" + "xonotic_128.png" "xonotic_256.png" "xonotic_512.png")))))) + (add-after 'install-icons 'install-binaries + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (define (install src dst) + (let ((dst (string-append out dst))) + (mkdir-p (dirname dst)) + (copy-file src dst))) + (mkdir-p (string-append out "/bin")) + (install "../darkplaces/darkplaces-dedicated" + "/bin/xonotic-dedicated") + (install "../darkplaces/darkplaces-glx" + "/bin/xonotic-glx") + (install "../darkplaces/darkplaces-sdl" + "/bin/xonotic-sdl") + ;; Provide a default xonotic executable, defaulting to SDL. + (symlink (string-append out "/bin/xonotic-sdl") + (string-append out "/bin/xonotic")) + #t))) + (add-after 'install-binaries 'install-data + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (data (assoc-ref inputs "xonotic-data"))) + (copy-recursively (string-append data "/share/xonotic") + (string-append out "/share/xonotic")) + #t))) + (add-after 'install-binaries 'wrap-binaries + (lambda* (#:key outputs inputs #:allow-other-keys) + ;; Curl and libvorbis need to be wrapped so that we get + ;; sound and networking. + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/xonotic")) + (bin-sdl (string-append out "/bin/xonotic-sdl")) + (bin-glx (string-append out "/bin/xonotic-glx")) + (bin-dedicated (string-append out "/bin/xonotic-dedicated")) + (curl (assoc-ref inputs "curl")) + (vorbis (assoc-ref inputs "libvorbis"))) + (wrap-program bin + `("LD_LIBRARY_PATH" ":" prefix + (,(string-append curl "/lib:" vorbis "/lib")))) + (wrap-program bin-sdl + `("LD_LIBRARY_PATH" ":" prefix + (,(string-append curl "/lib:" vorbis "/lib")))) + (wrap-program bin-glx + `("LD_LIBRARY_PATH" ":" prefix + (,(string-append curl "/lib:" vorbis "/lib")))) + (wrap-program bin-dedicated + `("LD_LIBRARY_PATH" ":" prefix + (,(string-append curl "/lib:" vorbis "/lib")))) + #t)))))) + (inputs + `(("xonotic-data" ,xonotic-data) + ("alsa-lib" ,alsa-lib) + ("curl" ,curl) + ("libjpeg" ,libjpeg) + ("libmodplug" ,libmodplug) + ("libvorbis" ,libvorbis) + ("libogg" ,libogg) + ("libxpm" ,libxpm) + ("libxxf86dga" ,libxxf86dga) + ("libxxf86vm" ,libxxf86vm) + ("libx11" ,libx11) + ("libxext" ,libxext) + ("libxau" ,libxau) + ("libxdmcp" ,libxdmcp) + ("mesa" ,mesa) + ("glu" ,glu) + ("freetype" ,freetype) + ("sdl2" ,sdl2) + ("libpng" ,libpng) + ("hicolor-icon-theme" ,hicolor-icon-theme))) + (native-inputs + `(("unzip" ,unzip) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("libtool" ,libtool) + ("gmp" ,gmp))) + (home-page "http://xonotic.org") + (synopsis "Fast-paced first-person shooter game") + (description + "Xonotic is a free, fast-paced first-person shooter. +The project is geared towards providing addictive arena shooter +gameplay which is all spawned and driven by the community itself. +Xonotic is a direct successor of the Nexuiz project with years of +development between them, and it aims to become the best possible +open-source FPS of its kind.") + (license (list license:gpl2+ + license:bsd-3 ; /source/d0_blind_id folder and others + (license:x11-style "" "See file rcon.pl."))))) diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 741cfab06e..5012d9a913 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -485,7 +485,17 @@ Go. It also includes runtime support libraries for these languages.") #t)))) (inputs `(("isl" ,isl) - ,@(package-inputs gcc-4.7))))) + ,@(package-inputs gcc-4.7))) + + (native-search-paths + ;; We have to use 'CPATH' for GCC > 5, not 'C_INCLUDE_PATH' & co., due to + ;; <https://gcc.gnu.org/bugzilla/show_bug.cgi?id=70129>. + (list (search-path-specification + (variable "CPATH") + (files '("include"))) + (search-path-specification + (variable "LIBRARY_PATH") + (files '("lib" "lib64"))))))) (define-public gcc-7 (package diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 75ed83f8a4..4ba09f2a90 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> +;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,6 +44,8 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages icu4c) + #:use-module (gnu packages pcre) + #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages statistics) @@ -612,3 +615,148 @@ spatial data and models on top of static maps from various online sources (e.g Google Maps and Stamen Maps). It includes tools common to those tasks, including functions for geolocation and routing.") (license license:gpl2))) + +(define-public gdal + (package + (name "gdal") + (version "2.2.4") + (source (origin + (method url-fetch) + (uri (string-append + "http://download.osgeo.org/gdal/" version "/gdal-" + version ".tar.gz")) + (sha256 + (base32 + "1951f7b69x3d1vic0rmq92q8f4bj3hbxnxmj5jl0cc3zg0isgmdr")) + (modules '((guix build utils))) + (snippet + `(begin + ;; TODO: frmts contains a lot more bundled code. + (for-each delete-file-recursively + ;; bundled code + '("frmts/png/libpng" + "frmts/gif/giflib" + "frmts/jpeg/libjpeg" + "frmts/jpeg/libjpeg12" + "frmts/gtiff/libtiff" + "frmts/gtiff/libgeotiff" + "frmts/zlib" + "ogr/ogrsf_frmts/geojson/libjson")))))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f + #:configure-flags + (let-syntax ((with (syntax-rules () + ((_ option input) + (string-append option "=" + (assoc-ref %build-inputs input)))))) + (list + ;; TODO: --with-pcidsk, --with-pcraster + (with "--with-freexl" "freexl") + (with "--with-libjson-c" "json-c") + (with "--with-png" "libpng") + (with "--with-webp" "libwebp") + (with "--with-gif" "giflib") + (with "--with-jpeg" "libjpeg-turbo") + (with "--with-libtiff" "libtiff") + (with "--with-geotiff" "libgeotiff") + (with "--with-libz" "zlib") + "--with-pcre")) + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-path + (lambda _ + (substitute* "frmts/mrf/mrf_band.cpp" + (("\"../zlib/zlib.h\"") "<zlib.h>"))))))) + (inputs + `(("freexl" ,freexl) + ("geos" ,geos) + ("giflib" ,giflib) + ("json-c" ,json-c) + ("libgeotiff" ,libgeotiff) + ("libjpeg-turbo" ,libjpeg-turbo) + ("libpng" ,libpng) + ("libtiff" ,libtiff) + ("libwebp" ,libwebp) + ("pcre" ,pcre) + ("zlib" ,zlib))) + (home-page "http://www.gdal.org/") + (synopsis "Raster and vector geospatial data format library") + (description "GDAL is a translator library for raster and vector geospatial +data formats. As a library, it presents a single raster abstract data model +and single vector abstract data model to the calling application for all +supported formats. It also comes with a variety of useful command line +utilities for data translation and processing.") + (license (list + ;; general license + license:expat + ;; frmts/gtiff/tif_float.c, frmts/pcraster/libcsf, + ;; ogr/ogrsf_frmts/dxf/intronurbs.cpp, frmts/pdf/pdfdataset.cpp + ;; frmts/mrf/ + license:bsd-3 + ;; frmts/hdf4/hdf-eos/* + ;; similar to the expat license, but without guarantee exclusion + (license:non-copyleft "file://frmts/hdf4/hdf-eos/README") + ;; frmts/grib/degrib/ + license:public-domain ; with guarantee exclusion + ;; port/cpl_minizip* + ;; Some bsd-inspired license + (license:non-copyleft "file://port/LICENCE_minizip") + ;; alg/internal_libqhull + ;; Some 5-clause license + (license:non-copyleft "file://alg/internal_libqhull/COPYING.txt") + ;; frmts/mrf/libLERC + license:asl2.0)))) + +(define-public postgis + (package + (name "postgis") + (version "2.4.4") + (source (origin + (method url-fetch) + (uri (string-append "https://download.osgeo.org/postgis/source/postgis-" + version ".tar.gz")) + (sha256 + (base32 + "1hm8migjb53cymp4qvg1h20yqllmy9f7x0awv5450391i6syyqq6")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f + #:make-flags + (list (string-append "datadir=" (assoc-ref %outputs "out") "/share") + (string-append "docdir="(assoc-ref %outputs "out") "/share/doc") + (string-append "pkglibdir="(assoc-ref %outputs "out") "/lib") + (string-append "bindir=" (assoc-ref %outputs "out") "/bin")) + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-install-path + (lambda* (#:key outputs #:allow-other-keys) + (substitute* '("raster/loader/Makefile" "raster/scripts/python/Makefile") + (("\\$\\(DESTDIR\\)\\$\\(PGSQL_BINDIR\\)") + (string-append (assoc-ref outputs "out") "/bin")))))))) + (inputs + `(("gdal" ,gdal) + ("geos" ,geos) + ("libxml2" ,libxml2) + ("pcre" ,pcre) + ("postgresql" ,postgresql) + ("proj.4" ,proj.4))) + (native-inputs + `(("perl" ,perl) + ("pkg-config" ,pkg-config))) + (home-page "https://postgis.net") + (synopsis "Spatial database extender for PostgreSQL") + (description "PostGIS is a spatial database extender for PostgreSQL +object-relational database. It adds support for geographic objects allowing +location queries to be run in SQL.") + (license (list + ;; General license + license:gpl2+ + ;; loader/dbfopen, safileio.*, shapefil.h, shpopen.c + license:expat + ;; loader/getopt.* + license:public-domain + ;; doc/xsl + license:bsd-3 ; files only say "BSD" + ;; doc + license:cc-by-sa3.0)))) diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index 2483885c95..628d285e45 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -1,8 +1,9 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,12 +23,14 @@ (define-module (gnu packages gimp) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix utils) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system gnu) #:use-module (guix build-system glib-or-gtk) #:use-module (gnu packages) #:use-module (gnu packages algebra) + #:use-module (gnu packages autotools) #:use-module (gnu packages pkg-config) #:use-module (gnu packages glib) #:use-module (gnu packages gtk) @@ -39,12 +42,13 @@ #:use-module (gnu packages pdf) #:use-module (gnu packages photo) #:use-module (gnu packages python) + #:use-module (gnu packages web) #:use-module (gnu packages xorg)) (define-public babl (package (name "babl") - (version "0.1.40") + (version "0.1.46") (source (origin (method url-fetch) (uri (list (string-append "https://download.gimp.org/pub/babl/" @@ -58,7 +62,7 @@ "/babl-" version ".tar.bz2"))) (sha256 (base32 - "08cdl6rcfvkhqsnhb214xzr0wbrv0956xzlrzqxcb1k1madgjanh")))) + "0nwyhvfca6m35wjcccvwca7fcihzgdfyc012qi703y5d3cxl1hmv")))) (build-system gnu-build-system) (home-page "http://gegl.org/babl/") (synopsis "Image pixel format conversion library") @@ -75,43 +79,25 @@ provided, as well as a framework to add new color models and data types.") (define-public gegl (package (name "gegl") - (version "0.2.0") + (version "0.4.0") (source (origin (method url-fetch) - (uri (list (string-append "http://download.gimp.org/pub/gegl/" + (uri (list (string-append "https://download.gimp.org/pub/gegl/" (string-take version 3) "/" name "-" version ".tar.bz2"))) (sha256 (base32 - "09nlv06li9nrn74ifpm7223mxpg0s7cii702z72cpbwrjh6nlbnz")) - (patches (search-patches "gegl-CVE-2012-4433.patch")))) + "1ighk4z8nlqrzyj8w97s140hzj59564l3xv6fpzbr97m1zx2nkfh")))) (build-system gnu-build-system) (arguments - '(;; More than just the one test disabled below now fails; disable them - ;; all according to the rationale given below. - #:tests? #f - #:configure-flags '("LDFLAGS=-lm") - #:phases - (modify-phases %standard-phases - (add-before 'build 'pre-build - (lambda _ - ;; This test program seems to crash on exit. Specifically, whilst - ;; g_object_unreffing bufferA and bufferB - This seems to be a bug - ;; in the destructor. This is just a test program so will not have - ;; any wider effect, although might be hiding another problem. - ;; According to advice received on irc.gimp.org#gegl although 0.2.0 - ;; is the latest released version, any bug reports against it will - ;; be ignored. So we are on our own. - (substitute* "tools/img_cmp.c" - (("g_object_unref \\(buffer.\\);") "")) - - (substitute* "tests/compositions/Makefile" - (("/bin/sh") (which "sh"))) - #t))))) - (inputs + '(#:configure-flags '("LDFLAGS=-lm"))) + ;; These are propagated to satisfy 'gegl-0.4.pc'. + (propagated-inputs `(("babl" ,babl) ("glib" ,glib) - ("cairo" ,cairo) + ("json-glib" ,json-glib))) + (inputs + `(("cairo" ,cairo) ("pango" ,pango) ("libpng" ,libpng) ("libjpeg" ,libjpeg-8))) @@ -131,23 +117,18 @@ buffers.") (define-public gimp (package (name "gimp") - (version "2.8.22") + (version "2.10.0") (source (origin (method url-fetch) - (uri (string-append "http://download.gimp.org/pub/gimp/v" + (uri (string-append "https://download.gimp.org/pub/gimp/v" (version-major+minor version) "/gimp-" version ".tar.bz2")) - (patches (search-patches "gimp-CVE-2017-17784.patch" - "gimp-CVE-2017-17785.patch" - "gimp-CVE-2017-17786.patch" - "gimp-CVE-2017-17787.patch" - "gimp-CVE-2017-17789.patch")) (sha256 (base32 - "12k3lp938qdc9cqj29scg55f3bb8iav2fysd29w0s49bqmfa71wi")))) + "1qkxaigbfkx26xym5nzrgfrmn97cbnhn63v1saaha2nbi3xrdk3z")))) (build-system gnu-build-system) (outputs '("out" - "doc")) ;5 MiB of gtk-doc HTML + "doc")) ;9 MiB of gtk-doc HTML (arguments '(#:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") @@ -171,21 +152,27 @@ buffers.") (inputs `(("babl" ,babl) ("glib" ,glib) + ("glib-networking" ,glib-networking) ("libtiff" ,libtiff) ("libjpeg" ,libjpeg-8) ("atk" ,atk) + ("gexiv2" ,gexiv2) ("gtk+" ,gtk+-2) + ("libmypaint" ,libmypaint) + ("mypaint-brushes" ,mypaint-brushes) ("exif" ,libexif) ; optional, EXIF + XMP support ("lcms" ,lcms) ; optional, color management ("librsvg" ,librsvg) ; optional, SVG support ("poppler" ,poppler) ; optional, PDF support + ("poppler-data" ,poppler-data) ("python" ,python-2) ; optional, Python support ("python2-pygtk" ,python2-pygtk) ; optional, Python support ("gegl" ,gegl))) (native-inputs - `(("pkg-config" ,pkg-config) + `(("glib:bin" ,glib "bin") ; for glib-compile-resources and gdbus-codegen + ("pkg-config" ,pkg-config) ("intltool" ,intltool))) - (home-page "http://gimp.org") + (home-page "https://www.gimp.org") (synopsis "GNU Image Manipulation Program") (description "GIMP is an application for image manipulation tasks such as photo @@ -210,7 +197,18 @@ that is extensible via a plugin system.") `(#:tests? #f ;no tests #:phases (modify-phases %standard-phases - (delete 'configure) + ;; FIXME: The gegl package only installs "gegl-0.4.pc", but + ;; "gimp-2.0.pc" requires "gegl-0.3.pc", so we just copy it. + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "tmppkgconfig") + (copy-file (string-append (assoc-ref inputs "gegl") + "/lib/pkgconfig/gegl-0.4.pc") + "tmppkgconfig/gegl-0.3.pc") + (setenv "PKG_CONFIG_PATH" + (string-append "tmppkgconfig:" + (or (getenv "PKG_CONFIG_PATH") ""))) + #t)) (add-after 'unpack 'set-prefix (lambda* (#:key outputs #:allow-other-keys) ;; gimptool-2.0 does not allow us to install to any target @@ -229,6 +227,7 @@ that is extensible via a plugin system.") ("gimp" ,gimp) ;; needed by gimp-2.0.pc ("gdk-pixbuf" ,gdk-pixbuf) + ("gegl" ,gegl) ("cairo" ,cairo) ("glib" ,glib) ;; needed by gimpui-2.0.pc @@ -243,3 +242,63 @@ an image, allowing you to work with the transformed image inside GIMP. You can draw or apply filters in fourier space and get the modified image with an inverse fourier transform.") (license license:gpl3+))) + +(define-public libmypaint + (package + (name "libmypaint") + (version "1.3.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/mypaint/libmypaint/" + "releases/download/v" version "/libmypaint-" + version ".tar.xz")) + (sha256 + (base32 + "0wd6jk69vmhsq1mdw96v0fh7b28n3glkr5ca466zcq7agzaxj1va")))) + (build-system gnu-build-system) + (native-inputs + `(("intltool" ,intltool) + ("pkg-config" ,pkg-config))) + ;; As needed by 'libmypaint.pc'. + (propagated-inputs + `(("json-c" ,json-c) + ("gobject-introspection" ,gobject-introspection))) + (inputs + `(("glib" ,glib))) + (synopsis "Artistic brushes library") + (description "Libmypaint, also called \"brushlib\", is a library for making +brushstrokes which is used by MyPaint and GIMP.") + (home-page "http://mypaint.org") + (license license:isc))) + +(define-public mypaint-brushes + (package + (name "mypaint-brushes") + (version "1.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Jehan/mypaint-brushes.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1iz89z6v2mp8j1lrf942k561s8311i3s34ap36wh4rybb2lq15m0")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'relax-dependency-version + (lambda _ + (substitute* "autogen.sh" + (("automake-1.13") "automake") + (("aclocal-1.13") "aclocal")) + #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake))) + (synopsis "Default brushes for MyPaint") + (description "This package provides the default set of brushes for +MyPaint.") + (home-page "https://github.com/Jehan/mypaint-brushes") + (license license:cc0))) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 35db95b4f0..503308ac16 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -55,7 +55,8 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix utils) - #:use-module (ice-9 match)) + #:use-module (ice-9 match) + #:use-module ((srfi srfi-1) #:hide (zip))) (define-public glu (package @@ -211,7 +212,8 @@ also known as DXTn or DXTC) for Mesa.") (package (inherit libva) (name "libva-without-mesa") - (inputs (alist-delete "mesa" (package-inputs libva))) + (inputs `(,@(fold alist-delete (package-inputs libva) + '("mesa" "wayland")))) (arguments (strip-keyword-arguments '(#:make-flags) @@ -222,7 +224,7 @@ also known as DXTn or DXTC) for Mesa.") (define-public mesa (package (name "mesa") - (version "17.3.6") + (version "17.3.8") (source (origin (method url-fetch) @@ -234,7 +236,7 @@ also known as DXTn or DXTC) for Mesa.") version "/mesa-" version ".tar.xz"))) (sha256 (base32 - "1y7vawz2sbpzdqk4b60w8kfrxb2rfkdjkifyxxfx1jaasj05d4g5")) + "1cd6a4ll5arla3kncxnw9196ak1v4rvnb098aa7lm3n4h7r9p7cg")) (patches (search-patches "mesa-wayland-egl-symbols-check-mips.patch" "mesa-skip-disk-cache-test.patch")))) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 7380f7d898..5035e39f60 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -31,6 +31,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages bison) + #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages enlightenment) #:use-module (gnu packages file) @@ -597,7 +598,7 @@ useful for C++.") (define-public python-pygobject (package (name "python-pygobject") - (version "3.24.1") + (version "3.28.2") (source (origin (method url-fetch) @@ -606,8 +607,19 @@ useful for C++.") "/pygobject-" version ".tar.xz")) (sha256 (base32 - "1zdzznrj2s1gsrv2z4r0n88fzba8zjc1n2r313xi77lhl1daja56")))) + "1jpjws4v17wv99lbhks0g0152w0f70mnwpdn8ibzzfgw2kykli5c")))) (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'delete-broken-tests + (lambda _ + ;; FIXME: this test freezes and times out. + (delete-file "tests/test_mainloop.py") + ;; FIXME: this test fails with this kind of error: + ;; AssertionError: <Handlers.SIG_IGN: 1> != <built-in function default_int_handler + (delete-file "tests/test_ossig.py") + #t))))) (native-inputs `(;; Use gcc-7 to work around an internal compiler error that happens ;; when using gcc-5.5.0. FIXME: Try removing this when the default @@ -617,7 +629,8 @@ useful for C++.") ;for tests: dbus-run-session and glib-compile-schemas ("dbus" ,dbus) ("glib-bin" ,glib "bin") - ("pkg-config" ,pkg-config))) + ("pkg-config" ,pkg-config) + ("python-pytest" ,python-pytest))) (inputs `(("python" ,python) ("python-pycairo" ,python-pycairo) @@ -641,7 +654,18 @@ useful for C++.") (inputs `(("python" ,python-2) ("python-pycairo" ,python2-pycairo) - ("gobject-introspection" ,gobject-introspection))))) + ("gobject-introspection" ,gobject-introspection))) + (native-inputs + `(;; Use gcc-7 to work around an internal compiler error that happens + ;; when using gcc-5.5.0. FIXME: Try removing this when the default + ;; compiler is no longer gcc-5.5.0. + ("gcc" ,gcc-7) + ("which" ,which) + ;for tests: dbus-run-session and glib-compile-schemas + ("dbus" ,dbus) + ("glib-bin" ,glib "bin") + ("pkg-config" ,pkg-config) + ("python-pytest" ,python2-pytest))))) (define-public perl-glib (package diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 319c2e6fd0..de212bfb44 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -8,10 +8,10 @@ ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org> ;;; Copyright © 2015, 2017 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com> -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; 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 © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2018 Rene Saavedra <pacoon@protonmail.com> ;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net> ;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net> @@ -29,6 +29,7 @@ ;;; Copyright © 2017 Mohammed Sadiq <sadiq@sadiqpk.org> ;;; Copyright © 2017 Brendan Tildesley <brendan.tildesley@openmailbox.org> ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> +;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -79,6 +80,7 @@ #:use-module (gnu packages enchant) #:use-module (gnu packages fontutils) #:use-module (gnu packages game-development) + #:use-module (gnu packages gcc) #:use-module (gnu packages gettext) #:use-module (gnu packages glib) #:use-module (gnu packages gnupg) @@ -146,6 +148,7 @@ #:use-module (gnu packages virtualization) #:use-module (gnu packages vpn) #:use-module (gnu packages xorg) + #:use-module (ice-9 match) #:use-module (srfi srfi-1)) (define-public brasero @@ -533,7 +536,7 @@ and keep up to date translations of documentation.") (define-public gnome-disk-utility (package (name "gnome-disk-utility") - (version "3.28.1") + (version "3.28.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -541,7 +544,7 @@ and keep up to date translations of documentation.") name "-" version ".tar.xz")) (sha256 (base32 - "09dmknfas8iifv6k5jb4a9ag57s8awrn0f26fd1qlg0mbfjlnfd6")))) + "11ajz4cbsdns81kihd6242b6pwxbw8bkr9qqkf4qnb4kp363a38m")))) (build-system meson-build-system) (native-inputs `(("glib:bin" ,glib "bin") @@ -1067,6 +1070,16 @@ API.") (patches (search-patches "gtkglext-disable-disable-deprecated.patch")))) (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; Fix a collision between a local variable and a definition from + ;; glibc's string.h. + (add-after 'unpack 'fix-collision + (lambda _ + (substitute* "gdk/gdkglshapes.c" + ((" index") " triangle_index")) + #t))))) (inputs `(("gtk+" ,gtk+-2) ("mesa" ,mesa) ("glu" ,glu) @@ -2062,7 +2075,7 @@ libraries written in C.") (define-public vte (package (name "vte") - (version "0.52.1") + (version "0.52.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -2070,7 +2083,7 @@ libraries written in C.") name "-" version ".tar.xz")) (sha256 (base32 - "1lva70inb5y8p42rg95fb88z2ybwcz0lybla3ixbgp2sj0s4rzdh")))) + "1br6kg0wzf1wmww1hadihhcpqbamalqmbppfdzjvzk1ayp75f9hg")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -2455,7 +2468,7 @@ libxml to ease remote use of the RESTful API.") (define-public libsoup (package (name "libsoup") - (version "2.62.1") + (version "2.62.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/libsoup/" @@ -2463,7 +2476,7 @@ libxml to ease remote use of the RESTful API.") name "-" version ".tar.xz")) (sha256 (base32 - "1mw3b3j4f4ln7hl03jd296rx78dy35hzlq005a21r6qg5sndsdzh")))) + "1dkrz1iwsswscayfmjxqv2q00b87snlq9nxdccn5vck0vbinylwy")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments @@ -2730,7 +2743,7 @@ more fun.") (define-public gnome-terminal (package (name "gnome-terminal") - (version "3.28.1") + (version "3.28.2") (source (origin (method url-fetch) @@ -2739,7 +2752,7 @@ more fun.") name "-" version ".tar.xz")) (sha256 (base32 - "1hqwh12hiy73mazqgvyrq8jk4c669x2fb4nh8mwby3qbk8ca19pp")))) + "0ybjansg6lr279191w8z8r45gy4rxwzw1ajm98cgkv0fk2jdr0x2")))) (build-system glib-or-gtk-build-system) (arguments '(#:configure-flags @@ -3874,7 +3887,7 @@ supports image conversion, rotation, and slideshows.") ;; 'XDG_DATA_DIRS' appropriately set. (package (name "eog-plugins") - (version "3.26.1") + (version "3.26.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3882,7 +3895,7 @@ supports image conversion, rotation, and slideshows.") name "-" version ".tar.xz")) (sha256 (base32 - "0v45f2m3b60ygkwpq6jrl49nwrivw6qy0ciibpv821qrm73hsgd7")))) + "1w8zw7kwfvlwlyb1k1inqdvbwnzq959sqawlmnwfb8ykn98hbk8y")))) (build-system gnu-build-system) (home-page "https://wiki.gnome.org/Apps/EyeOfGnome/Plugins") (synopsis "Extensions for the Eye of GNOME image viewer") @@ -4167,7 +4180,7 @@ a secret password store, an adblocker, and a modern UI.") (define-public epiphany (package (name "epiphany") - (version "3.28.1") + (version "3.28.2.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4175,7 +4188,7 @@ a secret password store, an adblocker, and a modern UI.") name "-" version ".tar.xz")) (sha256 (base32 - "0zvxrwlswxadq4zbr4f73ms141d08j0lhi6rzmj83j1s3gan88md")))) + "0ba0qqsbg3cv1k1pcj971y7l8kqib5l7kbr743x9a7hbmkqfk95s")))) (build-system meson-build-system) (arguments @@ -4616,6 +4629,14 @@ configuration program to choose applications starting on login.") (arguments '(#:phases (modify-phases %standard-phases + (add-after 'set-paths 'work-around-gcc-7-include-path-issue + ;; FIXME: Work around a problem with gcc-7 includes (see + ;; <https://bugs.gnu.org/30756>). Note that we use gcc-7 + ;; to work around an internal compiler error in gcc-5. + (lambda _ + (unsetenv "C_INCLUDE_PATH") + (unsetenv "CPLUS_INCLUDE_PATH") + #t)) (add-before 'check 'pre-check (lambda _ @@ -4633,7 +4654,11 @@ configuration program to choose applications starting on login.") ((".*expect\\(datestr\\).*") "")) #t))))) (native-inputs - `(("glib:bin" ,glib "bin") ; for glib-compile-resources + `(("gcc" ,gcc-7) ; FIXME: Work around an internal compiler error in + ; gcc-5. Try removing this when our default compiler is + ; no longer gcc-5.5.0, and also remove the + ; 'work-around-gcc-7-include-path-issue' phase above. + ("glib:bin" ,glib "bin") ; for glib-compile-resources ("pkg-config" ,pkg-config) ("xmllint" ,libxml2) ;; For testing @@ -4658,7 +4683,7 @@ javascript engine and the GObject introspection framework.") (define-public gedit (package (name "gedit") - (version "3.28.0") + (version "3.28.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -4666,7 +4691,7 @@ javascript engine and the GObject introspection framework.") name "-" version ".tar.xz")) (sha256 (base32 - "0pyam0zi44xq776x20ycqnvmf86l98jns8ldv4m81gnp9wnhmycv")))) + "0791r07d3ixmmfk68lvhp3d5i4vnlrnx10csxwgpfqyfb04vwx7i")))) (build-system glib-or-gtk-build-system) (arguments `(#:phases @@ -5815,7 +5840,7 @@ files.") (define-public baobab (package (name "baobab") - (version "3.26.1") + (version "3.28.0") (source (origin (method url-fetch) (uri (string-append @@ -5824,11 +5849,15 @@ files.") name "-" version ".tar.xz")) (sha256 (base32 - "0zkqxyqyxd6j270jf5hbcrb3yh4k31ddh40v4cjhgngm8mcsnnbs")))) - (build-system glib-or-gtk-build-system) + "0qsx7vx5c3n4yxlxbr11sppw7qwcv9z3g45b5xb9y7wxw5lv42sk")))) + (build-system meson-build-system) + (arguments + '(#:glib-or-gtk? #t)) (native-inputs `(("intltool" ,intltool) ("pkg-config" ,pkg-config) + ("desktop-file-utils" ,desktop-file-utils) ; for update-desktop-database + ("gtk+-bin" ,gtk+ "bin") ; for gtk-update-icon-cache ("itstool" ,itstool) ("xmllint" ,libxml2) ("glib" ,glib "bin") @@ -6404,6 +6433,12 @@ functionality and behavior.") (base32 "0igxpngnkf1wpsg872a9jg3c9f5z8afm312yfbillz16mk8w39cw")))) (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + ;; autogen.sh calls configure at the end of the script. + (replace 'bootstrap + (lambda _ (invoke "autoreconf" "-vfi")))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) @@ -7192,3 +7227,86 @@ into audio files that a personal computer or digital audio player can play. It supports ripping to any audio codec supported by a GStreamer plugin, such as mp3, Ogg Vorbis and FLAC") (license license:gpl2+))) + +(define-public workrave + (let ((commit "v1_10_20")) + (package + (name "workrave") + (version (string-map (match-lambda + (#\_ #\.) + (chr chr)) + (string-drop commit 1))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rcaelers/workrave.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "099a87zkrkmsgfz9isrfm89dh545x52891jh6qxmn19h6wwsi941")))) + (build-system glib-or-gtk-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autogen + (lambda _ + (invoke "sh" "autogen.sh") + #t))))) + (propagated-inputs `(("glib" ,glib) + ("gtk+" ,gtk+) + ("gdk-pixbuf" ,gdk-pixbuf) + ("gtkmm" ,gtkmm) + ("glibmm" ,glibmm) + ("libx11" ,libx11) + ("libxtst" ,libxtst) + ("dconf" ,dconf) + ("libice" ,libice))) + (inputs `(("libsm", libsm) + ("python-cheetah" ,python2-cheetah))) + (native-inputs `(("glib" ,glib "bin") + ("pkg-config" ,pkg-config) + ("gettext" ,gnu-gettext) + ("autoconf" ,autoconf) + ("autoconf-archive" , autoconf-archive) + ("automake" ,automake) + ("libtool" ,libtool) + ("intltool" ,intltool) + ("libxscrnsaver" ,libxscrnsaver) + ("gobject-introspection" ,gobject-introspection) + ("python2" ,python-2))) + (synopsis "Tool to help prevent repetitive strain injury (RSI)") + (description "Workrave is a program that assists in the recovery and +prevention of repetitive strain injury (RSI). The program frequently alerts +you to take micro-pauses, rest breaks and restricts you to your daily limit") + (home-page "http://www.workrave.org") + (license license:gpl3+)))) + +(define-public ghex + (package + (name "ghex") + (version "3.18.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1lq8920ad2chi9ibmyq0x9hg9yk63b0kdbzid03w42cwdzw50x66")))) + (build-system glib-or-gtk-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("gnome-common" ,gnome-common) + ("which" ,which) + ("intltool" ,intltool) + ("yelp-tools" ,yelp-tools) + ("desktop-file-utils" ,desktop-file-utils))) ;for 'desktop-file-validate' + (inputs + `(("atk" ,atk) + ("gtk" ,gtk+))) + (synopsis "GNOME hexadecimal editor") + (description "The GHex program can view and edit files in two ways: +hexadecimal or ASCII. It is useful for editing binary files in general.") + (home-page "https://wiki.gnome.org/Apps/Ghex") + (license license:gpl2))) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index c74ccc9229..7335742e20 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -186,16 +186,13 @@ authentication and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.59.0") + (version "7.60.0") (source (origin (method url-fetch) - (uri (list (string-append "mirror://gnu/gnunet/" name "-" version ".tar.xz") - ;; TODO: Remove once gnurl-7.59.0 release has synced to ftp.gnu.org - (string-append "https://ftp.n0.is/pub/releases/gnurl/" - name "-" version ".tar.xz"))) + (uri (string-append "mirror://gnu/gnunet/" name "-" version ".tar.Z")) (sha256 (base32 - "0fdwqxs4crzj1nbq3lz0xbqjiiqpq16vpll09gryyq4c1y6lbyib")))) + "0klf3h339dznbm903474mjjysrarz09s1wiypnbai3xnfjamha99")))) (build-system gnu-build-system) (outputs '("out" "doc")) ; 1.5 MiB of man3 pages diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index df86ee2fc6..8a8a1f5645 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> -;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> +;;; Copyright © 2013, 2015, 2018 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> @@ -14,6 +14,7 @@ ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -90,6 +91,20 @@ Daemon and possibly more in the future.") (properties '((ftp-server . "ftp.gnupg.org") (ftp-directory . "/gcrypt/libgpg-error"))))) +;; Some packages (e.g. GPGME) require a newer libgpg-error to deal with +;; error codes from recent GnuPG. Remove this in the next rebuild cycle. +(define-public libgpg-error-1.31 + (package + (inherit libgpg-error) + (version "1.31") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnupg/libgpg-error/libgpg-error-" + version ".tar.bz2")) + (sha256 + (base32 + "1vx4nw6rxh2biy3h8n96fyr86q29h8gjl6837437i51jr4isil20")))))) + (define-public libgcrypt (package (name "libgcrypt") @@ -215,14 +230,14 @@ compatible to GNU Pth.") (define-public gnupg (package (name "gnupg") - (version "2.2.6") + (version "2.2.7") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) (sha256 (base32 - "110rf476l3cgn52gh9ia5y0y06y2ialq9dqc12jkhnfhl9gqqkg6")))) + "0vlpis0q7gvq9mhdc43hkyn3cdriz4mwgj20my3gyzpgwqg3cnyr")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -360,7 +375,7 @@ libskba (working with X.509 certificates and CMS data).") (define-public gpgme (package (name "gpgme") - (version "1.10.0") + (version "1.11.1") (source (origin (method url-fetch) @@ -368,13 +383,13 @@ libskba (working with X.509 certificates and CMS data).") ".tar.bz2")) (sha256 (base32 - "14q619lxbk64vz7lih5gjb928qm28jrnn1h3yhsrrff3jw8yv3qs")))) + "0vxx5xaag3rhp4g2arp5qm77gvz4kj0m3hnpvhkdvqyjfhbi26rd")))) (build-system gnu-build-system) (native-inputs `(("gnupg" ,gnupg))) (propagated-inputs ;; Needs to be propagated because gpgme.h includes gpg-error.h. - `(("libgpg-error" ,libgpg-error))) + `(("libgpg-error" ,libgpg-error-1.31))) (inputs `(("libassuan" ,libassuan))) (home-page "https://www.gnupg.org/related_software/gpgme/") @@ -576,10 +591,12 @@ signing, decryption, verification, and key-listing parsing.") version "/pius-" version ".tar.bz2")) (sha256 (base32 - "1893hzpx3zv724drqv48csrn0cm98xw4ymb1zmhs2jvjj1778zfj")))) + "1893hzpx3zv724drqv48csrn0cm98xw4ymb1zmhs2jvjj1778zfj")) + (patches (search-patches "pius.patch")))) (build-system python-build-system) (inputs `(("perl" ,perl) ;for 'pius-party-worksheet' - ("gpg" ,gnupg))) + ("gpg" ,gnupg) + ("python-six" ,python2-six))) (arguments `(#:tests? #f #:python ,python-2 ;uses the Python 2 'print' syntax @@ -607,84 +624,87 @@ PGP keysigning parties.") (home-page "https://www.phildev.net/pius/index.shtml"))) (define-public signing-party - (package - (name "signing-party") - (version "2.6") - (source (origin - (method url-fetch) - (uri (string-append "mirror://debian/pool/main/s/signing-party/" - "signing-party_" version ".orig.tar.gz")) - (sha256 (base32 - "1n5bpcfpl9vg1xp6r1jhbyahrgdyxp05b5pria1rh4m0qnv8sifr")))) - (build-system gnu-build-system) - (native-inputs - `(("autoconf" ,autoconf-wrapper) - ("automake" ,automake))) - (inputs `(("perl" ,perl) - ("perl-text-template" ,perl-text-template) - ("perl-mime-tools" ,perl-mime-tools) - ("perl-gnupg-interface" ,perl-gnupg-interface) - ("perl-net-idn-encode" ,perl-net-idn-encode) - ("libmd" ,libmd))) - (arguments - `(#:tests? #f - #:phases - (modify-phases %standard-phases - (add-before 'configure 'change-directory - (lambda _ - ;; The build system in the unpack phase changes to a less useful - ;; subdirectory, so move up one level - (chdir (dirname (getcwd))))) - (replace 'configure - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (substitute* "keyanalyze/Makefile" - (("LDLIBS") (string-append "CC=" (which "gcc") "\nLDLIBS"))) - (substitute* "keyanalyze/Makefile" - (("\\./configure") (string-append "./configure --prefix=" out))) - (substitute* "gpgwrap/src/Makefile" - (("\\} clean") - (string-append "} clean\ninstall:\n\tinstall -D bin/gpgwrap " - out "/bin/gpgwrap\n"))) - (substitute* '("gpgsigs/Makefile" "keyanalyze/Makefile" - "keylookup/Makefile" "sig2dot/Makefile" - "springgraph/Makefile") - (("/usr") out)) - (setenv "CONFIG_SHELL" (which "sh"))))) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys #:rest args) - (let ((out (assoc-ref outputs "out")) - (install (assoc-ref %standard-phases 'install))) - (apply install args) - (for-each - (lambda (dir file) - (copy-file (string-append dir "/" file) - (string-append out "/bin/" file))) - '("caff" "caff" "caff" "gpgdir" "gpg-key2ps" - "gpglist" "gpg-mailkeys" "gpgparticipants") - '("caff" "pgp-clean" "pgp-fixkey" "gpgdir" "gpg-key2ps" - "gpglist" "gpg-mailkeys" "gpgparticipants")) - (for-each - (lambda (dir file) - (copy-file (string-append dir "/" file) - (string-append out "/share/man/man1/" file))) - '("caff" "caff" "caff" "gpgdir" - "gpg-key2ps" "gpglist" "gpg-mailkeys" - "gpgparticipants" "gpgsigs" "gpgwrap/doc" - "keyanalyze" "keyanalyze/pgpring" "keyanalyze") - '("caff.1" "pgp-clean.1" "pgp-fixkey.1" "gpgdir.1" - "gpg-key2ps.1" "gpglist.1" "gpg-mailkeys.1" - "gpgparticipants.1" "gpgsigs.1" "gpgwrap.1" - "process_keys.1" "pgpring.1" "keyanalyze.1"))))) - (add-after 'install 'wrap-programs - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out"))) - (wrap-program - (string-append out "/bin/caff") - `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB")))))))))) - (synopsis "Collection of scripts for simplifying gnupg key signing") - (description - "Signing-party is a collection for all kinds of PGP/GnuPG related things, + ;; Upstream moved from alioth.debian.org to salsa.debian.org but the + ;; automatic svn import did not preserve tags apparently, so there's no real + ;; version number. + (let ((commit "d6f2296325605ee96ddf9f5b156e5e3f667a6df3") + (revision "0")) + (package + (name "signing-party") + (version (git-version "2.6" revision commit)) + (home-page "https://salsa.debian.org/stappers/pgp-tools") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "00f7zasbwcbjzd92br2j10pyjxv0aw1qb4540qfz2dxzxgmdscrz")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf-wrapper) + ("automake" ,automake))) + (inputs `(("perl" ,perl) + ("perl-text-template" ,perl-text-template) + ("perl-mime-tools" ,perl-mime-tools) + ("perl-gnupg-interface" ,perl-gnupg-interface) + ("perl-net-idn-encode" ,perl-net-idn-encode) + ("libmd" ,libmd))) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "keyanalyze/Makefile" + (("LDLIBS") (string-append "CC=" (which "gcc") "\nLDLIBS"))) + (substitute* "keyanalyze/Makefile" + (("\\./configure") (string-append "./configure --prefix=" out))) + (substitute* "gpgwrap/Makefile" + (("\\} clean") + (string-append "} clean\ninstall:\n\tinstall -D bin/gpgwrap " + out "/bin/gpgwrap\n"))) + (substitute* '("gpgsigs/Makefile" "keyanalyze/Makefile" + "keylookup/Makefile" "sig2dot/Makefile" + "springgraph/Makefile") + (("/usr") out)) + (setenv "CONFIG_SHELL" (which "sh"))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys #:rest args) + (let ((out (assoc-ref outputs "out")) + (install (assoc-ref %standard-phases 'install))) + (apply install args) + (for-each + (lambda (dir file) + (copy-file (string-append dir "/" file) + (string-append out "/bin/" file))) + '("caff" "caff" "caff" "gpgdir" "gpg-key2ps" + "gpglist" "gpg-mailkeys" "gpgparticipants") + '("caff" "pgp-clean" "pgp-fixkey" "gpgdir" "gpg-key2ps" + "gpglist" "gpg-mailkeys" "gpgparticipants")) + (for-each + (lambda (dir file) + (copy-file (string-append dir "/" file) + (string-append out "/share/man/man1/" file))) + '("caff" "caff" "caff" "gpgdir" + "gpg-key2ps" "gpglist" "gpg-mailkeys" + "gpgparticipants" "gpgsigs" "gpgwrap/doc" + "keyanalyze" "keyanalyze/pgpring" "keyanalyze") + '("caff.1" "pgp-clean.1" "pgp-fixkey.1" "gpgdir.1" + "gpg-key2ps.1" "gpglist.1" "gpg-mailkeys.1" + "gpgparticipants.1" "gpgsigs.1" "gpgwrap.1" + "process_keys.1" "pgpring.1" "keyanalyze.1"))))) + (add-after 'install 'wrap-programs + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (wrap-program + (string-append out "/bin/caff") + `("PERL5LIB" ":" prefix (,(getenv "PERL5LIB")))))))))) + (synopsis "Collection of scripts for simplifying gnupg key signing") + (description + "Signing-party is a collection for all kinds of PGP/GnuPG related things, including tools for signing keys, keyring analysis, and party preparation. @enumerate @item caff: CA - Fire and Forget signs and mails a key @@ -702,11 +722,10 @@ including tools for signing keys, keyring analysis, and party preparation. @item sig2dot: converts a list of GnuPG signatures to a .dot file @item springgraph: creates a graph from a .dot file @end enumerate") - ;; gpl2+ for almost all programs, except for keyanalyze: gpl2 - ;; and caff and gpgsigs: bsd-3, see - ;; http://packages.debian.org/changelogs/pool/main/s/signing-party/current/copyright - (license license:gpl2) - (home-page "https://pgp-tools.alioth.debian.org/"))) + ;; gpl2+ for almost all programs, except for keyanalyze: gpl2 + ;; and caff and gpgsigs: bsd-3, see + ;; http://packages.debian.org/changelogs/pool/main/s/signing-party/current/copyright + (license license:gpl2)))) (define-public pinentry-tty (package diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index f7bce741ea..df87700d6f 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -291,7 +291,7 @@ in the Mozilla clients.") (define-public nss (package (name "nss") - (version "3.36") + (version "3.36.1") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -302,7 +302,7 @@ in the Mozilla clients.") "nss-" version ".tar.gz"))) (sha256 (base32 - "1580qc0a4s8v3k3vg7zz4xly4alkjrw7qq9zy2nf6p4v56wcfg53")) + "1zrb49mp7cy3snnday1zv8d76h1mgppbcwxnlkqsgxlga8fl89b0")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-pkgconfig.patch" "nss-increase-test-timeout.patch")))) @@ -459,20 +459,47 @@ security standards.") (mozilla-patch "icecat-CVE-2018-5146.patch" "494e5d5278ba" "1yb4lxjw499ppwhk31vz0vzl0cfqvj9d4jwqag7ayj53ybwsqgjr") (mozilla-patch "icecat-CVE-2018-5147.patch" "5cd5586a2f48" "10s774pwvj6xfk3kk6ivnhp2acc8x9sqq6na8z47nkhgwl2712i5") (mozilla-patch "icecat-CVE-2018-5148.patch" "c3e447e07077" "0gmwy631f8ip4gr1mpbjk8bx1n1748wdls5zq4y8hpmpnq5g1wyx") - (mozilla-patch "icecat-bug-1443891.patch" "17201199b18d" "1d0hcim1fwh0bklwpmnal1mv9d9kmyif1m15aj1nqkf1n3x4xc37") + (mozilla-patch "icecat-CVE-2018-5178.patch" "17201199b18d" "1d0hcim1fwh0bklwpmnal1mv9d9kmyif1m15aj1nqkf1n3x4xc37") (mozilla-patch "icecat-bug-1361699.patch" "a07d6c3ff262" "1z8mjg2487r8pxi0x951v6fwwr696q84f6hlzimc3r7bn5ds9r83") - (mozilla-patch "icecat-bug-1433609.patch" "7127ccf8f88c" "0m4my7aflpp0wlqilr2m4axd7k2fyrs7jqdcz2rrz5pwivz1anvd") + (mozilla-patch "icecat-CVE-2018-5150-pt01.patch" "7127ccf8f88c" "0m4my7aflpp0wlqilr2m4axd7k2fyrs7jqdcz2rrz5pwivz1anvd") (mozilla-patch "icecat-bug-1444231.patch" "57bd35fa8618" "0pl6x5amc5x6nhwl7qnmnff3jjjxmbs8r365bfzj58g7q5ihqwvf") - (mozilla-patch "icecat-bug-1409440.patch" "2f3e1ccf1661" "0azl8g81kpc0w2xpjpgm1154ll12g0a8n6i7bl3s9nnrk2i26n74") - (mozilla-patch "icecat-bug-1441941.patch" "8ff2c4d68e36" "0kz1rqhnz8ca4z20hnpcafidhsrwhnm0h2gmlgchni33h8pisr1f") - (mozilla-patch "icecat-bug-1443092.patch" "b8c430253efd" "1arjcaps9axhxh5ff84n9bydhhzrihn7hbq7v69nvqwqrjp3lgg9") - (mozilla-patch "icecat-bug-1448774.patch" "05cadfa3ac39" "0q0vh7vy7x0l8jp6376fn10qljfp4mnp4m9zfn90j4m19pfl86a0") - (mozilla-patch "icecat-bug-1449548.patch" "48a678d7cb81" "1yfh7kxxxvqck2hpn98pwag4splyc6c9brc5haq28fp8x9r9qvlk") - (mozilla-patch "icecat-bug-1448705.patch" "112032576872" "1x1hxyggbxlnlj0n9cbp03hjnfvm6cq8nqj0jizrd8cfyd5aig8p") - (mozilla-patch "icecat-bug-1388020.patch" "ad9a885b0df4" "1hrk1q9mk59jww55g4lqmaflznk87x3vvjn2mxfgfbbjs8l1cyz4") + (mozilla-patch "icecat-CVE-2018-5150-pt02.patch" "2f3e1ccf1661" "0azl8g81kpc0w2xpjpgm1154ll12g0a8n6i7bl3s9nnrk2i26n74") + (mozilla-patch "icecat-CVE-2018-5159.patch" "8ff2c4d68e36" "0kz1rqhnz8ca4z20hnpcafidhsrwhnm0h2gmlgchni33h8pisr1f") + (mozilla-patch "icecat-CVE-2018-5154.patch" "b8c430253efd" "1arjcaps9axhxh5ff84n9bydhhzrihn7hbq7v69nvqwqrjp3lgg9") + (mozilla-patch "icecat-CVE-2018-5155.patch" "05cadfa3ac39" "0q0vh7vy7x0l8jp6376fn10qljfp4mnp4m9zfn90j4m19pfl86a0") + (mozilla-patch "icecat-CVE-2018-5168.patch" "48a678d7cb81" "1yfh7kxxxvqck2hpn98pwag4splyc6c9brc5haq28fp8x9r9qvlk") + (mozilla-patch "icecat-CVE-2018-5150-pt03.patch" "112032576872" "1x1hxyggbxlnlj0n9cbp03hjnfvm6cq8nqj0jizrd8cfyd5aig8p") + (mozilla-patch "icecat-CVE-2018-5150-pt04.patch" "ad9a885b0df4" "1hrk1q9mk59jww55g4lqmaflznk87x3vvjn2mxfgfbbjs8l1cyz4") (mozilla-patch "icecat-bug-1452416.patch" "f89ab96a2532" "1dqchxdyznhgyxhfq0hm0vg1p597hjqflfzigc7j3s5vxf9rg2nv") - (mozilla-patch "icecat-bug-1451376.patch" "af885a1bd293" "1wfpqhm2dp4fsx6zbrncngsqz7g2x09b625zcighixrbpvybyww3") - (mozilla-patch "icecat-bug-1444668.patch" "666fc84ec72d" "0lml2wqd4yqidhi364x8r90f78397k2y0kq5z5bv8l8j4bhcnb9v"))) + (mozilla-patch "icecat-CVE-2018-5150-pt05.patch" "af885a1bd293" "1wfpqhm2dp4fsx6zbrncngsqz7g2x09b625zcighixrbpvybyww3") + (mozilla-patch "icecat-CVE-2018-5150-pt06.patch" "666fc84ec72d" "0lml2wqd4yqidhi364x8r90f78397k2y0kq5z5bv8l8j4bhcnb9v") + (search-patch "icecat-CVE-2018-5157-and-CVE-2018-5158.patch") + (mozilla-patch "icecat-CVE-2018-5150-pt07.patch" "1ab40761a856" "1kgwypy7k5b33jwkni4025za4kcnv5m6klsx4wsswlixmljmkbc7") + (mozilla-patch "icecat-bug-1453339.patch" "0edb8dca7087" "0b30pipqryh311sc97rcmwnx9n8qdlbbz90b2hkybjnprmbhfxrm") + (mozilla-patch "icecat-CVE-2018-5150-pt08.patch" "134c728799c1" "16hbwx6fx1hrddsyjjbd3z954ql3pg348xs13h9riyblq8crzmam") + (mozilla-patch "icecat-CVE-2018-5150-pt09.patch" "14eab155eaa8" "0wr4xgblxzk4c2gvlnpl7ic1196mrhry1hgwdl1jivq0ji5cbvbd") + (mozilla-patch "icecat-bug-1452619.patch" "2b75d55ccf0e" "1g87aybw6ggv6hyk385bplv0lx63n020gwyq0d6d4pqld48hsm1i") + (mozilla-patch "icecat-bug-1453127.patch" "89857f35df29" "0gzi47svrw5ajdlm3i12193psm702zx70x5h1rwp4gb7gxh4m4d9") + (mozilla-patch "icecat-CVE-2018-5150-pt10.patch" "3f2ec03c0405" "0w02952dlxd2gmwghck2nm4rjjmc5ylg62bw6m1rvi35kcr134lr") + (mozilla-patch "icecat-CVE-2018-5183.patch" "f729bf78fb3a" "0xkj6jwxwdqkvb5c7wi16b8cm8qrnlrd3s9jnd46jg03iykrx56f") + (mozilla-patch "icecat-bug-1437842.patch" "eb896089db47" "10lppk4x2d3pim71a36ky1dmg08rs5ckfiljwvfnr1cw6934qxl4") + (mozilla-patch "icecat-bug-1458270.patch" "2374dca97bde" "0y1g55wvj44nzb1qfkl271jcf8s1ik8lcl1785z0zim4qzn7qkpa") + (mozilla-patch "icecat-bug-1452576.patch" "70b6298e0c9e" "0n5jfy6c421dkybk8m18vd61y95zz0r64g1p1zlya3fps5knfaqi") + (mozilla-patch "icecat-bug-1459206-pt1.patch" "4ef79fe9b3b7" "1c32z1ki1i6xj1nbb0xlxwqnmz48ikmy8dmp37rkjz8ssn04wgfg") + (mozilla-patch "icecat-bug-1459206-pt2.patch" "9ad16112044a" "0ayya67sx7avcb8bplfdxb92l9g4mjrb1s3hby283llhqv0ikg9b") + (mozilla-patch "icecat-bug-1459162.patch" "11d8a87fb6d6" "1rkmdk18llw0x1jakix75hlhy0hpsmlminnflagbzrzjli81gwm1") + (mozilla-patch "icecat-bug-1451297.patch" "407b10ad1273" "16qzsfirw045xag96f1qvpdlibm8lwdj9l1mlli4n1vz0db91v9q") + (mozilla-patch "icecat-bug-1462682.patch" "e76e2e481b17" "0hnx13msjy28n3bpa2c24kpzalam4bdk5gnp0f9k671l48rs9yb3") + (mozilla-patch "icecat-bug-1450688.patch" "2c75bfcd465c" "1pjinj8qypafqm2fk68s3hzcbzcijn09qzrpcxvzq6bl1yfc1xfd") + (mozilla-patch "icecat-bug-1456975.patch" "042f80f3befd" "0av918kin4bkrq7gnjz0h9w8kkq8rk9l93250lfl5kqrinza1gsk") + (mozilla-patch "icecat-bugs-1442722+1455071+1433642+1456604+1458320.patch" + "bb0451c9c4a0" "1lhm1b2a7c6jwhzsg3c830hfhp17p8j9zbcmgchpb8c5jkc3vw0x") + (mozilla-patch "icecat-bug-1465108-pt1.patch" "8189b262e3b9" "13rh86ddwmj1bhv3ibbil3sv5xbqq1c9v1czgbsna5hxxkzc1y3b") + (mozilla-patch "icecat-bug-1465108-pt2.patch" "9f81ae3f6e1d" "05vfg8a8jrzd93n1wvncmvdmqgf9cgsl8ryxgjs3032gbbjkga7q") + (mozilla-patch "icecat-bug-1459693.patch" "face7a3dd5d7" "0jclw30mf693w8lrmvn0iankggj21nh4j3zh51q5363rj5xncdzx") + (mozilla-patch "icecat-bug-1464829.patch" "7afb58c046c8" "1r0569r76712x7x1sw6xr0x06ilv6iw3fncb0f8r8b9mp6wrpx34") + (mozilla-patch "icecat-bug-1452375-pt1.patch" "f1a745f8c42d" "11q73pb7a8f09xjzil4rhg5nr49zrnz1vb0prni0kqvrnppf5s40") + (mozilla-patch "icecat-bug-1452375-pt2.patch" "1f9a430881cc" "0f79rv7njliqxx33z07n60b50jg0a596d1km7ayz2hivbl2d0168"))) (modules '((guix build utils))) (snippet '(begin @@ -544,7 +571,7 @@ security standards.") ("libxcomposite" ,libxcomposite) ("libxt" ,libxt) ("libffi" ,libffi) - ("ffmpeg" ,ffmpeg) + ("ffmpeg" ,ffmpeg-3.4) ("libvpx" ,libvpx) ("icu4c" ,icu4c) ("pixman" ,pixman) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index c6fc68468f..d61747a09c 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Christopher Baines <mail@cbaines.net> ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org> +;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -214,7 +215,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.4) (name "go") - (version "1.9.5") + (version "1.9.6") (source (origin (method url-fetch) @@ -222,7 +223,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") name version ".src.tar.gz")) (sha256 (base32 - "1g4zqhbh1yw3gnb400szzwrdz0k5s3h0h5nc35xgmn5v69zvphpi")))) + "0a2qkvzr0g5cbd66wi7b6r40qyp9p55y0zz2j5qg1xsqwsdhbx1n")))) (arguments (substitute-keyword-arguments (package-arguments go-1.4) ((#:phases phases) @@ -383,7 +384,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.9) (name "go") - (version "1.10.1") + (version "1.10.2") (source (origin (method url-fetch) @@ -391,7 +392,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") name version ".src.tar.gz")) (sha256 (base32 - "1p1xyyxicp752n9wj10sljjl6mjxpfsplkhx74fzzjrwdkzlk52q")))) + "1gcqbac3wbhbcr0ri9zgfj6qkqbwf9fn116a0a7fvn4wdff60r32")))) (arguments (substitute-keyword-arguments (package-arguments go-1.9) ((#:phases phases) @@ -1300,3 +1301,323 @@ support functions for dealing with terminals, as commonly found on UNIX systems.") (home-page "https://go.googlesource.com/crypto/") (license license:bsd-3)))) + +(define-public go-github-com-burntsushi-toml + (let ((commit + "a368813c5e648fee92e5f6c30e3944ff9d5e8895") + (revision "0")) + (package + (name "go-github-com-burntsushi-toml") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/BurntSushi/toml.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1sjxs2lwc8jpln80s4rlzp7nprbcljhy5mz4rf9995gq93wqnym5")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/BurntSushi/toml")) + (home-page "https://github.com/BurntSushi/toml") + (synopsis "Toml parser and encoder for Go") + (description "This package is toml parser and encoder for Go. The +interface is similar to Go's standard library @code{json} and @code{xml} +package.") + (license license:expat)))) + +(define-public go-github-com-getsentry-raven-go + (let ((commit + "dffeb57df75d6a911f00232155194e43d79d38d7") + (revision "0")) + (package + (name "go-github-com-getsentry-raven-go") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/getsentry/raven-go.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "13sb9rvl3369m7fah3ss9g0hwky259snqfn8gmbr0h5zvp651lja")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/getsentry/raven-go")) + (home-page + "https://github.com/getsentry/raven-go") + (synopsis "Sentry client in Go") + (description "This package is Go client API for the Sentry event/error +logging system.") + (license license:bsd-3)))) + +(define-public go-github-com-hashicorp-go-version + (let ((commit + "03c5bf6be031b6dd45afec16b1cf94fc8938bc77") + (revision "0")) + (package + (name "go-github-com-hashicorp-go-version") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hashicorp/go-version.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0sjq57gpfznaqdrbyb2p0bn90g9h661cvr0jrk6ngags4pbw14ik")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/hashicorp/go-version")) + (home-page + "https://github.com/hashicorp/go-version") + (synopsis "Go library for parsing and verifying versions and version +constraints") + (description "This package is a library for parsing versions and version +constraints, and verifying versions against a set of constraints. It can sort +a collection of versions properly, handles prerelease/beta versions, can +increment versions.") + (license license:mpl2.0)))) + +(define-public go-github-com-jpillora-backoff + (let ((commit + "06c7a16c845dc8e0bf575fafeeca0f5462f5eb4d") + (revision "0")) + (package + (name "go-github-com-jpillora-backoff") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jpillora/backoff.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xhvxr7bm47czdc5hy3kl508z3y4j91i2jm7vg774i52zych6k4l")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/jpillora/backoff")) + (home-page "https://github.com/jpillora/backoff") + (synopsis "Simple exponential backoff counter in Go") + (description "This package is a simple exponential backoff counter in +Go.") + (license license:expat)))) + +(define-public go-github-com-stretchr-testify + (let ((commit + "b1f989447a57594c728884458a39abf3a73447f7") + (revision "0")) + (package + (name "go-github-com-stretchr-testify") + (version (git-version "1.1.4" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/stretchr/testify.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0p0gkqzh2p8r5g0rxm885ljl7ghih7h7hx9w562imx5ka0vdgixv")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/stretchr/testify")) + (home-page "https://github.com/stretchr/testify") + (synopsis "Go helper library for tests and invariant checking") + (description "This package provide many tools for testifying that your +code will behave as you intend. + +Features include: +@itemize +@item Easy assertions +@item Mocking +@item HTTP response trapping +@item Testing suite interfaces and functions. +@end itemize") + (license license:expat)))) + +(define-public go-github-com-tevino-abool + (let ((commit + "3c25f2fe7cd0ef3eabefce1d90efd69a65d35b12") + (revision "0")) + (package + (name "go-github-com-tevino-abool") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tevino/abool.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1wxqrclxk93q0aj15z596dx2y57x9nkhi64nbrr5cxnhxn8vwixm")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/tevino/abool")) + (home-page "https://github.com/tevino/abool") + (synopsis "Atomic boolean library for Go code") + (description "This package is atomic boolean library for Go code, +optimized for performance yet simple to use.") + (license license:expat)))) + +(define-public go-github-com-urfave-cli + (let ((commit "cfb38830724cc34fedffe9a2a29fb54fa9169cd1") + (revision "0")) + (package + (name "go-github-com-urfave-cli") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/urfave/cli.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0y6f4sbzkiiwrxbl15biivj8c7qwxnvm3zl2dd3mw4wzg4x10ygj")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/urfave/cli")) + (home-page "https://github.com/urfave/cli") + (synopsis "Library for building command-line interfaces in Go") + (description "This package provides a library for building command-line +interfaces in Go.") + (license license:expat)))) + +(define-public go-github-com-blang-semver + (let ((commit "60ec3488bfea7cca02b021d106d9911120d25fe9") + (revision "0")) + (package + (name "go-github-com-blang-semver") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/blang/semver.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "19pli07y5592g4dyjyj0jq5rn548vc3fz0qg3624vm1j5828p1c2")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/blang/semver")) + (home-page "https://github.com/blang/semver") + (synopsis "Semantic versioning library written in Go") + (description "Semver is a library for Semantic versioning written in Go.") + (license license:expat)))) + +(define-public go-github-com-emicklei-go-restful + (let ((commit "89ef8af493ab468a45a42bb0d89a06fccdd2fb22") + (revision "0")) + (package + (name "go-github-com-emicklei-go-restful") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/emicklei/go-restful.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0rrlfcfq80fkxifpih6bq31vavb5mf4530xz51pp9pq1mn2fzjfh")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/emicklei/go-restful")) + (home-page "https://github.com/emicklei/go-restful") + (synopsis "Build REST-style web services using Go") + (description "This package provides @code{go-restful}, which helps +developers to use @code{http} methods explicitly and in a way that's consistent +with the HTTP protocol definition.") + (license license:expat)))) + +(define-public go-github-com-google-cadvisor + (let ((commit "2ed7198f77395ee9a172878a0a7ab92ab59a2cfd") + (revision "0")) + (package + (name "go-github-com-google-cadvisor") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/google/cadvisor.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1w8p345z5j0gk3yiq5ah0znd5lfh348p2s624k5r10drz04p3f55")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/google/cadvisor")) + (home-page "https://github.com/google/cadvisor") + (synopsis "Analyze resource usage of running containers") + (description "The package provides @code{cadvisor}, which provides +information about the resource usage and preformance characteristics of running +containers.") + (license license:asl2.0)))) + +(define-public go-github-com-google-gofuzz + (let ((commit "fd52762d25a41827db7ef64c43756fd4b9f7e382") + (revision "0")) + (package + (name "go-github-com-google-gofuzz") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/google/gofuzz.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1yxmmr73h0lq7ryf3q9a7pcm2x5xrg4d5bxkq8n5pxwxwyq26kw8")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/google/gofuzz")) + (home-page "https://github.com/google/gofuzz") + (synopsis "Fuzz testing library for Go") + (description "Gofuzz is a library for populationg Go objects with random +values for the purpose of fuzz testing.") + (license license:asl2.0)))) + +(define-public go-github-com-gorilla-context + (let ((commit "08b5f424b9271eedf6f9f0ce86cb9396ed337a42") + (revision "0")) + (package + (name "go-github-com-gorilla-context") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/gorilla/context.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "03p4hn87vcmfih0p9w663qbx9lpsf7i7j3lc7yl7n84la3yz63m4")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/gorilla/context")) + (home-page "https://github.com/gorilla/context") + (synopsis "Go registry for request variables") + (description "This package provides @code{gorilla/context}, which is a general purpose registry for global request variables in the Go programming language.") + (license license:bsd-3)))) diff --git a/gnu/packages/graph.scm b/gnu/packages/graph.scm index a9ee949855..b393919e66 100644 --- a/gnu/packages/graph.scm +++ b/gnu/packages/graph.scm @@ -155,14 +155,14 @@ model.") (define-public r-rgraphviz (package (name "r-rgraphviz") - (version "2.22.0") + (version "2.24.0") (source (origin (method url-fetch) (uri (bioconductor-uri "Rgraphviz" version)) (sha256 (base32 - "1y9nyjffa9644jch0p2i3w302fmnyc2kb0c3z1f3d5zp1p4qmyqv")))) + "1037hzfxxcn46w6y88wm3kk2nixj0s8bk0hkmnshpxih3kmnvqby")))) (properties `((upstream-name . "Rgraphviz"))) (build-system r-build-system) ;; FIXME: Rgraphviz bundles the sources of an older variant of diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm index 2b7438c902..11997598c1 100644 --- a/gnu/packages/graphviz.scm +++ b/gnu/packages/graphviz.scm @@ -117,13 +117,13 @@ interfaces for other technical domains.") (define-public python-graphviz (package (name "python-graphviz") - (version "0.8.2") + (version "0.8.3") (source (origin (method url-fetch) (uri (pypi-uri "graphviz" version ".zip")) (sha256 (base32 - "148h7ln8z65c1723w9vpx8khkvl9iigh8csv0qd4pidc53042rv0")))) + "0gnl11w98iib7vif92f3vircavy2v1yl9sl54y6hhk1mwm0f07f6")))) (build-system python-build-system) (native-inputs `(("unzip" ,unzip))) diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm index 5f1b8d0ed6..77728a5d78 100644 --- a/gnu/packages/groff.scm +++ b/gnu/packages/groff.scm @@ -101,7 +101,7 @@ is usually the formatter of \"man\" documentation pages.") ;; Keep only the programs that man-db needs at run time, ;; and make sure we don't pull in Perl. (let ((out (assoc-ref outputs "out")) - (kept '("eqn" "neqn" "pic" "tbl" "refer" + (kept '("eqn" "neqn" "pic" "tbl" "refer" "preconv" "nroff" "groff" "troff" "grotty"))) (for-each (lambda (file) (unless (member (basename file) kept) diff --git a/gnu/packages/groovy.scm b/gnu/packages/groovy.scm new file mode 100644 index 0000000000..512f9c9edb --- /dev/null +++ b/gnu/packages/groovy.scm @@ -0,0 +1,1156 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> +;;; +;;; 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 groovy) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix utils) + #:use-module (guix build-system ant) + #:use-module (gnu packages) + #:use-module (gnu packages java) + #:use-module (gnu packages xml)) + +(define java-groovy-bootstrap + (package + (name "java-groovy-bootstrap") + (version "2.4.15") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/apache/groovy/archive/GROOVY_" + (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version) + ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "19f3yd2z6jmz1xhwi5kkg1wmgbqkfs7qvd3rzb43xr3nffz8cisv")) + (patches + (search-patches + "groovy-add-exceptionutilsgenerator.patch")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "groovy.jar" + #:source-dir "src/main:subprojects/groovy-test/src/main/java" + #:test-dir "src/test" + #:tests? #f + #:jdk ,icedtea-8 + #:main-class "groovy.ui.GroovyMain" + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-java8 + ;; Fix "Reference to plus is ambiguous" + (lambda _ + (substitute* "src/main/org/codehaus/groovy/runtime/DefaultGroovyMethods.java" + (("toList\\(left\\)") + "(List<T>)toList(left)")) + #t)) + (add-before 'build 'generate-parsers + (lambda _ + (with-directory-excursion "src/main/org/codehaus/groovy/antlr/java" + (invoke "antlr" "java.g")) + (with-directory-excursion "src/main/org/codehaus/groovy/antlr" + (mkdir "parser") + (with-directory-excursion "parser" + (invoke "antlr" "../groovy.g"))) + #t)) + (add-before 'build 'generate-exception-utils + (lambda _ + (invoke "javac" "-cp" (getenv "CLASSPATH") + "config/ant/src/org/codehaus/groovy/ExceptionUtilsGenerator.java") + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") + ":config/ant/src") + "org.codehaus.groovy.ExceptionUtilsGenerator" + "build/classes/org/codehaus/groovy/runtime/ExceptionUtils.class") + #t))))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core) + ("antlr2" ,antlr2) + ("java-jmock-1" ,java-jmock-1) + ("java-xmlunit-legacy" ,java-xmlunit-legacy))) + (inputs + `(("java-commons-cli" ,java-commons-cli) + ("java-asm" ,java-asm) + ("java-classpathx-servletapi" ,java-classpathx-servletapi) + ("java-xstream" ,java-xstream) + ("java-jansi" ,java-jansi) + ("java-jline-2" ,java-jline-2))) + (home-page "http://groovy-lang.org/") + (synopsis "Groovy's java bootstrap") + (description "This package contains the java bootstrap that is used to build +groovy submodules.") + (license license:asl2.0))) + +(define groovy-bootstrap + (package + (inherit java-groovy-bootstrap) + (name "groovy-bootstrap") + (arguments + `(#:jar-name "groovy.jar" + #:jdk ,icedtea-8 + ;Requires groovy-xml and logback-classic which are circular dependencies + #:tests? #f + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-java8 + ;; Fix "Reference to plus is ambiguous" + (lambda _ + (substitute* "src/main/org/codehaus/groovy/runtime/DefaultGroovyMethods.java" + (("toList\\(left\\)") + "(List<T>)toList(left)")) + #t)) + (add-before 'build 'generate-parser + (lambda _ + (with-directory-excursion "src/main/org/codehaus/groovy/antlr/java" + (invoke "antlr" "java.g")) + (with-directory-excursion "src/main/org/codehaus/groovy/antlr" + (mkdir "parser") + (with-directory-excursion "parser" + (invoke "antlr" "../groovy.g"))) + #t)) + (add-before 'build 'generate-exception-utils + (lambda _ + (invoke "javac" "-cp" (getenv "CLASSPATH") + "config/ant/src/org/codehaus/groovy/ExceptionUtilsGenerator.java") + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") + ":config/ant/src") + "org.codehaus.groovy.ExceptionUtilsGenerator" + "target/classes/org/codehaus/groovy/runtime/ExceptionUtils.class") + #t)) + (add-before 'build 'generate-dgminfo + (lambda _ + (mkdir-p "target/classes/org/codehaus/groovy/runtime") + (mkdir-p "target/classes/META-INF") + (invoke "javac" "-cp" (getenv "CLASSPATH") + "src/main/org/codehaus/groovy/tools/DgmConverter.java") + (invoke "java" "-cp" (string-append (getenv "CLASSPATH") + ":src/main") + "org.codehaus.groovy.tools.DgmConverter") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (with-directory-excursion "src/main" + (for-each (lambda (file) + (mkdir-p (string-append "../../target/classes/" + (dirname file))) + (copy-file file + (string-append "../../target/classes/" + file))) + (find-files "." ".*.(txt|properties|xml|html)"))) + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "target/classes" + "-j"; joint compilation + (find-files "src/main" + ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy.jar" + "-C" "target/classes" ".") + #t))))) + (inputs + `(("java-apache-ivy" ,java-apache-ivy) + ,@(package-inputs java-groovy-bootstrap))) + (native-inputs + `(("java-groovy-bootstrap" ,java-groovy-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy compiler") + (description "This package contains the first version of the Groovy compiler. +Although already usable, it doesn't contain the groovy library yet. This package +is used to build the groovy submodules written in groovy."))) + +(define groovy-tests-bootstrap + (package + (inherit groovy-bootstrap) + (name "groovy-tests-bootstrap") + (arguments + `(#:jar-name "groovy-tests-bootstrap.jar" + #:jdk ,icedtea-8 + #:tests? #f; no tests + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" + "-j"; joint compilation + (append + (find-files "src/test" "TestSupport.java") + (find-files "src/test" "HeadlessTestSupport.java") + (find-files "src/test" "XmlAssert.java"))) + (invoke "jar" "-cf" "build/jar/groovy-tests-bootstrap.jar" + "-C" "build/classes" ".") + #t))))) + (inputs + `(("groovy-test" ,groovy-test) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy test classes") + (description "This package contains three classes required for testing +other groovy submodules."))) + +(define groovy-test + (package + (inherit groovy-bootstrap) + (name "groovy-test") + (arguments + `(#:jar-name "groovy-test.jar" + #:jdk ,icedtea-8 + #:test-dir "subprojects/groovy-test/src/test" + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "subprojects/groovy-test/src/main" + ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-test.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append (find-files "subprojects/groovy-test/src/test" + ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy test submodule") + (description "This package contains the test submodules used to test +other groovy submodules."))) + +(define groovy-xml + (package + (inherit groovy-bootstrap) + (name "groovy-xml") + (arguments + `(#:jar-name "groovy-xml.jar" + #:jdk ,icedtea-8 + #:test-dir "src/test" + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-xml") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-xml.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy XML") + (description "This package contains XML-related utilities for groovy."))) + +(define groovy-templates + (package + (inherit groovy-bootstrap) + (name "groovy-templates") + (arguments + `(#:jar-name "groovy-templates.jar" + #:jdk ,icedtea-8 + #:test-dir "subprojects/groovy-templates/src/test" + #:tests? #f;Requires spock-framework which is a circular dependency + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "subprojects/groovy-templates/src/main" + ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-templates.jar" + "-C" "build/classes" ".") + #t))))) + (inputs + `(("groovy-xml" ,groovy-xml) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy template engine") + (description "This package contains a template framework which is +well-suited to applications where the text to be generated follows the form of +a static template."))) + +(define groovy-groovydoc + (package + (inherit groovy-bootstrap) + (name "groovy-groovydoc") + (arguments + `(#:jar-name "groovy-groovydoc.jar" + #:jdk ,icedtea-8 + #:test-dir "subprojects/groovy-groovydoc/src/test" + #:tests? #f; Requires groovy-ant which is a circular dependency + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "subprojects/groovy-groovydoc/src/main/resources" + "build/classes") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" + "-j"; joint compilation + (find-files "subprojects/groovy-groovydoc/src/main" + ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-groovydoc.jar" + "-C" "build/classes" ".") + #t))))) + (inputs + `(("groovy-templates" ,groovy-templates) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy documentation generation") + (description "This package contains the groovy documentation generator, +similar to javadoc."))) + +(define groovy-ant + (package + (inherit groovy-bootstrap) + (name "groovy-ant") + (arguments + `(#:jar-name "groovy-ant.jar" + #:jdk ,icedtea-8 + #:test-dir "src/test" + ;; FIXME: Excluding all tests because they fail + #:test-exclude (list + "**/GroovyTest.java" + "**/GroovycTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-ant") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-ant.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (find-files "src/test" ".*\\.(groovy|java)$")) + (invoke "ant" "check") + #t))))) + (inputs + `(("groovy-groovydoc" ,groovy-groovydoc) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-xml" ,groovy-xml) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy ant tasks") + (description "This package contains groovy-related ant tasks definitions."))) + +(define groovy-bsf + (package + (inherit groovy-bootstrap) + (name "groovy-bsf") + (arguments + `(#:jar-name "groovy-bsf.jar" + #:jdk ,icedtea-8 + #:test-dir "src/test" + #:test-exclude (list +;; exception from Groovy: org.codehaus.groovy.runtime.InvokerInvocationException: +;; groovy.lang.MissingMethodException: No signature of method: +;; java.util.ArrayList.each() is applicable for argument types: +;; (groovy.script.MapFromList$_doit_closure1) values: +;; [groovy.script.MapFromList$_doit_closure1@17e554d5] + "**/BSFTest.java") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-bsf") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-bsf.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (find-files "src/test" ".*\\.(groovy|java)$")) + (invoke "ant" "check") + #t))))) + (inputs + `(("java-commons-bsf" ,java-commons-bsf) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ("java-commons-logging-minimal" ,java-commons-logging-minimal) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy BSF engine") + (description "This package defines the BSF engine for using Groovy inside +any @dfn{Bean Scripting Framework} (BSF) application."))) + +(define groovy-swing + (package + (inherit groovy-bootstrap) + (name "groovy-swing") + (arguments + `(#:jar-name "groovy-swing.jar" + #:jdk ,icedtea-8 + ;; FIXME: tests are not run + #:test-dir "src/test" + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-swing") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-swing.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "src/test/groovy/groovy/util/GroovySwingTestCase.groovy" + (("HeadlessTestSupport.headless") "isHeadless()")) + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (find-files "src/test" ".*\\.(groovy|java)$")) + (invoke "ant" "check") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ("java-commons-logging-minimal" ,java-commons-logging-minimal) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy graphical library") + (description "This package contains the groovy bindings to Java Swing, a +library used to build graphical interfaces."))) + +(define groovy-console + (package + (inherit groovy-bootstrap) + (name "groovy-console") + (arguments + `(#:jar-name "groovy-console.jar" + #:jdk ,icedtea-8 + ;; FIXME: tests are not run + #:test-dir "src/test" + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-console") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-console.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (substitute* + "../groovy-swing/src/test/groovy/groovy/util/GroovySwingTestCase.groovy" + (("HeadlessTestSupport.headless") "isHeadless()")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append + (find-files "../groovy-swing/src/test" ".*\\.(groovy|java)$") + (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (inputs + `(("groovy-swing" ,groovy-swing) + ("groovy-templates" ,groovy-templates) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ("java-commons-logging-minimal" ,java-commons-logging-minimal) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy graphical interface") + (description "This package contains a graphical interface to run groovy."))) + +(define groovy-docgenerator + (package + (inherit groovy-bootstrap) + (name "groovy-docgenerator") + (arguments + `(#:jar-name "groovy-docgenerator.jar" + #:jdk ,icedtea-8 + #:tests? #f; No tests + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-docgenerator") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-docgenerator.jar" + "-C" "build/classes" ".") + #t))))) + (inputs + `(("groovy-templates" ,groovy-templates) + ("groovy-swing" ,groovy-swing) + ("java-qdox-1.12" ,java-qdox-1.12) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy documentation generation") + (description "This package contains a command line tool to generate +documentation for groovy applications."))) + +(define groovy-groovysh + (package + (inherit groovy-bootstrap) + (name "groovy-groovysh") + (arguments + `(#:jar-name "groovy-groovysh.jar" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-groovysh") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-groovysh.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (inputs + `(("groovy-xml" ,groovy-xml) + ("groovy-console" ,groovy-console) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy REPL") + (description "This package contains the Groovy REPL."))) + +(define groovy-jmx + (package + (inherit groovy-bootstrap) + (name "groovy-jmx") + (arguments + `(#:jar-name "groovy-jmx.jar" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-jmx") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-jmx.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy JMX extension") + (description "This package contains the JMX extension of Groovy, for +management and monitoring of JVM-based solutions."))) + +(define groovy-json + (package + (inherit groovy-bootstrap) + (name "groovy-json") + (arguments + `(#:jar-name "groovy-json.jar" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-json") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-json.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy JSON") + (description "This package contains JSON-related utilities for groovy."))) + +(define groovy-jsr223 + (package + (inherit groovy-bootstrap) + (name "groovy-jsr223") + (arguments + `(#:jar-name "groovy-jsr223.jar" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-jsr223") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-jsr223.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy's own JSR223 implementation") + (description "This package contains Groovy's own JSR223 implementation. This +module is used for interaction between Groovy and Java code."))) + +(define groovy-nio + (package + (inherit groovy-bootstrap) + (name "groovy-nio") + (arguments + `(#:jar-name "groovy-nio.jar" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:tests? #f; Requires spock-framework + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-nio") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-nio.jar" + "-C" "build/classes" ".") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy input-output library") + (description "This package implements an input/output library that extends +the functionality of the common library of Java."))) + +(define groovy-servlet + (package + (inherit groovy-bootstrap) + (name "groovy-servlet") + (arguments + `(#:jar-name "groovy-servlet.jar" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-servlet") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" + "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-servlet.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" + "-j" + (append (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (inputs + `(("groovy-templates" ,groovy-templates) + ("groovy-xml" ,groovy-xml) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-json" ,groovy-json) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy's servlet implementation") + (description "This package contains a library to create groovlets, Groovy's +version of Java servlets."))) + +(define groovy-sql + (package + (inherit groovy-bootstrap) + (name "groovy-sql") + (arguments + `(#:jar-name "groovy-sql.jar" + #:test-dir "src/test" + #:tests? #f;TODO: Requires hsqldb + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-sql") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" + ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-sql.jar" + "-C" "build/classes" ".") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy SQL library") + (description "This package contains a facade over Java's normal JDBC APIs +providing greatly simplified resource management and result set handling."))) + +(define groovy-testng + (package + (inherit groovy-bootstrap) + (name "groovy-testng") + (arguments + `(#:jar-name "groovy-testng.jar" + #:tests? #f; No tests + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-testng") + #t)) + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" + "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-testng.jar" + "-C" "build/classes" ".") + #t))))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy testing framework") + (description "This package contains integration code for running TestNG +tests in Groovy."))) + +(define groovy-macro + (package + (inherit groovy-bootstrap) + (name "groovy-macro") + (arguments + `(#:jar-name "groovy-macro.jar" + #:test-dir "src/test" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "subprojects/groovy-macro") + #t)) + (replace 'build + (lambda _ + (mkdir-p "build/classes") + (mkdir-p "build/jar") + (apply invoke "java" "-cp" (getenv "CLASSPATH") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/classes" "-j"; joint compilation + (find-files "src/main" ".*\\.(groovy|java)$")) + (invoke "jar" "-cf" "build/jar/groovy-macro.jar" + "-C" "build/classes" ".") + #t)) + (replace 'check + (lambda _ + (mkdir-p "build/test-classes") + (substitute* "build.xml" + (("depends=\"compile-tests\"") "depends=\"\"") + (("}/java") "}/groovy")) + (apply invoke "java" "-cp" + (string-append (getenv "CLASSPATH") ":build/classes") + "org.codehaus.groovy.tools.FileSystemCompiler" + "-d" "build/test-classes" "-j" + (append (find-files "src/test" ".*\\.(groovy|java)$"))) + (invoke "ant" "check") + #t))))) + (inputs + `(("groovy-templates" ,groovy-templates) + ("groovy-xml" ,groovy-xml) + ,@(package-inputs groovy-bootstrap))) + (native-inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-json" ,groovy-json) + ("groovy-test" ,groovy-test) + ("groovy-tests-bootstrap" ,groovy-tests-bootstrap) + ,@(package-native-inputs java-groovy-bootstrap))) + (synopsis "Groovy macro processor") + (description "This package contains a high-level library to create macro +and modify groovy's @dfn{Abstract Syntax Tree} (AST)."))) + +(define-public groovy + (package + (inherit groovy-bootstrap) + (name "groovy") + (arguments + `(#:tests? #f; No tests + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (replace 'install + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (out-bin (string-append out "/bin")) + (out-lib (string-append out "/lib"))) + (with-directory-excursion "src/bin" + (substitute* "startGroovy" + (("\"\\\\\"") "\"") + (("\\\\\"\"") "\"") + (("\\\\\\$") "$") + (("@GROOVYJAR@") "groovy.jar") + (("MAX_FD=\"maximum\"") + (string-append + "MAX_FD=\"maximum\"\nJAVAHOME=" + (assoc-ref inputs "jdk")))) + ;; Groovy uses class loading. It's not enough to put the class + ;; in the loader's classpath, as it causes breakages: + ;; the compiler would give this error: + ;; "Prohibited package name: java.lang" + ;; So we symlink dependencies in this package's output. The + ;; starter class (in groovy-bootstrap) is where the class loader + ;; will look for dependencies, so we put it there too. + (mkdir-p out-lib) + (for-each + (lambda (input) + (for-each + (lambda (jar) + (symlink jar (string-append out-lib "/" (basename jar)))) + (find-files (assoc-ref inputs input) ".*.jar"))) + '("groovy-bootstrap" "groovy-ant" "groovy-bsf" + "groovy-console" "groovy-docgenerator" + "groovy-groovydoc" "groovy-groovysh" + "groovy-jmx" "groovy-json" "groovy-jsr223" + "groovy-nio" "groovy-servlet" "groovy-sql" + "groovy-swing" "groovy-templates" "groovy-testng" + "java-commons-cli" "java-asm" + "java-classpathx-servletapi" "java-xstream" + "java-jansi" "java-jline-2")) + ;; antlr.jar is present twice in antlr2. Symlink doesn't like + ;; it, so we symlink it here. + (symlink (string-append (assoc-ref inputs "antlr2") "/lib/antlr.jar") + (string-append out-lib "/antlr.jar")) + (for-each + (lambda (tool) + (install-file tool out-bin) + (chmod (string-append out-bin "/" tool) #o755)) + '("grape" "groovy" "groovyc" "groovyConsole" "groovydoc" + "groovysh" "java2groovy" "startGroovy"))) + (install-file "src/conf/groovy-starter.conf" + (string-append out "/conf")) + #t)))))) + (inputs + `(("groovy-bootstrap" ,groovy-bootstrap) + ("groovy-ant" ,groovy-ant) + ("groovy-bsf" ,groovy-bsf) + ("groovy-console" ,groovy-console) + ("groovy-docgenerator" ,groovy-docgenerator) + ("groovy-groovydoc" ,groovy-groovydoc) + ("groovy-groovysh" ,groovy-groovysh) + ("groovy-jmx" ,groovy-jmx) + ("groovy-json" ,groovy-json) + ("groovy-jsr223" ,groovy-jsr223) + ("groovy-nio" ,groovy-nio) + ("groovy-servlet" ,groovy-servlet) + ("groovy-sql" ,groovy-sql) + ("groovy-swing" ,groovy-swing) + ("groovy-templates" ,groovy-templates) + ("groovy-testng" ,groovy-testng) + ("java-commons-cli" ,java-commons-cli) + ("java-asm" ,java-asm) + ("java-classpathx-servletapi" ,java-classpathx-servletapi) + ("java-xstream" ,java-xstream) + ("java-jansi" ,java-jansi) + ("java-jline-2" ,java-jline-2) + ("antlr2" ,antlr2))) + (synopsis "Programming language for the JVM") + (description "Apache Groovy is a powerful, optionally typed and dynamic +language, with static-typing and static compilation capabilities, for the Java +platform. It integrates smoothly with any Java program, and immediately +delivers to your application powerful features, including scripting +capabilities, Domain-Specific Language authoring, runtime and compile-time +meta-programming and functional programming."))) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index cb72d25921..951ca93fbf 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -102,7 +102,7 @@ arrays of data.") (define-public gstreamer (package (name "gstreamer") - (version "1.12.4") + (version "1.14.1") (source (origin (method url-fetch) @@ -111,7 +111,7 @@ arrays of data.") version ".tar.xz")) (sha256 (base32 - "0x06jxmc5fhlz7cr1pl5lp0hm1jgz519jjic37d09srf9jm091ss")))) + "0v0qqfj6klkirhbcxwgw1sq6x67456ckjadlhnzsji0m4q6jpn18")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments @@ -150,7 +150,7 @@ This package provides the core library and elements.") (define-public gst-plugins-base (package (name "gst-plugins-base") - (version "1.12.4") + (version "1.14.1") (source (origin (method url-fetch) @@ -158,15 +158,16 @@ This package provides the core library and elements.") name "-" version ".tar.xz")) (sha256 (base32 - "10i255q7i8an1hxz3szb36x1jcs9nfdy511pj2wg24h2vw1nnc2c")))) + "1d8d1gfd4jnymyhb0f1pxdhapsx4v1nilk03bndmv0id131wf9hh")))) (build-system gnu-build-system) (outputs '("out" "doc")) (propagated-inputs - `(("gstreamer" ,gstreamer))) ; required by gstreamer-plugins-base-1.0.pc + `(("glib" ,glib) ;required by gstreamer-sdp-1.0.pc + ("gstreamer" ,gstreamer) ;required by gstreamer-plugins-base-1.0.pc + ("orc" ,orc))) ;required by gstreamer-audio-1.0.pc (inputs `(("cdparanoia" ,cdparanoia) ("opus" ,opus) - ("orc" ,orc) ("pango" ,pango) ("libogg" ,libogg) ("libtheora" ,libtheora) @@ -178,7 +179,7 @@ This package provides the core library and elements.") ("alsa-lib" ,alsa-lib))) (native-inputs `(("pkg-config" ,pkg-config) - ("glib" ,glib "bin") + ("glib:bin" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ("python-wrapper" ,python-wrapper))) (arguments @@ -201,11 +202,10 @@ This package provides the core library and elements.") for the GStreamer multimedia library.") (license license:lgpl2.0+))) - (define-public gst-plugins-good (package (name "gst-plugins-good") - (version "1.12.4") + (version "1.14.1") (source (origin (method url-fetch) @@ -214,7 +214,7 @@ for the GStreamer multimedia library.") name "-" version ".tar.xz")) (sha256 (base32 - "0mxrbrqrfq1946gn9im19maj7ivld4k946vkwrzd94h8qsz4k7v4")))) + "0wlim4kapb2vc11fcjdlx31zn5ja3xw3kq1jflvk4sknvcnhdv1l")))) (build-system gnu-build-system) (inputs `(("aalib" ,aalib) @@ -264,18 +264,18 @@ developers consider to have good quality code and correct functionality.") (define-public gst-plugins-bad (package (name "gst-plugins-bad") - (version "1.12.4") + (version "1.14.1") (source (origin (method url-fetch) (uri (string-append "https://gstreamer.freedesktop.org/src/" name "/" name "-" version ".tar.xz")) (sha256 (base32 - "021d3q81m968lpnah517sfclagadcqwd6jz3lqdmqvb82sz5fy0c")))) + "06nn43f65mr872apljfiq8jnmwa8r7z26n1frprgvaijh28ccxra")))) (outputs '("out" "doc")) (build-system gnu-build-system) (arguments - '(#:tests? #f ; XXX: 18 of 65 tests fail + '(#:tests? #f ; XXX: 13 of 53 tests fail #:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") @@ -340,7 +340,7 @@ par compared to the rest.") (define-public gst-plugins-ugly (package (name "gst-plugins-ugly") - (version "1.12.4") + (version "1.14.1") (source (origin (method url-fetch) @@ -348,12 +348,11 @@ par compared to the rest.") name "/" name "-" version ".tar.xz")) (sha256 (base32 - "08p5kggk1szvr76cdbx3q3yfc235w1przb76v2n51lwfi26mn5hw")))) + "1lz1kx9h5mlp9ahmgavv99nkg6j0rrjks2ws820yym1zn45l7wng")))) (build-system gnu-build-system) (inputs `(("gst-plugins-base" ,gst-plugins-base) ("liba52" ,liba52) - ("libmad" ,libmad) ("lame" ,lame) ("libcdio" ,libcdio) ("twolame" ,twolame) @@ -379,7 +378,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.") (define-public gst-libav (package (name "gst-libav") - (version "1.12.4") + (version "1.14.1") (source (origin (method url-fetch) (uri (string-append @@ -387,7 +386,7 @@ distribution problems in some jurisdictions, e.g. due to patent threats.") name "-" version ".tar.xz")) (sha256 (base32 - "0qly3lgamm36xql9q7wg5751gi6j2d3ifzz1pkr15ncc5mfslmia")))) + "1782crqgl1bqlkr67s0qmb3ihcjdjpljd6kynqs9zyzjs810my7g")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-system-libav") @@ -417,7 +416,7 @@ compression formats through the use of the libav library.") (define-public python-gst (package (name "python-gst") - (version "1.12.5") + (version "1.14.1") (source (origin (method url-fetch) (uri (string-append @@ -425,7 +424,7 @@ compression formats through the use of the libav library.") "gst-python-" version ".tar.xz")) (sha256 (base32 - "1x8g9mdkf6hzhlkx6nhrrp607p8g4zkhl3crs8vh504zpbbf71ip")))) + "1ls7j5iy7irinf7d7nm6r4qw3d1ddpr8fm4k5n6zfhz3am4p1ihv")))) (build-system gnu-build-system) (arguments ;; XXX: Factorize python-sitedir with python-build-system. diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 79d0646b7e..40e16d2475 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -79,7 +79,7 @@ (define-public atk (package (name "atk") - (version "2.26.1") + (version "2.28.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -87,7 +87,7 @@ name "-" version ".tar.xz")) (sha256 (base32 - "1jwpx8az0iifw176dc2hl4mmg6gvxzxdkd1qvg4ds7c5hdmzy07g")))) + "1z7laf6qwv5zsqcnj222dm5f43c6f3liil0cgx4s4s62xjk1wfnd")))) (build-system gnu-build-system) (outputs '("out" "doc")) (arguments @@ -441,7 +441,7 @@ highlighting and other features typical of a source code editor.") (define-public gdk-pixbuf (package (name "gdk-pixbuf") - (version "2.36.11") + (version "2.36.12") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -449,7 +449,7 @@ highlighting and other features typical of a source code editor.") name "-" version ".tar.xz")) (sha256 (base32 - "1wz2vpciwdpdv612s8kbww08q80hgcs5dxrfsxp1a4q44n3snqmf")))) + "0d534ysa6n9prd17wwzisq7mj6qkhwh8wcf8qgin1ar3hbs5ry7z")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--with-x11") @@ -670,7 +670,7 @@ application suites.") (name "gtk+") ;; NOTE: When updating the version of 'gtk+', the hash of 'mate-themes' in ;; mate.scm will also need to be updated. - (version "3.22.28") + (version "3.22.29") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -678,7 +678,7 @@ application suites.") name "-" version ".tar.xz")) (sha256 (base32 - "07syy63d2q12b7mkbhqpirq270365fsql5l9qsrdgzlc04mn36fj")) + "1y5vzdbgww9l7xcrg13azff2rs94kggkywmpcsh39h7w76wn8zd0")) (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) (outputs '("out" "bin" "doc")) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index c9497225a9..a88d24885f 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -17,6 +17,8 @@ ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> +;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -59,6 +61,7 @@ #:use-module (gnu packages gettext) #:use-module (gnu packages databases) #:use-module (gnu packages python) + #:use-module (gnu packages tls) #:use-module (gnu packages gl) #:use-module (gnu packages sdl) #:use-module (gnu packages maths) @@ -66,6 +69,7 @@ #:use-module (gnu packages version-control) #:use-module (gnu packages xdisorg) #:use-module (gnu packages xorg) + #:use-module (gnu packages networking) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) @@ -723,16 +727,16 @@ format is also supported.") (define-public guile-ics (package (name "guile-ics") - (version "0.1.1") + (version "0.2.0") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/artyom-poptsov/guile-ics") - (commit "v0.1.1"))) + (commit (string-append "v" version)))) (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "1pvg6j48inpbq47hq00yh5hhl2qd2srvrx5yjl7w7ky1jsjadp86")))) + "0qjjvadr7gibdq9jvwkmlkb4afsw9n2shfj9phpiadinxk3p4m2g")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases @@ -749,8 +753,8 @@ format is also supported.") ;; Gettext brings 'AC_LIB_LINKFLAGS_FROM_LIBS'. ("gettext" ,gettext-minimal) ("pkg-config" ,pkg-config))) - (inputs `(("guile" ,guile-2.0) ("which" ,which))) - (propagated-inputs `(("guile-lib" ,guile2.0-lib))) + (inputs `(("guile" ,guile-2.2) ("which" ,which))) + (propagated-inputs `(("guile-lib" ,guile-lib))) (home-page "https://github.com/artyom-poptsov/guile-ics") (synopsis "Guile parser library for the iCalendar format") (description @@ -810,29 +814,33 @@ for Guile\".") (define-public guile-json (package (name "guile-json") - (version "0.6.0") + (version "1.0.1") + (home-page "https://github.com/aconchillo/guile-json") (source (origin (method url-fetch) - (uri (string-append "mirror://savannah/guile-json/guile-json-" + (uri (string-append home-page "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1qmjg7lbgciw95fkdzvlp9f68vv17kdjky42ywfzd4ffzwww0lgc")) + "16155dv30rhagz6dwv7xc87l386i8v0f1kgydqa2ajr166fi9qhr")) (modules '((guix build utils))) (snippet ;; Make sure everything goes under .../site/X.Y, like Guile's ;; search paths expects. '(begin - (substitute* "configure" - (("ac_subst_vars='") - "ac_subst_vars='GUILE_EFFECTIVE_VERSION\n")) - (substitute* '("Makefile.in" "json/Makefile.in") - (("moddir =.*/share/guile/site" all) - (string-append all "/@GUILE_EFFECTIVE_VERSION@"))) - #t)))) + (substitute* "configure.ac" + (("GUILE_PROGS") + (string-append "GUILE_PROGS\n" + "AC_SUBST([GUILE_EFFECTIVE_VERSION])\n"))) + (substitute* '("Makefile.am" "json/Makefile.am") + (("moddir[[:blank:]]*=.*/share/guile/site" all) + (string-append all "/@GUILE_EFFECTIVE_VERSION@"))))))) (build-system gnu-build-system) - (native-inputs `(("guile" ,guile-2.2))) - (home-page "https://savannah.nongnu.org/projects/guile-json/") + (native-inputs `(("autoconf" ,autoconf) + ("automake" ,automake) + ("guile" ,guile-2.2))) + (inputs `(("guile" ,guile-2.2))) (synopsis "JSON module for Guile") (description "Guile-JSON supports parsing and building JSON documents according to the @@ -919,7 +927,7 @@ specification. These are the main features: #t)))) (inputs - `(("guile" ,guile-2.0))) + `(("guile" ,guile-2.2))) (home-page "https://github.com/ijp/minikanren") (synopsis "MiniKanren declarative logic system, packaged for Guile") (description @@ -934,8 +942,11 @@ slightly from miniKanren mainline. See http://minikanren.org/ for more on miniKanren generally.") (license license:expat))) +(define-public guile2.0-minikanren + (package-for-guile-2.0 guile-minikanren)) + (define-public guile2.2-minikanren - (package-for-guile-2.2 guile-minikanren)) + (deprecated-package "guile2.2-minikanren" guile-minikanren)) (define-public guile-miniadapton (let ((commit "1b5749422304567c96ac5367f2221dda9eff5880") @@ -1076,7 +1087,7 @@ understand, extend, and port to host languages other than Scheme.") (install-file "irregex.html" doc) #t)))))) (inputs - `(("guile" ,guile-2.0))) + `(("guile" ,guile-2.2))) (home-page "http://synthcode.com/scheme/irregex") (synopsis "S-expression based regular expressions") (description @@ -1085,8 +1096,11 @@ string-based regular expressions. It implements SRFI 115 and is deeply inspired by the SCSH regular expression system.") (license license:bsd-3))) +(define-public guile2.0-irregex + (package-for-guile-2.0 guile-irregex)) + (define-public guile2.2-irregex - (package-for-guile-2.2 guile-irregex)) + (deprecated-package "guile2.2-irregex" guile-irregex)) ;; There are two guile-gdbm packages, one using the FFI and one with ;; direct C bindings, hence the verbose name. @@ -1368,15 +1382,18 @@ above command-line parameters.") #t)))) (build-system gnu-build-system) (native-inputs - `(("guile" ,guile-2.0))) + `(("guile" ,guile-2.2))) (home-page "https://savannah.nongnu.org/projects/guile-redis/") (synopsis "Redis client library for Guile") (description "Guile-redis provides a Scheme interface to the Redis key-value cache and store.") (license license:lgpl3+))) +(define-public guile2.0-redis + (package-for-guile-2.0 guile-redis)) + (define-public guile2.2-redis - (package-for-guile-2.2 guile-redis)) + (deprecated-package "guile2.2-redis" guile-redis)) (define-public guile-wisp (package @@ -1559,19 +1576,24 @@ provides access to that interface and its types from the Scheme level.") (arguments '(#:configure-flags (list (string-append - "--with-guile-site-dir=" %output "/share/guile/site/2.0")) + "--with-guile-site-dir=" %output "/share/guile/site/2.2")) + #:make-flags + (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib:" + (assoc-ref %build-inputs "guile-dbd-sqlite3") "/lib")) #:phases (modify-phases %standard-phases (add-after 'install 'patch-extension-path (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (dbi.scm (string-append - out "/share/guile/site/2.0/dbi/dbi.scm")) + out "/share/guile/site/2.2/dbi/dbi.scm")) (ext (string-append out "/lib/libguile-dbi"))) (substitute* dbi.scm (("libguile-dbi") ext)) #t)))))) + (inputs + `(("guile-dbd-sqlite3" ,guile-dbd-sqlite3))) ; only shared library, no scheme files (propagated-inputs - `(("guile" ,guile-2.0))) + `(("guile" ,guile-2.2))) (synopsis "Guile database abstraction layer") (home-page "http://home.gna.org/guile-dbi/guile-dbi.html") (description @@ -1581,6 +1603,15 @@ programming interface is presented regardless of which database system is used. It currently supports MySQL, Postgres and SQLite3.") (license license:gpl2+))) +(define guile-dbi-bootstrap + (package + (inherit guile-dbi) + (name "guile-dbi-bootstrap") + (inputs '()) + (arguments + (substitute-keyword-arguments (package-arguments guile-dbi) + ((#:make-flags _) '(list)))))) + (define-public guile-dbd-sqlite3 (package (name "guile-dbd-sqlite3") @@ -1595,12 +1626,11 @@ It currently supports MySQL, Postgres and SQLite3.") "0rg71jchxd2y8x496s8zmfmikr5g8zxi8zv2ar3f7a23pph92iw2")))) (build-system gnu-build-system) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config) + ("guile-dbi-bootstrap" ,guile-dbi-bootstrap))) ; only required for headers (inputs `(("sqlite" ,sqlite) ("zlib" ,(@ (gnu packages compression) zlib)))) - (propagated-inputs - `(("guile-dbi" ,guile-dbi))) (synopsis "Guile DBI driver for SQLite") (home-page "https://github.com/jkalbhenn/guile-dbd-sqlite3") (description @@ -2100,4 +2130,245 @@ It has a nice, simple s-expression based syntax.") "Guile-colorized provides you with a colorized REPL for GNU Guile.") (license license:gpl3+))) +(define-public guile-simple-zmq + (let ((commit "d76657aeb1cd10ef8136edc06bb90999914c7c3c") + (revision "0")) + (package + (name "guile-simple-zmq") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jerry40/guile-simple-zmq") + (commit commit))) + (sha256 + (base32 + "1w73dy5gpyv33jn34dqlkqpwh9w4y8wm6hgvbpb3wbp6xsa2mk4z")) + (file-name (git-file-name name version)))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils) + (srfi srfi-26) + (ice-9 match) + (ice-9 popen) + (ice-9 rdelim)) + + (let* ((out (assoc-ref %outputs "out")) + (guile (assoc-ref %build-inputs "guile")) + (effective (read-line + (open-pipe* OPEN_READ + (string-append guile "/bin/guile") + "-c" "(display (effective-version))"))) + (module-dir (string-append out "/share/guile/site/" + effective)) + (go-dir (string-append out "/lib/guile/" + effective "/site-ccache/")) + (source (string-append (assoc-ref %build-inputs "source") + "/src")) + (scm-file "simple-zmq.scm") + (guild (string-append (assoc-ref %build-inputs "guile") + "/bin/guild")) + (zmq (assoc-ref %build-inputs "zeromq")) + (deps (list zmq)) + (path (string-join + (map (cut string-append <> + "/lib/") + deps) + ":"))) + ;; Make installation directories. + (mkdir-p module-dir) + (mkdir-p go-dir) + + ;; Compile .scm files and install. + (chdir source) + (setenv "GUILE_AUTO_COMPILE" "0") + (for-each (lambda (file) + (let* ((dest-file (string-append module-dir "/" + file)) + (go-file (match (string-split file #\.) + ((base _) + (string-append go-dir "/" + base ".go"))))) + ;; Install source module. + (copy-file file dest-file) + (substitute* dest-file + (("\\(dynamic-link \"libzmq\"\\)") + (format #f "(dynamic-link \"~a/lib/libzmq.so\")" + (assoc-ref %build-inputs "zeromq")))) + + ;; Install and compile module. + (unless (zero? (system* guild "compile" + "-L" source + "-o" go-file + dest-file)) + (error (format #f "Failed to compile ~s to ~s!" + file go-file))))) + (list scm-file)) + #t)))) + (propagated-inputs + `(("guile" ,guile-2.2) + ("zeromq" ,zeromq))) + (home-page "https://github.com/jerry40/guile-simple-zmq") + (synopsis "Guile wrapper over ZeroMQ library") + (description + "This package provides a Guile programming interface to the ZeroMQ +messaging library.") + (license license:gpl3+)))) + +(define-public jupyter-guile-kernel + (let ((commit "a5c5f3ea3215b65e770bcb62f71117b0ec4575ed") + (revision "0")) + (package + (name "jupyter-guile-kernel") + (version (git-version "0.0.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jerry40/guile-kernel") + (commit commit))) + (sha256 + (base32 + "0y5jr0f0dyskvsawqbf6n0bpg8jirw4mhqbarf2a6p9lxhqha9s9")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils) + (srfi srfi-26) + (ice-9 match) + (ice-9 popen) + (ice-9 rdelim)) + + (let* ((out (assoc-ref %outputs "out")) + (guile (assoc-ref %build-inputs "guile")) + (effective (read-line + (open-pipe* OPEN_READ + (string-append guile "/bin/guile") + "-c" "(display (effective-version))"))) + (module-dir (string-append out "/share/guile/site/" + effective)) + (kernel-dir (string-append out "/share/jupyter/kernels/guile")) + (go-dir (string-append out "/lib/guile/" + effective + "/site-ccache")) + (source (string-append (assoc-ref %build-inputs "source") + "/src")) + (scm-files '("hmac.scm" + "tools.scm" + "guile-jupyter-kernel.scm")) + (kernel-file "kernel.json") + (guild (string-append (assoc-ref %build-inputs "guile") + "/bin/guild")) + (g-szmq (assoc-ref %build-inputs "guile-simple-zmq")) + (json (assoc-ref %build-inputs "guile-json")) + (deps (list g-szmq json)) + (path (string-join + (map (cut string-append <> + "/share/guile/site/" + effective) + deps) + ":")) + (gopath (string-join + (map (cut string-append <> + "/lib/guile/" effective + "/site-ccache/") + deps) + ":"))) + + ;; Make installation directories. + (mkdir-p module-dir) + (mkdir-p kernel-dir) + (mkdir-p go-dir) + + ;; Make a writable copy of SOURCE. + (copy-recursively source ".") + + ;; Record the absolute file name of the 'openssl' command. + (substitute* "hmac.scm" + (("openssl") + (string-append (assoc-ref %build-inputs "openssl") + "/bin/openssl"))) + + ;; Compile .scm files and install. + (setenv "GUILE_AUTO_COMPILE" "0") + (setenv "GUILE_LOAD_PATH" path) + (setenv "GUILE_LOAD_COMPILED_PATH" gopath) + + (for-each (lambda (file) + (let* ((dest-file (string-append module-dir "/" + file)) + (go-file (match (string-split file #\.) + ((base _) + (string-append go-dir "/" + base ".go"))))) + ;; Install source module. + (copy-file file dest-file) + + ;; Install compiled module. + (unless (zero? (system* guild "compile" + "-L" source + "-o" go-file + file)) + (error (format #f "Failed to compile ~s to ~s!" + file go-file))))) + scm-files) + + ;; Install kernel + (copy-file kernel-file (string-append kernel-dir "/" + kernel-file)) + ;; Fix hard-coded file name in the kernel + (substitute* (string-append kernel-dir "/" + kernel-file) + (("/home/jerry/.local/share/jupyter/kernels/guile/guile-jupyter-kernel.scm") + (string-append module-dir "/guile-jupyter-kernel.scm")) + (("\"guile\"") + (string-append "\"" (assoc-ref %build-inputs "guile") + "/bin/guile\"")) + (("-s") + (string-append "--no-auto-compile\", \"-s"))) + + #t)))) + (inputs + `(("openssl" ,openssl) + ("guile" ,guile-2.2))) + (propagated-inputs + `(("guile-json" ,guile-json) + ("guile-simple-zmq" ,guile-simple-zmq))) + (synopsis "Guile kernel for the Jupyter Notebook") + (description + "This package provides a Guile 2.x kernel for the Jupyter Notebook. It +allows users to interact with the Guile REPL through Jupyter.") + (home-page "https://github.com/jerry40/guile-kernel") + (license license:gpl3+)))) + +(define-public guile-sparql + (package + (name "guile-sparql") + (version "0.0.7") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/roelj/guile-sparql/releases/download/" + version "/guile-sparql-" version ".tar.gz")) + (sha256 + (base32 "1drnvhsgl0gc5crmb16yyw1j98nkhwwcgssv9vgm36ng43nnzffd")))) + (build-system gnu-build-system) + (arguments `(#:tests? #f)) ; There are no tests. + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("guile" ,guile-2.2))) + (home-page "https://github.com/roelj/guile-sparql") + (synopsis "SPARQL module for Guile") + (description "This package provides the functionality to query a SPARQL +endpoint. Additionally, it provides an interface to write SPARQL queries +using S-expressions.") + (license license:gpl3+))) + ;;; guile.scm ends here diff --git a/gnu/packages/haskell-check.scm b/gnu/packages/haskell-check.scm index 6b1d769313..7453f9fbf1 100644 --- a/gnu/packages/haskell-check.scm +++ b/gnu/packages/haskell-check.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org> ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Tonton <tonton@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -451,6 +452,19 @@ hold in a large number of randomly generated cases. Specifications are expressed in Haskell, using combinators defined in the QuickCheck library.") (license license:bsd-3))) +(define-public ghc-quickcheck-2.9 + (package + (inherit ghc-quickcheck) + (name "ghc-quickcheck") + (version "2.9.2") + (source (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/QuickCheck-2.9.2/QuickCheck-" + version ".tar.gz")) + (sha256 + (base32 + "119np67qvx8hyp9vkg4gr2wv3lj3j6ay2vl4hxspkg43ymb1cp0m")))))) + (define-public ghc-quickcheck-latest (package (inherit ghc-quickcheck) (version "2.11.3") diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index f2c546d08b..2176f07cc4 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -13,6 +13,8 @@ ;;; Copyright © 2017, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Tonton <tonton@riseup.net> +;;; Copyright © 2018 Timothy Sample <samplet@ngyro.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1939,6 +1941,30 @@ case with other forms of concurrent communication, such as locks or "This package provides a library for parallel programming.") (license license:bsd-3))) +(define-public ghc-safesemaphore + (package + (name "ghc-safesemaphore") + (version "0.10.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "SafeSemaphore/SafeSemaphore-" version ".tar.gz")) + (sha256 + (base32 + "0rpg9j6fy70i0b9dkrip9d6wim0nac0snp7qzbhykjkqlcvvgr91")))) + (build-system haskell-build-system) + (inputs + `(("ghc-stm" ,ghc-stm))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/ChrisKuklewicz/SafeSemaphore") + (synopsis "Exception safe semaphores") + (description "This library provides exception safe semaphores that can be +used in place of @code{QSem}, @code{QSemN}, and @code{SampleVar}, all of which +are not exception safe and can be broken by @code{killThread}.") + (license license:bsd-3))) + (define-public ghc-text (package (name "ghc-text") @@ -2989,6 +3015,35 @@ online}.") (description "This package provides a simple XML library for Haskell.") (license license:bsd-3))) +(define-public ghc-feed + (package + (name "ghc-feed") + (version "0.3.12.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "feed/feed-" version ".tar.gz")) + (sha256 + (base32 + "0hkrsinspg70bbm3hwqdrvivws6zya1hyk0a3awpaz82j4xnlbfc")))) + (build-system haskell-build-system) + (inputs + `(("ghc-old-locale" ,ghc-old-locale) + ("ghc-old-time" ,ghc-old-time) + ("ghc-time-locale-compat" ,ghc-time-locale-compat) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-xml" ,ghc-xml))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit))) + (home-page "https://github.com/bergmark/feed") + (synopsis "Haskell package for handling various syndication formats") + (description "This Haskell package includes tools for generating and +consuming feeds in both RSS (Really Simple Syndication) and Atom format.") + (license license:bsd-3))) + (define-public ghc-exceptions (package (name "ghc-exceptions") @@ -3574,6 +3629,31 @@ vector types are supported. Specific instances are provided for unboxed, boxed and storable vectors.") (license license:bsd-3))) +(define-public ghc-bloomfilter + (package + (name "ghc-bloomfilter") + (version "2.0.1.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "bloomfilter/bloomfilter-" version ".tar.gz")) + (sha256 + (base32 + "03vrmncg1c10a2wcg5skq30m1yiknn7nwxz2gblyyfaxglshspkc")))) + (build-system haskell-build-system) + (native-inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-random" ,ghc-random) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (home-page "https://github.com/bos/bloomfilter") + (synopsis "Pure and impure Bloom filter implementations") + (description "This package provides both mutable and immutable Bloom +filter data types, along with a family of hash functions and an easy-to-use +interface.") + (license license:bsd-3))) + (define-public ghc-network (package (name "ghc-network") @@ -3759,6 +3839,27 @@ with various performance characteristics.") manipulating monad transformer stacks.") (license license:bsd-3))) +(define-public ghc-ifelse + (package + (name "ghc-ifelse") + (version "0.85") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "IfElse/IfElse-" version ".tar.gz")) + (sha256 + (base32 + "1kfx1bwfjczj93a8yqz1n8snqiq5655qgzwv1lrycry8wb1vzlwa")))) + (build-system haskell-build-system) + (inputs `(("ghc-mtl" ,ghc-mtl))) + (home-page "http://hackage.haskell.org/package/IfElse") + (synopsis "Monadic control flow with anaphoric variants") + (description "This library provides functions for control flow inside of +monads with anaphoric variants on @code{if} and @code{when} and a C-like +@code{switch} function.") + (license license:bsd-3))) + (define-public ghc-monad-control (package (name "ghc-monad-control") @@ -7737,6 +7838,44 @@ converting between Haskell values and JSON. JSON (JavaScript Object Notation) is a lightweight data-interchange format.") (license license:bsd-3))) +(define-public ghc-esqueleto + (package + (name "ghc-esqueleto") + (version "2.5.3") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "esqueleto/esqueleto-" version ".tar.gz")) + (sha256 + (base32 + "10n49rzqmblky7pwjnysalyy6nacmxfms8dqbsdv6hlyzr8pb69x")))) + (build-system haskell-build-system) + (inputs + `(("ghc-blaze-html" ,ghc-blaze-html) + ("ghc-conduit" ,ghc-conduit) + ("ghc-monad-logger" ,ghc-monad-logger) + ("ghc-persistent" ,ghc-persistent) + ("ghc-resourcet" ,ghc-resourcet) + ("ghc-tagged" ,ghc-tagged) + ("ghc-text" ,ghc-text) + ("ghc-unordered-containers" ,ghc-unordered-containers))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-hunit" ,ghc-hunit) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-persistent-sqlite" ,ghc-persistent-sqlite) + ("ghc-persistent-template" ,ghc-persistent-template) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/bitemyapp/esqueleto") + (synopsis "Type-safe embedded domain specific language for SQL queries") + (description "This library provides a type-safe embedded domain specific +language (EDSL) for SQL queries that works with SQL backends as provided by +@code{ghc-persistent}. Its language closely resembles SQL, so you don't have +to learn new concepts, just new syntax, and it's fairly easy to predict the +generated SQL and optimize it for your backend.") + (license license:bsd-3))) + (define-public shellcheck (package (name "shellcheck") @@ -7835,6 +7974,8 @@ bytestrings and their hexademical representation.") (base32 "0n39s1i88j6s7vvsdhpbhcr3gpbwlzabwcc3nbd7nqb4kb4i0sls")))) (build-system haskell-build-system) + (arguments + `(#:configure-flags (list "--allow-newer=QuickCheck"))) (inputs `(("ghc-hashable" ,ghc-hashable))) (native-inputs @@ -9468,4 +9609,73 @@ system dependencies.") address string against RFC 5322.") (license license:bsd-3))) +(define-public ghc-semigroupoids-5.2.2 + (package + (inherit ghc-semigroupoids) + (name "ghc-semigroupoids") + (version "5.2.2") + (source (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "semigroupoids-" version "/semigroupoids-" + version ".tar.gz")) + (sha256 + (base32 + "17i96y4iqj8clcs090lf6k0ij3j16nj14vsfwz0mm9nd6i4gbpp4")))) + (inputs `(("ghc-unordered-containers" ,ghc-unordered-containers) + ,@(package-inputs ghc-semigroupoids))))) + +(define-public ghc-bytes + (package + (name "ghc-bytes") + (version "0.15.4") + (source + (origin + (method url-fetch) + (uri + (string-append "https://hackage.haskell.org/package/bytes-" + version "/bytes-" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "121x3iqlm8pghw8cd9g30cnqbl7jrdpfjxdanmqdqllajw6xivrm")))) + (build-system haskell-build-system) + (inputs `(("ghc-cereal" ,ghc-cereal) + ("cabal-doctest" ,cabal-doctest) + ("ghc-doctest" ,ghc-doctest-0.13) + ("ghc-mtl" ,ghc-mtl) + ("ghc-scientific" ,ghc-scientific) + ("ghc-text" ,ghc-text) + ("ghc-transformers-compat" ,ghc-transformers-compat) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-void" ,ghc-void) + ("ghc-vector" ,ghc-vector))) + (synopsis "Serialization between @code{binary} and @code{cereal}") + (description "This package provides a simple compatibility shim that lets +you work with both @code{binary} and @code{cereal} with one chunk of +serialization code.") + (home-page "https://hackage.haskell.org/package/bytes") + (license license:bsd-3))) + +(define-public ghc-disk-free-space + (package + (name "ghc-disk-free-space") + (version "0.1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "disk-free-space/disk-free-space-" + version ".tar.gz")) + (sha256 + (base32 + "07rqj8k1vh3cykq9yidpjxhgh1f7vgmjs6y1nv5kq2217ff4yypi")))) + (build-system haskell-build-system) + (home-page "https://github.com/redneb/disk-free-space") + (synopsis "Retrieve information about disk space usage") + (description "A cross-platform library for retrieving information about +disk space usage.") + (license license:bsd-3))) + ;;; haskell.scm ends here diff --git a/gnu/packages/ibus.scm b/gnu/packages/ibus.scm index 2d138e839f..9f7e1f88b4 100644 --- a/gnu/packages/ibus.scm +++ b/gnu/packages/ibus.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> @@ -139,22 +139,19 @@ may also simplify input method development.") (define-public ibus-libpinyin (package (name "ibus-libpinyin") - (version "1.9.2") + (version "1.10.0") (source (origin (method url-fetch) - (uri (string-append "https://github.com/libpinyin/" - "ibus-libpinyin/archive/" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "https://github.com/libpinyin/ibus-libpinyin/" + "releases/download/" version + "/ibus-libpinyin-" version ".tar.gz")) (sha256 (base32 - "0wpgs0m62l4zlis9f11b7xknhgnw2xw485nc2xrzk880s17pp1mr")))) + "0yq8aw4lddiviag8cnik6fp52vvk8lxv6bym13a3xya84c6zii3c")))) (build-system glib-or-gtk-build-system) (arguments `(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autogen - (lambda _ (and (zero? (system* "intltoolize")) - (zero? (system* "autoreconf" "-vif"))))) (add-after 'wrap-program 'wrap-with-additional-paths (lambda* (#:key inputs outputs #:allow-other-keys) ;; Make sure 'ibus-setup-libpinyin' runs with the correct @@ -180,10 +177,7 @@ may also simplify input method development.") (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool) - ("autoconf" ,autoconf) - ("automake" ,automake) - ("glib" ,glib "bin") - ("libtool" ,libtool))) + ("glib" ,glib "bin"))) (synopsis "Chinese pinyin and ZhuYin input methods for IBus") (description "This package includes a Chinese pinyin input method and a Chinese @@ -194,43 +188,21 @@ ZhuYin (Bopomofo) input method based on libpinyin for IBus.") (define-public libpinyin (package (name "libpinyin") - (version "2.1.91") + (version "2.2.0") (source (origin (method url-fetch) - (uri (string-append - "https://github.com/libpinyin/libpinyin/archive/" - version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (uri (string-append "https://github.com/libpinyin/libpinyin/" + "releases/download/" version + "/libpinyin-2.2.0.tar.gz")) (sha256 (base32 - "1yr4zyz3rwvmvj6bh8pc54hbp4rd2xk3g06y38z220fshx2l8pwf")))) + "1c4wxvcvjxvk23mcwqvsfsv4nhimx4kpjhabxa28gx1ih10l88gj")))) (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'configure 'autogen - (lambda _ (zero? (system* "autoreconf" "-vif")))) - (add-after 'unpack 'unpack-model - (lambda* (#:key inputs #:allow-other-keys) - (zero? (system* "tar" "-xvf" - (assoc-ref inputs "model") - "-C" "data"))))))) (inputs `(("glib" ,glib) - ("bdb" ,bdb) - ("model" - ,(origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/libpinyin/" - "models/model14.text.tar.gz")) - (sha256 - (base32 - "0qqk30nflj07zjhs231c95ln4yj4ipzwxxiwrxazrg4hb8bhypqq")))))) + ("bdb" ,bdb))) (native-inputs - `(("pkg-config" ,pkg-config) - ("autoconf" ,autoconf) - ("automake" ,automake) - ("libtool" ,libtool))) + `(("pkg-config" ,pkg-config))) (synopsis "Library to handle Chinese pinyin") (description "The libpinyin C++ library provides algorithms needed for sentence-based diff --git a/gnu/packages/image-processing.scm b/gnu/packages/image-processing.scm index a44bc086d6..8f80b75af4 100644 --- a/gnu/packages/image-processing.scm +++ b/gnu/packages/image-processing.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,12 +39,16 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages graphics) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages maths) #:use-module (gnu packages perl) + #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) + #:use-module (gnu packages protobuf) #:use-module (gnu packages python) #:use-module (gnu packages serialization) + #:use-module (gnu packages video) #:use-module (gnu packages xiph) #:use-module (gnu packages xml) #:use-module (gnu packages xorg)) @@ -191,3 +196,203 @@ triangulation. VTK has an extensive information visualization framework, has a suite of 3D interaction widgets, supports parallel processing, and integrates with various databases on GUI toolkits such as Qt and Tk.") (license license:bsd-3))) + +(define-public opencv + (package + (name "opencv") + (version "3.4.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/opencv/opencv/archive/" + version ".zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "1g8pvnlkzzp50amd89149hqsbvsc2hq3vk1d6a9fksdcx8ra9g94")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove external libraries. We have all available in Guix: + (delete-file-recursively "3rdparty") + + ;; Milky icon set is non-free: + (delete-file-recursively "modules/highgui/src/files_Qt/Milky") + + ;; Some jars found: + (for-each delete-file + '("modules/java/test/pure_test/lib/junit-4.11.jar" + "samples/java/sbt/sbt/sbt-launch.jar")))))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list "-DWITH_IPP=OFF" + "-DWITH_ITT=OFF" + + ;; CPU-Features: + ;; See cmake/OpenCVCompilerOptimizations.cmake + ;; (CPU_ALL_OPTIMIZATIONS) for a list of all optimizations + ;; BASELINE is the minimum optimization all CPUs must support + ;; + ;; DISPATCH is the list of optional dispatches + "-DCPU_BASELINE=SSE2, NEON" + + "-DCPU_DISPATCH=SSE3,SSSE3,SSE4_1,SSE4_2,AVX,AVX2" + "-DCPU_DISPATCH_REQUIRE=SSE3,SSSE3,SSE4_1,SSE4_2,AVX,AVX2" + + "-DBUILD_PERF_TESTS=OFF" + "-D BUILD_TESTS=ON" + + (string-append "-DOPENCV_EXTRA_MODULES_PATH=" + "/tmp/guix-build-opencv-" ,version ".drv-0" + "/opencv-contrib/opencv_contrib-" ,version + "/modules") + + ;;Define test data: + (string-append "-DOPENCV_TEST_DATA_PATH=" + "/tmp/guix-build-opencv-" ,version ".drv-0" + ;;"/opencv-3.4.0" + "/opencv-extra/opencv_extra-" ,version + "/testdata") + + ;; Is ON by default and would try to rebuild 3rd-party protobuf, + ;; which we had removed, which would lead to an error: + "-DBUILD_PROTOBUF=OFF" + + ;; Rebuild protobuf files, because we have a slightly different + ;; version than the included one. If we would not update, we + ;; would get a compile error later: + "-DPROTOBUF_UPDATE_FILES=ON" + + ;; xfeatures2d disabled, because it downloads extra binaries from + ;; https://github.com/opencv/opencv_3rdparty + ;; defined in xfeatures2d/cmake/download_{vgg|bootdesc}.cmake + ;; Cmp this bug entry: + ;; https://github.com/opencv/opencv_contrib/issues/1131 + "-DBUILD_opencv_xfeatures2d=OFF") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-broken-tests + (lambda _ + ;; These tests fails with: + ;; vtkXOpenGLRenderWindow (0x723990): Could not find a decent config + ;; I think we have no OpenGL support with the Xvfb. + (substitute* '("modules/viz/test/test_tutorial3.cpp" + "modules/viz/test/test_main.cpp" + "modules/viz/test/tests_simple.cpp" + "modules/viz/test/test_viz3d.cpp") + (("(TEST\\(Viz, )([a-z].*\\).*)" all pre post) + (string-append pre "DISABLED_" post))) + + ;; This one fails with "unknown file: Failure" + ;; But I couldn't figure out which file was missing: + (substitute* (list (string-append + "../opencv-contrib/opencv_contrib-" + ,version + "/modules/face/test/test_face_align.cpp")) + (("(TEST\\(CV_Face_FacemarkKazemi, )(can_detect_landmarks\\).*)" + all pre post) + (string-append pre "DISABLED_" post))) + + ;; Failure reason: Bad accuracy + ;; Incorrect count of accurate poses [2nd case]: 90.000000 / 94.000000 + (substitute* (list (string-append + "../opencv-contrib/opencv_contrib-" + ,version + "/modules/rgbd/test/test_odometry.cpp")) + (("(TEST\\(RGBD_Odometry_Rgbd, )(algorithmic\\).*)" all pre post) + (string-append pre "DISABLED_" post))) + #t)) + + ;; Idea copied from ldc.scm (ldc-bootstrap): + (add-after 'unpack 'unpack-submodule-sources + (lambda* (#:key inputs #:allow-other-keys) + (mkdir "../opencv-extra") + (mkdir "../opencv-contrib") + (let ((unpack (lambda (source target) + (with-directory-excursion target + (apply invoke "unzip" + (list (assoc-ref inputs source))))))) + (unpack "opencv-extra" "../opencv-extra") + (unpack "opencv-contrib" "../opencv-contrib")))) + + (add-after 'set-paths 'add-ilmbase-include-path + (lambda* (#:key inputs #:allow-other-keys) + ;; OpenEXR propagates ilmbase, but its include files do not appear + ;; in the CPATH, so we need to add "$ilmbase/include/OpenEXR/" to + ;; the CPATH to satisfy the dependency on "ImathVec.h". + (setenv "CPATH" + (string-append (assoc-ref inputs "ilmbase") + "/include/OpenEXR" + ":" (or (getenv "CPATH") ""))) + #t)) + (add-before 'check 'start-xserver + (lambda* (#:key inputs #:allow-other-keys) + (let ((xorg-server (assoc-ref inputs "xorg-server")) + (disp ":1")) + (setenv "HOME" (getcwd)) + (setenv "DISPLAY" disp) + ;; There must be a running X server and make check doesn't start one. + ;; Therefore we must do it. + (zero? (system (format #f "~a/bin/Xvfb ~a &" xorg-server disp))))))))) + (native-inputs + `(("unzip" ,unzip) + ("pkg-config" ,pkg-config) + ("xorg-server" ,xorg-server) ; For running the tests + ("opencv-extra" + ,(origin + (method url-fetch) + (uri (string-append "https://codeload.github.com/" + "opencv/opencv_extra/zip/" version)) + (file-name (string-append "opencv-extra-" version ".zip")) + (sha256 + (base32 "0wfh3pvfxqydf7hsccp50npcsg37sf6fqi6cd3zkc4qil9zhpbps")))) + ("opencv-contrib" + ,(origin + (method url-fetch) + (uri (string-append "https://codeload.github.com/" + "opencv/opencv_contrib/zip/" version)) + (file-name (string-append "opencv-contrib-" version ".zip")) + (sha256 + (base32 "18zm0qmjcdvg90c33gzv0ws0xdaid1xpqzz2xa9l2x12qkr6zj3p")))))) + (inputs `(("libjpeg" ,libjpeg) + ("libpng" ,libpng) + ("jasper" ,jasper) + ;; ffmpeg 4.0 causes core dumps in tests. + ("ffmpeg" ,ffmpeg-3.4) + ("libtiff" ,libtiff) + ("hdf5" ,hdf5) + ("libgphoto2" ,libgphoto2) + ("libwebp" ,libwebp) + ("zlib" ,zlib) + ("gtkglext" ,gtkglext) + ("openexr" ,openexr) + ("ilmbase" ,ilmbase) + ("gtk+" ,gtk+-2) + ("python-numpy" ,python-numpy) + ("protobuf" ,protobuf) + ("vtk" ,vtk) + ("python" ,python))) + ;; These three CVEs are not a problem of OpenCV, see: + ;; https://github.com/opencv/opencv/issues/10998 + (properties '((lint-hidden-cve . ("CVE-2018-7712" + "CVE-2018-7713" + "CVE-2018-7714")))) + (synopsis "Computer vision library") + (description "OpenCV is a library aimed at +real-time computer vision, including several hundred computer +vision algorithms. It can be used to do things like: + +@itemize +@item image and video input and output +@item image and video processing +@item displaying +@item feature recognition +@item segmentation +@item facial recognition +@item stereo vision +@item structure from motion +@item augmented reality +@item machine learning +@end itemize\n") + (home-page "https://opencv.org/") + (license license:bsd-3))) diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 1f0a9e46e1..5abcdf9a2a 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com> -;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> @@ -31,14 +31,15 @@ #:use-module (guix packages) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) + #:use-module (guix build-system meson) #:use-module (guix build-system python) #:use-module (gnu packages autotools) #:use-module (gnu packages algebra) - #:use-module (gnu packages base) #:use-module (gnu packages boost) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages fontutils) + #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) @@ -59,7 +60,7 @@ (define-public feh (package (name "feh") - (version "2.26") + (version "2.26.3") (home-page "https://feh.finalrewind.org/") (source (origin (method url-fetch) @@ -67,7 +68,7 @@ name "-" version ".tar.bz2")) (sha256 (base32 - "11kckzwk3b734l0n4j41k40liq1v2lbbj1gzir5qc386g7fvzmmi")))) + "08aagymgajcvciagwy2zdxhicvdfnjmd2xyx9bqjy7l1n16ydwrz")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) @@ -231,43 +232,36 @@ it and customize it for your needs.") (define-public viewnior (package (name "viewnior") - (version "1.6") + (version "1.7") (source (origin (method url-fetch) - (uri (string-append "https://github.com/xsisqox/Viewnior/archive/" + (uri (string-append "https://github.com/hellosiyan/Viewnior/archive/" name "-" version ".tar.gz")) (sha256 (base32 - "18309qjgwak3kn228z3p3nx7yxasqgzx69v3rgc23hf161nky0c9")))) - (build-system gnu-build-system) + "1rpkk721s3xas125q3g0fl11b5zsrmzv9pzl6ddzcy4sj2rd7ymr")))) + (build-system meson-build-system) (arguments '(#:phases (modify-phases %standard-phases - (add-after 'unpack 'autogen - (lambda _ - (zero? (system* "sh" "autogen.sh")))) - (add-before 'install 'skip-gtk-update-icon-cache + (add-after 'unpack 'patch-source (lambda _ ;; Don't create 'icon-theme.cache' - (substitute* (find-files "data" "^Makefile$") - (("gtk-update-icon-cache") (which "true"))) - #t))))) + (substitute* "meson.build" + (("meson.add_install_script*") "")) + #t))) + #:tests? #f)) ; no tests (native-inputs - `(("automake" ,automake) - ("autoconf" ,autoconf) - ("intltool" ,intltool) + `(("gettext" ,gettext-minimal) ("glib" ,glib "bin") ; glib-genmarshal - ("gnome-common" ,gnome-common) - ("libtool" ,libtool) ("pkg-config" ,pkg-config) - ("shared-mime-info" ,shared-mime-info) - ("which" ,which))) + ("shared-mime-info" ,shared-mime-info))) (inputs `(("exiv2" ,exiv2) ("gdk-pixbuf" ,gdk-pixbuf) ("gtk+-2" ,gtk+-2))) - (home-page "http://siyanpanayotov.com/project/viewnior/") + (home-page "http://siyanpanayotov.com/project/viewnior") (synopsis "Simple, fast and elegant image viewer") (description "Viewnior is an image viewer program. Created to be simple, fast and elegant. Its minimalistic interface provides more screenspace for diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 5a3542b4aa..6b7f41c906 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2013, 2015, 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015 Alex Kost <alezost@gmail.com> -;;; Copyright © 2014, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2014, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; 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> @@ -17,6 +17,8 @@ ;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> +;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> +;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -809,7 +811,14 @@ graphics image formats like PNG, BMP, JPEG, TIFF and others.") ("python2-sphinx" ,python2-sphinx))) (arguments `(#:test-target "check" - #:parallel-build? #f ; parallel builds trigger an ICE + #:phases + (modify-phases %standard-phases + ;; See https://github.com/ukoethe/vigra/issues/432 + (add-after 'unpack 'disable-broken-test + (lambda _ + (substitute* "test/fourier/CMakeLists.txt" + (("VIGRA_ADD_TEST.*") "")) + #t))) #:configure-flags (list "-Wno-dev" ; suppress developer mode with lots of warnings (string-append "-DVIGRANUMPY_INSTALL_DIR=" @@ -835,6 +844,39 @@ multi-dimensional image processing.") (license license:expat) (home-page "https://ukoethe.github.io/vigra/"))) +(define-public vigra-c + (let* ((commit "a2ff675f42079e2623318d8ff8b4288dbe7a7f06") + (revision "0") + (version (git-version "0.0.0" revision commit))) + (package + (name "vigra-c") + (version version) + (home-page "https://github.com/BSeppke/vigra_c") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "1f1phmfbbz3dsq9330rd6bjmdg29hxskxi9l17cyx1f4mdqpgdgl")) + (file-name (git-file-name name version)))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f)) ; No test target. + (native-inputs + `(("doxygen" ,doxygen))) + (inputs + `(("fftw" ,fftw) + ("fftwf" ,fftwf) + ("vigra" ,vigra))) + (synopsis "C interface to the VIGRA computer vision library") + (description + "This package provides a C interface to the VIGRA C++ computer vision +library. It is designed primarily to ease the implementation of higher-level +language bindings to VIGRA.") + (license license:expat)))) + (define-public libwebp (package (name "libwebp") @@ -1358,3 +1400,50 @@ Features: images stored in the JPEG format with R. It can read and write both files and in-memory raw vectors.") (license license:gpl2+))) + +(define-public gifsicle + (package + (name "gifsicle") + (version "1.91") + (source + (origin + (method url-fetch) + (uri (string-append "http://www.lcdf.org/gifsicle/gifsicle-" + version ".tar.gz")) + (sha256 + (base32 + "00586z1yz86qcblgmf16yly39n4lkjrscl52hvfxqk14m81fckha")))) + (build-system gnu-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'patch-tests + (lambda _ + (substitute* "test/testie" + (("/usr/bin/perl") + (which "perl")) + (("/bin/sh") + (which "sh")) + (("/bin/rm") + (which "rm"))) + #t))))) + (native-inputs `(("perl" ,perl))) ; Only for tests. + (inputs `(("libx11" ,libx11))) + (home-page "http://www.lcdf.org/gifsicle/") + (synopsis "Edit GIF images and animations") + (description "Gifsicle is a command-line GIF image manipulation tool that: + +@itemize +@item Provides a batch mode for changing GIFs in place. +@item Prints detailed information about GIFs, including comments. +@item Control over interlacing, comments, looping, transparency, etc. +@item Creates well-behaved GIFs: removes redundant colors, only uses local color +tables, etc. +@item Shrinks colormaps and change images to use the Web-safe palette. +@item Optimizes GIF animations, or unoptimizes them for easier editing. +@end itemize + +Two other programs are included with Gifsicle: @command{gifview} is a +lightweight animated-GIF viewer, and @command{gifdiff} compares two GIFs for +identical visual appearance.") + (license license:gpl2+))) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index c63259dd01..e80da6d848 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -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-39") + (version "6.9.9-43") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "0cgrvfg8722cdv2y0hw2f7xhzdfmfiqc1348l71ki38dg4b0q4sn")))) + "09vfxb1ljfma7mvkcqp17bs7adlrfh6kc6k9hifkhgxf51vr7hk6")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") @@ -169,7 +169,7 @@ script.") (define-public graphicsmagick (package (name "graphicsmagick") - (version "1.3.28") + (version "1.3.29") (source (origin (method url-fetch) (uri @@ -181,7 +181,7 @@ script.") "/GraphicsMagick-" version ".tar.xz"))) (sha256 (base32 - "0jlrrimrajcmwp7llivyj14qnzb1mpqd8vw95dl6zbx5m2lnhall")))) + "1m0cc6kpky06lpcipj7rfwc2jbw2igr0jk97zqmw3j1ld5mg93g1")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/indent.scm b/gnu/packages/indent.scm deleted file mode 100644 index 3465d63c01..0000000000 --- a/gnu/packages/indent.scm +++ /dev/null @@ -1,58 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> -;;; Copyright © 2014 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> -;;; -;;; This file is part of GNU Guix. -;;; -;;; GNU Guix is free software; you can redistribute it and/or modify it -;;; under the terms of the GNU General Public License as published by -;;; the Free Software Foundation; either version 3 of the License, or (at -;;; your option) any later version. -;;; -;;; GNU Guix is distributed in the hope that it will be useful, but -;;; WITHOUT ANY WARRANTY; without even the implied warranty of -;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;;; GNU General Public License for more details. -;;; -;;; You should have received a copy of the GNU General Public License -;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. - -(define-module (gnu packages indent) - #:use-module (gnu packages) - #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (guix build-system gnu)) - -(define-public indent - (package - (name "indent") - (version "2.2.10") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnu/indent/indent-" version - ".tar.gz")) - (sha256 (base32 - "0f9655vqdvfwbxvs1gpa7py8k1z71aqh8hp73f65vazwbfz436wa")))) - (build-system gnu-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'fix-docdir - (lambda _ - ;; Although indent uses a modern autoconf in which docdir - ;; defaults to PREFIX/share/doc, the doc/Makefile.am - ;; overrides this to be in PREFIX/doc. Fix this. - (substitute* "doc/Makefile.in" - (("^docdir = .*$") "docdir = @docdir@\n")) - #t))))) - (synopsis "Code reformatter") - (description - "Indent is a program that makes source code easier to read by -reformatting it in a consistent style. It can change the style to one of -several different styles such as GNU, BSD or K&R. It has some flexibility to -deal with incomplete or malformed syntax. GNU indent offers several -extensions over the standard utility.") - (license license:gpl3+) - (home-page "https://www.gnu.org/software/indent/"))) diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm index ffd5f60b38..de9940df1c 100644 --- a/gnu/packages/inkscape.scm +++ b/gnu/packages/inkscape.scm @@ -80,8 +80,13 @@ ;; FIXME: tests require gmock (arguments `(#:tests? #f - #:make-flags - '("gtk_update_icon_cache=true"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-icon-cache-generator + (lambda _ + (substitute* "share/icons/application/CMakeLists.txt" + (("gtk-update-icon-cache") "true")) + #t))))) (home-page "https://inkscape.org/") (synopsis "Vector graphics editor") (description "Inkscape is a vector graphics editor. What sets Inkscape diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 2b266748ae..993102f272 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -74,6 +74,7 @@ (sha256 (base32 "1qkl3sb4ijx4k17m0c42j2p5bc4jymypwhmplm942rbrzm6mg50q")) + (patches (search-patches "quassel-qt-5.11.patch")) (modules '((guix build utils))) ;; We don't want to install the bundled scripts. (snippet @@ -92,7 +93,7 @@ "-DUSE_QT5=ON" ; default is qt4 "-DWITH_KDE=OFF" ; no to kde integration ... "-DWITH_OXYGEN=ON" ; therefore we install bundled icons - "-DWITH_WEBKIT=OFF") ; qtwebkit isn't packaged + "-DWITH_WEBKIT=OFF") ; we don't depend on qtwebkit #:tests? #f)) ; no test target (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 7000e5a475..678cbee188 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017 Roel Janssen <roel@gnu.org> ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au> -;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> +;;; Copyright © 2017, 2018 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> @@ -53,6 +53,7 @@ #:use-module (gnu packages gnuzilla) ;nss #:use-module (gnu packages ghostscript) ;lcms #:use-module (gnu packages gnome) + #:use-module (gnu packages groovy) #:use-module (gnu packages gtk) #:use-module (gnu packages guile) #:use-module (gnu packages icu4c) @@ -60,6 +61,7 @@ #:use-module (gnu packages libffi) #:use-module (gnu packages linux) ;alsa #:use-module (gnu packages maths) + #:use-module (gnu packages onc-rpc) #:use-module (gnu packages web) #:use-module (gnu packages wget) #:use-module (gnu packages pkg-config) @@ -847,6 +849,7 @@ machine."))) ("fastjar" ,fastjar) ("fontconfig" ,fontconfig) ("freetype" ,freetype) + ("gcc" ,gcc-4.9) ; there's a segmentation fault when compiling with gcc-5 or gcc-7 ("gtk" ,gtk+-2) ("gawk" ,gawk) ("giflib" ,giflib) @@ -854,6 +857,7 @@ machine."))) ("jamvm" ,jamvm) ("lcms" ,lcms) ("libjpeg" ,libjpeg) + ("libnsl" ,libnsl) ("libpng" ,libpng) ("libtool" ,libtool) ("libx11" ,libx11) @@ -1403,6 +1407,7 @@ bootstrapping purposes.") ("coreutils" ,coreutils) ("diffutils" ,diffutils) ;for tests ("gawk" ,gawk) + ("gcc" ,gcc-4.9) ; there's a segmentation fault when compiling with gcc-5 ("grep" ,grep) ("libtool" ,libtool) ("pkg-config" ,pkg-config) @@ -2285,6 +2290,8 @@ libraries from the SIS division at ETH Zurich like jHDF5.") #:jdk ,icedtea-8 #:phases (modify-phases %standard-phases + ;; FIXME: this build phase fails. + (delete 'generate-jar-indices) ;; Don't erase results from the build phase when building tests. (add-after 'unpack 'separate-test-target-from-clean (lambda _ @@ -4268,6 +4275,64 @@ from within Java, as well as an object registry that exposes Java objects to these scripting language engines.") (license license:asl2.0))) +(define-public java-commons-jxpath + (package + (name "java-commons-jxpath") + (version "1.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://apache/commons/jxpath/source/" + "commons-jxpath-" version "-src.tar.gz")) + (sha256 + (base32 + "1rpgg31ayn9fwr4bfi2i1ij0npcg79ad2fv0w9hacvawsyc42cfs")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "commons-jxpath.jar" + ;; tests require more dependencies, including mockrunner which depends on old software + #:tests? #f + #:source-dir "src/java")) + (inputs + `(("java-tomcat" ,java-tomcat) + ("java-jdom" ,java-jdom) + ("java-commons-beanutils" ,java-commons-beanutils))) + (native-inputs + `(("java-junit" ,java-junit))) + (home-page "http://commons.apache.org/jxpath/") + (synopsis "Simple interpreter of an expression language called XPath.") + (description "The org.apache.commons.jxpath package defines a simple +interpreter of an expression language called XPath. JXPath applies XPath +expressions to graphs of objects of all kinds: JavaBeans, Maps, Servlet +contexts, DOM etc, including mixtures thereof.") + (license license:asl2.0))) + +(define-public java-jsr250 + (package + (name "java-jsr250") + (version "1.3") + (source (origin + (method url-fetch) + (uri (string-append "https://repo1.maven.org/maven2/" + "javax/annotation/javax.annotation-api/" + version "/javax.annotation-api-" + version "-sources.jar")) + (sha256 + (base32 + "08clh8n4n9wfglf75qsqfjs6yf79f7x6hqx38cn856pksszv50kz")))) + (build-system ant-build-system) + (arguments + `(#:tests? #f ; no tests included + #:jdk ,icedtea-8 + #:jar-name "jsr250.jar")) + (home-page "https://jcp.org/en/jsr/detail?id=250") + (synopsis "Security-related annotations") + (description "This package provides annotations for security. It provides +packages in the @code{javax.annotation} and @code{javax.annotation.security} +namespaces.") + ;; either cddl or gpl2 only, with classpath exception + (license (list license:cddl1.0 + license:gpl2)))) + (define-public java-jsr305 (package (name "java-jsr305") @@ -8171,6 +8236,7 @@ algorithms and xxHash hashing algorithm.") (build-system ant-build-system) (arguments `(#:jdk ,icedtea-8 + #:tests? #f #:phases (modify-phases %standard-phases (replace 'build @@ -8178,9 +8244,10 @@ algorithms and xxHash hashing algorithm.") (invoke "ant" "-f" "ant/jdk15+.xml" "build-provider") (invoke "ant" "-f" "ant/jdk15+.xml" "build") #t)) - (replace 'check - (lambda _ - (invoke "ant" "-f" "ant/jdk15+.xml" "test"))) + ;; FIXME: the tests freeze. + ;; (replace 'check + ;; (lambda _ + ;; (invoke "ant" "-f" "ant/jdk15+.xml" "test"))) (replace 'install (install-jars "build/artifacts/jdk1.5/jars"))))) (inputs @@ -9811,3 +9878,278 @@ and reporting) project dependencies. It is characterized by the following: reporting and publication. @end itemize") (license license:asl2.0))) + +(define-public java-eclipse-sisu-inject + (package + (name "java-eclipse-sisu-inject") + (version "0.3.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/eclipse/sisu.inject/" + "archive/releases/" version ".tar.gz")) + (sha256 + (base32 + "11rg6yw5nl13i65xsp4jxxgr341qcnnaan48p767h28kb07s0ajn")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "eclipse-sisu-inject.jar" + #:source-dir "org.eclipse.sisu.inject/src" + #:jdk ,icedtea-8 + #:tests? #f)); no tests + (inputs + `(("java-guice" ,java-guice) + ("java-guice-servlet" ,java-guice-servlet) + ("java-javax-inject" ,java-javax-inject) + ("java-tomcat" ,java-tomcat) + ("java-junit" ,java-junit) + ("java-slf4j-api" ,java-slf4j-api) + ("java-jsr305" ,java-jsr305) + ("java-jsr250" ,java-jsr250) + ("java-cdi-api" ,java-cdi-api) + ("java-osgi-framework" ,java-osgi-framework) + ("java-osgi-util-tracker" ,java-osgi-util-tracker) + ("java-testng" ,java-testng))) + (home-page "https://www.eclipse.org/sisu/") + (synopsis "Classpath scanning, auto-binding, and dynamic auto-wiring") + (description "Sisu is a modular JSR330-based container that supports +classpath scanning, auto-binding, and dynamic auto-wiring. Sisu uses +Google-Guice to perform dependency injection and provide the core JSR330 +support, but removes the need to write explicit bindings in Guice modules. +Integration with other containers via the Eclipse Extension Registry and the +OSGi Service Registry is a goal of this project.") + (license license:epl1.0))) + +(define-public java-eclipse-sisu-plexus + (package + (name "java-eclipse-sisu-plexus") + (version "0.3.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/eclipse/sisu.plexus/" + "archive/releases/" version ".tar.gz")) + (sha256 + (base32 + "0lbj7nxy5j0z71k407zbb82icfqh7midrfk0fb3fa3jzdjz0d9d9")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file (find-files "." ".*.jar")) + (rename-file "org.eclipse.sisu.plexus.tests/src" + "org.eclipse.sisu.plexus.tests/java") + #t)))) + (build-system ant-build-system) + (arguments + `(#:jar-name "eclipse-sisu-plexus.jar" + #:source-dir "org.eclipse.sisu.plexus/src" + #:test-dir "org.eclipse.sisu.plexus.tests" + #:test-exclude + (list + ;; This test fails probably because we can't generate the necessary + ;; meta-inf files. + "**/PlexusLoggingTest.*" + ;; FIXME: This test fails because of some injection error + "**/PlexusRequirementTest.*") + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-resources + (lambda _ + (install-file "org.eclipse.sisu.plexus/META-INF/plexus/components.xml" + "build/classes/META-INF/plexus") + #t)) + (add-before 'check 'build-test-jar + (lambda _ + (with-directory-excursion "org.eclipse.sisu.plexus.tests/resources/component-jar/src/main/" + (mkdir "build") + (with-directory-excursion "java" + (apply invoke "javac" "-cp" + (string-append (getenv "CLASSPATH") + ":../../../../../build/classes") + (find-files "." ".*.java")) + (for-each (lambda (file) (install-file file (string-append "../build/" file))) + (find-files "." ".*.jar"))) + (mkdir-p "build/META-INF/plexus") + (copy-file "resources/META-INF/plexus/components.xml" + "build/META-INF/plexus/components.xml") + (with-directory-excursion "build" + (invoke "jar" "cf" "../../../component-jar-0.1.jar" "."))) + (with-directory-excursion "org.eclipse.sisu.plexus.tests/" + (copy-recursively "META-INF" "../build/test-classes/META-INF") + (substitute* "java/org/eclipse/sisu/plexus/DefaultPlexusContainerTest.java" + (("resources/component-jar") + "org.eclipse.sisu.plexus.tests/resources/component-jar"))) + #t))))) + (inputs + `(("java-plexus-classworlds" ,java-plexus-classworlds) + ("java-plexus-util" ,java-plexus-utils) + ("java-plexus-component-annotations" ,java-plexus-component-annotations) + ("java-osgi-framework" ,java-osgi-framework) + ("java-eclipse-sisu-inject" ,java-eclipse-sisu-inject) + ("java-guice" ,java-guice) + ("java-javax-inject" ,java-javax-inject) + ("java-slf4j-api" ,java-slf4j-api) + ("java-junit" ,java-junit))) + (native-inputs + `(("java-guava" ,java-guava) + ("java-aopalliance" ,java-aopalliance) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm))) + (home-page "https://www.eclipse.org/sisu/") + (synopsis "Plexus support for the sisu container") + (description "Sisu is a modular JSR330-based container that supports +classpath scanning, auto-binding, and dynamic auto-wiring. This package +adds Plexus support to the Sisu-Inject container.") + (license license:epl1.0))) + +(define-public java-commons-compiler + (package + (name "java-commons-compiler") + (version "3.0.8") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/janino-compiler/janino") + (commit "91aa95686d1e4ca3b16a984a03a38686572331b2"))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "04hfdl59sgh20qkxzgnibvs8f9hy6n7znxwpk611y5d89977y62r")) + (modules '((guix build utils))) + (snippet + '(begin + (for-each delete-file + (find-files "." "\\.jar$")) + #t)))) + (build-system ant-build-system) + (arguments + `(#:jar-name "commons-compiler.jar" + #:source-dir "commons-compiler/src/main" + #:tests? #f)); no tests + (home-page "https://github.com/janino-compiler/janino") + (synopsis "Java compiler") + (description "Commons-compiler contains an API for janino, including the +@code{IExpressionEvaluator}, @code{IScriptEvaluator}, @code{IClassBodyEvaluator} +and @code{ISimpleCompiler} interfaces.") + (license license:bsd-3))) + +(define-public java-janino + (package + (inherit java-commons-compiler) + (name "java-janino") + (arguments + `(#:jar-name "janino.jar" + #:source-dir "src/main/java" + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "janino")))))) + (inputs + `(("java-commons-compiler" ,java-commons-compiler))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core))) + (description "Janino is a Java compiler. Janino can compile a set of +source files to a set of class files like @code{javac}, but also compile a +Java expression, block, class body or source file in memory, load the bytecode +and execute it directly in the same JVM. @code{janino} can also be used for +static code analysis or code manipulation."))) + +(define-public java-logback-core + (package + (name "java-logback-core") + (version "1.2.3") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/qos-ch/logback/archive/v_" + version ".tar.gz")) + (sha256 + (base32 + "1x6ga74yfgm94cfx98gybakbrlilx8i2gn6dx13l40kasmys06mi")) + (modules '((guix build utils))) + (snippet + '(delete-file-recursively "logback-access/lib")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "logback.jar" + #:source-dir "src/main/java" + #:test-dir "src/test" + #:test-exclude + ;; These tests fail with Unable to set MockitoNamingPolicy on cglib generator + ;; which creates FastClasses + (list "**/AllCoreTest.*" + "**/AutoFlushingObjectWriterTest.*" + "**/PackageTest.*" + "**/ResilientOutputStreamTest.*" + ;; And we still don't want to run abstract classes + "**/Abstract*.*") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "logback-core") + #t))))) + (inputs + `(("java-javax-mail" ,java-javax-mail) + ("java-tomcat" ,java-tomcat) + ("java-commons-compiler" ,java-commons-compiler) + ("java-janino" ,java-janino))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-hamcrest-core" ,java-hamcrest-core) + ("java-mockito-1" ,java-mockito-1) + ("java-cglib" ,java-cglib) + ("java-asm" ,java-asm) + ("java-objenesis" ,java-objenesis) + ("java-joda-time" ,java-joda-time))) + (home-page "https://logback.qos.ch") + (synopsis "Logging for java") + (description "Logback is intended as a successor to the popular log4j project. +This module lays the groundwork for the other two modules.") + ;; Either epl1.0 or lgpl2.1 + (license (list license:epl1.0 + license:lgpl2.1)))) + +(define-public java-logback-classic + (package + (inherit java-logback-core) + (name "java-logback-classic") + (arguments + `(#:jar-name "logback-classic.jar" + #:source-dir "src/main/java" + #:test-dir "src/test" + #:tests? #f; tests require more packages: h2, greenmail, hsql, subethamail, slf4j, log4j, felix + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ + (chdir "logback-classic") + #t)) + (replace 'build + (lambda* (#:key inputs #:allow-other-keys) + (mkdir-p "build/classes") + (setenv "CLASSPATH" + (string-join + (apply append (map (lambda (input) + (find-files (assoc-ref inputs input) + ".*.jar")) + '("java-logback-core" "java-slf4j-api" + "java-commons-compiler" "java-tomcat" + "groovy"))) + ":")) + (apply invoke "groovyc" "-d" "build/classes" "-j" + (find-files "src/main/" ".*\\.(groovy|java)$")) + (invoke "ant" "jar") + #t))))) + (inputs + `(("java-logback-core" ,java-logback-core) + ("java-slf4j-api" ,java-slf4j-api) + ,@(package-inputs java-logback-core))) + (native-inputs + `(("groovy" ,groovy))) + (description "Logback is intended as a successor to the popular log4j project. +This module can be assimilated to a significantly improved version of log4j. +Moreover, @code{logback-classic} natively implements the slf4j API so that you +can readily switch back and forth between logback and other logging frameworks +such as log4j or @code{java.util.logging} (JUL)."))) diff --git a/gnu/packages/javascript.scm b/gnu/packages/javascript.scm index eeeec406a8..3a9e88ad08 100644 --- a/gnu/packages/javascript.scm +++ b/gnu/packages/javascript.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -370,6 +371,44 @@ to ES5 without causing run-time errors in older engines. In many cases, this means that these shams cause many ES5 methods to silently fail.") (license license:expat))) +(define-public js-filesaver + (package + (name "js-filesaver") + (version "1.3.8") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/eligrey/FileSaver.js/" + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "1rkhfqs5plaj628kzj7qgm5qahy4v7ihygifidqr6g6265mil97h")))) + (build-system minify-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-uglification + ;; Remove "export" keyword which prevents the file from being + ;; uglified by uglify-js. Moreover, that keyword is not present in + ;; the minified version of the library some projects are using, + ;; e.g., + ;; <https://github.com/jmoenig/Snap--Build-Your-Own-Blocks/blob/master/FileSaver.min.js> + (lambda _ + (substitute* "src/FileSaver.js" + (("export ") "")) + #t))))) + (home-page + "https://eligrey.com/blog/saving-generated-files-on-the-client-side/") + (synopsis "HTML5 saveAs() FileSaver implementation") + (description "@file{FileSaver.js} implements the @code{saveAs()} +FileSaver interface in browsers that do not natively support it. + +@file{FileSaver.js} is the solution to saving files on the +client-side, and is perfect for webapps that need to generate files, +or for saving sensitive information that shouldn't be sent to an +external server.") + (license license:expat))) + (define-public mujs (package (name "mujs") diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index 099c01fe3d..7dc2cf37fe 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -142,7 +142,7 @@ common build settings used in software produced by the KDE community.") (define-public phonon (package (name "phonon") - (version "4.10.0") + (version "4.10.1") (source (origin (method url-fetch) (uri (string-append @@ -151,7 +151,7 @@ common build settings used in software produced by the KDE community.") name "-" version ".tar.xz")) (sha256 (base32 - "0gyhlnwamzfw31kw4qh0v6rj0m47k9wfygd6h07klg9ggp60xhg2")))) + "1dwdw0hm6685psrp7v9frhkhqvsxrbdnm3gw794j5z7g3brqvag5")))) (build-system cmake-build-system) (native-inputs ;; TODO: Think about adding pulseaudio. Is it required for sound? diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index 65119e85df..1faab302a0 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -838,7 +838,7 @@ and to return information on pronunciations, meanings and synonyms.") (define-public libreoffice (package (name "libreoffice") - (version "5.4.6.2") + (version "5.4.7.2") (source (origin (method url-fetch) @@ -848,7 +848,7 @@ and to return information on pronunciations, meanings and synonyms.") (version-prefix version 3) "/libreoffice-" version ".tar.xz")) (sha256 (base32 - "0icd8h221gp2dsbn6d35flwhqhcfpx66cjc5dg8yifhhvrfam74i")))) + "0s9s4nhp2whwxis54jbxrf1dwpnpl95b9781d1pdj4xk5z9v90fv")))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index b92b146f3b..e6e849ecbd 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2016 Raymond Nicholson <rain1@openmailbox.org> ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2016, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> -;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 David Craven <david@craven.ch> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> ;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com> @@ -80,6 +80,7 @@ #:use-module (gnu packages multiprecision) #:use-module (gnu packages ncurses) #:use-module (gnu packages netpbm) + #:use-module (gnu packages nettle) #:use-module (gnu packages networking) #:use-module (gnu packages ninja) #:use-module (gnu packages perl) @@ -366,8 +367,10 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (for-each (lambda (file) (install-file file out)) (find-files "." "^(\\.config|bzImage|zImage|Image|vmlinuz|System\\.map)$")) ;; Install device tree files - (for-each (lambda (file) (install-file file dtbdir)) - (find-files "." "\\.dtb$")) + (unless (null? (find-files "." "\\.dtb$")) + (mkdir-p dtbdir) + (invoke "make" (string-append "INSTALL_DTBS_PATH=" dtbdir) + "dtbs_install")) ;; Install kernel modules (mkdir-p moddir) (invoke "make" @@ -386,14 +389,14 @@ It has been modified to remove all non-free binary blobs.") (license license:gpl2))) (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) -(define %linux-compatible-systems '("x86_64-linux" "i686-linux" "armhf-linux")) +(define %linux-compatible-systems '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux")) ;; linux-libre configuration for armhf-linux is derived from Debian armmp. It ;; supports qemu "virt" machine and possibly a large number of ARM boards. ;; See : https://wiki.debian.org/DebianKernel/ARMMP. -(define %linux-libre-version "4.16.6") -(define %linux-libre-hash "069bxqx27xib1gz4aayy8ar2hfp68cpdi8h51g6453k0w14pkchn") +(define %linux-libre-version "4.17") +(define %linux-libre-hash "0abbqrq96kn97jr02mf4ahqg7hl9vhq95c1l2z0s7jqrmhv1n8pb") (define-public linux-libre (make-linux-libre %linux-libre-version @@ -401,30 +404,30 @@ 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.38") -(define %linux-libre-4.14-hash "09lmz8zbd3c1qf8z3d2lkhcqcwawajh76s85zdhgqdmd2idpwach") +(define %linux-libre-4.14-version "4.14.48") +(define %linux-libre-4.14-hash "011lkq30gpvbgvg2p1nw2kqkig9a3qridy678rkx3fpah0ya4rhd") (define-public linux-libre-4.14 (make-linux-libre %linux-libre-4.14-version %linux-libre-4.14-hash - %linux-compatible-systems + '("x86_64-linux" "i686-linux" "armhf-linux") #:configuration-file kernel-config)) (define-public linux-libre-4.9 - (make-linux-libre "4.9.97" - "1xc3mj1qi51n1kr5bxmdf1rlpyj78x9imhfc7gihn8qjc6zsf1sp" + (make-linux-libre "4.9.106" + "0wgyv15x2czd4nyw4smzp9923cl1ix7pjcry4zn3y61ivqxbqini" %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.130" - "15cayafj7d9y5fs9flg115kzrcrjycbvax9hgfzz6yym94v9k8lk" + (make-linux-libre "4.4.135" + "0jdf5yx8b6q4zw7q9k8vv0ky8wlvclr9qz70wgrrvmm5dh1662j9" %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.1 - (make-linux-libre "4.1.51" - "0l8lpwjpckp44hjyx5qrxqdwwi97gyyc1n6pmk66cr3fpdhnk540" + (make-linux-libre "4.1.52" + "0a2flzf79kz9c1y9zpxdclsfivp38d2sgnwifg4gvyqixdy63sk9" %intel-compatible-systems #:configuration-file kernel-config)) @@ -668,14 +671,14 @@ by Robert Shea and Robert Anton Wilson.") (define-public procps (package (name "procps") - (version "3.3.12") + (version "3.3.15") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/procps-ng/Production/" "procps-ng-" version ".tar.xz")) (sha256 (base32 - "1m57w6jmry84njd5sgk5afycbglql0al80grx027kwqqcfw5mmkf")))) + "0r84kwa5fl0sjdashcn4vh7hgfm7ahdcysig3mcjvpmkzi7p9g8h")))) (build-system gnu-build-system) (arguments '(#:modules ((guix build utils) @@ -684,15 +687,6 @@ by Robert Shea and Robert Anton Wilson.") (srfi srfi-26)) #:phases (modify-phases %standard-phases - (add-before 'check 'disable-strtod-test - (lambda _ - ;; Disable the 'strtod' test, which fails on 32-bit systems. - ;; This is what upstream does: - ;; <https://gitlab.com/procps-ng/procps/commit/100afbc1491be388f1429021ff65d969f4b1e08f>. - (substitute* "Makefile" - (("^(TESTS|check_PROGRAMS) = .*$" all) - (string-append "# " all "\n"))) - #t)) (add-after 'install 'post-install ;; Remove commands and man pages redudant with @@ -716,7 +710,7 @@ slabtop, and skill.") (define-public usbutils (package (name "usbutils") - (version "009") + (version "010") (source (origin (method url-fetch) @@ -724,7 +718,7 @@ slabtop, and skill.") "usbutils-" version ".tar.xz")) (sha256 (base32 - "0q3iavmak2bs9xw486w4xfbjl0hbzii93ssgpr95mxmm9kjz1gwb")))) + "06aag4jfgsfjxk563xsp9ik9nadihmasrr37a1gb0vwqni5kdiv1")))) (build-system gnu-build-system) (inputs `(("libusb" ,libusb) @@ -750,7 +744,8 @@ slabtop, and skill.") name "-" version ".tar.xz")) (sha256 (base32 - "00ilv65dzcgiap435j89xk86shf7rrav3wsik7cahy789qijdcn9")))) + "00ilv65dzcgiap435j89xk86shf7rrav3wsik7cahy789qijdcn9")) + (patches (search-patches "e2fsprogs-glibc-2.27.patch")))) (build-system gnu-build-system) (inputs `(("util-linux" ,util-linux))) (native-inputs `(("pkg-config" ,pkg-config) @@ -925,6 +920,7 @@ Zerofree requires the file system to be unmounted or mounted read-only.") (method url-fetch) (uri (string-append home-page "/files/" version "/strace-" version ".tar.xz")) + (patches (search-patches "strace-kernel-4.16.patch")) (sha256 (base32 "17dkpnsjxmys1ydidm9wcvc3wscsz44fmlxw3dclspn9cj9d1306")))) @@ -971,7 +967,7 @@ intercept and print the system calls executed by the program.") (define-public alsa-lib (package (name "alsa-lib") - (version "1.1.5") + (version "1.1.6") (source (origin (method url-fetch) (uri (string-append @@ -979,8 +975,15 @@ intercept and print the system calls executed by the program.") version ".tar.bz2")) (sha256 (base32 - "1rhacnlj0grvfagjx5qzsnbhw7m7lyccghqs4jsv0dnsqv9qmxpl")))) + "096pwrnhj36yndldvs2pj4r871zhcgisks0is78f1jkjn9sd4b2z")) + (patches (search-patches "alsa-lib-add-environment-variable.patch")))) (build-system gnu-build-system) + (native-search-paths + (list (search-path-specification + (variable "ALSA_PLUGIN_DIR") + (file-type 'regular) + (separator #f) ;single entry + (files '("lib/alsa-lib"))))) (home-page "https://www.alsa-project.org/") (synopsis "The Advanced Linux Sound Architecture libraries") (description @@ -991,14 +994,14 @@ MIDI functionality to the Linux-based operating system.") (define-public alsa-utils (package (name "alsa-utils") - (version "1.1.5") + (version "1.1.6") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.alsa-project.org/pub/utils/" name "-" version ".tar.bz2")) (sha256 (base32 - "1s727md6mb408y2cfwzjkx23abxhampyrjdkgpyygdhxx62x42rj")))) + "0vnkyymgwj9rfdb11nvab30dnfrylmakdfildxl0y8mj836awp0m")))) (build-system gnu-build-system) (arguments ;; XXX: Disable man page creation until we have DocBook. @@ -1038,14 +1041,14 @@ MIDI functionality to the Linux-based operating system.") (define-public alsa-plugins (package (name "alsa-plugins") - (version "1.1.5") + (version "1.1.6") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.alsa-project.org/pub/plugins/" name "-" version ".tar.bz2")) (sha256 (base32 - "073zpgvj4pldmzqq97l40wngvbqnvrkc8yw153mgny9kypwaazbr")))) + "04qcwkisbh0d6lnh0rw1k6n869fbs6zbfq6yvb41rymiwgmk27bg")))) (build-system gnu-build-system) ;; TODO: Split libavcodec and speex if possible. It looks like they can not ;; be split, there are references to both in files. @@ -1936,17 +1939,27 @@ for systems using the Linux kernel. This includes commands such as (define-public inotify-tools (package (name "inotify-tools") - (version "3.13") + (version "3.20.1") (source (origin (method url-fetch) (uri (string-append - "mirror://sourceforge/inotify-tools/inotify-tools/" - version "/inotify-tools-" version ".tar.gz")) + "https://github.com/rvoicilas/inotify-tools/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0icl4bx041axd5dvhg89kilfkysjj86hjakc7bk8n49cxjn4cha6")))) + "1b22c8x4pjnz3abx4dikpbj43zprjw79pdkd4xw111dsxlfwqcx4")))) (build-system gnu-build-system) - (home-page "http://inotify-tools.sourceforge.net/") + (arguments + `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'bootstrap + (lambda _ + (invoke "autoreconf" "-vif")))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool))) + (home-page "https://github.com/rvoicilas/inotify-tools/wiki") (synopsis "Monitor file accesses") (description "The inotify-tools packages provides a C library and command-line tools @@ -2006,11 +2019,11 @@ from the module-init-tools project.") (source (origin (method url-fetch) (uri (string-append "https://github.com/gentoo/eudev/archive/v" - version ".zip")) - (file-name (string-append name "-" version ".zip")) + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0c9l3m3mr1nvrvlcnzh5gjdg9p9k7hh0jk04wh596cbmbass2nhd")) + "0dlkcgy7j4fdcksqrpc373zfybiif1bal3n6lpy1kfc5280j02c7")) (patches (search-patches "eudev-rules-directory.patch")))) (build-system gnu-build-system) (arguments @@ -2487,7 +2500,9 @@ in a digital read-out.") (package (name "perf") (version (package-version linux-libre)) - (source (package-source linux-libre)) + (source (origin + (inherit (package-source linux-libre)) + (patches (search-patches "perf-gcc-ice.patch")))) (build-system gnu-build-system) (arguments '(#:phases @@ -2561,6 +2576,52 @@ similar in functionality to chroot, although pflask provides better isolation thanks to the use of namespaces.") (license license:bsd-2))) +(define-public singularity + (package + (name "singularity") + (version "2.5.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/singularityware/singularity/" + "releases/download/" version + "/singularity-" version ".tar.gz")) + (sha256 + (base32 + "0f28dgf2qcy8ljjfix7p9q36q12j7rxyicfzzi4n0fl8zr8ab88g")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + (list "--disable-suid" + "--localstatedir=/var") + #:phases + (modify-phases %standard-phases + ;; Do not create directories in /var. + (add-after 'unpack 'disable-install-hook + (lambda _ + (substitute* "Makefile.in" + (("\\$\\(MAKE\\) .*install-data-hook") "")) + #t)) + (add-after 'unpack 'patch-reference-to-squashfs-tools + (lambda _ + (substitute* "libexec/cli/build.exec" + (("if ! singularity_which mksquashfs") "if 0") + (("if ! mksquashfs") + (string-append "if ! " (which "mksquashfs")))) + #t))))) + (inputs + `(("libarchive" ,libarchive) + ("python" ,python-wrapper) + ("nettle" ,nettle) + ("zlib" ,zlib) + ("squashfs-tools" ,squashfs-tools))) + (home-page "https://singularity.lbl.gov/") + (synopsis "Container platform") + (description "Singularity is a container platform supporting a number of +container image formats. It can build SquashFS container images or import +existing Docker images. Singularity requires kernel support for container +isolation or root privileges.") + (license license:bsd-3))) + (define-public hdparm (package (name "hdparm") @@ -3256,10 +3317,10 @@ repair and easy administration.") from the btrfs-progs package. It is meant to be used in initrds.") (license (package-license btrfs-progs)))) -(define-public f2fs-tools +(define-public f2fs-tools-1.7 (package (name "f2fs-tools") - (version "1.8.0") + (version "1.7.0") (source (origin (method url-fetch) (uri (string-append @@ -3267,15 +3328,27 @@ from the btrfs-progs package. It is meant to be used in initrds.") "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz")) (sha256 (base32 - "1bir9ladb58ijlcvrjrq1fb1xv5ys50zdjaq0yzliib0apsyrnyl")))) + "1m6bn1ibq0p53m0n97il91xqgjgn2pzlz74lb5bfzassx7159m1k")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-headers + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (out-include (string-append out "/include"))) + (install-file "include/f2fs_fs.h" out-include) + (install-file "mkfs/f2fs_format_utils.h" out-include) + #t)))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool) ("pkg-config" ,pkg-config))) (inputs - `(("libuuid" ,util-linux))) + `(("libuuid" ,util-linux) + ("libselinux" ,libselinux))) (home-page "https://f2fs.wiki.kernel.org/") (synopsis "Userland tools for f2fs") (description @@ -3286,6 +3359,22 @@ disks and SD cards. This package provides the userland utilities.") ;; GPL2/LGPL2.1, everything else is GPL2 only. See 'COPYING'. (license (list license:gpl2 license:lgpl2.1)))) +(define-public f2fs-tools + (package + (inherit f2fs-tools-1.7) + (name "f2fs-tools") + (version "1.8.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://git.kernel.org/cgit/linux/kernel/git/jaegeuk" + "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz")) + (sha256 + (base32 + "1bir9ladb58ijlcvrjrq1fb1xv5ys50zdjaq0yzliib0apsyrnyl")))) + (inputs + `(("libuuid" ,util-linux))))) + (define-public freefall (package (name "freefall") @@ -3404,7 +3493,19 @@ from userspace.") "--with-fuse=external" ;use our own FUSE "--enable-mount-helper" "--enable-posix-acls" - "--enable-xattr-mappings"))) + "--enable-xattr-mappings") + #:phases + (modify-phases %standard-phases + ;; If users install ntfs-3g, they probably want to make it the + ;; default driver as well, so we opt for sensible defaults and link + ;; mount.ntfs to mount.ntfs-3g. (libmount tries to run mount.ntfs to + ;; mount NTFS filesystems.) + (add-after 'install 'install-link + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (sbin (string-append out "/sbin"))) + (symlink "mount.ntfs-3g" + (string-append sbin "/mount.ntfs")))))))) (home-page "https://www.tuxera.com/community/open-source-ntfs-3g/") (synopsis "Read-write access to NTFS file systems") (description @@ -3481,7 +3582,7 @@ The following service daemons are also provided: (define-public rng-tools (package (name "rng-tools") - (version "6.1") + (version "6.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/nhorman/rng-tools/" @@ -3489,7 +3590,7 @@ The following service daemons are also provided: (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "00ywsknjpc9jd9kfmz2syk9l0xkiiwyx5qhl5zvhhc69v6682i31")))) + "0xy4qmfhvkr5z4jr9j55dn5gnajr2jccdp6n0xsxkipjcgag342j")))) (build-system gnu-build-system) (arguments `(;; Avoid using OpenSSL, curl, and libxml2, reducing the closure by 166 MiB. @@ -4124,7 +4225,7 @@ re-use code and to avoid re-inventing the wheel.") (define-public libnftnl (package (name "libnftnl") - (version "1.0.9") + (version "1.1.0") (source (origin (method url-fetch) @@ -4132,7 +4233,7 @@ re-use code and to avoid re-inventing the wheel.") "libnftnl-" version ".tar.bz2")) (sha256 (base32 - "0d9nkdbdck8sg6msysqyv3m9kjr9sjif5amf26dfa0g3mqjdihgy")))) + "0v4gywcjvv2vg4zk632al1zv3ad0lx87nshynv110l8n3fhsq3pc")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm index af576c44f7..9a0d8e957d 100644 --- a/gnu/packages/lxde.scm +++ b/gnu/packages/lxde.scm @@ -48,7 +48,7 @@ (define-public libfm (package (name "libfm") - (version "1.3.0") + (version "1.3.0.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/pcmanfm/" @@ -56,7 +56,7 @@ "%29/LibFM/" name "-" version ".tar.xz")) (sha256 (base32 - "151jyy8ipmp2h829gd9s4s429qafv1zxl7j6zaj1k1gzm9s5rmnb")))) + "0wkwbi1nyvqza3r1dhrq846axiiq0fy0dqgngnagh76fjrwnzl0q")))) (build-system gnu-build-system) (inputs `(("glib" ,glib) ("gtk+" ,gtk+-2))) diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm index 4ead02559f..c84d26d4cb 100644 --- a/gnu/packages/lxqt.scm +++ b/gnu/packages/lxqt.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -138,7 +139,7 @@ for the LXQt desktop environment.") (define-public lxqt-build-tools (package (name "lxqt-build-tools") - (version "0.4.0") + (version "0.5.0") (source (origin (method url-fetch) @@ -147,10 +148,10 @@ for the LXQt desktop environment.") (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "1llbrjbgabxlq933a8cpg03b3mdmvd8983csnd4f7vrcj51nv0xh")))) + "13b5x26p6ycnwzlgg1cgvlc88wjrjmlb3snrrmzh0xgh9h6hhvd6")))) (build-system cmake-build-system) (arguments - `(#:tests? #f)) ;No tests + `(#:tests? #f)) ; no tests (native-inputs `(("pkg-config" ,pkg-config) ("glib" ,glib))) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index fb511b4949..15e4d45749 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -1,9 +1,10 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2016, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2018 Mark Meyer <mark@ofosos.org> ;;; Copyright © 2018 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> @@ -36,6 +37,7 @@ #:use-module (guix build-system r) #:use-module (guix git-download) #:use-module (gnu packages) + #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages boost) #:use-module (gnu packages check) @@ -366,7 +368,7 @@ sample proximities between pairs of cases.") (define-public shogun (package (name "shogun") - (version "4.0.0") + (version "6.1.3") (source (origin (method url-fetch) @@ -376,7 +378,7 @@ sample proximities between pairs of cases.") "/sources/shogun-" version ".tar.bz2")) (sha256 (base32 - "159nlijnb7mnrv9za80wnm1shwvy45hgrqzn51hxy7gw4z6d6fdb")) + "1rn9skm3nw6hr7mr3lgp2gfqhi7ii0lyxck7qmqnf8avq349s5jp")) (modules '((guix build utils) (ice-9 rdelim))) (snippet @@ -408,8 +410,20 @@ sample proximities between pairs of cases.") (and skipping? (not skip-next?))) (display line out)) (loop (read-line in 'concat) skip-next?))))))) - (for-each delete-ifdefs (find-files "src/shogun/kernel/" - "^Kernel\\.(cpp|h)")) + (for-each delete-ifdefs + (append + (find-files "src/shogun/classifier/mkl" + "^MKLClassification\\.cpp") + (find-files "src/shogun/classifier/svm" + "^SVMLightOneClass\\.(cpp|h)") + (find-files "src/shogun/multiclass" + "^ScatterSVM\\.(cpp|h)") + (find-files "src/shogun/kernel/" + "^(Kernel|CombinedKernel|ProductKernel)\\.(cpp|h)") + (find-files "src/shogun/regression/svr" + "^(MKLRegression|SVRLight)\\.(cpp|h)") + (find-files "src/shogun/transfer/domain_adaptation" + "^DomainAdaptationSVM\\.(cpp|h)"))) #t)))) (build-system cmake-build-system) (arguments @@ -423,62 +437,59 @@ sample proximities between pairs of cases.") "applications/easysvm/data" "applications/msplicer/data" "applications/ocr/data" - "examples/documented/data" - "examples/documented/matlab_static" - "examples/documented/octave_static" - "examples/undocumented/data" - "examples/undocumented/matlab_static" - "examples/undocumented/octave_static" - "tests/integration/data" - "tests/integration/matlab_static" - "tests/integration/octave_static" - "tests/integration/python_modular/tests")) + "examples/meta/data" + "examples/undocumented/data")) #t)) (add-after 'unpack 'change-R-target-path (lambda* (#:key outputs #:allow-other-keys) - (substitute* '("src/interfaces/r_modular/CMakeLists.txt" - "src/interfaces/r_static/CMakeLists.txt" - "examples/undocumented/r_modular/CMakeLists.txt") + (substitute* '("src/interfaces/r/CMakeLists.txt" + "examples/meta/r/CMakeLists.txt") (("\\$\\{R_COMPONENT_LIB_PATH\\}") (string-append (assoc-ref outputs "out") "/lib/R/library/"))) #t)) (add-after 'unpack 'fix-octave-modules (lambda* (#:key outputs #:allow-other-keys) - (substitute* '("src/interfaces/octave_modular/CMakeLists.txt" - "src/interfaces/octave_static/CMakeLists.txt") + (substitute* "src/interfaces/octave/CMakeLists.txt" (("^include_directories\\(\\$\\{OCTAVE_INCLUDE_DIRS\\}") - "include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave")) - - ;; change target directory - (substitute* "src/interfaces/octave_modular/CMakeLists.txt" + "include_directories(${OCTAVE_INCLUDE_DIRS} ${OCTAVE_INCLUDE_DIRS}/octave") + ;; change target directory (("\\$\\{OCTAVE_OCT_LOCAL_API_FILE_DIR\\}") (string-append (assoc-ref outputs "out") "/share/octave/packages"))) + (substitute* '("src/interfaces/octave/swig_typemaps.i" + "src/interfaces/octave/sg_print_functions.cpp") + ;; "octave/config.h" and "octave/oct-obj.h" deprecated in Octave. + (("octave/config\\.h") "octave/octave-config.h") + (("octave/oct-obj.h") "octave/ovl.h")) #t)) + (add-after 'unpack 'move-rxcpp + (lambda* (#:key inputs #:allow-other-keys) + (let ((rxcpp-dir "shogun/third-party/rxcpp")) + (mkdir-p rxcpp-dir) + (install-file (assoc-ref inputs "rxcpp") rxcpp-dir) + #t))) (add-before 'build 'set-HOME ;; $HOME needs to be set at some point during the build phase (lambda _ (setenv "HOME" "/tmp") #t))) #:configure-flags (list "-DCMAKE_BUILD_WITH_INSTALL_RPATH=TRUE" "-DUSE_SVMLIGHT=OFF" ;disable proprietary SVMLIGHT - ;;"-DJavaModular=ON" ;requires unpackaged jblas - ;;"-DRubyModular=ON" ;requires unpackaged ruby-narray - ;;"-DPerlModular=ON" ;"FindPerlLibs" does not exist - ;;"-DLuaModular=ON" ;fails because lua doesn't build pkgconfig file - "-DOctaveModular=ON" - "-DOctaveStatic=ON" - "-DPythonModular=ON" - "-DPythonStatic=ON" - "-DRModular=ON" - "-DRStatic=ON" - "-DCmdLineStatic=ON"))) + "-DBUILD_META_EXAMPLES=OFF" ;requires unpackaged ctags + ;;"-DINTERFACE_JAVA=ON" ;requires unpackaged jblas + ;;"-DINTERFACE_RUBY=ON" ;requires unpackaged ruby-narray + ;;"-DINTERFACE_PERL=ON" ;"FindPerlLibs" does not exist + ;;"-DINTERFACE_LUA=ON" ;fails because lua doesn't build pkgconfig file + "-DINTERFACE_OCTAVE=ON" + "-DINTERFACE_PYTHON=ON" + "-DINTERFACE_R=ON"))) (inputs `(("python" ,python) ("numpy" ,python-numpy) ("r-minimal" ,r-minimal) ("octave" ,octave) ("swig" ,swig) + ("eigen" ,eigen) ("hdf5" ,hdf5) ("atlas" ,atlas) ("arpack" ,arpack-ng) @@ -488,7 +499,8 @@ sample proximities between pairs of cases.") ("lzo" ,lzo) ("zlib" ,zlib))) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config) + ("rxcpp" ,rxcpp))) ;; Non-portable SSE instructions are used so building fails on platforms ;; other than x86_64. (supported-systems '("x86_64-linux")) @@ -502,6 +514,47 @@ tools. This enables both rapid prototyping of data pipelines and extensibility in terms of new algorithms.") (license license:gpl3+))) +(define-public rxcpp + (package + (name "rxcpp") + (version "4.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/ReactiveX/RxCpp/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "0y2isr8dy2n1yjr9c5570kpc9lvdlch6jv0jvw000amwn5d3krsh")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-werror + (lambda _ + (substitute* (find-files ".") + (("-Werror") "")) + #t)) + (replace 'check + (lambda _ + (invoke "ctest")))))) + (native-inputs + `(("catch" ,catch-framework))) + (home-page "http://reactivex.io/") + (synopsis "Reactive Extensions for C++") + (description + "The Reactive Extensions for C++ (RxCpp) is a library of algorithms for +values-distributed-in-time. ReactiveX is a library for composing asynchronous +and event-based programs by using observable sequences. + +It extends the observer pattern to support sequences of data and/or events and +adds operators that allow you to compose sequences together declaratively while +abstracting away concerns about things like low-level threading, +synchronization, thread-safety, concurrent data structures, and non-blocking +I/O.") + (license license:asl2.0))) + (define-public r-adaptivesparsity (package (name "r-adaptivesparsity") @@ -539,14 +592,14 @@ geometric models.") (define-public r-kernlab (package (name "r-kernlab") - (version "0.9-25") + (version "0.9-26") (source (origin (method url-fetch) (uri (cran-uri "kernlab" version)) (sha256 (base32 - "0qnaq9x3j2xc6jrmmd98wc6hkzch487s4p3a9lnc00xvahkhgpmr")))) + "0xv0slf3ggw3sswsi34416lb1g3h1pqkrr2h7r1n1kvgii3l0jcm")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/kernlab") (synopsis "Kernel-based machine learning tools") diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 8980b3df74..f6dfb33970 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -8,7 +8,7 @@ ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> -;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 Al McElrath <hello@yrns.org> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> @@ -19,7 +19,7 @@ ;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2016 John Darrington <jmd@gnu.org> -;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Kyle Meyer <kyle@kyleam.com> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> @@ -259,14 +259,14 @@ aliasing facilities to work just as they would on normal mail.") (define-public mutt (package (name "mutt") - (version "1.9.5") + (version "1.10.0") (source (origin (method url-fetch) (uri (string-append "https://bitbucket.org/mutt/mutt/downloads/" "mutt-" version ".tar.gz")) (sha256 (base32 - "0lsp72lm3cw490x7lhzia7h8f591bab2mr7qpscaj22fmrj7wqdz")) + "0nskymwr2cdapxlfv0ysz3bjwhb4kcvl5a3c39237k7r1vwva582")) (patches (search-patches "mutt-store-references.patch")))) (build-system gnu-build-system) (inputs @@ -397,7 +397,7 @@ It adds a large amount of new and improved features to mutt.") (define-public gmime (package (name "gmime") - (version "2.6.23") + (version "3.2.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/gmime/" @@ -405,7 +405,7 @@ It adds a large amount of new and improved features to mutt.") "/gmime-" version ".tar.xz")) (sha256 (base32 - "0slzlzcr3h8jikpz5a5amqd0csqh2m40gdk910ws2hnaf5m6hjbi")))) + "1q6palbpf6lh6bvy9ly26q5apl5k0z0r4mvl6zzqh90rz4rn1v3m")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -429,8 +429,8 @@ It adds a large amount of new and improved features to mutt.") (let* ((base (basename prog-path)) (prog (which base))) (string-append pre - (or prog (error "not found: " base)))))) - #t)))))) + (or prog (error "not found: " base))))))) + #t))))) (home-page "http://spruce.sourceforge.net/gmime/") (synopsis "MIME message parser and creator library") (description @@ -439,6 +439,20 @@ the creation and parsing of messages using the Multipurpose Internet Mail Extension (MIME).") (license (list lgpl2.1+ gpl2+ gpl3+)))) +;; Some packages are not ready for GMime 3 yet. +(define-public gmime-2.6 + (package + (inherit gmime) + (version "2.6.23") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/gmime/" + (version-major+minor version) + "/gmime-" version ".tar.xz")) + (sha256 + (base32 + "0slzlzcr3h8jikpz5a5amqd0csqh2m40gdk910ws2hnaf5m6hjbi")))))) + (define-public bogofilter (package (name "bogofilter") @@ -598,7 +612,7 @@ security functionality including PGP, S/MIME, SSH, and SSL.") `(("xapian" ,xapian) ("guile" ,guile-2.2) ("glib" ,glib) - ("gmime" ,gmime))) + ("gmime" ,gmime-2.6))) (arguments `(#:modules ((guix build gnu-build-system) (guix build utils) @@ -1355,11 +1369,13 @@ hashing schemes plugin for @code{Dovecot}.") `(("perl" ,perl))) (inputs `(("bdb" ,bdb) - ("openssl" ,openssl))) + ("cyrus-sasl" ,cyrus-sasl) + ("openssl" ,openssl) + ("zlib" ,zlib))) (home-page "http://isync.sourceforge.net/") (synopsis "Mailbox synchronization program") (description - "isync/mbsync is command line tool for two-way synchronization of + "isync/mbsync is a command-line tool for two-way synchronization of mailboxes. Currently Maildir and IMAP are supported types.") (license gpl2+))) @@ -1613,9 +1629,8 @@ program's primary purpose.") (file-name (string-append name "-" version "-checkout")))) (arguments `(#:phases (modify-phases %standard-phases - (add-before - 'configure 'autoconf - (lambda _ (zero? (system* "autoreconf" "-vfi"))))))) + (replace 'bootstrap + (lambda _ (invoke "autoreconf" "-vfi")))))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) @@ -2429,7 +2444,7 @@ tools and applications: `(("cyrus-sasl" ,cyrus-sasl) ("enchant" ,enchant) ("gdk-pixbuf" ,gdk-pixbuf) - ("gmime" ,gmime) + ("gmime" ,gmime-2.6) ("gnutls" ,gnutls) ("gpgme" ,gpgme) ("gtk+" ,gtk+) @@ -2483,7 +2498,7 @@ killed threads.") (define-public pan (package (name "pan") - (version "0.144") + (version "0.145") (source (origin (method url-fetch) @@ -2491,7 +2506,7 @@ killed threads.") version "/source/" name "-" version ".tar.bz2")) (sha256 (base32 - "0l07y75z8jxhbmfv28slw81gjncs7i89x7fq44zif7xhq5vy7yli")))) + "1b4wamv33hprghcjk903bpvnd233yxyrm18qnh13alc8h1553nk8")))) (arguments `(#:configure-flags '("--with-gtk3" "--with-gtkspell" "--with-gnutls" "--enable-libnotify" "--enable-manual" @@ -2506,7 +2521,7 @@ killed threads.") "/bin/gpg\""))) #t))))) (inputs - `(("gmime" ,gmime) + `(("gmime" ,gmime-2.6) ("gnupg" ,gnupg) ("gnutls" ,gnutls) ("gtk+" ,gtk+) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index 3455a9c126..58e26d82ff 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -151,7 +151,7 @@ the traditional flat-text whatis databases.") (define-public man-pages (package (name "man-pages") - (version "4.15") + (version "4.16") (source (origin (method url-fetch) (uri @@ -164,7 +164,7 @@ the traditional flat-text whatis databases.") "man-pages-" version ".tar.xz"))) (sha256 (base32 - "01n1rq1kvambax85xamriawbga94mh63s5mgjmjljjgf50m7yw6f")))) + "1d2d6llazg3inwjiz22cn46mbm5ydpbyh9qb55z4j3nm4w6wrzs7")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index a2bf14ea84..fa36431e79 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -25,6 +25,8 @@ ;;; Copyright © 2018 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> ;;; Copyright © 2018 Nadya Voronova <voronovank@gmail.com> +;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com> +;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,6 +55,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system ocaml) + #:use-module (guix build-system python) #:use-module (guix build-system r) #:use-module (guix build-system ruby) #:use-module (gnu packages algebra) @@ -478,7 +481,10 @@ large scale eigenvalue problems.") (inputs `(("mpi" ,openmpi) ,@(package-inputs arpack-ng))) - (arguments `(#:configure-flags '("--enable-mpi"))) + (arguments + (substitute-keyword-arguments (package-arguments arpack-ng) + ((#:configure-flags _ '()) + ''("--enable-mpi")))) (synopsis "Fortran subroutines for solving eigenvalue problems with MPI"))) (define-public lapack @@ -550,7 +556,16 @@ problems in numerical linear algebra.") ("fortran" ,gfortran) ("lapack" ,lapack))) ;for testing only (arguments - `(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES"))) + `(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES") + #:phases (modify-phases %standard-phases + (add-before 'check 'set-test-environment + (lambda _ + ;; By default, running the test suite would fail because + ;; 'ssh' could not be found in $PATH. Define this + ;; variable to placate Open MPI without adding a + ;; dependency on OpenSSH (the agent isn't used anyway.) + (setenv "OMPI_MCA_plm_rsh_agent" (which "cat")) + #t))))) (home-page "http://www.netlib.org/scalapack/") (synopsis "Library for scalable numerical linear algebra") (description @@ -564,7 +579,7 @@ singular value problems.") (define-public gnuplot (package (name "gnuplot") - (version "5.0.6") + (version "5.2.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/gnuplot/gnuplot/" @@ -572,7 +587,7 @@ singular value problems.") version ".tar.gz")) (sha256 (base32 - "0q5lr6nala3ln6f3yp6g17ziymb9r9gx9zylnw1y3hjmwl9lggjv")))) + "18diyy7aib9mn098x07g25c7jij1x7wbfpicz0z8gwxx08px45m4")))) (build-system gnu-build-system) (inputs `(("readline" ,readline) ("cairo" ,cairo) @@ -582,6 +597,9 @@ singular value problems.") (native-inputs `(("pkg-config" ,pkg-config) ("texlive" ,texlive-tiny))) + (arguments `(#:configure-flags (list (string-append + "--with-texdir=" %output + "/texmf-local/tex/latex/gnuplot")))) (home-page "http://www.gnuplot.info") (synopsis "Command-line driven graphing utility") (description "Gnuplot is a portable command-line driven graphing @@ -1319,7 +1337,7 @@ can solve two kinds of problems: (define-public octave (package (name "octave") - (version "4.2.2") + (version "4.4.0") (source (origin (method url-fetch) @@ -1327,7 +1345,7 @@ can solve two kinds of problems: version ".tar.lz")) (sha256 (base32 - "0pkkz1vazsh7ipffb09q0nc2jgx6q27pkkngygjij6jrpcly5zsp")))) + "0nm766737gbkq9wqry54a026k3dg7rb1065kngfpwgjz8b544xbp")))) (build-system gnu-build-system) (inputs `(("lapack" ,lapack) @@ -1677,6 +1695,31 @@ scientific applications modeled by partial differential equations.") ,@(delete "--with-mpi=0" ,cf))))) (synopsis "Library to solve PDEs (with complex scalars and MPI support)"))) + +(define-public python-kiwisolver + (package + (name "python-kiwisolver") + (version "1.0.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "kiwisolver" version)) + (sha256 + (base32 + "0y22ci86znwwwfhbmvbgdfnbi6lv5gv2xkdlxvjw7lml43ayafyf")))) + (build-system python-build-system) + (home-page "https://github.com/nucleic/kiwi") + (synopsis "Fast implementation of the Cassowary constraint solver") + (description + "Kiwi is an efficient C++ implementation of the Cassowary constraint +solving algorithm. Kiwi has been designed from the ground up to be +lightweight and fast. Kiwi ranges from 10x to 500x faster than the original +Cassowary solver with typical use cases gaining a 40x improvement. Memory +savings are consistently > 5x.") + (license license:bsd-3))) + +(define-public python2-kiwisolver + (package-with-python2 python-kiwisolver)) + (define-public slepc (package (name "slepc") @@ -1759,6 +1802,18 @@ arising after the discretization of partial differential equations.") (define-public slepc-openmpi (package (inherit slepc) (name "slepc-openmpi") + (arguments + (substitute-keyword-arguments (package-arguments slepc) + ((#:phases phases '%standard-phases) + `(modify-phases ,phases + (add-before 'check 'set-test-environment + (lambda _ + ;; By default, running the test suite would fail because 'ssh' + ;; could not be found in $PATH. Define this variable to + ;; placate Open MPI without adding a dependency on OpenSSH (the + ;; agent isn't used anyway.) + (setenv "OMPI_MCA_plm_rsh_agent" (which "cat")) + #t)))))) (inputs `(("mpi" ,openmpi) ("arpack" ,arpack-ng-openmpi) @@ -1928,11 +1983,18 @@ sparse system of linear equations A x = b using Guassian elimination.") (substitute-keyword-arguments (package-arguments mumps) ((#:phases phases) `(modify-phases ,phases - (replace - 'check - (lambda _ - ((assoc-ref ,phases 'check) - #:exec-prefix '("mpirun" "-n" "2")))))))) + (add-before 'check 'set-test-environment + (lambda _ + ;; By default, running the test suite would fail because 'ssh' + ;; could not be found in $PATH. Define this variable to + ;; placate Open MPI without adding a dependency on OpenSSH (the + ;; agent isn't used anyway.) + (setenv "OMPI_MCA_plm_rsh_agent" (which "cat")) + #t)) + (replace 'check + (lambda _ + ((assoc-ref ,phases 'check) + #:exec-prefix '("mpirun" "-n" "2")))))))) (synopsis "Multifrontal sparse direct solver (with MPI)"))) (define-public mumps-metis-openmpi @@ -2083,35 +2145,34 @@ also provides threshold-based ILU factorization preconditioners.") (define-public superlu-dist (package (name "superlu-dist") - (version "3.3") + (version "5.3.0") (source (origin (method url-fetch) (uri (string-append "http://crd-legacy.lbl.gov/~xiaoye/SuperLU/" "superlu_dist_" version ".tar.gz")) (sha256 - (base32 "1hnak09yxxp026blq8zhrl7685yip16svwngh1wysqxf8z48vzfj")) - (modules '((guix build utils))) + (base32 "0ja5ihqivkda1wd58y4lmzvmwssm9g91f70c5q0fzwhng6580h6y")) + (modules '((guix build utils))) (snippet ;; Replace the non-free implementation of MC64 with a stub '(begin (use-modules (ice-9 regex) (ice-9 rdelim)) - (call-with-output-file "SRC/mc64ad.c" + (call-with-output-file "SRC/mc64ad_dist.c" (lambda (port) (display " #include <stdio.h> #include <stdlib.h> -void mc64id_(int *a) { +void mc64id_dist(int *a) { fprintf (stderr, \"SuperLU_DIST: non-free MC64 not available. Aborting.\\n\"); abort (); } -void mc64ad_ (int *a, int *b, int *c, int *d, int *e, double *f, int *g, +void mc64ad_dist (int *a, int *b, int *c, int *d, int *e, double *f, int *g, int *h, int *i, int *j, int *k, double *l, int *m, int *n) { fprintf (stderr, \"SuperLU_DIST: non-free MC64 not available. Aborting.\\n\"); abort (); }\n" port))) - (delete-file "SRC/mc64ad.f.bak") (substitute* "SRC/util.c" ;adjust default algorithm (("RowPerm[[:blank:]]*=[[:blank:]]*LargeDiag") "RowPerm = NOROWPERM")) @@ -2177,6 +2238,11 @@ CDEFS = -DAdd_" #t)) (replace 'check (lambda _ + ;; By default, running the test suite would fail because 'ssh' + ;; could not be found in $PATH. Define this variable to placate + ;; Open MPI without adding a dependency on OpenSSH (the agent + ;; isn't used anyway.) + (setenv "OMPI_MCA_plm_rsh_agent" (which "cat")) (with-directory-excursion "EXAMPLE" (and (zero? (system* "mpirun" "-n" "2" @@ -2271,6 +2337,12 @@ YACC = bison -pscotchyy -y -b y (add-after 'build 'build-esmumps (lambda _ + ;; By default, running the test suite would fail because 'ssh' + ;; could not be found in $PATH. Define this variable to placate + ;; Open MPI without adding a dependency on OpenSSH (the agent + ;; isn't used anyway.) + (setenv "OMPI_MCA_plm_rsh_agent" (which "cat")) + (zero? (system* "make" (format #f "-j~a" (parallel-job-count)) "esmumps")))) @@ -2450,7 +2522,16 @@ schemes.") " -lopenblas") ,(string-append "LAPACK_LIBS=-L" (assoc-ref %build-inputs "lapack") - " -llapack")))) + " -llapack")) + #:phases (modify-phases %standard-phases + (add-before 'check 'set-test-environment + (lambda _ + ;; By default, running the test suite would fail because + ;; 'ssh' could not be found in $PATH. Define this + ;; variable to placate Open MPI without adding a + ;; dependency on OpenSSH (the agent isn't used anyway.) + (setenv "OMPI_MCA_plm_rsh_agent" (which "cat")) + #t))))) (home-page "http://www.p4est.org") (synopsis "Adaptive mesh refinement on forests of octrees") (description @@ -3435,6 +3516,7 @@ set.") (native-inputs `(("doc++" ,doc++) ("netpbm" ,netpbm) + ("perl" ,perl) ;needed to run 'ppmquant' during tests ("texlive" ,texlive) ;full package required for fonts ("ghostscript" ,ghostscript))) (inputs @@ -3512,7 +3594,17 @@ problems.") (substitute-keyword-arguments (package-arguments hypre) ((#:configure-flags flags) ``("--with-MPI" - ,@(delete "--without-MPI" ,flags))))) + ,@(delete "--without-MPI" ,flags))) + ((#:phases phases) + `(modify-phases ,phases + (add-before 'check 'set-test-environment + (lambda _ + ;; By default, running the test suite would fail because 'ssh' + ;; could not be found in $PATH. Define this variable to + ;; placate Open MPI without adding a dependency on OpenSSH (the + ;; agent isn't used anyway.) + (setenv "OMPI_MCA_plm_rsh_agent" (which "cat")) + #t)))))) (synopsis "Parallel solvers and preconditioners for linear equations") (description "HYPRE is a software library of high performance preconditioners and @@ -3869,14 +3961,14 @@ are noisy or are discontinuous at the solution.") (define-public r-desolve (package (name "r-desolve") - (version "1.20") + (version "1.21") (source (origin (method url-fetch) (uri (cran-uri "deSolve" version)) (sha256 (base32 - "18nx3maww979a8p8ly4hv63y65mnjx8vbj2fpipd6rhcbf1lbsan")))) + "0qqc4mknw1jblzcmph1dg3k1p6w42yal0k1xjh8pqk7yb3a75hs5")))) (properties `((upstream-name . "deSolve"))) (build-system r-build-system) (native-inputs diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index d2ce394a03..a8a19854de 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2017,2018 Jan Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; @@ -56,11 +56,24 @@ extensive examples, including parsers for the Javascript and C99 languages.") (home-page "https://savannah.nongnu.org/projects/nyacc") (license (list gpl3+ lgpl3+)))) +(define-public nyacc-for-mes + (package + (inherit nyacc) + (version "0.80.42") + (source (origin + (method url-fetch) + (uri (string-append "https://gitlab.com/janneke/nyacc" + "/-/archive/v" version + "/nyacc-" version ".tar.gz")) + (sha256 + (base32 + "0c8c8kxir0h2d4nxr131xbkfs7c80haipmkp2g6677sh14wn0b3y")))))) + (define-public mes (let ((triplet "i686-unknown-linux-gnu")) (package (name "mes") - (version "0.13") + (version "0.14") (source (origin (method url-fetch) (uri (string-append "https://gitlab.com/janneke/mes" @@ -68,12 +81,12 @@ extensive examples, including parsers for the Javascript and C99 languages.") "/mes-" version ".tar.gz")) (sha256 (base32 - "0db4f32rak839ff3n7ywkkng9672457pd2pvvgvcsyndqmmdsqw0")))) + "1i23jk61iibjza2s3lka56ry4ma424g2fyk8pjd5bd1dyjd0yrzf")))) (build-system gnu-build-system) (supported-systems '("i686-linux" "x86_64-linux")) (propagated-inputs `(("mescc-tools" ,mescc-tools) - ("nyacc" ,nyacc))) + ("nyacc" ,nyacc-for-mes))) (native-inputs `(("guile" ,guile-2.2) ,@(if (not (string-prefix? "i686-linux" (or (%current-target-system) @@ -85,7 +98,9 @@ extensive examples, including parsers for the Javascript and C99 languages.") '()) ("perl" ,perl))) ;build-aux/gitlog-to-changelog (arguments - `(#:phases + `(#:make-flags (list + (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:phases (modify-phases %standard-phases (add-before 'install 'generate-changelog (lambda _ @@ -107,7 +122,7 @@ Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in (define-public mescc-tools (package (name "mescc-tools") - (version "0.3") + (version "0.4") (source (origin (method url-fetch) (uri (string-append @@ -117,13 +132,18 @@ Guile-] Scheme interpreter prototype in C and a Nyacc-based C compiler in (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "04lvyyp7isamgddrnfpi92lgqdflzdzx5kc2x8fxmgsjisy0dgr4")))) + "1iwc8xqwzdaqckb4jkkisljrgn8ii4bl7dzk1l2kpv98hsyq9vi1")))) (build-system gnu-build-system) + (supported-systems '("i686-linux" "x86_64-linux")) (arguments `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) #:test-target "test" #:phases (modify-phases %standard-phases - (delete 'configure)))) + (delete 'configure) + (add-after 'install 'install-2 + (lambda _ + (let ((out (assoc-ref %outputs "out"))) + (copy-file "bin/blood-elf" (string-append out "/bin/blood-elf")))))))) (synopsis "Tools for the full source bootstrapping process") (description "Mescc-tools is a collection of tools for use in a full source diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index c31e3604c8..e098a8b37e 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018 Leo Famulari <leo@famulari.name> +;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -131,7 +132,7 @@ keys, no previous conversation is compromised.") (define-public libsignal-protocol-c (package (name "libsignal-protocol-c") - (version "2.3.1") + (version "2.3.2") (source (origin (method url-fetch) (uri (string-append "https://github.com/WhisperSystems/" @@ -140,7 +141,7 @@ keys, no previous conversation is compromised.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1klz9jvbnmfc3qy2x6qcswzw14a7kyzs51dlg18yllvir1f1kz0s")))) + "0380hl6fw3ppf265fg897pyrpqygpx4m9j8ifq118bim8lq6z0pk")))) (arguments `(;; Required for proper linking and for tests to run. #:configure-flags '("-DBUILD_SHARED_LIBS=on" "-DBUILD_TESTING=1"))) @@ -181,6 +182,9 @@ end-to-end encryption.") (add-after 'install 'install-etc (lambda* (#:key (make-flags '()) #:allow-other-keys) (zero? (apply system* "make" "install-etc" make-flags)))) + (add-after 'install-etc 'install-lib + (lambda* (#:key (make-flags '()) #:allow-other-keys) + (zero? (apply system* "make" "install-dev" make-flags)))) (replace 'configure ;; bitlbee's configure script does not tolerate many of the ;; variable settings that Guix would pass to it. @@ -199,6 +203,49 @@ identi.ca and status.net).") (home-page "http://www.bitlbee.org/") (license (list license:gpl2+ license:bsd-2)))) +(define-public bitlbee-discord + (package + (name "bitlbee-discord") + (version "0.4.1") + (source (origin + (method url-fetch) + (uri + (string-append "https://github.com/sm00th/bitlbee-discord/" + "archive/" version ".tar.gz")) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1bwqxlg6fwj3749y7w69n9jwsdzf5nl9xqiszbpv9k8x1422i1y1")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autogen + (lambda _ + (let ((sh (which "sh"))) + (substitute* "autogen.sh" (("/bin/sh") sh)) + (setenv "CONFIG_SHELL" sh) + (zero? (system* "./autogen.sh"))))) + (replace 'configure + (lambda* (#:key inputs outputs #:allow-other-keys) + (invoke "./configure" + (string-append "--with-plugindir=" + (assoc-ref outputs "out") + "/lib/bitlbee/"))))))) + (inputs `(("glib" ,glib))) + (native-inputs `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("texinfo" ,texinfo) + ("libtool" ,libtool) + ("bitlbee" ,bitlbee) ;needs bitlbee headers + ("bash" ,bash))) + (synopsis "Discord plugin for Bitlbee") + (description "Bitlbee-discord is a plugin for Bitlbee witch provides +access to servers running the Discord protocol.") + (home-page "https://github.com/sm00th/bitlbee-discord/") + (license license:gpl2+))) + (define-public hexchat (package (name "hexchat") @@ -440,32 +487,48 @@ compromised.") (define-public znc (package (name "znc") - (version "1.6.6") + (version "1.7.0") (source (origin (method url-fetch) (uri (string-append "http://znc.in/releases/archive/znc-" version ".tar.gz")) (sha256 (base32 - "09cmsnxvi7jg9a0dicf60fxnxdff4aprw7h8vjqlj5ywf6y43f3z")))) + "0vxra50418bsjfdpf8vl70fijv8syvasjqdxfyjliff6k91k2zn0")))) + ;; TODO: autotools support has been deprecated, and new features like i18n + ;; are only supported when building with cmake. (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases (add-after 'unpack 'unpack-googletest (lambda* (#:key inputs #:allow-other-keys) - (zero? (system* "tar" "xf" - (assoc-ref inputs "googletest-source")))))) + (mkdir-p "googletest") + (copy-recursively (assoc-ref inputs "googletest-source") + "googletest") + #t))) #:configure-flags '("--enable-python" "--enable-perl" "--enable-cyrus" - ,(string-append "--with-gtest=" - "googletest-release-" - (package-version googletest) - "/googletest")) + "--with-gmock=googletest/googlemock" + "--with-gtest=googletest/googletest") #:test-target "test")) (native-inputs - `(("googletest-source" ,(package-source googletest)) + `(("googletest-source" + ;; ZNC 1.7 needs a newer, unreleased googletest (a release is planned + ;; <https://github.com/google/googletest/issues/1583>, so don't update + ;; the public GOOGLETEST to an unstable version). The commit is taken + ;; from ‘third_party/googletest’ in the ZNC git repository. + ,(let ((commit "9737e63c69e94ac5777caa0bc77c77d5206467f3")) + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/google/googletest") + (commit commit))) + (file-name (git-file-name "googletest-for-znc" commit)) + (sha256 + (base32 + "0ya36n8d62zbxk6p22yffgx43mqhx2fz41gqqwbpdshjryf3wvxj"))))) ("pkg-config" ,pkg-config) ("perl" ,perl) ("python" ,python))) @@ -476,23 +539,23 @@ compromised.") ("cyrus-sasl" ,cyrus-sasl))) (home-page "https://znc.in") (synopsis "IRC network bouncer") - (description "ZNC is an IRC network bouncer or BNC. It can detach the -client from the actual IRC server, and also from selected channels. Multiple -clients from different locations can connect to a single ZNC account + (description "ZNC is an @dfn{IRC network bouncer} or @dfn{BNC}. It can +detach the client from the actual IRC server, and also from selected channels. +Multiple clients from different locations can connect to a single ZNC account simultaneously and therefore appear under the same nickname on IRC.") (license license:asl2.0))) (define-public python-nbxmpp (package (name "python-nbxmpp") - (version "0.6.4") + (version "0.6.6") (source (origin (method url-fetch) (uri (pypi-uri "nbxmpp" version)) (sha256 (base32 - "12rfmp613alh3mi8f94008sx7x1a8c1izs3icrvw7bf4gnf2pi31")))) + "0bp60syqc3qp2i28phvadxlpwizjbr6bxw4m363p9yn5fl687qnh")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; no tests @@ -510,7 +573,7 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") (define-public gajim (package (name "gajim") - (version "1.0.1") + (version "1.0.3") (source (origin (method url-fetch) (uri (string-append "https://gajim.org/downloads/" @@ -518,7 +581,7 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") "/gajim-" version ".tar.bz2")) (sha256 (base32 - "16ynws10vhx6rhjjjmzw6iyb3hc19823xhx4gsb14hrc7l8vzd1c")))) + "0ds4rqwfrpj89a489w6yih8gx5zi7qa4ffgld950fk7s0qxvcfnb")))) (build-system python-build-system) (arguments `(#:phases @@ -564,7 +627,15 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") (with-directory-excursion icons (symlink adwaita "Adwaita") (copy-recursively hicolor "hicolor"))) - #t))))) + #t)) + (add-after 'install-icons 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (wrap-program (string-append (assoc-ref outputs "out") + "/bin/gajim") + ;; For GtkFileChooserDialog. + `("GSETTINGS_SCHEMA_DIR" = + (,(string-append (assoc-ref inputs "gtk+") + "/share/glib-2.0/schemas"))))))))) (native-inputs `(("intltool" ,intltool) ("xorg-server" ,xorg-server))) @@ -665,14 +736,14 @@ a graphical desktop environment like GNOME.") (define-public prosody (package (name "prosody") - (version "0.10.0") + (version "0.10.2") (source (origin (method url-fetch) (uri (string-append "https://prosody.im/downloads/source/" "prosody-" version ".tar.gz")) (sha256 (base32 - "1644jy5dk46vahmh6nna36s79k8k668sbi3qamjb4q3c4m3y853l")))) + "13knr7izscw0zx648b9582dx11aap4cq9bzfiqh5ykd7wwsz1dbm")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no "check" target diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index a9d317eb7b..3c06fb0e64 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -88,7 +88,7 @@ interfacing MPD in the C, C++ & Objective C languages.") (define-public mpd (package (name "mpd") - (version "0.20.19") + (version "0.20.20") (source (origin (method url-fetch) (uri @@ -97,7 +97,7 @@ interfacing MPD in the C, C++ & Objective C languages.") "/mpd-" version ".tar.xz")) (sha256 (base32 - "1hsng4mnaz1jr2s3fy3q78vf2f6102lwphjdls7qln0pj8dyzk81")))) + "111m4z7zaz60xfxvz5xkxs1al4vzb8g2wwp7kmj65pvww335ir59")))) (build-system gnu-build-system) (arguments `(#:phases @@ -119,9 +119,10 @@ interfacing MPD in the C, C++ & Objective C languages.") ("flac" ,flac) ("glib" ,glib) ("icu4c" ,icu4c) + ;; The LAME decoder comes from FFmpeg, but is added here so that + ;; configure picks up the LAME encoder. ("lame" ,lame) ("libid3tag" ,libid3tag) - ("libmad" ,libmad) ("libmpdclient" ,libmpdclient) ("libsamplerate" ,libsamplerate) ("libsndfile" ,libsndfile) @@ -162,7 +163,7 @@ protocol.") (define-public mpd-mpc (package (name "mpd-mpc") - (version "0.29") + (version "0.30") (source (origin (method url-fetch) (uri @@ -171,7 +172,7 @@ protocol.") "/mpc-" version ".tar.xz")) (sha256 (base32 - "1lxr0z5i5yx4lcvy9nyxj6q32qlz473j3zm6va68zd1cj3ndmw82")))) + "1kkzhrypkp0v6xv4d6db415pd0h6jqki29kfpsnfkvrhhh55pz35")))) (build-system meson-build-system) (inputs `(("libmpdclient" ,libmpdclient))) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 5dfb26ae75..f34b08e4ca 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -153,7 +153,7 @@ bind processes, and much more.") (define-public openmpi (package (name "openmpi") - (version "1.10.7") + (version "3.0.1") (source (origin (method url-fetch) @@ -162,16 +162,20 @@ bind processes, and much more.") "/downloads/openmpi-" version ".tar.bz2")) (sha256 (base32 - "142s1vny9gllkq336yafxayjgcirj2jv0ddabj879jgya7hyr2d0")))) + "0pbqrm5faf57nasy1s81wqivl7zvxmv8lzjh8hvb0f3qxv8m0d36")))) (build-system gnu-build-system) (inputs `(("hwloc" ,hwloc "lib") ("gfortran" ,gfortran) ("libfabric" ,libfabric) - ,@(match (%current-system) - ((member (package-supported-systems psm)) - `(("psm" ,psm))) - (_ `())) + ,@(if (and (not (%current-target-system)) + (member (%current-system) (package-supported-systems psm))) + `(("psm" ,psm)) + '()) + ,@(if (and (not (%current-target-system)) + (member (%current-system) (package-supported-systems psm2))) + `(("psm2" ,psm2)) + '()) ("rdma-core" ,rdma-core) ("valgrind" ,valgrind))) (native-inputs @@ -205,8 +209,8 @@ bind processes, and much more.") (("_ABSOLUTE") "")) ;; Avoid valgrind (which pulls in gdb etc.). (substitute* - '("./ompi/mca/io/romio/src/io_romio_component.c") - (("MCA_io_romio_COMPLETE_CONFIGURE_FLAGS") + '("./ompi/mca/io/romio314/src/io_romio314_component.c") + (("MCA_io_romio314_COMPLETE_CONFIGURE_FLAGS") "\"[elided to reduce closure]\"")) #t)) (add-before 'build 'scrub-timestamps ;reproducibility diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 6f17fa799e..55dd3a5c42 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -187,20 +187,20 @@ score, keyboard, guitar, drum and controller views.") ;; We don't use the latest release because it depends on Qt4. Instead we ;; download the sources from the tip of the "qt5" branch. (define-public clementine - (let ((commit "0a59257dc334b8df60a4d7d90b04f1766747efcf") - (revision "1")) + (let ((commit "4619a4c1ab3b17b13d4b2327ad477912917eaf36") + (revision "2")) (package (name "clementine") - (version (string-append "1.3.1-" revision "." (string-take commit 7))) + (version (git-version "1.3.1" revision commit)) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/clementine-player/Clementine.git") (commit commit))) - (file-name (string-append name "-" version "-checkout")) + (file-name (git-file-name name version)) (sha256 (base32 - "0cdcj7di7j9jgzc1ihjna1a5df64f9hnmx7b9kh8rlg76hc0l0hi")) + "1hximk3q0p8nw8is5w7215xgkb7k4flnfyr0pdz9svfwvcm05w1i")) (modules '((guix build utils))) (snippet '(begin @@ -264,7 +264,6 @@ score, keyboard, guitar, drum and controller views.") ("gst-plugins-base" ,gst-plugins-base) ("libcdio" ,libcdio) ("libmygpo-qt" ,libmygpo-qt) - ("libechonest" ,libechonest) ;; TODO: Package libgpod. ("libmtp" ,libmtp) ("libxml2" ,libxml2) @@ -1185,6 +1184,19 @@ add_library( rapidjson INTERFACE IMPORTED )")) (("boost::rational<int> duration\\(4, pos.getDurationType\\(\\)\\);") "boost::rational<int> duration(4, static_cast<int>(pos.getDurationType()));")) #t)) + ;; Fix build with Qt 5.11. + (add-after 'unpack 'add-missing-headers + (lambda _ + (substitute* (find-files "source/dialogs/" "\\.h$") + (("#include <QDialog>" m) + (string-append m "\n#include <QButtonGroup>"))) + (substitute* "source/widgets/mixer/mixeritem.h" + (("#include <QWidget>" m) + (string-append m "\n#include <QStyle>"))) + (substitute* "source/widgets/playback/playbackwidget.h" + (("#include <QWidget>" m) + (string-append m "\n#include <QButtonGroup>\n#include <QAction>"))) + #t)) (add-before 'configure 'remove-third-party-libs (lambda* (#:key inputs #:allow-other-keys) ;; Link with required static libraries, because we're not @@ -1975,7 +1987,7 @@ capabilities, custom envelopes, effects, etc.") (define-public yoshimi (package (name "yoshimi") - (version "1.5.7") + (version "1.5.8") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/yoshimi/" @@ -1983,7 +1995,7 @@ capabilities, custom envelopes, effects, etc.") "/yoshimi-" version ".tar.bz2")) (sha256 (base32 - "1w916mmi6hh547a7icrgx6qr2kwxlxwlm6ampql427rshcz9r61k")))) + "0gwsr5srzy28hwqhfzrc8pswysmyra8kbww3bxfx8bq4mdjifdj6")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; there are no tests @@ -2177,16 +2189,28 @@ from the command line.") (define-public qtractor (package (name "qtractor") - (version "0.9.0") + (version "0.9.1") (source (origin (method url-fetch) (uri (string-append "http://downloads.sourceforge.net/qtractor/" "qtractor-" version ".tar.gz")) (sha256 (base32 - "03892177k3jn2bsi366dhq28rcdsc1p9v5qqc0k6hg3cnrkh23na")))) + "07csbqr7q4m1j0pqg89kn7jdw0snd5lwna5rha0986s4plq4z1qb")))) (build-system gnu-build-system) - (arguments `(#:tests? #f)) ; no "check" target + (arguments + `(#:tests? #f ; no "check" target + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-build-with-qt-5.11 + (lambda _ + (substitute* "src/qtractorMeter.h" + (("#include <QFrame>" m) + (string-append "#include <QAction>\n" m))) + (substitute* "src/qtractorTrackButton.h" + (("#include <QPushButton>" m) + (string-append "#include <QAction>\n" m))) + #t))))) (inputs `(("qt" ,qtbase) ("qtx11extras" ,qtx11extras) @@ -2580,9 +2604,12 @@ Songs can be searched by artist, name or even by a part of the song text.") `(#:phases (modify-phases %standard-phases (add-after 'unpack 'set-HOME - (lambda _ (setenv "HOME" (string-append (getcwd) "/tmp")))) + (lambda _ + (setenv "HOME" (string-append (getcwd) "/tmp")) + #t)) (replace 'check - (lambda _ (zero? (system* "nosetests" "-v"))))))) + (lambda _ + (invoke "nosetests" "-v")))))) (native-inputs `(("python-beautifulsoup4" ,python-beautifulsoup4) ("python-flask" ,python-flask) @@ -3814,33 +3841,6 @@ OSC connections.") the electronic or dubstep genre.") (license license:gpl3+))) -(define-public libechonest - (package - (name "libechonest") - (version "2.3.1") - (source (origin - (method git-fetch) - (uri (git-reference - (url "git://anongit.kde.org/libechonest.git") - (commit version))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "0xbavf9f355dl1d3qv59x4ryypqrdanh9xdvw2d0q66l008crdkq")))) - (build-system cmake-build-system) - (arguments - '(#:tests? #f ; Tests require Internet access - #:configure-flags '("-DBUILD_WITH_QT4=OFF"))) - (inputs - `(("qtbase" ,qtbase) - ("qjson" ,qjson))) - (home-page "https://projects.kde.org/projects/playground/libs/libechonest") - (synopsis "C++/Qt classes to interface with The Echo Nest API") - (description "@code{libechonest} is a collection of C++/Qt classes -designed to make a developer's life easy when trying to use the APIs provided -by The Echo Nest.") - (license license:gpl2+))) - (define-public libmygpo-qt (package (name "libmygpo-qt") @@ -3851,12 +3851,19 @@ by The Echo Nest.") "libmygpo-qt/libmygpo-qt." version ".tar.gz")) (sha256 (base32 - "1kg18qrq2rsswgzhl65r3mlyx7kpqg4wwnbp4yiv6svvmadmlxl2")))) + "1kg18qrq2rsswgzhl65r3mlyx7kpqg4wwnbp4yiv6svvmadmlxl2")) + (patches (search-patches "libmygpo-qt-fix-qt-5.11.patch" + "libmygpo-qt-missing-qt5-modules.patch")))) (build-system cmake-build-system) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("qt" ,qtbase))) + (arguments + `(#:configure-flags '("-DMYGPO_BUILD_TESTS=ON") + ;; TODO: Enable tests when https://github.com/gpodder/gpodder/issues/446 + ;; is fixed. + #:tests? #f)) (home-page "http://wiki.gpodder.org/wiki/Libmygpo-qt") (synopsis "Qt/C++ library wrapping the gpodder web service") (description "@code{libmygpo-qt} is a Qt/C++ library wrapping the diff --git a/gnu/packages/nano.scm b/gnu/packages/nano.scm index 6bb8c3f3ad..a7adfcd5d5 100644 --- a/gnu/packages/nano.scm +++ b/gnu/packages/nano.scm @@ -30,7 +30,7 @@ (define-public nano (package (name "nano") - (version "2.9.5") + (version "2.9.8") (source (origin (method url-fetch) @@ -38,7 +38,7 @@ version ".tar.xz")) (sha256 (base32 - "06af9dzhgab53drpyq430fv5kf5sdba9mfw0lf3glhkznlf1i3bv")))) + "122lm0z97wk3mgnbn8m4d769d4j9rxyc9z7s89xd4gsdp8qsrpn2")))) (build-system gnu-build-system) (inputs `(("gettext" ,gettext-minimal) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 5cba694b6e..3f23f178ba 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -19,6 +19,9 @@ ;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2018 Adam Van Ymeren <adam@vany.ca> +;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com> +;;; Copyright © 2018 Tonton <tonton@riseup.net> +;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -56,6 +59,7 @@ #:use-module (gnu packages check) #:use-module (gnu packages code) #:use-module (gnu packages compression) + #:use-module (gnu packages crypto) #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages dejagnu) @@ -66,6 +70,7 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) #:use-module (gnu packages gtk) + #:use-module (gnu packages image) #:use-module (gnu packages libidn) #:use-module (gnu packages linux) #:use-module (gnu packages lua) @@ -84,6 +89,7 @@ #:use-module (gnu packages tls) #:use-module (gnu packages valgrind) #:use-module (gnu packages wm) + #:use-module (gnu packages wxwidgets) #:use-module (gnu packages xml) #:use-module (ice-9 match)) @@ -497,7 +503,7 @@ and up to 1 Mbit/s downstream.") (define-public whois (package (name "whois") - (version "5.3.0") + (version "5.3.1") (source (origin (method url-fetch) @@ -505,7 +511,7 @@ and up to 1 Mbit/s downstream.") name "_" version ".tar.xz")) (sha256 (base32 - "08sp2gzv09rar1a5mnfmbc24pqvhpqqmz2hnmv436n7v7d09qy2d")))) + "0gl98l26dcgmlap0pxllbv4b9n2fr5b7zml3ijf8sf3a60qsskpg")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no test suite @@ -519,8 +525,7 @@ and up to 1 Mbit/s downstream.") (setenv "HAVE_ICONV" "1") #t))))) (inputs - ;; TODO: Switch to libidn2 when >= 2.0.3 is ungrafted in master. - `(("libidn" ,libidn))) + `(("libidn2" ,libidn2))) (native-inputs `(("gettext" ,gettext-minimal) ("perl" ,perl) @@ -541,7 +546,7 @@ of the same name.") (define-public wireshark (package (name "wireshark") - (version "2.4.5") + (version "2.6.1") (source (origin (method url-fetch) @@ -549,7 +554,7 @@ of the same name.") version ".tar.xz")) (sha256 (base32 - "1mvgy67rvnwj2kbc43s4il81jvz5ai0bx2j3j2js7x50zclyrcmk")))) + "126dvd6myjbxjr69dy9vzzdda2lmjy1wwwc6gcs5djb46jy5nvmb")))) (build-system gnu-build-system) (inputs `(("c-ares" ,c-ares) ("glib" ,glib) @@ -560,12 +565,14 @@ of the same name.") ("libpcap" ,libpcap) ("libssh" ,libssh) ("libxml2" ,libxml2) + ("lz4" ,lz4) ("lua" ,lua-5.2) ;Lua 5.3 unsupported ("krb5" ,mit-krb5) - ("openssl" ,openssl) ("portaudio" ,portaudio) ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) ("sbc" ,sbc) + ("snappy" ,snappy) ("zlib" ,zlib))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -578,12 +585,28 @@ of the same name.") (string-append "--with-libcap=" (assoc-ref %build-inputs "libcap")) (string-append "--with-libssh=" (assoc-ref %build-inputs "libssh")) (string-append "--with-lua=" (assoc-ref %build-inputs "lua")) + (string-append "--with-lz4=" (assoc-ref %build-inputs "lz4")) (string-append "--with-pcap=" (assoc-ref %build-inputs "libpcap")) (string-append "--with-portaudio=" (assoc-ref %build-inputs "portaudio")) (string-append "--with-sbc=" (assoc-ref %build-inputs "sbc")) - (string-append "--with-ssl=" (assoc-ref %build-inputs "openssl")) - (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib"))))) + (string-append "--with-snappy=" (assoc-ref %build-inputs "snappy")) + (string-append "--with-zlib=" (assoc-ref %build-inputs "zlib"))) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-source + (lambda _ + ;; Fix build against Qt 5.11. + (substitute* "ui/qt/packet_format_group_box.cpp" + (("#include <QStyle>") "#include <QStyle> +#include <QStyleOption>")) + (substitute* "ui/qt/time_shift_dialog.cpp" + (("#include <ui/time_shift.h>") "#include <ui/time_shift.h> +#include <QStyleOption>")) + (substitute* "ui/qt/wireless_frame.cpp" + (("#include <QProcess>") "#include <QProcess> +#include <QAbstractItemView>")) + #t))))) (synopsis "Network traffic analyzer") (description "Wireshark is a network protocol analyzer, or @dfn{packet sniffer}, that lets you capture and interactively browse the contents of @@ -1326,7 +1349,7 @@ networks.") (define-public speedtest-cli (package (name "speedtest-cli") - (version "1.0.7") + (version "2.0.0") (source (origin (method url-fetch) @@ -1335,7 +1358,7 @@ networks.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1fbq4kpx8sj50g74hwpixisfjjgxq6zyn40d3m28dxhn7mxbnlrq")))) + "16kcpba7nmszz2h0fq7qvv6src20syck2wlknaacg69kk88aybbk")))) (build-system python-build-system) (home-page "https://github.com/sivel/speedtest-cli") (synopsis "Internet bandwidth tester") @@ -1702,3 +1725,135 @@ file for more details.") ;; src/libstrongswan/plugins/blowfish/blowfish_crypter.c ;; src/libstrongswan/plugins/des/des_crypter.c license:bsd-4)))) + +(define-public amule + (package + (name "amule") + (version "2.3.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/amule-project/amule/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1wvcj0n9xz03xz5c2xwp6dwfp7sqjhhwbki3m0lwikskpn9lkzk2")) + ;; Patch for adopting crypto++ >= 6.0. + (patches (search-patches "amule-crypto-6.patch")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'autogen + (lambda _ + (invoke "sh" "autogen.sh") + #t))) + #:configure-flags + '("--disable-rpath" + "--enable-wxcas" + "--enable-cas" + "--enable-alc" + "--enable-alcc" + "--enable-xas" + "--enable-amulecmd" + "--enable-geoip" + "--enable-ccache" + "--enable-nls" + "--enable-optimize" + "--enable-amule-gui" + "--enable-amule-daemon" + "--enable-webserver" + "--with-denoise-level=0"))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext-minimal" ,gettext-minimal) + ("perl" ,perl))) + (inputs + `(("zlib" ,zlib) + ("crypto++" ,crypto++) + ("libpng" ,libpng) + ("wxwidgets-gtk2", wxwidgets-gtk2))) + (home-page "http://amule.org/") + (synopsis "Peer-to-peer client for the eD2K and Kademlia networks") + (description + "aMule is an eMule-like client for the eD2k and Kademlia peer-to-peer +file sharing networks. It includes a graphical user interface (GUI), a daemon +allowing you to run a client with no graphical interface, and a Web GUI for +remote access. The @command{amulecmd} command allows you to control aMule +remotely.") + (license license:gpl2+))) + +(define-public zyre + (package + (name "zyre") + (version "2.0.0") + (source (origin + (method url-fetch) + (uri + (string-append "https://github.com/zeromq/zyre/releases/download/v" + version "/" name "-" version ".tar.gz")) + (sha256 + (base32 + "0qz2730bng1gs9xbqxhkw88qbsmszgmmrl2g9k6xrg6r3bqvsdc7")))) + (build-system gnu-build-system) + (inputs `(("zeromq" ,zeromq) + ("czmq" ,czmq) + ("libsodium" ,libsodium))) + (synopsis "Framework for proximity-based peer-to-peer applications") + (description "Zyre provides reliable group messaging over local area +networks using zeromq. It has these key characteristics: + +@itemize +@item Zyre needs no administration or configuration. +@item Peers may join and leave the network at any time. +@item Peers talk to each other without any central brokers or servers. +@item Peers can talk directly to each other. +@item Peers can join groups, and then talk to groups. +@item Zyre is reliable, and loses no messages even when the network is heavily loaded. +@item Zyre is fast and has low latency, requiring no consensus protocols. +@item Zyre is designed for WiFi networks, yet also works well on Ethernet networks. +@end itemize") + (home-page "https://github.com/zeromq/zyre") + (license license:mpl2.0))) + +(define-public can-utils + (package + (name "can-utils") + (version "2018.02.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/linux-can/can-utils.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0r0zkm67bdcmbfypjr7z041d4zp0xzb379dyl8cvhmflh12fd2jb")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; No tests exist. + #:make-flags (list "CC=gcc" + (string-append "PREFIX=" + (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (delete 'bootstrap) + (delete 'configure)))) + (home-page "https://github.com/linux-can/can-utils") + (synopsis "CAN utilities") + (description "This package provides CAN utilities in the following areas: + +@itemize +@item Basic tools to display, record, generate and replay CAN traffic +@item CAN access via IP sockets +@item CAN in-kernel gateway configuration +@item CAN bus measurement and testing +@item ISO-TP (ISO15765-2:2016 - this means messages with a body larger than +eight bytes) tools +@item Log file converters +@item Serial Line Discipline configuration for slcan driver +@end itemize") + ;; Either BSD-3 or GPL-2 can be used. + (license (list license:bsd-3 license:gpl2)))) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 0f5fa0f09a..864038fe99 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -456,14 +456,15 @@ written in Objective Caml.") (define-public coq (package (name "coq") - (version "8.7.0") + (version "8.8.0") (source (origin (method url-fetch) - (uri (string-append "https://coq.inria.fr/distrib/V" version - "/files/" name "-" version ".tar.gz")) + (uri (string-append "https://github.com/coq/coq/archive/V" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "15wjngjd5pyfqdl5yw92rvdxvy15xcjlpx0rqlkzvcsis1z20xpk")))) + "0g96k2x6lbddlmkmdaczvcpb2gwqi1ydbq9bv4gf9q38kv9w3xya")))) (native-search-paths (list (search-path-specification (variable "COQPATH") @@ -3874,15 +3875,15 @@ cross-platform SDL C library.") (define-public coq-flocq (package (name "coq-flocq") - (version "2.6.0") + (version "2.6.1") (source (origin (method url-fetch) ;; Use the ‘Latest version’ link for a stable URI across releases. (uri (string-append "https://gforge.inria.fr/frs/download.php/" - "latestfile/2228/flocq-" version ".tar.gz")) + "file/37454/flocq-" version ".tar.gz")) (sha256 (base32 - "13fv150dcwnjrk00d7zj2c5x9jwmxgrq0ay440gkr730l8mvk3l3")))) + "06msp1fwpqv6p98a3i1nnkj7ch9rcq3rm916yxq8dxf51lkghrin")))) (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) @@ -3924,14 +3925,14 @@ inside Coq.") (define-public coq-gappa (package (name "coq-gappa") - (version "1.3.1") + (version "1.3.2") (source (origin (method url-fetch) - (uri (string-append "https://gforge.inria.fr/frs/download.php/file/36351/gappa-" + (uri (string-append "https://gforge.inria.fr/frs/download.php/file/36397/gappa-" version ".tar.gz")) (sha256 (base32 - "0924jr6f15fx22qfsvim5vc0qxqg30ivg9zxj34lf6slbgdl3j39")))) + "19kg2zldaqs4smy7bv9hp650sqg46xbx1ss7jnyagpxdscwn9apd")))) (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) @@ -3976,14 +3977,14 @@ assistant.") (define-public coq-mathcomp (package (name "coq-mathcomp") - (version "1.6.2") + (version "1.7.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/math-comp/math-comp/archive/mathcomp-" version ".tar.gz")) (sha256 (base32 - "0lg5ncr7p4y8qqq6pfw6brqc6a9xzlfa0drprwfdn0rnyaq5nca6")))) + "05zgyi4wmasi1rcyn5jq42w0bi9713q9m8dl1fdgl66nmacixh39")))) (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) @@ -4039,6 +4040,12 @@ part of the distribution.") "/lib/coq/user-contrib/Coquelicot")) #:phases (modify-phases %standard-phases + (add-before 'configure 'fix-coq8.8 + (lambda _ + ; appcontext has been removed from coq 8.8 + (substitute* "theories/AutoDerive.v" + (("appcontext") "context")) + #t)) (add-before 'configure 'fix-remake (lambda _ (substitute* "remake.cpp" @@ -4068,7 +4075,7 @@ theorems between the two libraries.") (define-public coq-bignums (package (name "coq-bignums") - (version "8.7.0") + (version "8.8.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/coq/bignums/archive/V" @@ -4076,7 +4083,7 @@ theorems between the two libraries.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "03iw9jiwq9jx45gsvp315y3lxr8m9ksppmcjvxs5c23qnky6zqjx")))) + "08m1cmq4hkaf4sb0vy978c11rgzvds71cphyadmr2iirpr5815r0")))) (build-system gnu-build-system) (native-inputs `(("ocaml" ,ocaml) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 3e9fd375c9..64e05c4b0e 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -680,14 +680,14 @@ and better support for mocking results.") (define-public python-oslo.utils (package (name "python-oslo.utils") - (version "3.36.0") + (version "3.36.2") (source (origin (method url-fetch) (uri (pypi-uri "oslo.utils" version)) (sha256 (base32 - "0zvm31qdvqywxppqdjwbxxsqaga3dg4slpvbbmqqm9ig4n78mhay")))) + "1ipjcgg9z697wmibhcbg5lqpk5gafakdx4qkff3w255zr0mvw04r")))) (build-system python-build-system) (propagated-inputs `(("python-debtcollector" ,python-debtcollector) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index ea90e78547..e8e17eeeef 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -295,6 +295,15 @@ the Nix package manager.") (inherit guix) (properties `((hidden? . #t))) (name "guix-register") + + ;; Use a minimum set of dependencies. + (native-inputs + (fold alist-delete (package-native-inputs guix) + '("po4a" "graphviz" "help2man"))) + (propagated-inputs + `(("gnutls" ,gnutls) + ("guile-git" ,guile-git))) + (arguments (substitute-keyword-arguments (package-arguments guix) ((#:tests? #f #f) @@ -535,13 +544,13 @@ transactions from C or Python.") (define-public diffoscope (package (name "diffoscope") - (version "93") + (version "95") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "0g90nf7817jk03hzk36l3hymky4xqs50iynfld3r0in7hffly5nj")))) + "0aksxxivxli6l3fylxgl771hw0h7l8x35l76cmj0d12zgx54w0a1")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 1dfafac4e7..716b433443 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -47,7 +47,7 @@ (define-public parallel (package (name "parallel") - (version "20180422") + (version "20180522") (source (origin (method url-fetch) @@ -55,7 +55,7 @@ version ".tar.bz2")) (sha256 (base32 - "0xsfpbxwgd4197gra981iv0nmjfk58c0d88dxx6dh6yrqz523klx")))) + "1khcz9pm7rjnq4gw8pn30k1d40x337a204dxj4y4qijpx8m7w0gb")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 923122903e..497963af63 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Steve Sprang <scs@stevesprang.com> -;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015 Aljosha Papsch <misc@rpapsch.de> ;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org> ;;; Copyright © 2016 Jessica Tallon <tsyesika@tsyesika.se> @@ -18,6 +18,7 @@ ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net> ;;; Copyright © 2018 Thomas Sigurdsen <tonton@riseup.net> +;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -62,6 +63,7 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages python-web) #:use-module (gnu packages suckless) #:use-module (gnu packages tls) #:use-module (gnu packages qt) @@ -94,7 +96,7 @@ human.") (define-public keepassxc (package (name "keepassxc") - (version "2.3.1") + (version "2.3.3") (source (origin (method url-fetch) @@ -103,12 +105,22 @@ human.") version "-src.tar.xz")) (sha256 (base32 - "1gdrbpzwbs56anc3k5vklvcackcn214pc8gm5xh5zcymsi8q4zff")))) + "1m8alsp39vk21zgcvy5zswk0dc1xmajbwnccg7n0lndsi7pqbzyg")))) (build-system cmake-build-system) (arguments '(#:configure-flags '("-DWITH_XC_NETWORKING=YES" "-DWITH_XC_BROWSER=YES" - "-DWITH_XC_SSHAGENT=YES"))) + "-DWITH_XC_SSHAGENT=YES") + #:phases + (modify-phases %standard-phases + ;; should be fixed in 2.3.3+, see: + ;; https://github.com/keepassxreboot/keepassxc/pull/1964 + (add-after 'unpack 'patch-sources + (lambda _ + (substitute* "src/gui/entry/EditEntryWidget.cpp" + (("#include <QColorDialog>") "#include <QColorDialog> +#include <QButtonGroup>")) + #t))))) (inputs `(("argon2" ,argon2) ("curl" ,curl) ; XC_NETWORKING @@ -659,3 +671,30 @@ Upstream development seems to have stopped. It is therefore recommended to use a different password manager.") (home-page "https://als.regnet.cz/fpm2/") (license license:gpl2+))) + +(define-public pass-rotate + (package + (name "pass-rotate") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/SirCmpwn/pass-rotate/archive/" + version ".tar.gz")) + (sha256 + (base32 + "1svm5nj8bczv2dg8lh2zqqhbsrljqsw9680r03qwgl9vlci90210")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system python-build-system) + (inputs + `(("python-beautifulsoup4" ,python-beautifulsoup4) + ("python-docopt" ,python-docopt) + ("python-html5lib" ,python-html5lib) + ("python-requests" ,python-requests))) + (home-page "https://github.com/SirCmpwn/pass-rotate") + (synopsis "Rotate password on online services") + (description "pass-rotate is a command line utility and python library for +rotating passwords on various web services. It makes it easier to rotate your +passwords, one at a time or in bulk, when security events or routine upkeep of +your online accounts makes it necessary.") + (license license:expat))) diff --git a/gnu/packages/patches/adb-add-libraries.patch b/gnu/packages/patches/adb-add-libraries.patch new file mode 100644 index 0000000000..b014832f62 --- /dev/null +++ b/gnu/packages/patches/adb-add-libraries.patch @@ -0,0 +1,30 @@ +--- a/adb/Android.mk 2018-04-25 23:23:29.527198350 +0200 ++++ b/adb/Android.mk 2018-04-25 23:24:25.558632573 +0200 +@@ -226,7 +226,7 @@ + LOCAL_SRC_FILES := test_track_devices.cpp + LOCAL_SANITIZE := $(adb_host_sanitize) + LOCAL_SHARED_LIBRARIES := libbase +-LOCAL_STATIC_LIBRARIES := libadb libcrypto_static libcutils ++LOCAL_STATIC_LIBRARIES := libadb libbase libcrypto_static libcutils + LOCAL_LDLIBS += -lrt -ldl -lpthread + include $(BUILD_HOST_EXECUTABLE) + endif +@@ -278,6 +278,7 @@ + LOCAL_SANITIZE := $(adb_host_sanitize) + LOCAL_STATIC_LIBRARIES := \ + libadb \ ++ libcutils \ + libbase \ + libcrypto_static \ + libdiagnose_usb \ +--- a/adb/sysdeps_test.cpp 2018-05-09 23:58:46.583163684 +0200 ++++ b/adb/sysdeps_test.cpp 2018-05-09 23:56:41.356544648 +0200 +@@ -17,6 +17,8 @@ + #include <gtest/gtest.h> + #include <unistd.h> + #include <atomic> ++#include <climits> ++#include <mutex> + + #include "adb_io.h" + #include "sysdeps.h" diff --git a/gnu/packages/patches/alsa-lib-add-environment-variable.patch b/gnu/packages/patches/alsa-lib-add-environment-variable.patch new file mode 100644 index 0000000000..a468a7fc4f --- /dev/null +++ b/gnu/packages/patches/alsa-lib-add-environment-variable.patch @@ -0,0 +1,110 @@ +From 1822fb453128a1b5de93b4c590cd272d6488a077 Mon Sep 17 00:00:00 2001 +From: Julien Lepiller <julien@lepiller.eu> +Date: Fri, 25 May 2018 19:26:58 +0200 +Subject: [PATCH] Add support for a ALSA_PLUGIN_DIR environment variable. + +If it is not set, default to previous behavior. +--- + src/control/control.c | 6 +++++- + src/dlmisc.c | 9 +++++++-- + src/pcm/pcm.c | 9 +++++++-- + src/pcm/pcm_rate.c | 13 +++++++++---- + 4 files changed, 28 insertions(+), 9 deletions(-) + +diff --git a/src/control/control.c b/src/control/control.c +index 11f7815..9dba7dd 100644 +--- a/src/control/control.c ++++ b/src/control/control.c +@@ -1331,7 +1331,11 @@ static int snd_ctl_open_conf(snd_ctl_t **ctlp, const char *name, + build_in++; + } + if (*build_in == NULL) { +- buf1 = malloc(strlen(str) + sizeof(ALSA_PLUGIN_DIR) + 32); ++ char* plugdir = ALSA_PLUGIN_DIR; ++ char* envplugdir = getenv("ALSA_PLUGIN_DIR"); ++ if(envplugdir != NULL) ++ plugdir = envplugdir; ++ buf1 = malloc(strlen(str) + strlen(plugdir) + 32); + if (buf1 == NULL) { + err = -ENOMEM; + goto _err; +diff --git a/src/dlmisc.c b/src/dlmisc.c +index 3757d33..92aa864 100644 +--- a/src/dlmisc.c ++++ b/src/dlmisc.c +@@ -82,9 +82,14 @@ void *snd_dlopen(const char *name, int mode, char *errbuf, size_t errbuflen) + char *filename = NULL; + + if (name && name[0] != '/') { +- filename = alloca(sizeof(ALSA_PLUGIN_DIR) + 1 + strlen(name) + 1); ++ char* plugdir = ALSA_PLUGIN_DIR; ++ char* envplugdir = getenv("ALSA_PLUGIN_DIR"); ++ if(envplugdir != NULL) ++ plugdir = envplugdir; ++ ++ filename = malloc(strlen(plugdir) + 1 + strlen(name) + 1); + if (filename) { +- strcpy(filename, ALSA_PLUGIN_DIR); ++ strcpy(filename, plugdir); + strcat(filename, "/"); + strcat(filename, name); + handle = dlopen(filename, mode); +diff --git a/src/pcm/pcm.c b/src/pcm/pcm.c +index 11aec80..590e8b6 100644 +--- a/src/pcm/pcm.c ++++ b/src/pcm/pcm.c +@@ -2496,13 +2496,18 @@ static int snd_pcm_open_conf(snd_pcm_t **pcmp, const char *name, + build_in++; + } + if (*build_in == NULL) { +- buf1 = malloc(strlen(str) + sizeof(ALSA_PLUGIN_DIR) + 32); ++ char* plugdir = ALSA_PLUGIN_DIR; ++ char* envplugdir = getenv("ALSA_PLUGIN_DIR"); ++ if(envplugdir != NULL) ++ plugdir = envplugdir; ++ buf1 = malloc(strlen(str) + strlen(plugdir) + 32); ++ + if (buf1 == NULL) { + err = -ENOMEM; + goto _err; + } + lib = buf1; +- sprintf(buf1, "%s/libasound_module_pcm_%s.so", ALSA_PLUGIN_DIR, str); ++ sprintf(buf1, "%s/libasound_module_pcm_%s.so", plugdir, str); + } + } + #ifndef PIC +diff --git a/src/pcm/pcm_rate.c b/src/pcm/pcm_rate.c +index 4e0c7ca..8694a38 100644 +--- a/src/pcm/pcm_rate.c ++++ b/src/pcm/pcm_rate.c +@@ -1260,7 +1260,8 @@ static const char *const default_rate_plugins[] = { + + static int rate_open_func(snd_pcm_rate_t *rate, const char *type, const snd_config_t *converter_conf, int verbose) + { +- char open_name[64], open_conf_name[64], lib_name[128], *lib = NULL; ++ char open_name[64], open_conf_name[64], *lib = NULL; ++ char *buf1; + snd_pcm_rate_open_func_t open_func; + snd_pcm_rate_open_conf_func_t open_conf_func; + int err; +@@ -1268,9 +1269,13 @@ static int rate_open_func(snd_pcm_rate_t *rate, const char *type, const snd_conf + snprintf(open_name, sizeof(open_name), "_snd_pcm_rate_%s_open", type); + snprintf(open_conf_name, sizeof(open_conf_name), "_snd_pcm_rate_%s_open_conf", type); + if (!is_builtin_plugin(type)) { +- snprintf(lib_name, sizeof(lib_name), +- "%s/libasound_module_rate_%s.so", ALSA_PLUGIN_DIR, type); +- lib = lib_name; ++ char* plugdir = ALSA_PLUGIN_DIR; ++ char* envplugdir = getenv("ALSA_PLUGIN_DIR"); ++ if(envplugdir != NULL) ++ plugdir = envplugdir; ++ buf1 = malloc(strlen(type) + strlen(plugdir) + 32); ++ sprintf(buf1, "%s/libasound_module_rate_%s.so", plugdir, type); ++ lib = buf1; + } + + rate->rate_min = SND_PCM_PLUGIN_RATE_MIN; +-- +2.17.0 + diff --git a/gnu/packages/patches/amule-crypto-6.patch b/gnu/packages/patches/amule-crypto-6.patch new file mode 100644 index 0000000000..21a86ab0fa --- /dev/null +++ b/gnu/packages/patches/amule-crypto-6.patch @@ -0,0 +1,45 @@ +From d1d1368c7909ffd8423730afaa811ce7b6a3a8aa Mon Sep 17 00:00:00 2001 +From: Tommy Jerry Mairo <tommy.mairo@gmail.com> +Date: Sun, 4 Feb 2018 12:42:00 -0800 +Subject: [PATCH 1/2] Bugfix: API mismatch with crypto++ 6.0.0 + +--- + src/ClientCreditsList.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/ClientCreditsList.cpp b/src/ClientCreditsList.cpp +index 3bea9fe2d..a7ae1e34c 100644 +--- a/src/ClientCreditsList.cpp ++++ b/src/ClientCreditsList.cpp +@@ -312,7 +312,7 @@ void CClientCreditsList::InitalizeCrypting() + // calculate and store public key + CryptoPP::RSASSA_PKCS1v15_SHA_Verifier pubkey(*static_cast<CryptoPP::RSASSA_PKCS1v15_SHA_Signer *>(m_pSignkey)); + CryptoPP::ArraySink asink(m_abyMyPublicKey, 80); +- pubkey.DEREncode(asink); ++ pubkey.AccessMaterial().Save(asink); + m_nMyPublicKeyLen = asink.TotalPutLength(); + asink.MessageEnd(); + } catch (const CryptoPP::Exception& e) { + +From 88ba0ac952b78382445f2fff73c6792c0474dc62 Mon Sep 17 00:00:00 2001 +From: Tommy Jerry Mairo <tommy.mairo@gmail.com> +Date: Wed, 21 Mar 2018 11:56:28 -0700 +Subject: [PATCH 2/2] Update: Change AccessMaterial to GetMaterial + +--- + src/ClientCreditsList.cpp | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/ClientCreditsList.cpp b/src/ClientCreditsList.cpp +index a7ae1e34c..69e881fd8 100644 +--- a/src/ClientCreditsList.cpp ++++ b/src/ClientCreditsList.cpp +@@ -312,7 +312,7 @@ void CClientCreditsList::InitalizeCrypting() + // calculate and store public key + CryptoPP::RSASSA_PKCS1v15_SHA_Verifier pubkey(*static_cast<CryptoPP::RSASSA_PKCS1v15_SHA_Signer *>(m_pSignkey)); + CryptoPP::ArraySink asink(m_abyMyPublicKey, 80); +- pubkey.AccessMaterial().Save(asink); ++ pubkey.GetMaterial().Save(asink); + m_nMyPublicKeyLen = asink.TotalPutLength(); + asink.MessageEnd(); + } catch (const CryptoPP::Exception& e) { diff --git a/gnu/packages/patches/e2fsprogs-glibc-2.27.patch b/gnu/packages/patches/e2fsprogs-glibc-2.27.patch new file mode 100644 index 0000000000..f0bc7130c0 --- /dev/null +++ b/gnu/packages/patches/e2fsprogs-glibc-2.27.patch @@ -0,0 +1,56 @@ +Copied from: +https://github.com/openwrt/openwrt/blob/58a95f0f8ff768b43d68eed2b6a786e0f40f723b/tools/e2fsprogs/patches/005-misc-rename-copy_file_range-to-copy_file_chunk.patch + +From 01551bdba16ab16512a01affe02ade32c41ede8a Mon Sep 17 00:00:00 2001 +From: Palmer Dabbelt <palmer@dabbelt.com> +Date: Fri, 29 Dec 2017 10:19:51 -0800 +Subject: [PATCH] misc: rename copy_file_range to copy_file_chunk + +As of 2.27, glibc will have a copy_file_range library call to wrap the +new copy_file_range system call. This conflicts with the function in +misc/create_inode.c, which this patch renames _copy_file_range. + +Signed-off-by: Palmer Dabbelt <palmer@dabbelt.com> +Signed-off-by: Theodore Ts'o <tytso@mit.edu> +--- + misc/create_inode.c | 8 ++++---- + 1 file changed, 4 insertions(+), 4 deletions(-) + +--- a/misc/create_inode.c ++++ b/misc/create_inode.c +@@ -392,7 +392,7 @@ static ssize_t my_pread(int fd, void *bu + } + #endif /* !defined HAVE_PREAD64 && !defined HAVE_PREAD */ + +-static errcode_t copy_file_range(ext2_filsys fs, int fd, ext2_file_t e2_file, ++static errcode_t copy_file_chunk(ext2_filsys fs, int fd, ext2_file_t e2_file, + off_t start, off_t end, char *buf, + char *zerobuf) + { +@@ -466,7 +466,7 @@ static errcode_t try_lseek_copy(ext2_fil + + data_blk = data & ~(fs->blocksize - 1); + hole_blk = (hole + (fs->blocksize - 1)) & ~(fs->blocksize - 1); +- err = copy_file_range(fs, fd, e2_file, data_blk, hole_blk, buf, ++ err = copy_file_chunk(fs, fd, e2_file, data_blk, hole_blk, buf, + zerobuf); + if (err) + return err; +@@ -516,7 +516,7 @@ static errcode_t try_fiemap_copy(ext2_fi + } + for (i = 0, ext = ext_buf; i < fiemap_buf->fm_mapped_extents; + i++, ext++) { +- err = copy_file_range(fs, fd, e2_file, ext->fe_logical, ++ err = copy_file_chunk(fs, fd, e2_file, ext->fe_logical, + ext->fe_logical + ext->fe_length, + buf, zerobuf); + if (err) +@@ -569,7 +569,7 @@ static errcode_t copy_file(ext2_filsys f + goto out; + #endif + +- err = copy_file_range(fs, fd, e2_file, 0, statbuf->st_size, buf, ++ err = copy_file_chunk(fs, fd, e2_file, 0, statbuf->st_size, buf, + zerobuf); + out: + ext2fs_free_mem(&zerobuf); diff --git a/gnu/packages/patches/emacs-fix-scheme-indent-function.patch b/gnu/packages/patches/emacs-fix-scheme-indent-function.patch index c5a426802c..4b7904ea3b 100644 --- a/gnu/packages/patches/emacs-fix-scheme-indent-function.patch +++ b/gnu/packages/patches/emacs-fix-scheme-indent-function.patch @@ -14,16 +14,16 @@ The fix is made by Mark H Weaver <mhw@netris.org>: --- a/lisp/progmodes/scheme.el +++ b/lisp/progmodes/scheme.el -@@ -482,6 +482,12 @@ - (> (length function) 3) - (string-match "\\`def" function))) - (lisp-indent-defform state indent-point)) +@@ -494,6 +494,12 @@ indentation." + (> (length function) 3) + (string-match "\\`def" function))) + (lisp-indent-defform state indent-point)) + ((and (null method) + (> (length function) 1) + ;; The '#' in '#:' seems to get lost, not sure why + (string-match "\\`:" function)) + (let ((lisp-body-indent 1)) + (lisp-indent-defform state indent-point))) - ((integerp method) - (lisp-indent-specform method state - indent-point normal-indent)) + ((integerp method) + (lisp-indent-specform method state + indent-point normal-indent)) diff --git a/gnu/packages/patches/enlightenment-fix-setuid-path.patch b/gnu/packages/patches/enlightenment-fix-setuid-path.patch new file mode 100644 index 0000000000..90e16d3e67 --- /dev/null +++ b/gnu/packages/patches/enlightenment-fix-setuid-path.patch @@ -0,0 +1,168 @@ +diff --git a/src/bin/e_auth.c b/src/bin/e_auth.c +index 00b0e5d84..98ab4518f 100644 +--- a/src/bin/e_auth.c ++++ b/src/bin/e_auth.c +@@ -9,8 +9,7 @@ e_auth_begin(char *passwd) + + if (strlen(passwd) == 0) goto out; + +- snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_ckpasswd", +- e_prefix_lib_get()); ++ snprintf(buf, sizeof(buf), "/run/setuid-programs/enlightenment_ckpasswd"); + + exe = ecore_exe_pipe_run(buf, ECORE_EXE_PIPE_WRITE, NULL); + if (ecore_exe_send(exe, passwd, strlen(passwd)) != EINA_TRUE) goto out; +diff --git a/src/bin/e_backlight.c b/src/bin/e_backlight.c +index 2bced6766..208e583ba 100644 +--- a/src/bin/e_backlight.c ++++ b/src/bin/e_backlight.c +@@ -521,8 +521,8 @@ _bl_sys_level_set(double val) + } + // fprintf(stderr, "SET: %1.3f\n", val); + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_backlight %i %s", +- e_prefix_lib_get(), (int)(val * 1000.0), bl_sysval); ++ "/run/setuid-programs/enlightenment_backlight %i %s", ++ (int)(val * 1000.0), bl_sysval); + bl_sys_set_exe = ecore_exe_run(buf, NULL); + } + #endif // HAVE_EEZE || __FreeBSD_kernel__ +diff --git a/src/bin/e_fm/e_fm_main_eeze.c b/src/bin/e_fm/e_fm_main_eeze.c +index b7d9e3eba..d8a9eb82c 100644 +--- a/src/bin/e_fm/e_fm_main_eeze.c ++++ b/src/bin/e_fm/e_fm_main_eeze.c +@@ -318,7 +318,7 @@ _e_fm_main_eeze_volume_eject(E_Volume *v) + { + char buf[PATH_MAX]; + +- snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_sys", eina_prefix_lib_get(pfx)); ++ snprintf(buf, sizeof(buf), "/run/setuid-programs/enlightenment_sys"); + eeze_disk_mount_wrapper_set(v->disk, buf); + } + v->guard = ecore_timer_loop_add(E_FM_EJECT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_eject_timeout, v); +@@ -512,7 +512,7 @@ _e_fm_main_eeze_volume_unmount(E_Volume *v) + { + char buf[PATH_MAX]; + +- snprintf(buf, sizeof(buf), "%s/enlightenment/utils/enlightenment_sys", eina_prefix_lib_get(pfx)); ++ snprintf(buf, sizeof(buf), "/run/setuid-programs/enlightenment_sys"); + eeze_disk_mount_wrapper_set(v->disk, buf); + } + v->guard = ecore_timer_loop_add(E_FM_UNMOUNT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_unmount_timeout, v); +@@ -548,7 +548,7 @@ _e_fm_main_eeze_volume_mount(E_Volume *v) + { + char buf2[PATH_MAX]; + +- snprintf(buf2, sizeof(buf2), "%s/enlightenment/utils/enlightenment_sys", eina_prefix_lib_get(pfx)); ++ snprintf(buf2, sizeof(buf2), "/run/setuid-programs/enlightenment_sys"); + eeze_disk_mount_wrapper_set(v->disk, buf2); + } + v->guard = ecore_timer_loop_add(E_FM_MOUNT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_mount_timeout, v); +diff --git a/src/bin/e_sys.c b/src/bin/e_sys.c +index 6781a9b5a..8cd140f1b 100644 +--- a/src/bin/e_sys.c ++++ b/src/bin/e_sys.c +@@ -653,20 +653,16 @@ _e_sys_cb_timer(void *data EINA_UNUSED) + + e_init_status_set(_("Checking System Permissions")); + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys -t halt", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys -t halt"); + _e_sys_halt_check_exe = ecore_exe_run(buf, NULL); + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys -t reboot", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys -t reboot"); + _e_sys_reboot_check_exe = ecore_exe_run(buf, NULL); + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys -t suspend", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys -t suspend"); + _e_sys_suspend_check_exe = ecore_exe_run(buf, NULL); + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys -t hibernate", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys -t hibernate"); + _e_sys_hibernate_check_exe = ecore_exe_run(buf, NULL); + return ECORE_CALLBACK_CANCEL; + } +@@ -1079,8 +1075,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) + /* shutdown -h now */ + if (e_util_immortal_check()) return 0; + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys halt", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys halt"); + if (_e_sys_exe) + { + if ((ecore_time_get() - _e_sys_begin_time) > 2.0) +@@ -1114,8 +1109,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) + /* shutdown -r now */ + if (e_util_immortal_check()) return 0; + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys reboot", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys reboot"); + if (_e_sys_exe) + { + if ((ecore_time_get() - _e_sys_begin_time) > 2.0) +@@ -1148,8 +1142,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) + case E_SYS_SUSPEND: + /* /etc/acpi/sleep.sh force */ + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys suspend", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys suspend"); + if (_e_sys_exe) + { + if ((ecore_time_get() - _e_sys_begin_time) > 2.0) +@@ -1208,8 +1201,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw) + case E_SYS_HIBERNATE: + /* /etc/acpi/hibernate.sh force */ + snprintf(buf, sizeof(buf), +- "%s/enlightenment/utils/enlightenment_sys hibernate", +- e_prefix_lib_get()); ++ "/run/setuid-programs/enlightenment_sys hibernate"); + if (_e_sys_exe) + { + if ((ecore_time_get() - _e_sys_begin_time) > 2.0) +diff --git a/src/modules/bluez4/e_mod_main.c b/src/modules/bluez4/e_mod_main.c +index 4b5148634..47d34b07f 100644 +--- a/src/modules/bluez4/e_mod_main.c ++++ b/src/modules/bluez4/e_mod_main.c +@@ -49,8 +49,8 @@ _ebluez_l2ping_poller(void *data EINA_UNUSED) + + if (tmp) + { +- eina_strbuf_append_printf(buf, "%s/enlightenment/utils/enlightenment_sys l2ping %s", +- e_prefix_lib_get(), tmp); ++ eina_strbuf_append_printf(buf, "/run/setuid-programs/enlightenment_sys l2ping %s", ++ tmp); + autolock_exe = ecore_exe_run(eina_strbuf_string_get(buf), NULL); + } + +@@ -692,8 +692,7 @@ e_modapi_init(E_Module *m) + autolock_desklock = ecore_event_handler_add(E_EVENT_DESKLOCK, _ebluez_desklock, NULL); + + buf = eina_strbuf_new(); +- eina_strbuf_append_printf(buf, "%s/enlightenment/utils/enlightenment_sys -t l2ping", +- e_prefix_lib_get()); ++ eina_strbuf_append_printf(buf, "/run/setuid-programs/enlightenment_sys -t l2ping"); + autolock_exe = ecore_exe_run(eina_strbuf_string_get(buf), NULL); + eina_strbuf_free(buf); + +diff --git a/src/modules/cpufreq/e_mod_main.c b/src/modules/cpufreq/e_mod_main.c +index f4ba259b6..ae228bae3 100644 +--- a/src/modules/cpufreq/e_mod_main.c ++++ b/src/modules/cpufreq/e_mod_main.c +@@ -1450,8 +1450,7 @@ e_modapi_init(E_Module *m) + } + E_CONFIG_LIMIT(cpufreq_config->poll_interval, 1, 1024); + +- snprintf(buf, sizeof(buf), "%s/%s/freqset", +- e_module_dir_get(m), MODULE_ARCH); ++ snprintf(buf, sizeof(buf), "/run/setuid-programs/freqset"); + cpufreq_config->set_exe_path = strdup(buf); + + if (stat(buf, &st) < 0) diff --git a/gnu/packages/patches/fifo-map-fix-flags-for-gcc.patch b/gnu/packages/patches/fifo-map-fix-flags-for-gcc.patch new file mode 100644 index 0000000000..59b7105220 --- /dev/null +++ b/gnu/packages/patches/fifo-map-fix-flags-for-gcc.patch @@ -0,0 +1,39 @@ +From 0871db30bd73d112a434f54572d34cca28de61c5 Mon Sep 17 00:00:00 2001 +From: fis <ybbs.daans@hotmail.com> +Date: Sat, 26 May 2018 22:58:37 +0800 +Subject: [PATCH 2/2] * CMakeLists.txt: Fix flags for gcc. + +--- + CMakeLists.txt | 18 ++---------------- + 1 file changed, 2 insertions(+), 16 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index eba147b..d60dcef 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -6,20 +6,6 @@ add_executable(unit src/fifo_map.hpp test/unit.cpp) + + target_include_directories(unit PRIVATE "test" "src") + +-if(MSVC) +- set(CMAKE_CXX_FLAGS +- "/EHsc" +- ) ++set(CMAKE_CXX_FLAGS "-std=c++11 -fpermissive") + +- STRING(REPLACE "/O2" "/Od" CMAKE_CXX_FLAGS_RELEASE ${CMAKE_CXX_FLAGS_RELEASE}) +- +- add_definitions(-D_SCL_SECURE_NO_WARNINGS) +-else(MSVC) +- set(CMAKE_CXX_FLAGS +- "-std=c++11 -stdlib=libc++" +- ) +-endif(MSVC) +- +-include_directories( +- src test +-) ++include_directories(src test) +-- +2.14.3 + diff --git a/gnu/packages/patches/fifo-map-remove-catch.hpp.patch b/gnu/packages/patches/fifo-map-remove-catch.hpp.patch new file mode 100644 index 0000000000..be4efd3e9a --- /dev/null +++ b/gnu/packages/patches/fifo-map-remove-catch.hpp.patch @@ -0,0 +1,30 @@ +From 20dcf90fd02511f8d78ea7cc8ac82c121fd2f6cf Mon Sep 17 00:00:00 2001 +From: fis <ybbs.daans@hotmail.com> +Date: Sat, 26 May 2018 22:56:29 +0800 +Subject: [PATCH 1/2] * CMakeLists.txt: Remove catch.hpp. + +--- + CMakeLists.txt | 6 ++---- + 1 file changed, 2 insertions(+), 4 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 6603c7f..eba147b 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -2,11 +2,9 @@ cmake_minimum_required(VERSION 2.8) + + project(fifo_map LANGUAGES CXX) + +-add_executable(unit +- src/fifo_map.hpp test/thirdparty/catch/catch.hpp test/unit.cpp +-) ++add_executable(unit src/fifo_map.hpp test/unit.cpp) + +-target_include_directories(unit PRIVATE "test" "src" "test/thirdparty") ++target_include_directories(unit PRIVATE "test" "src") + + if(MSVC) + set(CMAKE_CXX_FLAGS +-- +2.14.3 + diff --git a/gnu/packages/patches/gegl-CVE-2012-4433.patch b/gnu/packages/patches/gegl-CVE-2012-4433.patch deleted file mode 100644 index 7352b78dba..0000000000 --- a/gnu/packages/patches/gegl-CVE-2012-4433.patch +++ /dev/null @@ -1,117 +0,0 @@ -From: Michael Gilbert <mgilbert@debian.org> -Date: Mon, 9 Sep 2013 17:34:32 +0200 -Subject: Fix_CVE-2012-4433 - -Multiple buffer overflow issues. - -Closes: #692435 ---- - operations/external/ppm-load.c | 62 ++++++++++++++++++++++++++++++++++++------ - 1 file changed, 53 insertions(+), 9 deletions(-) - -diff --git a/operations/external/ppm-load.c b/operations/external/ppm-load.c -index efe6d56..465096d 100644 ---- a/operations/external/ppm-load.c -+++ b/operations/external/ppm-load.c -@@ -36,6 +36,7 @@ gegl_chant_file_path (path, _("File"), "", _("Path of file to load.")) - #include "gegl-chant.h" - #include <stdio.h> - #include <stdlib.h> -+#include <errno.h> - - typedef enum { - PIXMAP_ASCII = 51, -@@ -44,8 +45,8 @@ typedef enum { - - typedef struct { - map_type type; -- gint width; -- gint height; -+ glong width; -+ glong height; - gsize numsamples; /* width * height * channels */ - gsize bpc; /* bytes per channel */ - guchar *data; -@@ -82,12 +83,33 @@ ppm_load_read_header(FILE *fp, - } - - /* Get Width and Height */ -- img->width = strtol (header,&ptr,0); -- img->height = atoi (ptr); -- img->numsamples = img->width * img->height * CHANNEL_COUNT; -+ errno = 0; -+ img->width = strtol (header,&ptr,10); -+ if (errno) -+ { -+ g_warning ("Error reading width: %s", strerror(errno)); -+ return FALSE; -+ } -+ else if (img->width < 0) -+ { -+ g_warning ("Error: width is negative"); -+ return FALSE; -+ } -+ -+ img->height = strtol (ptr,&ptr,10); -+ if (errno) -+ { -+ g_warning ("Error reading height: %s", strerror(errno)); -+ return FALSE; -+ } -+ else if (img->width < 0) -+ { -+ g_warning ("Error: height is negative"); -+ return FALSE; -+ } - - fgets (header,MAX_CHARS_IN_ROW,fp); -- maxval = strtol (header,&ptr,0); -+ maxval = strtol (header,&ptr,10); - - if ((maxval != 255) && (maxval != 65535)) - { -@@ -109,6 +131,16 @@ ppm_load_read_header(FILE *fp, - g_warning ("%s: Programmer stupidity error", G_STRLOC); - } - -+ /* Later on, img->numsamples is multiplied with img->bpc to allocate -+ * memory. Ensure it doesn't overflow. */ -+ if (!img->width || !img->height || -+ G_MAXSIZE / img->width / img->height / CHANNEL_COUNT < img->bpc) -+ { -+ g_warning ("Illegal width/height: %ld/%ld", img->width, img->height); -+ return FALSE; -+ } -+ img->numsamples = img->width * img->height * CHANNEL_COUNT; -+ - return TRUE; - } - -@@ -229,12 +261,24 @@ process (GeglOperation *operation, - if (!ppm_load_read_header (fp, &img)) - goto out; - -- rect.height = img.height; -- rect.width = img.width; -- - /* Allocating Array Size */ -+ -+ /* Should use g_try_malloc(), but this causes crashes elsewhere because the -+ * error signalled by returning FALSE isn't properly acted upon. Therefore -+ * g_malloc() is used here which aborts if the requested memory size can't be -+ * allocated causing a controlled crash. */ - img.data = (guchar*) g_malloc (img.numsamples * img.bpc); - -+ /* No-op without g_try_malloc(), see above. */ -+ if (! img.data) -+ { -+ g_warning ("Couldn't allocate %" G_GSIZE_FORMAT " bytes, giving up.", ((gsize)img.numsamples * img.bpc)); -+ goto out; -+ } -+ -+ rect.height = img.height; -+ rect.width = img.width; -+ - switch (img.bpc) - { - case 1: diff --git a/gnu/packages/patches/gimp-CVE-2017-17784.patch b/gnu/packages/patches/gimp-CVE-2017-17784.patch deleted file mode 100644 index c791772fb5..0000000000 --- a/gnu/packages/patches/gimp-CVE-2017-17784.patch +++ /dev/null @@ -1,41 +0,0 @@ -Fix CVE-2017-17784: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17784 -https://bugzilla.gnome.org/show_bug.cgi?id=790784 - -Patch copied from upstream source repository: - -https://git.gnome.org/browse/gimp/commit/?id=c57f9dcf1934a9ab0cd67650f2dea18cb0902270 - -From c57f9dcf1934a9ab0cd67650f2dea18cb0902270 Mon Sep 17 00:00:00 2001 -From: Jehan <jehan@girinstud.io> -Date: Thu, 21 Dec 2017 12:25:32 +0100 -Subject: [PATCH] Bug 790784 - (CVE-2017-17784) heap overread in gbr parser / - load_image. - -We were assuming the input name was well formed, hence was -nul-terminated. As any data coming from external input, this has to be -thorougly checked. -Similar to commit 06d24a79af94837d615d0024916bb95a01bf3c59 but adapted -to older gimp-2-8 code. ---- - plug-ins/common/file-gbr.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/plug-ins/common/file-gbr.c b/plug-ins/common/file-gbr.c -index b028100bef..d3f01d9c56 100644 ---- a/plug-ins/common/file-gbr.c -+++ b/plug-ins/common/file-gbr.c -@@ -443,7 +443,8 @@ load_image (const gchar *filename, - { - gchar *temp = g_new (gchar, bn_size); - -- if ((read (fd, temp, bn_size)) < bn_size) -+ if ((read (fd, temp, bn_size)) < bn_size || -+ temp[bn_size - 1] != '\0') - { - g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED, - _("Error in GIMP brush file '%s'"), --- -2.15.1 - diff --git a/gnu/packages/patches/gimp-CVE-2017-17785.patch b/gnu/packages/patches/gimp-CVE-2017-17785.patch deleted file mode 100644 index 939b01f214..0000000000 --- a/gnu/packages/patches/gimp-CVE-2017-17785.patch +++ /dev/null @@ -1,171 +0,0 @@ -Fix CVE-2017-17785: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17785 -https://bugzilla.gnome.org/show_bug.cgi?id=739133 - -Patch copied from upstream source repository: - -https://git.gnome.org/browse/gimp/commit/?id=1882bac996a20ab5c15c42b0c5e8f49033a1af54 - -From 1882bac996a20ab5c15c42b0c5e8f49033a1af54 Mon Sep 17 00:00:00 2001 -From: Tobias Stoeckmann <tobias@stoeckmann.org> -Date: Sun, 29 Oct 2017 15:19:41 +0100 -Subject: [PATCH] Bug 739133 - (CVE-2017-17785) Heap overflow while parsing FLI - files. - -It is possible to trigger a heap overflow while parsing FLI files. The -RLE decoder is vulnerable to out of boundary writes due to lack of -boundary checks. - -The variable "framebuf" points to a memory area which was allocated -with fli_header->width * fli_header->height bytes. The RLE decoder -therefore must never write beyond that limit. - -If an illegal frame is detected, the parser won't stop, which means -that the next valid sequence is properly parsed again. This should -allow GIMP to parse FLI files as good as possible even if they are -broken by an attacker or by accident. - -While at it, I changed the variable xc to be of type size_t, because -the multiplication of width and height could overflow a 16 bit type. - -Signed-off-by: Tobias Stoeckmann <tobias@stoeckmann.org> -(cherry picked from commit edb251a7ef1602d20a5afcbf23f24afb163de63b) ---- - plug-ins/file-fli/fli.c | 50 ++++++++++++++++++++++++++++++++++--------------- - 1 file changed, 35 insertions(+), 15 deletions(-) - -diff --git a/plug-ins/file-fli/fli.c b/plug-ins/file-fli/fli.c -index 313efeb977..ffb651e2af 100644 ---- a/plug-ins/file-fli/fli.c -+++ b/plug-ins/file-fli/fli.c -@@ -25,6 +25,8 @@ - - #include "config.h" - -+#include <glib/gstdio.h> -+ - #include <string.h> - #include <stdio.h> - -@@ -461,23 +463,27 @@ void fli_read_brun(FILE *f, s_fli_header *fli_header, unsigned char *framebuf) - unsigned short yc; - unsigned char *pos; - for (yc=0; yc < fli_header->height; yc++) { -- unsigned short xc, pc, pcnt; -+ unsigned short pc, pcnt; -+ size_t n, xc; - pc=fli_read_char(f); - xc=0; - pos=framebuf+(fli_header->width * yc); -+ n=(size_t)fli_header->width * (fli_header->height-yc); - for (pcnt=pc; pcnt>0; pcnt--) { - unsigned short ps; - ps=fli_read_char(f); - if (ps & 0x80) { - unsigned short len; -- for (len=-(signed char)ps; len>0; len--) { -+ for (len=-(signed char)ps; len>0 && xc<n; len--) { - pos[xc++]=fli_read_char(f); - } - } else { - unsigned char val; -+ size_t len; -+ len=MIN(n-xc,ps); - val=fli_read_char(f); -- memset(&(pos[xc]), val, ps); -- xc+=ps; -+ memset(&(pos[xc]), val, len); -+ xc+=len; - } - } - } -@@ -564,25 +570,34 @@ void fli_read_lc(FILE *f, s_fli_header *fli_header, unsigned char *old_framebuf, - memcpy(framebuf, old_framebuf, fli_header->width * fli_header->height); - firstline = fli_read_short(f); - numline = fli_read_short(f); -+ if (numline > fli_header->height || fli_header->height-numline < firstline) -+ return; -+ - for (yc=0; yc < numline; yc++) { -- unsigned short xc, pc, pcnt; -+ unsigned short pc, pcnt; -+ size_t n, xc; - pc=fli_read_char(f); - xc=0; - pos=framebuf+(fli_header->width * (firstline+yc)); -+ n=(size_t)fli_header->width * (fli_header->height-firstline-yc); - for (pcnt=pc; pcnt>0; pcnt--) { - unsigned short ps,skip; - skip=fli_read_char(f); - ps=fli_read_char(f); -- xc+=skip; -+ xc+=MIN(n-xc,skip); - if (ps & 0x80) { - unsigned char val; -+ size_t len; - ps=-(signed char)ps; - val=fli_read_char(f); -- memset(&(pos[xc]), val, ps); -- xc+=ps; -+ len=MIN(n-xc,ps); -+ memset(&(pos[xc]), val, len); -+ xc+=len; - } else { -- fread(&(pos[xc]), ps, 1, f); -- xc+=ps; -+ size_t len; -+ len=MIN(n-xc,ps); -+ fread(&(pos[xc]), len, 1, f); -+ xc+=len; - } - } - } -@@ -689,7 +704,8 @@ void fli_read_lc_2(FILE *f, s_fli_header *fli_header, unsigned char *old_framebu - yc=0; - numline = fli_read_short(f); - for (lc=0; lc < numline; lc++) { -- unsigned short xc, pc, pcnt, lpf, lpn; -+ unsigned short pc, pcnt, lpf, lpn; -+ size_t n, xc; - pc=fli_read_short(f); - lpf=0; lpn=0; - while (pc & 0x8000) { -@@ -700,26 +716,30 @@ void fli_read_lc_2(FILE *f, s_fli_header *fli_header, unsigned char *old_framebu - } - pc=fli_read_short(f); - } -+ yc=MIN(yc, fli_header->height); - xc=0; - pos=framebuf+(fli_header->width * yc); -+ n=(size_t)fli_header->width * (fli_header->height-yc); - for (pcnt=pc; pcnt>0; pcnt--) { - unsigned short ps,skip; - skip=fli_read_char(f); - ps=fli_read_char(f); -- xc+=skip; -+ xc+=MIN(n-xc,skip); - if (ps & 0x80) { - unsigned char v1,v2; - ps=-(signed char)ps; - v1=fli_read_char(f); - v2=fli_read_char(f); -- while (ps>0) { -+ while (ps>0 && xc+1<n) { - pos[xc++]=v1; - pos[xc++]=v2; - ps--; - } - } else { -- fread(&(pos[xc]), ps, 2, f); -- xc+=ps << 1; -+ size_t len; -+ len=MIN((n-xc)/2,ps); -+ fread(&(pos[xc]), len, 2, f); -+ xc+=len << 1; - } - } - if (lpf) pos[xc]=lpn; --- -2.15.1 - diff --git a/gnu/packages/patches/gimp-CVE-2017-17786.patch b/gnu/packages/patches/gimp-CVE-2017-17786.patch deleted file mode 100644 index 851227ac1d..0000000000 --- a/gnu/packages/patches/gimp-CVE-2017-17786.patch +++ /dev/null @@ -1,94 +0,0 @@ -Fix CVE-2017-17786: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17786 -https://bugzilla.gnome.org/show_bug.cgi?id=739134 - -Both patches copied from upstream source repository: - -https://git.gnome.org/browse/gimp/commit/?id=ef9c821fff8b637a2178eab1c78cae6764c50e12 -https://git.gnome.org/browse/gimp/commit/?id=22e2571c25425f225abdb11a566cc281fca6f366 - -From ef9c821fff8b637a2178eab1c78cae6764c50e12 Mon Sep 17 00:00:00 2001 -From: Jehan <jehan@girinstud.io> -Date: Wed, 20 Dec 2017 13:02:38 +0100 -Subject: [PATCH] Bug 739134 - (CVE-2017-17786) Out of bounds read / heap - overflow in... -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -... TGA importer. - -Be more thorough on valid TGA RGB and RGBA images. -In particular current TGA plug-in can import RGBA as 32 bits (8 bits per -channel) and 16 bits (5 bits per color channel and 1 bit for alpha), and -RGB as 15 and 24 bits. -Maybe there exist more variants, but if they do exist, we simply don't -support them yet. - -Thanks to Hanno Böck for the report and a first patch attempt. - -(cherry picked from commit 674b62ad45b6579ec6d7923dc3cb1ef4e8b5498b) ---- - plug-ins/common/file-tga.c | 12 ++++++++---- - 1 file changed, 8 insertions(+), 4 deletions(-) - -diff --git a/plug-ins/common/file-tga.c b/plug-ins/common/file-tga.c -index aef98702d4..426acc2925 100644 ---- a/plug-ins/common/file-tga.c -+++ b/plug-ins/common/file-tga.c -@@ -564,12 +564,16 @@ load_image (const gchar *filename, - } - break; - case TGA_TYPE_COLOR: -- if (info.bpp != 15 && info.bpp != 16 && -- info.bpp != 24 && info.bpp != 32) -+ if ((info.bpp != 15 && info.bpp != 16 && -+ info.bpp != 24 && info.bpp != 32) || -+ ((info.bpp == 15 || info.bpp == 24) && -+ info.alphaBits != 0) || -+ (info.bpp == 16 && info.alphaBits != 1) || -+ (info.bpp == 32 && info.alphaBits != 8)) - { -- g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u)", -+ g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u, alpha = %u)", - gimp_filename_to_utf8 (filename), -- info.imageType, info.bpp); -+ info.imageType, info.bpp, info.alphaBits); - return -1; - } - break; --- -2.15.1 - -From 22e2571c25425f225abdb11a566cc281fca6f366 Mon Sep 17 00:00:00 2001 -From: Jehan <jehan@girinstud.io> -Date: Wed, 20 Dec 2017 13:26:26 +0100 -Subject: [PATCH] plug-ins: TGA 16-bit RGB (without alpha bit) is also valid. - -According to some spec on the web, 16-bit RGB is also valid. In this -case, the last bit is simply ignored (at least that's how it is -implemented right now). - -(cherry picked from commit 8ea316667c8a3296bce2832b3986b58d0fdfc077) ---- - plug-ins/common/file-tga.c | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/plug-ins/common/file-tga.c b/plug-ins/common/file-tga.c -index 426acc2925..eb14a1dadc 100644 ---- a/plug-ins/common/file-tga.c -+++ b/plug-ins/common/file-tga.c -@@ -568,7 +568,8 @@ load_image (const gchar *filename, - info.bpp != 24 && info.bpp != 32) || - ((info.bpp == 15 || info.bpp == 24) && - info.alphaBits != 0) || -- (info.bpp == 16 && info.alphaBits != 1) || -+ (info.bpp == 16 && info.alphaBits != 1 && -+ info.alphaBits != 0) || - (info.bpp == 32 && info.alphaBits != 8)) - { - g_message ("Unhandled sub-format in '%s' (type = %u, bpp = %u, alpha = %u)", --- -2.15.1 - diff --git a/gnu/packages/patches/gimp-CVE-2017-17787.patch b/gnu/packages/patches/gimp-CVE-2017-17787.patch deleted file mode 100644 index b5310d33d9..0000000000 --- a/gnu/packages/patches/gimp-CVE-2017-17787.patch +++ /dev/null @@ -1,42 +0,0 @@ -Fix CVE-2017-17787: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17787 -https://bugzilla.gnome.org/show_bug.cgi?id=790853 - -Patch copied from upstream source repository: - -https://git.gnome.org/browse/gimp/commit/?id=87ba505fff85989af795f4ab6a047713f4d9381d - -From 87ba505fff85989af795f4ab6a047713f4d9381d Mon Sep 17 00:00:00 2001 -From: Jehan <jehan@girinstud.io> -Date: Thu, 21 Dec 2017 12:49:41 +0100 -Subject: [PATCH] Bug 790853 - (CVE-2017-17787) heap overread in psp importer. - -As any external data, we have to check that strings being read at fixed -length are properly nul-terminated. - -(cherry picked from commit eb2980683e6472aff35a3117587c4f814515c74d) ---- - plug-ins/common/file-psp.c | 6 ++++++ - 1 file changed, 6 insertions(+) - -diff --git a/plug-ins/common/file-psp.c b/plug-ins/common/file-psp.c -index 4cbafe37b1..e350e4d88d 100644 ---- a/plug-ins/common/file-psp.c -+++ b/plug-ins/common/file-psp.c -@@ -890,6 +890,12 @@ read_creator_block (FILE *f, - g_free (string); - return -1; - } -+ if (string[length - 1] != '\0') -+ { -+ g_message ("Creator keyword data not nul-terminated"); -+ g_free (string); -+ return -1; -+ } - switch (keyword) - { - case PSP_CRTR_FLD_TITLE: --- -2.15.1 - diff --git a/gnu/packages/patches/gimp-CVE-2017-17789.patch b/gnu/packages/patches/gimp-CVE-2017-17789.patch deleted file mode 100644 index 6dfa435fd0..0000000000 --- a/gnu/packages/patches/gimp-CVE-2017-17789.patch +++ /dev/null @@ -1,48 +0,0 @@ -Fix CVE-2017-17789: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17789 -https://bugzilla.gnome.org/show_bug.cgi?id=790849 - -Patch copied from upstream source repository: - -https://git.gnome.org/browse/gimp/commit/?id=01898f10f87a094665a7fdcf7153990f4e511d3f - -From 01898f10f87a094665a7fdcf7153990f4e511d3f Mon Sep 17 00:00:00 2001 -From: Jehan <jehan@girinstud.io> -Date: Wed, 20 Dec 2017 16:44:20 +0100 -Subject: [PATCH] Bug 790849 - (CVE-2017-17789) CVE-2017-17789 Heap buffer - overflow... - -... in PSP importer. -Check if declared block length is valid (i.e. within the actual file) -before going further. -Consider the file as broken otherwise and fail loading it. - -(cherry picked from commit 28e95fbeb5720e6005a088fa811f5bf3c1af48b8) ---- - plug-ins/common/file-psp.c | 9 +++++++++ - 1 file changed, 9 insertions(+) - -diff --git a/plug-ins/common/file-psp.c b/plug-ins/common/file-psp.c -index ac0fff78f0..4cbafe37b1 100644 ---- a/plug-ins/common/file-psp.c -+++ b/plug-ins/common/file-psp.c -@@ -1771,6 +1771,15 @@ load_image (const gchar *filename, - { - block_start = ftell (f); - -+ if (block_start + block_total_len > st.st_size) -+ { -+ g_set_error (error, G_FILE_ERROR, G_FILE_ERROR_FAILED, -+ _("Could not open '%s' for reading: %s"), -+ gimp_filename_to_utf8 (filename), -+ _("invalid block size")); -+ goto error; -+ } -+ - if (id == PSP_IMAGE_BLOCK) - { - if (block_number != 0) --- -2.15.1 - diff --git a/gnu/packages/patches/glibc-locales.patch b/gnu/packages/patches/glibc-locales.patch index 3a125e845e..31ee6c1ff3 100644 --- a/gnu/packages/patches/glibc-locales.patch +++ b/gnu/packages/patches/glibc-locales.patch @@ -9,9 +9,9 @@ in a package separate from glibc. place, and because otherwise, 'localedef' fails with: "cannot write output files to `(null)'". ---- glibc-2.22/localedata/Makefile 1970-01-01 01:00:00.000000000 +0100 -+++ glibc-2.22/localedata/Makefile 2015-09-25 14:18:34.698941752 +0200 -@@ -195,7 +195,7 @@ INSTALL-SUPPORTED-LOCALES=$(addprefix in +--- glibc-2.27/localedata/Makefile ++++ glibc-2.27/localedata/Makefile +@@ -199,7 +199,7 @@ INSTALL-SUPPORTED-LOCALES=$(addprefix install-, $(SUPPORTED-LOCALES)) # Sometimes the whole collection of locale files should be installed. LOCALEDEF=I18NPATH=. GCONV_PATH=$(common-objpfx)iconvdata LC_ALL=C \ @@ -20,10 +20,10 @@ in a package separate from glibc. install-locales: $(INSTALL-SUPPORTED-LOCALES) install-locales-dir: -@@ -212,7 +212,7 @@ $(INSTALL-SUPPORTED-LOCALES): install-lo +@@ -224,7 +224,7 @@ $(INSTALL-SUPPORTED-LOCALES): install-locales-dir input=`echo $$locale | sed 's/\([^.]*\)[^@]*\(.*\)/\1\2/'`; \ - $(LOCALEDEF) --alias-file=../intl/locale.alias \ - -i locales/$$input -c -f charmaps/$$charset \ + $(LOCALEDEF) $$flags --alias-file=../intl/locale.alias \ + -i locales/$$input -f charmaps/$$charset \ - $(addprefix --prefix=,$(install_root)) $$locale \ + $(addprefix --prefix=,$(install_root)) $(inst_complocaledir)/$$locale \ && echo ' done'; \ diff --git a/gnu/packages/patches/groovy-add-exceptionutilsgenerator.patch b/gnu/packages/patches/groovy-add-exceptionutilsgenerator.patch new file mode 100644 index 0000000000..df74bdbaba --- /dev/null +++ b/gnu/packages/patches/groovy-add-exceptionutilsgenerator.patch @@ -0,0 +1,98 @@ +From 3dbdc68093e90f0ef9b77b70490d8e0b1dcfbf8f Mon Sep 17 00:00:00 2001 +From: Julien Lepiller <julien@lepiller.eu> +Date: Sun, 17 Sep 2017 21:08:45 +0200 +Subject: [PATCH] Add ExceptionUtilsGenerator.java. + +A gradle task (in gradle/utils.gradle) is normally used to generate an +ExceptionUtils class. Since gradle depends on groovy, we cannot use it, so +we copy the code from the gradle task to a new file. Running this file then +generates the required class. +--- + .../codehaus/groovy/ExceptionUtilsGenerator.java | 75 ++++++++++++++++++++++ + 1 file changed, 75 insertions(+) + create mode 100644 config/ant/src/org/codehaus/groovy/ExceptionUtilsGenerator.java + +diff --git a/config/ant/src/org/codehaus/groovy/ExceptionUtilsGenerator.java b/config/ant/src/org/codehaus/groovy/ExceptionUtilsGenerator.java +new file mode 100644 +index 0000000..41f006d +--- /dev/null ++++ b/config/ant/src/org/codehaus/groovy/ExceptionUtilsGenerator.java +@@ -0,0 +1,75 @@ ++package org.codehaus.groovy; ++ ++import org.objectweb.asm.*; ++ ++import java.io.BufferedOutputStream; ++import java.io.File; ++import java.io.FileOutputStream; ++import java.io.IOException; ++import java.util.logging.Logger; ++ ++public class ExceptionUtilsGenerator implements Opcodes { ++ private final static Logger LOGGER = Logger.getLogger(ExceptionUtilsGenerator.class.getName()); ++ ++ public static void main(String... args) { ++ if (args==null || args.length==0) { ++ throw new IllegalArgumentException("You must specify at least one file"); ++ } ++ ++ ClassWriter cw = new ClassWriter(0); ++ MethodVisitor mv; ++ ++ cw.visit(V1_5, ACC_PUBLIC + ACC_SUPER, "org/codehaus/groovy/runtime/ExceptionUtils", null, "java/lang/Object", null); ++ ++ cw.visitSource("ExceptionUtils.java", null); ++ ++ mv = cw.visitMethod(ACC_PUBLIC, "<init>", "()V", null, null); ++ mv.visitCode(); ++ Label l0 = new Label(); ++ mv.visitLabel(l0); ++ mv.visitLineNumber(18, l0); ++ mv.visitVarInsn(ALOAD, 0); ++ mv.visitMethodInsn(INVOKESPECIAL, "java/lang/Object", "<init>", "()V"); ++ mv.visitInsn(RETURN); ++ Label l1 = new Label(); ++ mv.visitLabel(l1); ++ mv.visitLocalVariable("this", "Lorg/codehaus/groovy/runtime/ExceptionUtils;", null, l0, l1, 0); ++ mv.visitMaxs(1, 1); ++ mv.visitEnd(); ++ ++ mv = cw.visitMethod(ACC_PUBLIC + ACC_STATIC, "sneakyThrow", "(Ljava/lang/Throwable;)V", null, null); ++ mv.visitCode(); ++ Label l2 = new Label(); ++ mv.visitLabel(l2); ++ mv.visitLineNumber(20, l2); ++ mv.visitVarInsn(ALOAD, 0); ++ mv.visitInsn(ATHROW); ++ Label l3 = new Label(); ++ mv.visitLabel(l3); ++ mv.visitLocalVariable("e", "Ljava/lang/Throwable;", null, l2, l3, 0); ++ mv.visitMaxs(1, 1); ++ mv.visitEnd(); ++ ++ cw.visitEnd(); ++ ++ LOGGER.info("Generating ExceptionUtils"); ++ byte[] bytes = cw.toByteArray(); ++ for (String classFilePath : args) { ++ File classFile = new File(classFilePath); ++ if (classFile.getParentFile().exists() || classFile.getParentFile().mkdirs()) { ++ try { ++ if (classFile.exists()) { ++ classFile.delete(); ++ } ++ BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(classFile)); ++ bos.write(bytes); ++ bos.close(); ++ } catch (IOException e) { ++ LOGGER.warning("Unable to write file "+classFile); ++ } ++ } else { ++ LOGGER.warning("Unable to create directory "+classFile.getParentFile()); ++ } ++ } ++ } ++} +-- +2.14.1 + diff --git a/gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch b/gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch new file mode 100644 index 0000000000..b776640133 --- /dev/null +++ b/gnu/packages/patches/icecat-CVE-2018-5157-and-CVE-2018-5158.patch @@ -0,0 +1,441 @@ +Based on <https://hg.mozilla.org/releases/mozilla-esr52/rev/608e76ec5ba2> +Adapted to apply cleanly to GNU IceCat. + +# HG changeset patch +# User Ryan VanderMeulen <ryanvm@gmail.com> +# Date 1523630807 14400 +# Node ID 608e76ec5ba25cec2271d2b400c7bce2d4c5ef79 +# Parent 10b7f43b536f93151201d44d304c991aa9af5d0c +Bug 1452075 - Backport some upstream pdf.js fixes to ESR52. r=bdahl, r=yury, a=RyanVM + +diff --git a/browser/extensions/pdfjs/content/PdfStreamConverter.jsm b/browser/extensions/pdfjs/content/PdfStreamConverter.jsm +--- a/browser/extensions/pdfjs/content/PdfStreamConverter.jsm ++++ b/browser/extensions/pdfjs/content/PdfStreamConverter.jsm +@@ -24,17 +24,18 @@ const Cc = Components.classes; + const Ci = Components.interfaces; + const Cr = Components.results; + const Cu = Components.utils; + // True only if this is the version of pdf.js that is included with icecat. + const MOZ_CENTRAL = JSON.parse('true'); + const PDFJS_EVENT_ID = 'pdf.js.message'; + const PDF_CONTENT_TYPE = 'application/pdf'; + const PREF_PREFIX = 'pdfjs'; +-const PDF_VIEWER_WEB_PAGE = 'resource://pdf.js/web/viewer.html'; ++const PDF_VIEWER_ORIGIN = "resource://pdf.js"; ++const PDF_VIEWER_WEB_PAGE = "resource://pdf.js/web/viewer.html"; + const MAX_NUMBER_OF_PREFS = 50; + const MAX_STRING_PREF_LENGTH = 128; + + Cu.import('resource://gre/modules/XPCOMUtils.jsm'); + Cu.import('resource://gre/modules/Services.jsm'); + Cu.import('resource://gre/modules/NetUtil.jsm'); + + XPCOMUtils.defineLazyModuleGetter(this, 'NetworkManager', +@@ -105,21 +106,25 @@ function log(aMsg) { + if (!getBoolPref(PREF_PREFIX + '.pdfBugEnabled', false)) { + return; + } + var msg = 'PdfStreamConverter.js: ' + (aMsg.join ? aMsg.join('') : aMsg); + Services.console.logStringMessage(msg); + dump(msg + '\n'); + } + +-function getDOMWindow(aChannel) { ++function getDOMWindow(aChannel, aPrincipal) { + var requestor = aChannel.notificationCallbacks ? + aChannel.notificationCallbacks : + aChannel.loadGroup.notificationCallbacks; + var win = requestor.getInterface(Components.interfaces.nsIDOMWindow); ++ // Ensure the window wasn't navigated to something that is not PDF.js. ++ if (!win.document.nodePrincipal.equals(aPrincipal)) { ++ return null; ++ } + return win; + } + + function getLocalizedStrings(path) { + var stringBundle = Cc['@mozilla.org/intl/stringbundle;1']. + getService(Ci.nsIStringBundleService). + createBundle('chrome://pdf.js/locale/' + path); + +@@ -627,31 +632,31 @@ var RangedChromeActions = (function Rang + data = this.dataListener.readData(); + + this.dataListener.onprogress = function (loaded, total) { + self.domWindow.postMessage({ + pdfjsLoadAction: 'progressiveRead', + loaded: loaded, + total: total, + chunk: self.dataListener.readData() +- }, '*'); ++ }, PDF_VIEWER_ORIGIN); + }; + this.dataListener.oncomplete = function () { + self.dataListener = null; + }; + } + + this.domWindow.postMessage({ + pdfjsLoadAction: 'supportsRangedLoading', + rangeEnabled: this.rangeEnabled, + streamingEnabled: this.streamingEnabled, + pdfUrl: this.pdfUrl, + length: this.contentLength, + data: data +- }, '*'); ++ }, PDF_VIEWER_ORIGIN); + + return true; + }; + + proto.requestDataRange = function RangedChromeActions_requestDataRange(args) { + if (!this.rangeEnabled) { + return; + } +@@ -663,23 +668,23 @@ var RangedChromeActions = (function Rang + // errors from chrome code for non-range requests, so this doesn't + // seem high-pri + this.networkManager.requestRange(begin, end, { + onDone: function RangedChromeActions_onDone(args) { + domWindow.postMessage({ + pdfjsLoadAction: 'range', + begin: args.begin, + chunk: args.chunk +- }, '*'); ++ }, PDF_VIEWER_ORIGIN); + }, + onProgress: function RangedChromeActions_onProgress(evt) { + domWindow.postMessage({ + pdfjsLoadAction: 'rangeProgress', + loaded: evt.loaded, +- }, '*'); ++ }, PDF_VIEWER_ORIGIN); + } + }); + }; + + proto.abortLoading = function RangedChromeActions_abortLoading() { + this.networkManager.abortAllRequests(); + if (this.originalRequest) { + this.originalRequest.cancel(Cr.NS_BINDING_ABORTED); +@@ -718,26 +723,26 @@ var StandardChromeActions = (function St + var self = this; + + this.dataListener.onprogress = function ChromeActions_dataListenerProgress( + loaded, total) { + self.domWindow.postMessage({ + pdfjsLoadAction: 'progress', + loaded: loaded, + total: total +- }, '*'); ++ }, PDF_VIEWER_ORIGIN); + }; + + this.dataListener.oncomplete = + function StandardChromeActions_dataListenerComplete(data, errorCode) { + self.domWindow.postMessage({ + pdfjsLoadAction: 'complete', + data: data, + errorCode: errorCode +- }, '*'); ++ }, PDF_VIEWER_ORIGIN); + + self.dataListener = null; + self.originalRequest = null; + }; + + return true; + }; + +@@ -972,31 +977,35 @@ PdfStreamConverter.prototype = { + var proxy = { + onStartRequest: function(request, context) { + listener.onStartRequest(aRequest, aContext); + }, + onDataAvailable: function(request, context, inputStream, offset, count) { + listener.onDataAvailable(aRequest, aContext, inputStream, + offset, count); + }, +- onStopRequest: function(request, context, statusCode) { +- // We get the DOM window here instead of before the request since it +- // may have changed during a redirect. +- var domWindow = getDOMWindow(channel); ++ onStopRequest(request, context, statusCode) { ++ var domWindow = getDOMWindow(channel, resourcePrincipal); ++ if (!Components.isSuccessCode(statusCode) || !domWindow) { ++ // The request may have been aborted and the document may have been ++ // replaced with something that is not PDF.js, abort attaching. ++ listener.onStopRequest(aRequest, context, statusCode); ++ return; ++ } + var actions; + if (rangeRequest || streamRequest) { + actions = new RangedChromeActions( + domWindow, contentDispositionFilename, aRequest, + rangeRequest, streamRequest, dataListener); + } else { + actions = new StandardChromeActions( + domWindow, contentDispositionFilename, aRequest, dataListener); + } + var requestListener = new RequestListener(actions); +- domWindow.addEventListener(PDFJS_EVENT_ID, function(event) { ++ domWindow.document.addEventListener(PDFJS_EVENT_ID, function(event) { + requestListener.receive(event); + }, false, true); + if (actions.supportsIntegratedFind()) { + var findEventManager = new FindEventManager(domWindow); + findEventManager.bind(); + } + listener.onStopRequest(aRequest, aContext, statusCode); + +diff --git a/browser/extensions/pdfjs/content/build/pdf.worker.js b/browser/extensions/pdfjs/content/build/pdf.worker.js +--- a/browser/extensions/pdfjs/content/build/pdf.worker.js ++++ b/browser/extensions/pdfjs/content/build/pdf.worker.js +@@ -41648,16 +41648,32 @@ + var error = sharedUtil.error; + var info = sharedUtil.info; + var isArray = sharedUtil.isArray; + var isBool = sharedUtil.isBool; + var isDict = corePrimitives.isDict; + var isStream = corePrimitives.isStream; + var PostScriptLexer = corePsParser.PostScriptLexer; + var PostScriptParser = corePsParser.PostScriptParser; ++ function toNumberArray(arr) { ++ if (!Array.isArray(arr)) { ++ return null; ++ } ++ var length = arr.length; ++ for (var i = 0; i < length; i++) { ++ if (typeof arr[i] !== 'number') { ++ var result = new Array(length); ++ for (var j = 0; j < length; j++) { ++ result[j] = +arr[j]; ++ } ++ return result; ++ } ++ } ++ return arr; ++ } + var PDFFunction = function PDFFunctionClosure() { + var CONSTRUCT_SAMPLED = 0; + var CONSTRUCT_INTERPOLATED = 2; + var CONSTRUCT_STICHED = 3; + var CONSTRUCT_POSTSCRIPT = 4; + return { + getSampleArray: function PDFFunction_getSampleArray(size, outputSize, bps, str) { + var i, ii; +@@ -41747,43 +41763,43 @@ + out[index] = [ + arr[i], + arr[i + 1] + ]; + ++index; + } + return out; + } +- var domain = dict.getArray('Domain'); +- var range = dict.getArray('Range'); ++ var domain = toNumberArray(dict.getArray('Domain')); ++ var range = toNumberArray(dict.getArray('Range')); + if (!domain || !range) { + error('No domain or range'); + } + var inputSize = domain.length / 2; + var outputSize = range.length / 2; + domain = toMultiArray(domain); + range = toMultiArray(range); +- var size = dict.get('Size'); ++ var size = toNumberArray(dict.get('Size')); + var bps = dict.get('BitsPerSample'); + var order = dict.get('Order') || 1; + if (order !== 1) { + // No description how cubic spline interpolation works in PDF32000:2008 + // As in poppler, ignoring order, linear interpolation may work as good + info('No support for cubic spline interpolation: ' + order); + } +- var encode = dict.getArray('Encode'); ++ var encode = toNumberArray(dict.getArray('Encode')); + if (!encode) { + encode = []; + for (var i = 0; i < inputSize; ++i) { +- encode.push(0); +- encode.push(size[i] - 1); +- } +- } +- encode = toMultiArray(encode); +- var decode = dict.getArray('Decode'); ++ encode.push([0, size[i] - 1]); ++ } ++ } else { ++ encode = toMultiArray(encode); ++ } ++ var decode = toNumberArray(dict.getArray('Decode')); + if (!decode) { + decode = range; + } else { + decode = toMultiArray(decode); + } + var samples = this.getSampleArray(size, outputSize, bps, str); + return [ + CONSTRUCT_SAMPLED, +@@ -41868,22 +41884,19 @@ + // Decode_2j, Decode_2j+1) + rj = interpolate(rj, 0, 1, decode[j][0], decode[j][1]); + // y_j = min(max(r_j, range_2j), range_2j+1) + dest[destOffset + j] = Math.min(Math.max(rj, range[j][0]), range[j][1]); + } + }; + }, + constructInterpolated: function PDFFunction_constructInterpolated(str, dict) { +- var c0 = dict.getArray('C0') || [0]; +- var c1 = dict.getArray('C1') || [1]; ++ var c0 = toNumberArray(dict.getArray('C0')) || [0]; ++ var c1 = toNumberArray(dict.getArray('C1')) || [1]; + var n = dict.get('N'); +- if (!isArray(c0) || !isArray(c1)) { +- error('Illegal dictionary for interpolated function'); +- } + var length = c0.length; + var diff = []; + for (var i = 0; i < length; ++i) { + diff.push(c1[i] - c0[i]); + } + return [ + CONSTRUCT_INTERPOLATED, + c0, +@@ -41899,49 +41912,45 @@ + return function constructInterpolatedFromIRResult(src, srcOffset, dest, destOffset) { + var x = n === 1 ? src[srcOffset] : Math.pow(src[srcOffset], n); + for (var j = 0; j < length; ++j) { + dest[destOffset + j] = c0[j] + x * diff[j]; + } + }; + }, + constructStiched: function PDFFunction_constructStiched(fn, dict, xref) { +- var domain = dict.getArray('Domain'); ++ var domain = toNumberArray(dict.getArray('Domain')); + if (!domain) { + error('No domain'); + } + var inputSize = domain.length / 2; + if (inputSize !== 1) { + error('Bad domain for stiched function'); + } + var fnRefs = dict.get('Functions'); + var fns = []; + for (var i = 0, ii = fnRefs.length; i < ii; ++i) { +- fns.push(PDFFunction.getIR(xref, xref.fetchIfRef(fnRefs[i]))); +- } +- var bounds = dict.getArray('Bounds'); +- var encode = dict.getArray('Encode'); ++ fns.push(PDFFunction.parse(xref, xref.fetchIfRef(fnRefs[i]))); ++ } ++ var bounds = toNumberArray(dict.getArray('Bounds')); ++ var encode = toNumberArray(dict.getArray('Encode')); + return [ + CONSTRUCT_STICHED, + domain, + bounds, + encode, + fns + ]; + }, + constructStichedFromIR: function PDFFunction_constructStichedFromIR(IR) { + var domain = IR[1]; + var bounds = IR[2]; + var encode = IR[3]; +- var fnsIR = IR[4]; +- var fns = []; ++ var fns = IR[4]; + var tmpBuf = new Float32Array(1); +- for (var i = 0, ii = fnsIR.length; i < ii; i++) { +- fns.push(PDFFunction.fromIR(fnsIR[i])); +- } + return function constructStichedFromIRResult(src, srcOffset, dest, destOffset) { + var clip = function constructStichedFromIRClip(v, min, max) { + if (v > max) { + v = max; + } else if (v < min) { + v = min; + } + return v; +@@ -41968,18 +41977,18 @@ + // Prevent the value from becoming NaN as a result + // of division by zero (fixes issue6113.pdf). + tmpBuf[0] = dmin === dmax ? rmin : rmin + (v - dmin) * (rmax - rmin) / (dmax - dmin); + // call the appropriate function + fns[i](tmpBuf, 0, dest, destOffset); + }; + }, + constructPostScript: function PDFFunction_constructPostScript(fn, dict, xref) { +- var domain = dict.getArray('Domain'); +- var range = dict.getArray('Range'); ++ var domain = toNumberArray(dict.getArray('Domain')); ++ var range = toNumberArray(dict.getArray('Range')); + if (!domain) { + error('No domain.'); + } + if (!range) { + error('No range.'); + } + var lexer = new PostScriptLexer(fn); + var parser = new PostScriptParser(lexer); +@@ -42928,18 +42937,18 @@ + case 'IndexedCS': + var baseIndexedCS = IR[1]; + var hiVal = IR[2]; + var lookup = IR[3]; + return new IndexedCS(ColorSpace.fromIR(baseIndexedCS), hiVal, lookup); + case 'AlternateCS': + var numComps = IR[1]; + var alt = IR[2]; +- var tintFnIR = IR[3]; +- return new AlternateCS(numComps, ColorSpace.fromIR(alt), PDFFunction.fromIR(tintFnIR)); ++ var tintFn = IR[3]; ++ return new AlternateCS(numComps, ColorSpace.fromIR(alt), tintFn); + case 'LabCS': + whitePoint = IR[1]; + blackPoint = IR[2]; + var range = IR[3]; + return new LabCS(whitePoint, blackPoint, range); + default: + error('Unknown name ' + name); + } +@@ -43067,22 +43076,22 @@ + var name = xref.fetchIfRef(cs[1]); + numComps = 1; + if (isName(name)) { + numComps = 1; + } else if (isArray(name)) { + numComps = name.length; + } + alt = ColorSpace.parseToIR(cs[2], xref, res); +- var tintFnIR = PDFFunction.getIR(xref, xref.fetchIfRef(cs[3])); ++ var tintFn = PDFFunction.parse(xref, xref.fetchIfRef(cs[3])); + return [ + 'AlternateCS', + numComps, + alt, +- tintFnIR ++ tintFn + ]; + case 'Lab': + params = xref.fetchIfRef(cs[1]); + whitePoint = params.getArray('WhitePoint'); + blackPoint = params.getArray('BlackPoint'); + var range = params.getArray('Range'); + return [ + 'LabCS', +@@ -52483,9 +52492,9 @@ + initializeWorker(); + } + exports.setPDFNetworkStreamClass = setPDFNetworkStreamClass; + exports.WorkerTask = WorkerTask; + exports.WorkerMessageHandler = WorkerMessageHandler; + })); + }.call(pdfjsLibs)); + exports.WorkerMessageHandler = pdfjsLibs.pdfjsCoreWorker.WorkerMessageHandler; +-})); +\ No newline at end of file ++})); + diff --git a/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch b/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch new file mode 100644 index 0000000000..69673c90ee --- /dev/null +++ b/gnu/packages/patches/libmygpo-qt-fix-qt-5.11.patch @@ -0,0 +1,78 @@ +From 1b53767b988b339aac8b353327a1542b2a0c0610 Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com> +Date: Sun, 15 Apr 2018 22:29:33 +0200 +Subject: [PATCH] Fix build with Qt 5.11_beta3 (dropping qt5_use_modules) + +--- + CMakeLists.txt | 3 --- + src/CMakeLists.txt | 8 ++++++-- + tests/CMakeLists.txt | 12 +++++++++--- + 3 files changed, 15 insertions(+), 8 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index eb006d9..fa4b0cb 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -34,9 +34,6 @@ else() + set( QT_DONT_USE_QTGUI TRUE ) + include( ${QT_USE_FILE} ) + +- macro(qt5_use_modules) +- endmacro() +- + macro(qt_wrap_cpp) + qt4_wrap_cpp(${ARGN}) + endmacro() +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 802125b..253e81e 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -79,9 +79,13 @@ QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${LIBMYGPO_QT_MOC_H} ) + + add_library( ${MYGPO_QT_TARGET_NAME} SHARED ${LIBMYGPO_QT_SRC} ${LIBMYGPO_QT_MOC_SRC} ) + +-target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QJSON_LIBRARIES} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ) + set_target_properties( ${MYGPO_QT_TARGET_NAME} PROPERTIES VERSION ${MYGPO_QT_VERSION} SOVERSION ${MYGPO_QT_SONAME} DEFINE_SYMBOL MYGPO_MAKEDLL) +-qt5_use_modules( ${MYGPO_QT_TARGET_NAME} Core Network ) ++ ++if( NOT BUILD_WITH_QT4 ) ++ target_link_libraries( ${MYGPO_QT_TARGET_NAME} Qt5::Core Qt5::Network) ++else() ++ target_link_libraries( ${MYGPO_QT_TARGET_NAME} ${QT_QTCORE_LIBRARY} ${QT_QTNETWORK_LIBRARY} ${QJSON_LIBRARIES}) ++endif() + + install( TARGETS ${MYGPO_QT_TARGET_NAME} EXPORT ${MYGPO_QT_TARGET_NAME}Export DESTINATION ${LIB_INSTALL_DIR} ) + +diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt +index a3e3223..4f77158 100644 +--- a/tests/CMakeLists.txt ++++ b/tests/CMakeLists.txt +@@ -11,11 +11,15 @@ include_directories( ${QJSON_INCLUDE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CU + + # UrlBuilder library + add_library( UrlBuilder ${TESTOBJECTS_SRCDIR}/UrlBuilder.cpp ${TESTOBJECTS_SRCDIR}/Config.cpp ) +-qt5_use_modules( UrlBuilder Core ) ++if( NOT BUILD_WITH_QT4 ) ++ target_link_libraries( UrlBuilder Qt5::Core ) ++endif() + # JSONCreator library + QT_WRAP_CPP(LIBMYGPO_QT_MOC_SRC ${TESTOBJECTS_SRCDIR}/EpisodeAction.h ${TESTOBJECTS_SRCDIR}/EpisodeAction_p.h ) + add_library( JsonCreator ${TESTOBJECTS_SRCDIR}/JsonCreator.cpp ${TESTOBJECTS_SRCDIR}/EpisodeAction.cpp ${TESTOBJECTS_SRCDIR}/qjsonwrapper/Json.cpp ${LIBMYGPO_QT_MOC_SRC}) +-qt5_use_modules( JsonCreator Core Network ) ++if( NOT BUILD_WITH_QT4 ) ++ target_link_libraries( JsonCreator Qt5::Core Qt5::Network ) ++endif() + + set( EXECUTABLE_OUTPUT_PATH ${CMAKE_CURRENT_BINARY_DIR} ) + +@@ -25,7 +29,9 @@ macro(add_libmygpo_test _source) + add_executable(${_name} ${_source} ${${_name}_MOC_SRC}) + target_link_libraries(${_name} ${QT_QTCORE_LIBRARY} ${QT_QTTEST_LIBRARY} ${QT_QTNETWORK_LIBRARY}) + add_test(${_name}-test ${EXECUTABLE_OUTPUT_PATH}/${_name}) +- qt5_use_modules(${_name} Network Test) ++ if( NOT BUILD_WITH_QT4 ) ++ target_link_libraries(${_name} Qt5::Network Qt5::Test) ++ endif() + endmacro(add_libmygpo_test) + + add_libmygpo_test( UrlBuilderTest.cpp ) diff --git a/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch b/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch new file mode 100644 index 0000000000..aa9ed2c0f7 --- /dev/null +++ b/gnu/packages/patches/libmygpo-qt-missing-qt5-modules.patch @@ -0,0 +1,51 @@ +From 0d76d960727018bddf04c6cc89552af69aaa7e55 Mon Sep 17 00:00:00 2001 +From: Andreas Sturmlechner <andreas.sturmlechner@gmail.com> +Date: Sun, 15 Apr 2018 22:20:34 +0200 +Subject: [PATCH] Add missing Qt5Network, Qt5Test, make BUILD_WITH_QT4 more + strict + +--- + CMakeLists.txt | 22 +++++++++++----------- + 1 file changed, 11 insertions(+), 11 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2a1f652..eb006d9 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -5,25 +5,25 @@ project( libmygpo-qt ) + set( CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) + set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DQT_NO_CAST_FROM_ASCII -DQT_NO_CAST_TO_ASCII" ) + +-option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4 no matter if Qt5 was found" OFF) ++option(BUILD_WITH_QT4 "Build libmygpo-qt with Qt4" OFF) + + if( NOT BUILD_WITH_QT4 ) +- find_package(Qt5Core QUIET) +- if( Qt5Core_DIR ) +- set(MYGPO_QT_VERSION_SUFFIX 5) +- +- macro(qt_wrap_cpp) +- qt5_wrap_cpp(${ARGN}) +- endmacro() ++ if( MYGPO_BUILD_TESTS ) ++ find_package(Qt5 REQUIRED COMPONENTS Core Network Test CONFIG) ++ else() ++ find_package(Qt5 REQUIRED COMPONENTS Core Network CONFIG) + endif() ++ set(MYGPO_QT_VERSION_SUFFIX 5) ++ ++ macro(qt_wrap_cpp) ++ qt5_wrap_cpp(${ARGN}) ++ endmacro() + + # pkg-config names of QtCore and QtNetwork are Qt5Core and Qt5Network for + # Qt5 + set(MYGPO_QT_MAJOR_VERSION "5") + set(MYGPO_QT4_QJSON_DEP "") +-endif() +- +-if( NOT Qt5Core_DIR ) ++else() + message(STATUS "Could not find Qt5, searching for Qt4 instead...") + message(STATUS "Qt4 Support is deprecated, building with Qt4 is no longer officially supported") + if( MYGPO_BUILD_TESTS ) diff --git a/gnu/packages/patches/liboop-mips64-deplibs-fix.patch b/gnu/packages/patches/liboop-mips64-deplibs-fix.patch deleted file mode 100644 index b91754a8cc..0000000000 --- a/gnu/packages/patches/liboop-mips64-deplibs-fix.patch +++ /dev/null @@ -1,17 +0,0 @@ -Patch configure script to choose pass_all deplibs check method for -linux-gnu* systems on mips64. This is a temporary hack until liboop -bootstraps their build system with a newer libtool. - -Patch by Mark H Weaver <mhw@netris.org>. - ---- liboop/configure.orig 2003-10-26 11:41:19.000000000 -0500 -+++ liboop/configure 2013-11-02 18:09:11.079995796 -0400 -@@ -3395,7 +3395,7 @@ - # This must be Linux ELF. - linux*) - case $host_cpu in -- alpha* | hppa* | i*86 | ia64* | m68* | mips | mipsel | powerpc* | sparc* | s390* | sh*) -+ alpha* | hppa* | i*86 | ia64* | m68* | mips | mipsel | mips64 | mips64el | powerpc* | sparc* | s390* | sh*) - lt_cv_deplibs_check_method=pass_all ;; - *) - # glibc up to 2.1.1 does not perform some relocations on ARM diff --git a/gnu/packages/patches/libusb-for-axoloti.patch b/gnu/packages/patches/libusb-for-axoloti.patch index 76a45e801d..fb94c489b0 100644 --- a/gnu/packages/patches/libusb-for-axoloti.patch +++ b/gnu/packages/patches/libusb-for-axoloti.patch @@ -1,8 +1,8 @@ -diff -rpu4 libusb-1.0.22.orig/libusb/descriptor.c libusb-1.0.22/libusb/descriptor.c ---- libusb-1.0.22.orig/libusb/descriptor.c 2018-03-17 08:23:37.000000000 +0100 -+++ libusb-1.0.22/libusb/descriptor.c 2018-03-29 10:36:09.968429473 +0200 -@@ -1173,9 +1173,9 @@ int API_EXPORTED libusb_get_string_descr - if (tbuf[1] != LIBUSB_DT_STRING) +diff --git a/libusb/descriptor.c b/libusb/descriptor.c +index 74d6de5..0b0e314 100644 +--- a/libusb/descriptor.c ++++ b/libusb/descriptor.c +@@ -1174,7 +1174,7 @@ int API_EXPORTED libusb_get_string_descriptor_ascii(libusb_device_handle *dev_ha return LIBUSB_ERROR_IO; if (tbuf[0] > r) @@ -11,4 +11,6 @@ diff -rpu4 libusb-1.0.22.orig/libusb/descriptor.c libusb-1.0.22/libusb/descripto di = 0; for (si = 2; si < tbuf[0]; si += 2) { - if (di >= (length - 1)) +-- +2.17.0 + diff --git a/gnu/packages/patches/libutils-add-includes.patch b/gnu/packages/patches/libutils-add-includes.patch new file mode 100644 index 0000000000..354c59b735 --- /dev/null +++ b/gnu/packages/patches/libutils-add-includes.patch @@ -0,0 +1,11 @@ +--- a/libutils/CallStack.cpp 2018-04-25 20:13:06.348665241 +0200 ++++ b/libutils/CallStack.cpp 2018-04-25 20:13:18.360510763 +0200 +@@ -17,7 +17,7 @@ + #define LOG_TAG "CallStack" + + #include <memory> +- ++#include <cstdlib> + #include <utils/CallStack.h> + #include <utils/Printer.h> + #include <utils/Errors.h> diff --git a/gnu/packages/patches/libutils-remove-damaging-includes.patch b/gnu/packages/patches/libutils-remove-damaging-includes.patch new file mode 100644 index 0000000000..7867dd3b80 --- /dev/null +++ b/gnu/packages/patches/libutils-remove-damaging-includes.patch @@ -0,0 +1,21 @@ +--- a/include/utils/StrongPointer.h 2018-04-25 18:42:34.321003602 +0200 ++++ b/include/utils/StrongPointer.h 2018-04-25 18:42:42.180912201 +0200 +@@ -17,8 +17,6 @@ + #ifndef ANDROID_STRONG_POINTER_H + #define ANDROID_STRONG_POINTER_H + +-#include <cutils/atomic.h> +- + #include <stdint.h> + #include <sys/types.h> + #include <stdlib.h> +--- a/libutils/Trace.cpp 2018-04-25 20:41:48.775049786 +0200 ++++ b/libutils/Trace.cpp 2018-04-25 20:42:13.674744182 +0200 +@@ -21,5 +21,7 @@ + + static void traceInit() + { ++#if defined(__ANDROID__) + ::android::add_sysprop_change_callback(atrace_update_tags, 0); ++#endif + } diff --git a/gnu/packages/patches/libziparchive-add-includes.patch b/gnu/packages/patches/libziparchive-add-includes.patch new file mode 100644 index 0000000000..41137105a0 --- /dev/null +++ b/gnu/packages/patches/libziparchive-add-includes.patch @@ -0,0 +1,10 @@ +--- a/libziparchive/zip_writer.cc 2018-04-25 22:33:05.472674164 +0200 ++++ b/libziparchive/zip_writer.cc 2018-04-25 22:33:21.296519518 +0200 +@@ -22,6 +22,7 @@ + + #include <sys/param.h> + ++#include <cstring> + #include <cassert> + #include <cstdio> + #include <memory> diff --git a/gnu/packages/patches/mupdf-CVE-2017-17858.patch b/gnu/packages/patches/mupdf-CVE-2017-17858.patch deleted file mode 100644 index 66df127509..0000000000 --- a/gnu/packages/patches/mupdf-CVE-2017-17858.patch +++ /dev/null @@ -1,111 +0,0 @@ -Fix CVE-2017-17858: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2017-17858 -https://bugs.ghostscript.com/show_bug.cgi?id=698819 -https://github.com/mzet-/Security-Advisories/blob/master/mzet-adv-2017-01.md - -Patch copied from upstream source repository: - -https://git.ghostscript.com/?p=mupdf.git;a=commit;h=55c3f68d638ac1263a386e0aaa004bb6e8bde731 - -From 55c3f68d638ac1263a386e0aaa004bb6e8bde731 Mon Sep 17 00:00:00 2001 -From: Sebastian Rasmussen <sebras@gmail.com> -Date: Mon, 11 Dec 2017 14:09:15 +0100 -Subject: [PATCH] Bugs 698804/698810/698811: Keep PDF object numbers below - limit. - -This ensures that: - * xref tables with objects pointers do not grow out of bounds. - * other readers, e.g. Adobe Acrobat can parse PDFs written by mupdf. ---- - include/mupdf/pdf/object.h | 3 +++ - source/pdf/pdf-repair.c | 5 +---- - source/pdf/pdf-xref.c | 21 ++++++++++++--------- - 3 files changed, 16 insertions(+), 13 deletions(-) - -diff --git a/include/mupdf/pdf/object.h b/include/mupdf/pdf/object.h -index 21ed8595..4177112b 100644 ---- a/include/mupdf/pdf/object.h -+++ b/include/mupdf/pdf/object.h -@@ -3,6 +3,9 @@ - - typedef struct pdf_document_s pdf_document; - -+/* Defined in PDF 1.7 according to Acrobat limit. */ -+#define PDF_MAX_OBJECT_NUMBER 8388607 -+ - /* - * Dynamic objects. - * The same type of objects as found in PDF and PostScript. -diff --git a/source/pdf/pdf-repair.c b/source/pdf/pdf-repair.c -index ca149bd3..0c29758e 100644 ---- a/source/pdf/pdf-repair.c -+++ b/source/pdf/pdf-repair.c -@@ -6,9 +6,6 @@ - - /* Scan file for objects and reconstruct xref table */ - --/* Define in PDF 1.7 to be 8388607, but mupdf is more lenient. */ --#define MAX_OBJECT_NUMBER (10 << 20) -- - struct entry - { - int num; -@@ -436,7 +433,7 @@ pdf_repair_xref(fz_context *ctx, pdf_document *doc) - break; - } - -- if (num <= 0 || num > MAX_OBJECT_NUMBER) -+ if (num <= 0 || num > PDF_MAX_OBJECT_NUMBER) - { - fz_warn(ctx, "ignoring object with invalid object number (%d %d R)", num, gen); - goto have_next_token; -diff --git a/source/pdf/pdf-xref.c b/source/pdf/pdf-xref.c -index 00586dbd..6284e70b 100644 ---- a/source/pdf/pdf-xref.c -+++ b/source/pdf/pdf-xref.c -@@ -868,11 +868,12 @@ pdf_read_old_xref(fz_context *ctx, pdf_document *doc, pdf_lexbuf *buf) - fz_seek(ctx, file, -(2 + (int)strlen(s)), SEEK_CUR); - } - -- if (ofs < 0) -- fz_throw(ctx, FZ_ERROR_GENERIC, "out of range object num in xref: %d", (int)ofs); -- if (ofs > INT64_MAX - len) -- fz_throw(ctx, FZ_ERROR_GENERIC, "xref section object numbers too big"); -- -+ if (ofs < 0 || ofs > PDF_MAX_OBJECT_NUMBER -+ || len < 0 || len > PDF_MAX_OBJECT_NUMBER -+ || ofs + len - 1 > PDF_MAX_OBJECT_NUMBER) -+ { -+ fz_throw(ctx, FZ_ERROR_GENERIC, "xref subsection object numbers are out of range"); -+ } - /* broken pdfs where size in trailer undershoots entries in xref sections */ - if (ofs + len > xref_len) - { -@@ -933,10 +934,8 @@ pdf_read_new_xref_section(fz_context *ctx, pdf_document *doc, fz_stream *stm, in - pdf_xref_entry *table; - int i, n; - -- if (i0 < 0 || i1 < 0 || i0 > INT_MAX - i1) -- fz_throw(ctx, FZ_ERROR_GENERIC, "negative xref stream entry index"); -- //if (i0 + i1 > pdf_xref_len(ctx, doc)) -- // fz_throw(ctx, FZ_ERROR_GENERIC, "xref stream has too many entries"); -+ if (i0 < 0 || i0 > PDF_MAX_OBJECT_NUMBER || i1 < 0 || i1 > PDF_MAX_OBJECT_NUMBER || i0 + i1 - 1 > PDF_MAX_OBJECT_NUMBER) -+ fz_throw(ctx, FZ_ERROR_GENERIC, "xref subsection object numbers are out of range"); - - table = pdf_xref_find_subsection(ctx, doc, i0, i1); - for (i = i0; i < i0 + i1; i++) -@@ -2086,6 +2085,10 @@ pdf_create_object(fz_context *ctx, pdf_document *doc) - /* TODO: reuse free object slots by properly linking free object chains in the ofs field */ - pdf_xref_entry *entry; - int num = pdf_xref_len(ctx, doc); -+ -+ if (num > PDF_MAX_OBJECT_NUMBER) -+ fz_throw(ctx, FZ_ERROR_GENERIC, "too many objects stored in pdf"); -+ - entry = pdf_get_incremental_xref_entry(ctx, doc, num); - entry->type = 'f'; - entry->ofs = -1; --- -2.16.1 - diff --git a/gnu/packages/patches/mupdf-CVE-2018-1000051.patch b/gnu/packages/patches/mupdf-CVE-2018-1000051.patch deleted file mode 100644 index bb78c46f80..0000000000 --- a/gnu/packages/patches/mupdf-CVE-2018-1000051.patch +++ /dev/null @@ -1,88 +0,0 @@ -Fix CVE-2018-1000051: - -https://bugs.ghostscript.com/show_bug.cgi?id=698873 -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-1000051 - -Patch copied from upstream source repository: - -https://git.ghostscript.com/?p=mupdf.git;a=commit;h=321ba1de287016b0036bf4a56ce774ad11763384 - -From 321ba1de287016b0036bf4a56ce774ad11763384 Mon Sep 17 00:00:00 2001 -From: Sebastian Rasmussen <sebras@gmail.com> -Date: Tue, 19 Dec 2017 23:47:47 +0100 -Subject: [PATCH] Bug 698825: Do not drop borrowed colorspaces. - -Previously the borrowed colorspace was dropped when updating annotation -appearances, leading to use after free warnings from valgrind/ASAN. ---- - source/pdf/pdf-appearance.c | 8 ++------ - 1 file changed, 2 insertions(+), 6 deletions(-) - -diff --git a/source/pdf/pdf-appearance.c b/source/pdf/pdf-appearance.c -index 70f684f4..d7a1dddd 100644 ---- a/source/pdf/pdf-appearance.c -+++ b/source/pdf/pdf-appearance.c -@@ -2170,7 +2170,6 @@ void pdf_update_free_text_annot_appearance(fz_context *ctx, pdf_document *doc, p - fz_device *dev = NULL; - font_info font_rec; - fz_text *text = NULL; -- fz_colorspace *cs = NULL; - fz_matrix page_ctm; - - pdf_page_transform(ctx, annot->page, NULL, &page_ctm); -@@ -2184,11 +2183,11 @@ void pdf_update_free_text_annot_appearance(fz_context *ctx, pdf_document *doc, p - fz_var(dlist); - fz_var(dev); - fz_var(text); -- fz_var(cs); - fz_try(ctx) - { - char *contents = pdf_to_str_buf(ctx, pdf_dict_get(ctx, obj, PDF_NAME_Contents)); - char *da = pdf_to_str_buf(ctx, pdf_dict_get(ctx, obj, PDF_NAME_DA)); -+ fz_colorspace *cs; - fz_point pos; - fz_rect rect; - -@@ -2223,7 +2222,6 @@ void pdf_update_free_text_annot_appearance(fz_context *ctx, pdf_document *doc, p - fz_drop_display_list(ctx, dlist); - font_info_fin(ctx, &font_rec); - fz_drop_text(ctx, text); -- fz_drop_colorspace(ctx, cs); - } - fz_catch(ctx) - { -@@ -2359,7 +2357,6 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot - fz_device *dev = NULL; - font_info font_rec; - fz_text *text = NULL; -- fz_colorspace *cs = NULL; - fz_path *path = NULL; - fz_buffer *fzbuf = NULL; - fz_matrix page_ctm; -@@ -2375,7 +2372,6 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot - fz_var(dlist); - fz_var(dev); - fz_var(text); -- fz_var(cs); - fz_var(fzbuf); - fz_try(ctx) - { -@@ -2384,6 +2380,7 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot - fz_rect logo_bounds; - fz_matrix logo_tm; - fz_rect rect; -+ fz_colorspace *cs = fz_device_rgb(ctx); /* Borrowed reference */ - - pdf_to_rect(ctx, pdf_dict_get(ctx, annot->obj, PDF_NAME_Rect), &annot_rect); - rect = annot_rect; -@@ -2396,7 +2393,6 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot - fz_bound_path(ctx, path, NULL, &fz_identity, &logo_bounds); - center_rect_within_rect(&logo_bounds, &rect, &logo_tm); - fz_concat(&logo_tm, &logo_tm, &page_ctm); -- cs = fz_device_rgb(ctx); /* Borrowed reference */ - fz_fill_path(ctx, dev, path, 0, &logo_tm, cs, logo_color, 1.0f, NULL); - - get_font_info(ctx, doc, dr, da, &font_rec); --- -2.16.3 - diff --git a/gnu/packages/patches/mupdf-CVE-2018-6544.patch b/gnu/packages/patches/mupdf-CVE-2018-6544.patch deleted file mode 100644 index b2c8f849f3..0000000000 --- a/gnu/packages/patches/mupdf-CVE-2018-6544.patch +++ /dev/null @@ -1,109 +0,0 @@ -Fix CVE-2018-6544: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-6544 -https://bugs.ghostscript.com/show_bug.cgi?id=698830 -https://bugs.ghostscript.com/show_bug.cgi?id=698965 - -Patches copied from upstream source repository: - -https://git.ghostscript.com/?p=mupdf.git;h=26527eef77b3e51c2258c8e40845bfbc015e405d -https://git.ghostscript.com/?p=mupdf.git;h=b03def134988da8c800adac1a38a41a1f09a1d89 - -From b03def134988da8c800adac1a38a41a1f09a1d89 Mon Sep 17 00:00:00 2001 -From: Sebastian Rasmussen <sebras@gmail.com> -Date: Thu, 1 Feb 2018 16:36:14 +0100 -Subject: [PATCH] Bug 698830: Avoid recursion when loading object streams - objects. - -If there were indirect references in the object stream dictionary and -one of those indirect references referred to an object inside the object -stream itself, mupdf would previously enter recursion only bounded by the -exception stack. After this commit the object stream is checked if it is -marked immediately after being loaded. If it is marked then we terminate -the recursion at this point, if it is not marked then mark it and -attempt to load the desired object within. We also take care to unmark -the stream object when done or upon exception. ---- - source/pdf/pdf-xref.c | 14 ++++++++++++++ - 1 file changed, 14 insertions(+) - -diff --git a/source/pdf/pdf-xref.c b/source/pdf/pdf-xref.c -index 723b543c..ed09094c 100644 ---- a/source/pdf/pdf-xref.c -+++ b/source/pdf/pdf-xref.c -@@ -1576,6 +1576,19 @@ pdf_load_obj_stm(fz_context *ctx, pdf_document *doc, int num, pdf_lexbuf *buf, i - { - objstm = pdf_load_object(ctx, doc, num); - -+ if (pdf_obj_marked(ctx, objstm)) -+ fz_throw(ctx, FZ_ERROR_GENERIC, "recursive object stream lookup"); -+ } -+ fz_catch(ctx) -+ { -+ pdf_drop_obj(ctx, objstm); -+ fz_rethrow(ctx); -+ } -+ -+ fz_try(ctx) -+ { -+ pdf_mark_obj(ctx, objstm); -+ - count = pdf_to_int(ctx, pdf_dict_get(ctx, objstm, PDF_NAME_N)); - first = pdf_to_int(ctx, pdf_dict_get(ctx, objstm, PDF_NAME_First)); - -@@ -1655,6 +1668,7 @@ pdf_load_obj_stm(fz_context *ctx, pdf_document *doc, int num, pdf_lexbuf *buf, i - fz_drop_stream(ctx, stm); - fz_free(ctx, ofsbuf); - fz_free(ctx, numbuf); -+ pdf_unmark_obj(ctx, objstm); - pdf_drop_obj(ctx, objstm); - } - fz_catch(ctx) --- -2.16.3 - -From 26527eef77b3e51c2258c8e40845bfbc015e405d Mon Sep 17 00:00:00 2001 -From: Sebastian Rasmussen <sebras@gmail.com> -Date: Mon, 29 Jan 2018 02:00:48 +0100 -Subject: [PATCH] Bug 698830: Don't drop unkept stream if running out of error - stack. - -Under normal conditions where fz_keep_stream() is called inside -fz_try() we may call fz_drop_stream() in fz_catch() upon exceptions. -The issue comes when fz_keep_stream() has not yet been called but is -dropped in fz_catch(). This happens in the PDF from the bug when -fz_try() runs out of exception stack, and next the code in fz_catch() -runs, dropping the caller's reference to the filter chain stream! - -The simplest way of fixing this it to always keep the filter chain -stream before fz_try() is called. That way fz_catch() may drop the -stream whether an exception has occurred or if the fz_try() ran out of -exception stack. ---- - source/pdf/pdf-stream.c | 5 ++--- - 1 file changed, 2 insertions(+), 3 deletions(-) - -diff --git a/source/pdf/pdf-stream.c b/source/pdf/pdf-stream.c -index c89da5c4..c6ba7ad3 100644 ---- a/source/pdf/pdf-stream.c -+++ b/source/pdf/pdf-stream.c -@@ -303,14 +303,13 @@ pdf_open_raw_filter(fz_context *ctx, fz_stream *chain, pdf_document *doc, pdf_ob - *orig_gen = 0; - } - -- fz_var(chain); -+ chain = fz_keep_stream(ctx, chain); - - fz_try(ctx) - { - len = pdf_to_int(ctx, pdf_dict_get(ctx, stmobj, PDF_NAME_Length)); - -- /* don't close chain when we close this filter */ -- chain2 = fz_keep_stream(ctx, chain); -+ chain2 = chain; - chain = NULL; - chain = fz_open_null(ctx, chain2, len, offset); - --- -2.16.3 - diff --git a/gnu/packages/patches/mupdf-build-with-latest-openjpeg.patch b/gnu/packages/patches/mupdf-build-with-latest-openjpeg.patch deleted file mode 100644 index d5c9c60242..0000000000 --- a/gnu/packages/patches/mupdf-build-with-latest-openjpeg.patch +++ /dev/null @@ -1,27 +0,0 @@ -Make it possible to build MuPDF with OpenJPEG 2.3, which is the latest -release series and contains many important bug fixes. - -Patch adapted from Debian: - -https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745246 - -And related to this upstream commit: - -http://git.ghostscript.com/?p=mupdf.git;a=commit;h=f88bfe2e62dbadb96d4f52d7aa025f0a516078da - -diff --git a/source/fitz/load-jpx.c b/source/fitz/load-jpx.c -index 65699ba..ea84778 100644 ---- a/source/fitz/load-jpx.c -+++ b/source/fitz/load-jpx.c -@@ -445,11 +445,6 @@ fz_load_jpx_info(fz_context *ctx, const unsigned char *data, size_t size, int *w - - #else /* HAVE_LURATECH */ - --#define OPJ_STATIC --#define OPJ_HAVE_INTTYPES_H --#if !defined(_MSC_VER) || _MSC_VER >= 1600 --#define OPJ_HAVE_STDINT_H --#endif - #define USE_JPIP - - #include <openjpeg.h> diff --git a/gnu/packages/patches/myrepos-CVE-2018-7032.patch b/gnu/packages/patches/myrepos-CVE-2018-7032.patch new file mode 100644 index 0000000000..ce9493e5f9 --- /dev/null +++ b/gnu/packages/patches/myrepos-CVE-2018-7032.patch @@ -0,0 +1,69 @@ +http://source.myrepos.branchable.com/?p=source.git;a=patch;h=40a3df21c73f1bb1b6915cc6fa503f50814664c8 +This can be removed with the next release. It was modified slightly to apply + +From 40a3df21c73f1bb1b6915cc6fa503f50814664c8 Mon Sep 17 00:00:00 2001 +From: Paul Wise <pabs3@bonedaddy.net> +Date: Sun, 11 Feb 2018 21:57:49 +0800 +Subject: [PATCH] Mitigate vulnerabilities caused by some git remotes being + able to execute code + +Set GIT_PROTOCOL_FROM_USER=0 with git versions newer than 2.12. + +Prevent remote websites from causing cloning of local repositories. + +Manually whitelist known-safe protocols (http, https, git, ssh) +when using git versions older than 2.12. + +Fixes: CVE-2018-7032 +Fixes: https://bugs.debian.org/840014 +Suggestions-by: Jakub Wilk <jwilk@jwilk.net> +Reported-by: Jakub Wilk <jwilk@jwilk.net> +--- + webcheckout | 22 +++++++++++++++++++++- + 1 file changed, 21 insertions(+), 1 deletion(-) + +diff --git a/webcheckout b/webcheckout +index e98da5c..de497ba 100755 +--- a/webcheckout ++++ b/webcheckout +@@ -71,6 +71,16 @@ use Getopt::Long; + use warnings; + use strict; + ++# Mitigate some git remote types being dangerous ++my $git_unsafe = 1; ++my $git_version = `git --version`; ++$git_version =~ s{^git version }{}; ++my ($major, $minor) = split(/\./, $git_version); ++if (int($major) >= 2 && int($minor) >= 12) { ++ $ENV{GIT_PROTOCOL_FROM_USER} = 0; ++ $git_unsafe = 0; ++} ++ + # What to download. + my $url; + +@@ -89,7 +99,17 @@ my $destdir; + + # how to perform checkouts + my %handlers=( +- git => sub { doit("git", "clone", shift, $destdir) }, +- svn => sub { doit("svn", "checkout", shift, $destdir) }, +- bzr => sub { doit("bzr", "branch", shift, $destdir) }, ++ git => sub { ++ my $git_url = shift; ++ # Reject unsafe URLs with older versions of git ++ # that do not already check the URL safety. ++ if ($git_unsafe && $git_url !~ m{^(?:(?:https?|git|ssh):[^:]|(?:[-_.A-Za-z0-9]+@)?[-_.A-Za-z0-9]+:(?!:|//))}) { ++ print STDERR "potentially unsafe git URL, may fail, touch local files or execute arbitrary code\n"; ++ return 1; ++ } ++ # Reject cloning local directories too, webcheckout is for remote repos ++ doit(qw(git -c protocol.file.allow=user clone --), $git_url, $destdir) ++ }, ++ svn => sub { doit(qw(svn checkout --), shift, $destdir) }, ++ bzr => sub { doit(qw(bzr branch --), shift, $destdir) }, + ); +-- +2.11.0 + diff --git a/gnu/packages/patches/perf-gcc-ice.patch b/gnu/packages/patches/perf-gcc-ice.patch new file mode 100644 index 0000000000..58ab5359c2 --- /dev/null +++ b/gnu/packages/patches/perf-gcc-ice.patch @@ -0,0 +1,13 @@ +Work around this GCC ICE: <https://bugs.gnu.org/31708>. + +--- linux-4.16.13/tools/perf/util/header.c 2018-06-04 11:30:39.368146035 +0200 ++++ linux-4.16.13/tools/perf/util/header.c 2018-06-04 11:34:04.667212378 +0200 +@@ -135,7 +135,7 @@ int do_write(struct feat_fd *ff, const v + int write_padded(struct feat_fd *ff, const void *bf, + size_t count, size_t count_aligned) + { +- static const char zero_buf[NAME_ALIGN]; ++ static const char zero_buf[NAME_ALIGN] = { 0 }; + int err = do_write(ff, bf, count); + + if (!err) diff --git a/gnu/packages/patches/pius.patch b/gnu/packages/patches/pius.patch new file mode 100644 index 0000000000..da39731d4d --- /dev/null +++ b/gnu/packages/patches/pius.patch @@ -0,0 +1,38 @@ +See https://github.com/jaymzh/pius/pull/96 + +commit 4dba0bf75ab351969622f7b9c38484657411a528 +Author: Martin Kletzander <nert.pinx+github@gmail.com> +Date: Thu May 17 17:55:27 2018 +0200 + + Don't fail on ENCRYPTION_COMPLIANCE_MODE line from too new GnuPG (#96) + + GnuPG started printing information about encryption compliance in [commit + f31dc2540acf](https://dev.gnupg.org/rGf31dc2540acf7cd7f09fd94658e815822222bfcb) + and since then signing with pius fails. + + Closes #95 + + Signed-off-by: Martin Kletzander <nert.pinx@gmail.com> + +diff --git a/libpius/signer.py b/libpius/signer.py +index 3c7262f..13013bb 100644 +--- a/libpius/signer.py ++++ b/libpius/signer.py +@@ -45,6 +45,7 @@ class PiusSigner(object): + GPG_PINENTRY_LAUNCHED = '[GNUPG:] PINENTRY_LAUNCHED' + GPG_KEY_CONSIDERED = '[GNUPG:] KEY_CONSIDERED' + GPG_WARN_VERSION = '[GNUPG:] WARNING server_version_mismatch' ++ GPG_ENC_COMPLIANT_MODE = '[GNUPG:] ENCRYPTION_COMPLIANCE_MODE' + + def __init__(self, signer, force_signer, mode, keyring, gpg_path, tmpdir, + outdir, encrypt_outfiles, mail, mailer, verbose, sort_keyring, +@@ -431,6 +432,9 @@ class PiusSigner(object): + if PiusSigner.GPG_ENC_BEG in line: + debug('Got GPG_ENC_BEG') + continue ++ elif PiusSigner.GPG_ENC_COMPLIANT_MODE in line: ++ debug('Got ENCRYPTION_COMPLIANCE_MODE') ++ continue + elif PiusSigner.GPG_ENC_END in line: + debug('Got GPG_ENC_END') + break diff --git a/gnu/packages/patches/python-statsmodels-fix-tests.patch b/gnu/packages/patches/python-statsmodels-fix-tests.patch deleted file mode 100644 index f910b4b5a5..0000000000 --- a/gnu/packages/patches/python-statsmodels-fix-tests.patch +++ /dev/null @@ -1,28 +0,0 @@ -This drops a test that fails with numpy 1.12. - -Upstream bug URL: https://github.com/statsmodels/statsmodels/issues/3541 - ---- a/statsmodels/discrete/tests/test_discrete.py 2017-03-06 15:29:19.947343331 +0000 -+++ b/statsmodels/discrete/tests/test_discrete.py 2017-03-06 15:29:37.759328845 +0000 -@@ -1329,21 +1329,6 @@ - res = mod.fit(start_params=-np.ones(4), method='newton', disp=0)
- assert_(not res.mle_retvals['converged'])
-
--def test_issue_339():
-- # make sure MNLogit summary works for J != K.
-- data = sm.datasets.anes96.load()
-- exog = data.exog
-- # leave out last exog column
-- exog = exog[:,:-1]
-- exog = sm.add_constant(exog, prepend=True)
-- res1 = sm.MNLogit(data.endog, exog).fit(method="newton", disp=0)
-- # strip the header from the test
-- smry = "\n".join(res1.summary().as_text().split('\n')[9:])
-- cur_dir = os.path.dirname(os.path.abspath(__file__))
-- test_case_file = os.path.join(cur_dir, 'results', 'mn_logit_summary.txt')
-- test_case = open(test_case_file, 'r').read()
-- np.testing.assert_equal(smry, test_case[:-1])
--
- def test_issue_341():
- data = sm.datasets.anes96.load()
- exog = data.exog
diff --git a/gnu/packages/patches/quassel-qt-5.11.patch b/gnu/packages/patches/quassel-qt-5.11.patch new file mode 100644 index 0000000000..545f8b7610 --- /dev/null +++ b/gnu/packages/patches/quassel-qt-5.11.patch @@ -0,0 +1,72 @@ +https://github.com/quassel/quassel/commit/92f4dca367c3a6f0536a1e0f3fbb44bb6ed4da62.patch +This can be removed after quassel 0.12.5. + +From 92f4dca367c3a6f0536a1e0f3fbb44bb6ed4da62 Mon Sep 17 00:00:00 2001 +From: Manuel Nickschas <sputnick@quassel-irc.org> +Date: Thu, 3 May 2018 23:19:34 +0200 +Subject: [PATCH] cmake: Fix build with Qt 5.11 + +Qt 5.11 removes the qt5_use_modules function, so add a copy. If +present, the Qt-provided function will be used instead. + +Closes GH-355. +--- + cmake/QuasselMacros.cmake | 38 ++++++++++++++++++++++++++++++++++++++ + 1 file changed, 38 insertions(+) + +diff --git a/cmake/QuasselMacros.cmake b/cmake/QuasselMacros.cmake +index 652c0042d..d77ba1cfb 100644 +--- a/cmake/QuasselMacros.cmake ++++ b/cmake/QuasselMacros.cmake +@@ -5,6 +5,9 @@ + # The qt4_use_modules function was taken from CMake's Qt4Macros.cmake: + # (C) 2005-2009 Kitware, Inc. + # ++# The qt5_use_modules function was taken from Qt 5.10.1 (and modified): ++# (C) 2005-2011 Kitware, Inc. ++# + # Redistribution and use is allowed according to the terms of the BSD license. + # For details see the accompanying COPYING-CMAKE-SCRIPTS file. + +@@ -43,6 +46,41 @@ function(qt4_use_modules _target _link_type) + endforeach() + endfunction() + ++# Qt 5.11 removed the qt5_use_modules function, so we need to provide it until we can switch to a modern CMake version. ++# If present, the Qt-provided version will be used automatically instead. ++function(qt5_use_modules _target _link_type) ++ if (NOT TARGET ${_target}) ++ message(FATAL_ERROR "The first argument to qt5_use_modules must be an existing target.") ++ endif() ++ if ("${_link_type}" STREQUAL "LINK_PUBLIC" OR "${_link_type}" STREQUAL "LINK_PRIVATE" ) ++ set(_qt5_modules ${ARGN}) ++ set(_qt5_link_type ${_link_type}) ++ else() ++ set(_qt5_modules ${_link_type} ${ARGN}) ++ endif() ++ ++ if ("${_qt5_modules}" STREQUAL "") ++ message(FATAL_ERROR "qt5_use_modules requires at least one Qt module to use.") ++ endif() ++ foreach(_module ${_qt5_modules}) ++ if (NOT Qt5${_module}_FOUND) ++ find_package(Qt5${_module} PATHS "${_Qt5_COMPONENT_PATH}" NO_DEFAULT_PATH) ++ if (NOT Qt5${_module}_FOUND) ++ message(FATAL_ERROR "Can not use \"${_module}\" module which has not yet been found.") ++ endif() ++ endif() ++ target_link_libraries(${_target} ${_qt5_link_type} ${Qt5${_module}_LIBRARIES}) ++ set_property(TARGET ${_target} APPEND PROPERTY INCLUDE_DIRECTORIES ${Qt5${_module}_INCLUDE_DIRS}) ++ set_property(TARGET ${_target} APPEND PROPERTY COMPILE_DEFINITIONS ${Qt5${_module}_COMPILE_DEFINITIONS}) ++ if (Qt5_POSITION_INDEPENDENT_CODE ++ AND (CMAKE_VERSION VERSION_LESS 2.8.12 ++ AND (NOT CMAKE_CXX_COMPILER_ID STREQUAL "GNU" ++ OR CMAKE_CXX_COMPILER_VERSION VERSION_LESS 5.0))) ++ set_property(TARGET ${_target} PROPERTY POSITION_INDEPENDENT_CODE ${Qt5_POSITION_INDEPENDENT_CODE}) ++ endif() ++ endforeach() ++endfunction() ++ + # Some wrappers for simplifying dual-Qt support + + function(qt_use_modules) diff --git a/gnu/packages/patches/sddm-fix-build-with-qt-5.11-1024.patch b/gnu/packages/patches/sddm-fix-build-with-qt-5.11-1024.patch new file mode 100644 index 0000000000..53c184230a --- /dev/null +++ b/gnu/packages/patches/sddm-fix-build-with-qt-5.11-1024.patch @@ -0,0 +1,28 @@ +diff --git a/CMakeLists.txt b/CMakeLists.txt +index 2efc649..8903b52 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -93,7 +95,7 @@ + find_package(XKB REQUIRED) + + # Qt 5 +-find_package(Qt5 5.6.0 CONFIG REQUIRED Core DBus Gui Qml Quick LinguistTools) ++find_package(Qt5 5.8.0 CONFIG REQUIRED Core DBus Gui Qml Quick LinguistTools Test) + + # find qt5 imports dir + get_target_property(QMAKE_EXECUTABLE Qt5::qmake LOCATION) +diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt +index c9d935a..bb85ddd 100644 +--- a/test/CMakeLists.txt ++++ b/test/CMakeLists.txt +@@ -2,9 +2,8 @@ + + include_directories(../src/common) + +- + set(ConfigurationTest_SRCS ConfigurationTest.cpp ../src/common/ConfigReader.cpp) + add_executable(ConfigurationTest ${ConfigurationTest_SRCS}) + add_test(NAME Configuration COMMAND ConfigurationTest) + +-qt5_use_modules(ConfigurationTest Test) ++target_link_libraries(ConfigurationTest Qt5::Core Qt5::Test) diff --git a/gnu/packages/patches/shadow-CVE-2018-7169.patch b/gnu/packages/patches/shadow-CVE-2018-7169.patch deleted file mode 100644 index eeae5b9b71..0000000000 --- a/gnu/packages/patches/shadow-CVE-2018-7169.patch +++ /dev/null @@ -1,191 +0,0 @@ -Fix CVE-2018-7169: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-7169 - -Patch copied from upstream source repository: - -https://github.com/shadow-maint/shadow/commit/fb28c99b8a66ff2605c5cb96abc0a4d975f92de0 - -From fb28c99b8a66ff2605c5cb96abc0a4d975f92de0 Mon Sep 17 00:00:00 2001 -From: Aleksa Sarai <asarai@suse.de> -Date: Thu, 15 Feb 2018 23:49:40 +1100 -Subject: [PATCH] newgidmap: enforce setgroups=deny if self-mapping a group - -This is necessary to match the kernel-side policy of "self-mapping in a -user namespace is fine, but you cannot drop groups" -- a policy that was -created in order to stop user namespaces from allowing trivial privilege -escalation by dropping supplementary groups that were "blacklisted" from -certain paths. - -This is the simplest fix for the underlying issue, and effectively makes -it so that unless a user has a valid mapping set in /etc/subgid (which -only administrators can modify) -- and they are currently trying to use -that mapping -- then /proc/$pid/setgroups will be set to deny. This -workaround is only partial, because ideally it should be possible to set -an "allow_setgroups" or "deny_setgroups" flag in /etc/subgid to allow -administrators to further restrict newgidmap(1). - -We also don't write anything in the "allow" case because "allow" is the -default, and users may have already written "deny" even if they -technically are allowed to use setgroups. And we don't write anything if -the setgroups policy is already "deny". - -Ref: https://bugs.launchpad.net/ubuntu/+source/shadow/+bug/1729357 -Fixes: CVE-2018-7169 -Reported-by: Craig Furman <craig.furman89@gmail.com> -Signed-off-by: Aleksa Sarai <asarai@suse.de> ---- - src/newgidmap.c | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++------ - 1 file changed, 80 insertions(+), 9 deletions(-) - -diff --git a/src/newgidmap.c b/src/newgidmap.c -index b1e33513..59a2e75c 100644 ---- a/src/newgidmap.c -+++ b/src/newgidmap.c -@@ -46,32 +46,37 @@ - */ - const char *Prog; - --static bool verify_range(struct passwd *pw, struct map_range *range) -+ -+static bool verify_range(struct passwd *pw, struct map_range *range, bool *allow_setgroups) - { - /* An empty range is invalid */ - if (range->count == 0) - return false; - -- /* Test /etc/subgid */ -- if (have_sub_gids(pw->pw_name, range->lower, range->count)) -+ /* Test /etc/subgid. If the mapping is valid then we allow setgroups. */ -+ if (have_sub_gids(pw->pw_name, range->lower, range->count)) { -+ *allow_setgroups = true; - return true; -+ } - -- /* Allow a process to map its own gid */ -- if ((range->count == 1) && (pw->pw_gid == range->lower)) -+ /* Allow a process to map its own gid. */ -+ if ((range->count == 1) && (pw->pw_gid == range->lower)) { -+ /* noop -- if setgroups is enabled already we won't disable it. */ - return true; -+ } - - return false; - } - - static void verify_ranges(struct passwd *pw, int ranges, -- struct map_range *mappings) -+ struct map_range *mappings, bool *allow_setgroups) - { - struct map_range *mapping; - int idx; - - mapping = mappings; - for (idx = 0; idx < ranges; idx++, mapping++) { -- if (!verify_range(pw, mapping)) { -+ if (!verify_range(pw, mapping, allow_setgroups)) { - fprintf(stderr, _( "%s: gid range [%lu-%lu) -> [%lu-%lu) not allowed\n"), - Prog, - mapping->upper, -@@ -89,6 +94,70 @@ static void usage(void) - exit(EXIT_FAILURE); - } - -+void write_setgroups(int proc_dir_fd, bool allow_setgroups) -+{ -+ int setgroups_fd; -+ char *policy, policy_buffer[4096]; -+ -+ /* -+ * Default is "deny", and any "allow" will out-rank a "deny". We don't -+ * forcefully write an "allow" here because the process we are writing -+ * mappings for may have already set themselves to "deny" (and "allow" -+ * is the default anyway). So allow_setgroups == true is a noop. -+ */ -+ policy = "deny\n"; -+ if (allow_setgroups) -+ return; -+ -+ setgroups_fd = openat(proc_dir_fd, "setgroups", O_RDWR|O_CLOEXEC); -+ if (setgroups_fd < 0) { -+ /* -+ * If it's an ENOENT then we are on too old a kernel for the setgroups -+ * code to exist. Emit a warning and bail on this. -+ */ -+ if (ENOENT == errno) { -+ fprintf(stderr, _("%s: kernel doesn't support setgroups restrictions\n"), Prog); -+ goto out; -+ } -+ fprintf(stderr, _("%s: couldn't open process setgroups: %s\n"), -+ Prog, -+ strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ -+ /* -+ * Check whether the policy is already what we want. /proc/self/setgroups -+ * is write-once, so attempting to write after it's already written to will -+ * fail. -+ */ -+ if (read(setgroups_fd, policy_buffer, sizeof(policy_buffer)) < 0) { -+ fprintf(stderr, _("%s: failed to read setgroups: %s\n"), -+ Prog, -+ strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ if (!strncmp(policy_buffer, policy, strlen(policy))) -+ goto out; -+ -+ /* Write the policy. */ -+ if (lseek(setgroups_fd, 0, SEEK_SET) < 0) { -+ fprintf(stderr, _("%s: failed to seek setgroups: %s\n"), -+ Prog, -+ strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ if (dprintf(setgroups_fd, "%s", policy) < 0) { -+ fprintf(stderr, _("%s: failed to setgroups %s policy: %s\n"), -+ Prog, -+ policy, -+ strerror(errno)); -+ exit(EXIT_FAILURE); -+ } -+ -+out: -+ close(setgroups_fd); -+} -+ - /* - * newgidmap - Set the gid_map for the specified process - */ -@@ -103,6 +172,7 @@ int main(int argc, char **argv) - struct stat st; - struct passwd *pw; - int written; -+ bool allow_setgroups = false; - - Prog = Basename (argv[0]); - -@@ -145,7 +215,7 @@ int main(int argc, char **argv) - (unsigned long) getuid ())); - return EXIT_FAILURE; - } -- -+ - /* Get the effective uid and effective gid of the target process */ - if (fstat(proc_dir_fd, &st) < 0) { - fprintf(stderr, _("%s: Could not stat directory for target %u\n"), -@@ -177,8 +247,9 @@ int main(int argc, char **argv) - if (!mappings) - usage(); - -- verify_ranges(pw, ranges, mappings); -+ verify_ranges(pw, ranges, mappings, &allow_setgroups); - -+ write_setgroups(proc_dir_fd, allow_setgroups); - write_mapping(proc_dir_fd, ranges, mappings, "gid_map"); - sub_gid_close(); - --- -2.16.2 - diff --git a/gnu/packages/patches/strace-kernel-4.16.patch b/gnu/packages/patches/strace-kernel-4.16.patch new file mode 100644 index 0000000000..e86d3be439 --- /dev/null +++ b/gnu/packages/patches/strace-kernel-4.16.patch @@ -0,0 +1,92 @@ +Fix test failure when using Linux-Libre >= 4.16. + +Taken from upstream: +https://github.com/strace/strace/commit/bcff87c31c0f27c678a43d6b7f67dab363a974fa + +From bcff87c31c0f27c678a43d6b7f67dab363a974fa Mon Sep 17 00:00:00 2001 +From: Masatake YAMATO <yamato@redhat.com> +Date: Wed, 2 May 2018 17:11:07 +0900 +Subject: [PATCH] tests/ioctl_kvm_run.c: handle cpuid at the end of vcpu dentry + +Since Linux 4.16, kernel appends the cpuid as suffix to the entry +for a kvm vcpu in /proc/$pid/fd like: + + anon_inode:kvm-vcpu:0 + +That was + + anon_inode:kvm-vcpu + +This kernel change causes the test case failure on newer kernels. +Update the test to deal with the new name as well as the old one. + +* tests/ioctl_kvm_run.c: Include unistd.h for using readlink(2). +(vcpu_dev_should_have_cpuid): New function for detecting whether +a proc entry for given fd has the cpuid suffix or not. +(main): Trim vcpu_dev to remove the cpuid suffix if needed. +(vcpu_dev): Remove const modifier. +--- + tests/ioctl_kvm_run.c | 29 ++++++++++++++++++++++++++++- + 1 file changed, 28 insertions(+), 1 deletion(-) + +diff --git a/tests/ioctl_kvm_run.c b/tests/ioctl_kvm_run.c +index 179461430..e1bef5796 100644 +--- a/tests/ioctl_kvm_run.c ++++ b/tests/ioctl_kvm_run.c +@@ -40,6 +40,7 @@ + # include <string.h> + # include <sys/ioctl.h> + # include <sys/mman.h> ++# include <unistd.h> + # include <linux/kvm.h> + + static int +@@ -56,7 +57,7 @@ kvm_ioctl(int fd, unsigned long cmd, const char *cmd_str, void *arg) + + static const char dev[] = "/dev/kvm"; + static const char vm_dev[] = "anon_inode:kvm-vm"; +-static const char vcpu_dev[] = "anon_inode:kvm-vcpu"; ++static char vcpu_dev[] = "anon_inode:kvm-vcpu:0"; + static size_t page_size; + + extern const char code[]; +@@ -165,6 +166,23 @@ run_kvm(const int vcpu_fd, struct kvm_run *const run, const size_t mmap_size, + } + } + ++static int ++vcpu_dev_should_have_cpuid(int fd) ++{ ++ int r = 0; ++ char *filename = NULL; ++ char buf[sizeof(vcpu_dev)]; ++ ++ if (asprintf(&filename, "/proc/%d/fd/%d", getpid(), fd) < 0) ++ error_msg_and_fail("asprintf"); ++ ++ if (readlink(filename, buf, sizeof(buf)) == sizeof(buf) - 1 ++ && (memcmp(buf, vcpu_dev, sizeof(buf) - 1) == 0)) ++ r = 1; ++ free(filename); ++ return r; ++} ++ + int + main(void) + { +@@ -208,6 +226,15 @@ main(void) + (unsigned long) page_size, (unsigned long) page_size, mem); + + int vcpu_fd = KVM_IOCTL(vm_fd, KVM_CREATE_VCPU, NULL); ++ if (!vcpu_dev_should_have_cpuid(vcpu_fd)) ++ /* ++ * This is an older kernel that doesn't place a cpuid ++ * at the end of the dentry associated with vcpu_fd. ++ * Trim the cpuid part of vcpu_dev like: ++ * "anon_inode:kvm-vcpu:0" -> "anon_inode:kvm-vcpu" ++ */ ++ vcpu_dev[strlen (vcpu_dev) - 2] = '\0'; ++ + printf("ioctl(%d<%s>, KVM_CREATE_VCPU, 0) = %d<%s>\n", + vm_fd, vm_dev, vcpu_fd, vcpu_dev); + diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index ca3a601826..a215fce034 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -5,12 +5,12 @@ ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2016 Roel Janssen <roel@gnu.org> ;;; Copyright © 2016 Nils Gillmann <ng0@n0.is> -;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2016 Arun Isaac <arunisaac@systemreboot.net> -;;; Copyright © 2017 Leo Famulari <leo@famulari.name> +;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> @@ -124,6 +124,36 @@ (license license:gpl2+) (home-page "https://poppler.freedesktop.org/"))) +(define-public poppler-data + (package + (name "poppler-data") + (version "0.4.9") + (source (origin + (method url-fetch) + (uri (string-append "https://poppler.freedesktop.org/poppler-data" + "-" version ".tar.gz")) + (sha256 + (base32 + "04i0wgdkn5lhda8cyxd1ll4a2p41pwqrwd47n9mdpl7cx5ypx70z")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ; no test suite + #:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + ;; The package only provides some data files, so there is nothing to + ;; build. + (delete 'configure) + (delete 'build)))) + (synopsis "Poppler encoding files for rendering of CJK and Cyrillic text") + (description "This package provides optional encoding files for Poppler. +When present, Poppler is able to correctly render CJK and Cyrillic text.") + (home-page (package-home-page poppler)) + ;; See COPYING in the source distribution for more information about + ;; the licensing. + (license (list license:bsd-3 + license:gpl2)))) + (define-public poppler-qt4 (package (inherit poppler) (name "poppler-qt4") @@ -567,19 +597,15 @@ extracting content or merging files.") (define-public mupdf (package (name "mupdf") - (version "1.12.0") + (version "1.13.0") (source (origin (method url-fetch) (uri (string-append "https://mupdf.com/downloads/archive/" name "-" version "-source.tar.xz")) - (patches (search-patches "mupdf-build-with-latest-openjpeg.patch" - "mupdf-CVE-2017-17858.patch" - "mupdf-CVE-2018-6544.patch" - "mupdf-CVE-2018-1000051.patch")) (sha256 (base32 - "0b9j0gqbc3jhmx87r6idcsh8lnb30840c3hyx6dk2gdjqqh3hysp")) + "0129k92bav692l6lyw10ryldx7h2f9khjpgnp3f3n4fdsph9hrkl")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "thirdparty") #t)))) (build-system gnu-build-system) @@ -676,7 +702,7 @@ program capable of converting PDF into other formats.") (define-public xournal (package (name "xournal") - (version "0.4.8") + (version "0.4.8.2016") (source (origin (method url-fetch) @@ -684,7 +710,7 @@ program capable of converting PDF into other formats.") "/xournal-" version ".tar.gz")) (sha256 (base32 - "0c7gjcqhygiyp0ypaipdaxgkbivg6q45vhsj8v5jsi9nh6iqff13")))) + "09i88v3wacmx7f96dmq0l3afpyv95lh6jrx16xzm0jd1szdrhn5j")))) (build-system gnu-build-system) (inputs `(("gtk" ,gtk+-2) @@ -959,7 +985,7 @@ PDF. Indeed @command{pdfposter} was inspired by @command{poster}.") (define-public pdfgrep (package (name "pdfgrep") - (version "2.0.1") + (version "2.1.1") (source (origin (method url-fetch) @@ -967,7 +993,7 @@ PDF. Indeed @command{pdfposter} was inspired by @command{poster}.") name "-" version ".tar.gz")) (sha256 (base32 - "07llkrkcfjwd3ybai9ad10ybhr0biffcplmy7lw4fb87nd2dfw03")))) + "02qcl5kmr5qzjfc99qpbpfb1890bxlrq3r208gnding51zrmb09c")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/perl-check.scm b/gnu/packages/perl-check.scm index 9c17733d4c..a1be996e04 100644 --- a/gnu/packages/perl-check.scm +++ b/gnu/packages/perl-check.scm @@ -1236,7 +1236,7 @@ plan, or not, and things will still Just Work.") (define-public perl-test-without-module (package (name "perl-test-without-module") - (version "0.18") + (version "0.20") (source (origin (method url-fetch) @@ -1244,7 +1244,7 @@ plan, or not, and things will still Just Work.") "Test-Without-Module-" version ".tar.gz")) (sha256 (base32 - "0zwc2dk5srd02j4p049w77m89iw5nbff381rmhcbaz8x2w5kdhz2")))) + "0955ib9cz1naz7a2v6lx78kj29q7ihmdn51im6wd1im669yfp6lf")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Test-Without-Module/") (synopsis "Test fallback behaviour in absence of modules") diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index c4228e4e05..2d2bb62a78 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1140,7 +1140,7 @@ loaded class.") (define-public perl-class-load (package (name "perl-class-load") - (version "0.23") + (version "0.24") (source (origin (method url-fetch) @@ -1148,12 +1148,13 @@ loaded class.") "Class-Load-" version ".tar.gz")) (sha256 (base32 - "13xjfh4fadq4pkq7fcj42b26544jl7gqdg2y3imnra9fwxwsbg7j")))) + "0dnacm959vi5819h6cdl5qpi89fr81p6smbsqx7m6in18vd87f8b")))) (build-system perl-build-system) (native-inputs `(("perl-module-build-tiny" ,perl-module-build-tiny) ("perl-test-fatal" ,perl-test-fatal) - ("perl-test-requires" ,perl-test-requires))) + ("perl-test-needs" ,perl-test-needs) + ("perl-test-without-module" ,perl-test-without-module))) (propagated-inputs `(("perl-package-stash" ,perl-package-stash) ("perl-data-optlist" ,perl-data-optlist) @@ -1170,7 +1171,7 @@ names, not Class::Name. For that, this module provides \"load_class (define-public perl-class-load-xs (package (name "perl-class-load-xs") - (version "0.09") + (version "0.10") (source (origin (method url-fetch) @@ -1178,11 +1179,12 @@ names, not Class::Name. For that, this module provides \"load_class "Class-Load-XS-" version ".tar.gz")) (sha256 (base32 - "1aivalms81s3a2cj053ncgnmkpgl7vspna8ajlkqir7rdn8kpv5v")))) + "1ldd4a306hjagm5v9j0gjg8y7km4v3q45bxxqmj2bzgb6vsjrhjv")))) (build-system perl-build-system) (native-inputs `(("perl-test-fatal" ,perl-test-fatal) - ("perl-test-requires" ,perl-test-requires))) + ("perl-test-needs" ,perl-test-needs) + ("perl-test-without-module" ,perl-test-without-module))) (inputs `(("perl-class-load" ,perl-class-load))) (home-page "http://search.cpan.org/dist/Class-Load-XS/") (synopsis "XS implementation of parts of Class::Load") @@ -1472,7 +1474,7 @@ and writing of @code{.ini}-style configuration files.") (define-public perl-context-preserve (package (name "perl-context-preserve") - (version "0.02") + (version "0.03") (source (origin (method url-fetch) @@ -1480,7 +1482,7 @@ and writing of @code{.ini}-style configuration files.") "Context-Preserve-" version ".tar.gz")) (sha256 (base32 - "0qkjj1qifr87zlfpfnn21gdyrpfgilh8zp3b53008m2ax02k87gc")))) + "07zxgmb11bn4zj3w9g1zwbb9iv4jyk5q7hc0nv59knvv5i64m489")))) (build-system perl-build-system) (native-inputs `(("perl-test-exception" ,perl-test-exception) @@ -2154,7 +2156,7 @@ hours, minutes, seconds, and time zones.") (define-public perl-datetime (package (name "perl-datetime") - (version "1.46") + (version "1.49") (source (origin (method url-fetch) @@ -2162,7 +2164,7 @@ hours, minutes, seconds, and time zones.") "DateTime-" version ".tar.gz")) (sha256 (base32 - "1247d2q2gm912bxj88a0sr5gvj2nx4a7n6z1smkq16iy21cziz79")))) + "0hbw4zq1562slnz7g7hyhfhyq98dzkk3i5g21x3xra5cvfix93kh")))) (build-system perl-build-system) (native-inputs `(("perl-cpan-meta-check" ,perl-cpan-meta-check) @@ -2455,7 +2457,7 @@ the DateTime.pm class.") (define-public perl-datetime-timezone (package (name "perl-datetime-timezone") - (version "2.17") + (version "2.19") (source (origin (method url-fetch) @@ -2463,7 +2465,7 @@ the DateTime.pm class.") "DateTime-TimeZone-" version ".tar.gz")) (sha256 (base32 - "1ckhjw7h545306b02p6ra60y8zxqnbqr2lsy7c1wib8libf0l2hx")))) + "1y54bsgq886sg35fgmxgj8wwmgs4l83qhwa0g3zv8w9d43z2w6dr")))) (build-system perl-build-system) (native-inputs `(("perl-test-fatal" ,perl-test-fatal) @@ -3079,7 +3081,7 @@ errors are rethrown automatically.") (define-public perl-exception-class (package (name "perl-exception-class") - (version "1.39") + (version "1.44") (source (origin (method url-fetch) @@ -3087,7 +3089,7 @@ errors are rethrown automatically.") "Exception-Class-" version ".tar.gz")) (sha256 (base32 - "10r06v6568s33p6h9f9ml0iabc07id86mjkf74gy7ld6d5m7b741")))) + "03gf4cdgrjnljgrlxkvbh2cahsyzn0zsh2zcli7b1lrqn7wgpwrk")))) (build-system perl-build-system) (propagated-inputs `(("perl-devel-stacktrace" ,perl-devel-stacktrace) @@ -3487,7 +3489,7 @@ file system.") (define-public perl-file-pushd (package (name "perl-file-pushd") - (version "1.014") + (version "1.016") (source (origin (method url-fetch) @@ -3497,7 +3499,7 @@ file system.") ".tar.gz")) (sha256 (base32 - "02rlqvyy7gly3dsqwaa81aisyy9c791b8xvwzczcbgmcwgzkgaxm")))) + "1p3wz5jnddd87wkwl4x3fc3ncprahdxdzwqd4scb10r98h4pyfnp")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/File-pushd/") @@ -3961,15 +3963,15 @@ merged.") (define-public perl-hash-multivalue (package (name "perl-hash-multivalue") - (version "0.15") + (version "0.16") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/" + (uri (string-append "mirror://cpan/authors/id/A/AR/ARISTOTLE/" "Hash-MultiValue-" version ".tar.gz")) (sha256 (base32 - "1jc37kwpa1fl88va8bd1p95h0vjv1gsvmn7pc2pxj62ga6x0wpc0")))) + "1x3k7h542xnigz0b8vsfiq580p5r325wi5b8mxppiqk8mbvis636")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Hash-MultiValue/") (synopsis "Store multiple values per key") @@ -4618,7 +4620,7 @@ one: logging, exceptions, and translations.") (define-public perl-libintl-perl (package (name "perl-libintl-perl") - (version "1.28") + (version "1.29") (source (origin (method url-fetch) @@ -4626,7 +4628,7 @@ one: logging, exceptions, and translations.") "libintl-perl-" version ".tar.gz")) (sha256 (base32 - "1gafrfvicjclqlz6i62jx2iqbq878yn3ws86waz2sqbd3gxz5svv")))) + "1cgvrgh4axd8jlr6497ndgphgvgnqc1axd306460hskdvc85z4vq")))) (build-system perl-build-system) (arguments `(#:phases @@ -4912,15 +4914,15 @@ return values, trading space for time.") (define-public perl-memoize-expirelru (package (name "perl-memoize-expirelru") - (version "0.55") + (version "0.56") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/B/BP/BPOWERS/" + (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/" "Memoize-ExpireLRU-" version ".tar.gz")) (sha256 (base32 - "0klk0vj78lr259mnv1rbxib8gzf2cfp4zhkhbcxyhadkkl73myvj")))) + "1xnp3jqabl4il5kfadlqimbxhzsbm7gpwrgw0m5s5fdsrc0n70zf")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Memoize-ExpireLRU/") (synopsis "Expiry plug-in for Memoize that adds LRU cache expiration") @@ -5176,15 +5178,15 @@ implementations.") (define-public perl-module-install (package (name "perl-module-install") - (version "1.14") + (version "1.19") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/B/BI/BINGOS/" + (uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/" "Module-Install-" version ".tar.gz")) (sha256 (base32 - "0j8dz87k60i1khd9xadd8kl6bgm9s5s5zl86rzsz5bq36siz00iz")))) + "06q12cm97yh4p7qbm0a2p96996ii6ss59qy57z0f7f9svy6sflqs")))) (build-system perl-build-system) (native-inputs `(("perl-yaml-tiny" ,perl-yaml-tiny))) @@ -5550,7 +5552,7 @@ overloads will \"just work\".") (define-public perl-moosex-methodattributes (package (name "perl-moosex-methodattributes") - (version "0.29") + (version "0.31") (source (origin (method url-fetch) @@ -5558,7 +5560,7 @@ overloads will \"just work\".") "MooseX-MethodAttributes-" version ".tar.gz")) (sha256 (base32 - "1pz3i67gadfmgzj87m1xp2ilcg3yhppdylcng2h6c11dy0a06hdk")))) + "1whd10w7bm3dwaj7gpgw40bci9vvb2zmxs4349ifji91hvinwqck")))) (build-system perl-build-system) (native-inputs `(("perl-module-build-tiny" ,perl-module-build-tiny) @@ -6003,7 +6005,7 @@ building is done in @code{MooX::ConfigFromFile::Role}---using (define-public perl-moox-file-configdir (package (name "perl-moox-file-configdir") - (version "0.006") + (version "0.007") (source (origin (method url-fetch) @@ -6011,7 +6013,7 @@ building is done in @code{MooX::ConfigFromFile::Role}---using "MooX-File-ConfigDir-" version ".tar.gz")) (sha256 (base32 - "0f808sq3627ymgf63zwgh705vv0nhwclxp89clhx8yl6hybcv7kx")))) + "074v150wrbddhy1n0qc8s80zrb71l3c4is968cnr06ac5l9kmshz")))) (build-system perl-build-system) (propagated-inputs `(("perl-file-configdir" ,perl-file-configdir) @@ -6976,7 +6978,7 @@ used for writing documentation for Perl and for Perl modules.") (define-public perl-posix-strftime-compiler (package (name "perl-posix-strftime-compiler") - (version "0.41") + (version "0.42") (source (origin (method url-fetch) @@ -6984,10 +6986,10 @@ used for writing documentation for Perl and for Perl modules.") "POSIX-strftime-Compiler-" version ".tar.gz")) (sha256 (base32 - "0f9p3hx0vqx8zg5v24pz0s4zc8ln100c7c91ks681wq02phqj2v7")))) + "04dcn2n4rfkj8p24vj2p17vvis40l87pf2vdqp0vqm5jg3fjnn16")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build))) - (arguments `(#:tests? #f)) ;TODO: Timezone test failures + (arguments `(#:tests? #f)) ; TODO: Timezone test failures (home-page "http://search.cpan.org/dist/POSIX-strftime-Compiler/") (synopsis "GNU C library compatible strftime for loggers and servers") (description "POSIX::strftime::Compiler provides GNU C library compatible @@ -8151,15 +8153,15 @@ used to justify strings to various alignment styles.") (define-public perl-text-balanced (package (name "perl-text-balanced") - (version "2.02") + (version "2.03") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/" + (uri (string-append "mirror://cpan/authors/id/S/SH/SHAY/" "Text-Balanced-" version ".tar.gz")) (sha256 (base32 - "1d3mba2sjpp044h16pkf231cksa34ripaz6rmgxp0ygpl917az57")))) + "1j4jjw6bg6ik8cn1mimw54rvg4h0qf4hm9k63y9572sny3w56xq5")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Text-Balanced/") (synopsis "Extract delimited text sequences from strings") @@ -8237,7 +8239,7 @@ generally slower on larger files.") (define-public perl-text-format (package (name "perl-text-format") - (version "0.60") + (version "0.61") (source (origin (method url-fetch) (uri (string-append @@ -8245,7 +8247,7 @@ generally slower on larger files.") version ".tar.gz")) (sha256 (base32 - "1f52jak0a2gwi4qcisp4nfbniq04dmmv5j8zkvzj8ik0f0sk2kv6")))) + "0axfyiml3zwawwd127z8rl2lm53z6dlsflzmp80m3j0myn7kp2mv")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build) @@ -9229,7 +9231,7 @@ recursive-descent text parsers from simple yacc-like grammar specifications.") (define-public perl-parse-yapp (package (name "perl-parse-yapp") - (version "1.2") + (version "1.21") (source (origin (method url-fetch) @@ -9239,7 +9241,7 @@ recursive-descent text parsers from simple yacc-like grammar specifications.") ".tar.gz")) (sha256 (base32 - "16p4qgqg28cy76ylcf4wq1r693gqpx8xq0w32b3564i67h49zljb")))) + "1r8kbyk0qd4ficmabj753kjpq0ib0csk01169w7jxflg62cfj41q")))) (build-system perl-build-system) (home-page "http://search.cpan.org/dist/Parse-Yapp/") (synopsis "Generate and use LALR parsers") diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index 2c0c2313f4..f2d3d60ecd 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -69,14 +69,14 @@ (define-public libraw (package (name "libraw") - (version "0.18.9") + (version "0.18.11") (source (origin (method url-fetch) (uri (string-append "https://www.libraw.org/data/LibRaw-" version ".tar.gz")) (sha256 (base32 - "0kmjfdr409k9q9n17k9ywims5z4kqc16s81ba7y09n7669q1gvyj")))) + "07a7k83hx7icahh6jaxfbd7pw5jjm5i11xcqjj31b28d1aj29xvw")))) (build-system gnu-build-system) (home-page "https://www.libraw.org") (synopsis "Raw image decoder") @@ -330,7 +330,7 @@ photographic equipment.") (define-public darktable (package (name "darktable") - (version "2.4.3") + (version "2.4.4") (source (origin (method url-fetch) (uri (string-append @@ -339,7 +339,7 @@ photographic equipment.") version "/darktable-" version ".tar.xz")) (sha256 (base32 - "1lq3xp7hhfhfwqrz0f2mrp3xywnpvb0nlw6lbm5cgx22s5xzri8x")))) + "0kdhmiw4wxk2w9v2hms9yk8nl4ymdshnqyj0l07nivzzr6w20hwn")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; There are no tests. diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm index 38f279206d..4eb68c0270 100644 --- a/gnu/packages/plotutils.scm +++ b/gnu/packages/plotutils.scm @@ -179,14 +179,14 @@ colors, styles, options and details.") (define-public asymptote (package (name "asymptote") - (version "2.42") + (version "2.44") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/asymptote/" version "/asymptote-" version ".src.tgz")) (sha256 (base32 - "0dprc4shzdpvp87kc97ggh5ay2zmskjjaciay7mnblx63rhk1d95")))) + "1rs9v95g19ri6ra2m921jf2yr9avqnzfybrqxilsld98xpqx56vg")))) (build-system gnu-build-system) ;; Note: The 'asy' binary retains a reference to docdir for use with its ;; "help" command in interactive mode, so adding a "doc" output is not diff --git a/gnu/packages/pretty-print.scm b/gnu/packages/pretty-print.scm index d1485082e3..ad429854a2 100644 --- a/gnu/packages/pretty-print.scm +++ b/gnu/packages/pretty-print.scm @@ -1,5 +1,4 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> @@ -283,44 +282,3 @@ seen in a terminal.") TeX, SVG, BBCode and terminal escape sequences with colored syntax highlighting. Language definitions and color themes are customizable.") (license gpl3+))) - -(define-public astyle - (package - (name "astyle") - (version "2.05") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/astyle/astyle/astyle%20" - version "/astyle_" version "_linux.tar.gz")) - (sha256 - (base32 - "0f9sh9kq5ajp1yz133h00fr9235p1m698x7n3h7zbrhjiwgynd6s")))) - (build-system gnu-build-system) - (arguments - `(#:tests? #f ;no tests - #:make-flags (list (string-append "prefix=" %output) - "INSTALL=install" - "all") - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda _ (chdir "build/gcc") #t)) - (add-after 'install 'install-libs - (lambda* (#:key outputs #:allow-other-keys) - ;; Libraries are not installed by default - (let* ((output (assoc-ref outputs "out")) - (libdir (string-append output "/lib"))) - (begin - (mkdir-p libdir) - (for-each (lambda (l) - (copy-file - l (string-append libdir "/" (basename l)))) - (find-files "bin" "lib*")))) - #t))))) - (home-page "http://astyle.sourceforge.net/") - (synopsis "Source code indenter, formatter, and beautifier") - (description - "Artistic Style is a source code indenter, formatter, and beautifier for -the C, C++, C++/CLI, Objective‑C, C#, and Java programming languages.") - (license lgpl3+))) diff --git a/gnu/packages/printers.scm b/gnu/packages/printers.scm new file mode 100644 index 0000000000..f8890cb7f1 --- /dev/null +++ b/gnu/packages/printers.scm @@ -0,0 +1,69 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages printers) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (gnu packages libusb) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages qt)) + +;; This is a module for packages related to printer-like devices, but not +;; related to CUPS. + +(define-public robocut + (package + (name "robocut") + (version "1.0.11") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/Timmmm/robocut/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "0nmr1plq1f6sarxwqwy4vzbxkljlx8y4xalm7r05vx4lrdai5pad")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system gnu-build-system) + (arguments + '(#:phases (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (substitute* "Robocut.pro" + (("/usr/") + (string-append out "/"))) + + (invoke "qmake" + (string-append "PREFIX=" out)) + #t)))))) + (inputs + `(("libusb" ,libusb) + ("qt" ,qtbase) + ("qtsvg" ,qtsvg))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("qmake" ,qtbase))) + (synopsis "Graphical program to drive plotting cutters") + (description + "Robocut is a simple graphical program that allows you to cut graphics +with Graphtec and Sihouette plotting cutters using an SVG file as its input.") + (home-page "http://robocut.org") + (license license:gpl3+))) diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index 48e84521c5..b7cd51e868 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2016, 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au> ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org> +;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -44,11 +45,32 @@ #:use-module (gnu packages multiprecision) #:use-module (gnu packages protobuf) #:use-module (gnu packages python) + #:use-module (gnu packages python-web) #:use-module (gnu packages time) #:use-module (gnu packages tls) #:use-module ((guix licenses) #:prefix license:) #:use-module (srfi srfi-1)) +(define-public python-base58 + (package + (name "python-base58") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "base58" version)) + (sha256 + (base32 + "0lgnk7ycdxwhk2bkygl30nsks56bvrdj79ix76iv965pz808pzn5")))) + (build-system python-build-system) + (native-inputs + `(("python-pyhamcrest" ,python-pyhamcrest))) + (home-page "https://github.com/keis/base58") + (synopsis "Base58 and Base58Check implementation") + (description "Base58 and Base58Check implementation compatible +with what is used by the Bitcoin network.") + (license license:expat))) + (define-public python-bcrypt (package (name "python-bcrypt") @@ -821,3 +843,105 @@ through the Engine interface.") (define-public python2-m2crypto (package-with-python2 python-m2crypto)) + +(define-public python-pylibscrypt + (package + (name "python-pylibscrypt") + (version "1.7.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pylibscrypt" version)) + (sha256 + (base32 + "1b3rgzl6dbzs08vhv41b6y4n5189wv7lr27acxn104hs45745abs")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ;FIXME: unable to find libraries + (inputs + `(("openssl" ,openssl))) + (home-page "https://github.com/jvarho/pylibscrypt") + (synopsis "Scrypt for Python") + (description "There are a lot of different scrypt modules for Python, but +none of them have everything that I'd like, so here's one more. It uses +hashlib.scrypt on Python 3.6 and OpenSSL 1.1.") + (license license:isc))) + +(define-public python-libnacl + (package + (name "python-libnacl") + (version "1.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "libnacl" version)) + (sha256 + (base32 + "0nv7n8nfswkhl614x5mllrkvaslraa0053q11iylb337cy43vb4v")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'locate-libsodium + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "libnacl/__init__.py" + (("(return ctypes.cdll.LoadLibrary\\(')libsodium.so('\\))" + _ pre post) + (let ((libsodium (string-append (assoc-ref inputs "libsodium") + "/lib/libsodium.so"))) + (string-append pre libsodium post))))))))) + (native-inputs + `(("python-pyhamcrest" ,python-pyhamcrest))) + (inputs + `(("libsodium" ,libsodium))) + (home-page "https://libnacl.readthedocs.org/") + (synopsis "Python bindings for libsodium based on ctypes") + (description "@code{libnacl} is used to gain direct access to the +functions exposed by @code{NaCl} library via @code{libsodium}. It has +been constructed to maintain extensive documentation on how to use +@code{NaCl} as well as being completely portable.") + (license license:asl2.0))) + +(define-public python-duniterpy + (package + (name "python-duniterpy") + (version "0.43.2") + (source + (origin + (method git-fetch) + ;; Pypi's default URI is missing "requirements.txt" file. + (uri (git-reference + (url "https://github.com/duniter/duniter-python-api.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1ch4f150k1p1l876pp08p5rxqhpv5xfbxdw6njcmr06hspv8v8x4")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; Among 108 tests, a single one is failing: FAIL: + ;; test_from_pubkey. Remove it. + (add-after 'unpack 'remove-failing-test + (lambda _ + (delete-file "tests/documents/test_crc_pubkey.py") + #t))))) + (propagated-inputs + `(("python-aiohttp" ,python-aiohttp) + ("python-base58" ,python-base58) + ("python-jsonschema" ,python-jsonschema) + ("python-libnacl" ,python-libnacl) + ("python-pylibscrypt" ,python-pylibscrypt) + ("python-pypeg2" ,python-pypeg2))) + (home-page "https://github.com/duniter/duniter-python-api") + (synopsis "Python implementation of Duniter API") + (description "@code{duniterpy} is an implementation of +@uref{https://github.com/duniter/duniter/, duniter} API. Its +main features are: +@itemize +@item Supports Duniter's Basic Merkle API and protocol +@item Asynchronous +@item Duniter signing key +@end itemize") + (license license:gpl3+))) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 6e8d9ab954..9523ff3734 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -24,6 +24,8 @@ ;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org> ;;; Copyright © 2017 Mark Meyer <mark@ofosos.org> ;;; Copyright © 2018 Tomáš Čech <sleep_walker@gnu.org> +;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -60,6 +62,70 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (srfi srfi-1)) +(define-public python-aiohttp + (package + (name "python-aiohttp") + (version "3.1.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "aiohttp" version)) + (sha256 + (base32 + "1b888lggmyf2d08rfayq9khszzc0pav1z70ssc0b4d9kkr4g1klz")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ;FIXME: 2 errors, 2084 passed + (native-inputs + `(("python-async-generator" ,python-async-generator) + ("python-pytest" ,python-pytest) + ("python-pytest-capturelog" ,python-pytest-capturelog) + ("python-pytest-mock" ,python-pytest-mock))) + (propagated-inputs + `(("python-aiodns" ,python-aiodns) + ("python-async-timeout" ,python-async-timeout) + ("python-attrs" ,python-attrs) + ("python-chardet" ,python-chardet) + ("python-idna-ssl" ,python-idna-ssl) + ("python-multidict" ,python-multidict) + ("python-yarl" ,python-yarl))) + (home-page "https://github.com/aio-libs/aiohttp/") + (synopsis "Async HTTP client/server framework (asyncio)") + (description "@code{aiohttp} is an asynchronous HTTP client/server +framework. + +Its main features are: +@itemize +@item Supports both client and server side of HTTP protocol. +@item Supports both client and server Web-Sockets out-of-the-box without the +Callback Hell. +@item Web-server has middlewares and pluggable routing. +@end itemize") + (license license:asl2.0))) + +(define-public python-aiodns + (package + (name "python-aiodns") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "aiodns" version)) + (sha256 + (base32 + "1snr5paql8dgvc676n8xq460wypjsb1xj53cf3px1s4wczf7lryq")))) + (build-system python-build-system) + (inputs + `(("python-pycares" ,python-pycares))) + (arguments + `(#:tests? #f)) ;tests require internet access + (home-page "http://github.com/saghul/aiodns") + (synopsis "Simple DNS resolver for asyncio") + (description "@code{aiodns} provides a simple way for doing +asynchronous DNS resolutions with a synchronous looking interface by +using @url{https://github.com/saghul/pycares,pycares}.") + (license license:expat))) + (define-public python-furl (package (name "python-furl") @@ -246,14 +312,14 @@ C, yielding parse times that can be a thirtieth of the html5lib parse times.") (define-public python-pycurl (package (name "python-pycurl") - (version "7.43.0.1") + (version "7.43.0.2") (source (origin (method url-fetch) (uri (string-append "https://dl.bintray.com/pycurl/pycurl/pycurl-" version ".tar.gz")) (sha256 - (base32 "1ali1gjs9iliwjra7w0y5hwg79a2fd0f4ydvv6k27sgxpbr1n8s3")))) + (base32 "1915kb04k1j4y6k1dx1sgnbddxrl9r1n4q928if2lkrdm73xy30g")))) (build-system python-build-system) (arguments ;; The tests attempt to access external web servers, so we cannot run @@ -2025,6 +2091,9 @@ users' sessions over extended periods of time.") library for Python") (license license:asl2.0))) +(define-public python2-oauth2client + (package-with-python2 python-oauth2client)) + (define-public python-flask-oidc (package (name "python-flask-oidc") @@ -2511,3 +2580,74 @@ protocols, it supports features like HTTP keep-alive, reget, throttling and more.") (license license:lgpl2.1+))) +(define-public python-pycares + (package + (name "python-pycares") + (version "2.3.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pycares" version)) + (sha256 + (base32 + "0h4fxw5drrhfyslzmfpljk0qnnpbhhb20hnnndzahhbwylyw1x1n")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ;tests require internet access + (home-page "http://github.com/saghul/pycares") + (synopsis "Python interface for @code{c-ares}") + (description "@code{pycares} is a Python module which provides an +interface to @code{c-ares}, a C library that performs DNS requests and +name resolutions asynchronously.") + (license license:expat))) + +(define-public python-yarl + (package + (name "python-yarl") + (version "1.1.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "yarl" version)) + (sha256 + (base32 + "1s6z13g8vgxfkkqwhn6imnm7pl7ky9arv4jygnn6bcndcbidg7d6")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner))) + (propagated-inputs + `(("python-idna" ,python-idna) + ("python-multidict" ,python-multidict))) + (home-page "https://github.com/aio-libs/yarl/") + (synopsis "Yet another URL library") + (description "@code{yarl} module provides handy @code{URL} class +for URL parsing and changing.") + (license license:asl2.0))) + +(define-public python-google-api-client + (package + (name "python-google-api-client") + (version "1.6.7") + (source + (origin + (method url-fetch) + (uri (pypi-uri "google-api-python-client" version)) + (sha256 + (base32 + "1wpbbbxfpy9mwxdy3kn352cb590ladv574j1aa2l4grjdqw3ln05")))) + (build-system python-build-system) + (arguments + '(#:tests? #f)) ; tests require internet access + (native-inputs + `(("python-httplib2" ,python-httplib2) + ("python-six" ,python-six) + ("python-oauth2client" ,python-oauth2client) + ("python-uritemplate" ,python-uritemplate))) + (home-page "https://github.com/google/google-api-python-client") + (synopsis "Core Python library for accessing Google APIs") + (description "Python client library for Google's discovery based APIs") + (license license:asl2.0))) + +(define-public python2-google-api-client + (package-with-python2 python-google-api-client)) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 3c07cfe4be..753354426e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -38,7 +38,7 @@ ;;; Copyright © 2017 Frederick M. Muriithi <fredmanglis@gmail.com> ;;; Copyright © 2017, 2018 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2017 Ben Sturmfels <ben@sturm.com.au> -;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2017, 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.org> ;;; Copyright © 2017 Roel Janssen <roel@gnu.org> ;;; Copyright © 2017, 2018 Kei Kebreau <kkebreau@posteo.net> @@ -51,6 +51,7 @@ ;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com> ;;; Copyright © 2016, 2018 Tomáš Čech <sleep_walker@gnu.org> +;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -2588,6 +2589,36 @@ sources.") (propagated-inputs `(("python2-pytz" ,python2-pytz) ,@(package-propagated-inputs base)))))) +(define-public python-sphinx-gallery + (package + (name "python-sphinx-gallery") + (version "0.1.13") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/sphinx-gallery/sphinx-gallery" + "/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "03fs99mcb1r7qp0xixqv07vcz98sk21yq19ffdysi0infdcpzfkd")))) + (build-system python-build-system) + (arguments + ;; FIXME: Tests attempt to download <https://docs.python.org/3/objects.inv>, + ;; <https://docs.scipy.org/doc/numpy/objects.inv>, and + ;; <https://matplotlib.org/objects.inv>. + `(#:tests? #f)) + (native-inputs + `(("python-pytest-runner" ,python-pytest-runner))) + (home-page "https://sphinx-gallery.github.io/") + (synopsis "Generate an examples gallery automatically") + (description + "@code{sphinx_gallery} is a Sphinx extension that builds an HTML version +from any set of Python scripts and puts it into an examples gallery.") + (license license:bsd-3))) + +(define-public python2-sphinx-gallery + (package-with-python2 python-sphinx-gallery)) + (define-public python-sphinx-rtd-theme (package (name "python-sphinx-rtd-theme") @@ -2869,7 +2900,7 @@ between language specification and implementation aspects.") (define-public python-numpy (package (name "python-numpy") - (version "1.14.0") + (version "1.14.3") (source (origin (method url-fetch) @@ -2878,7 +2909,7 @@ between language specification and implementation aspects.") version "/numpy-" version ".tar.gz")) (sha256 (base32 - "1kh7y2ay21s9mcc11mq59g2f1yc75v152z2k2vlh0xmh9c9rjpf4")))) + "1yim2bxlycn4dhxmfxid6slplpmcb4ynhp411b37ahmsm2lwgkyg")))) (build-system python-build-system) (inputs `(("openblas" ,openblas) @@ -3339,14 +3370,14 @@ that client code uses to construct the grammar directly in Python code.") (define-public python-numexpr (package (name "python-numexpr") - (version "2.6.4") + (version "2.6.5") (source (origin (method url-fetch) (uri (pypi-uri "numexpr" version)) (sha256 (base32 - "1kpnbb5d5n927113zccfibn16z7gidjipyac6kbbhzs0lnizkgph")))) + "1frnbcwmsi312154x274xl28xazr1k8vjby83fwyla2n10a81bgq")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; no tests included (propagated-inputs @@ -3430,17 +3461,18 @@ convert between colorspaces like sRGB, XYZ, CIEL*a*b*, CIECAM02, CAM02-UCS, etc. (define-public python-matplotlib (package (name "python-matplotlib") - (version "2.0.2") + (version "2.2.2") (source (origin (method url-fetch) (uri (pypi-uri "matplotlib" version)) (sha256 (base32 - "1w8z2a1l7s72p1byfz7g03wqhygqxi8w82619dqb3a1lm97w9yqg")))) + "1s6dv225w3k4fv52h8lfjc7qq5y56i9755ayx0mz48ddi99fzisd")))) (build-system python-build-system) (propagated-inputs ; the following packages are all needed at run time `(("python-cycler" ,python-cycler) + ("python-kiwisolver" ,python-kiwisolver) ("python-pyparsing" ,python-pyparsing) ("python-pygobject" ,python-pygobject) ("gobject-introspection" ,gobject-introspection) @@ -3520,6 +3552,8 @@ toolkits.") ;; of those automatically rewritten by package-with-python2. (propagated-inputs `(("python2-pycairo" ,python2-pycairo) + ("python2-backports-functools-lru-cache" + ,python2-backports-functools-lru-cache) ("python2-functools32" ,python2-functools32) ("python2-pygobject-2" ,python2-pygobject-2) ("python2-subprocess32" ,python2-subprocess32) @@ -3536,7 +3570,8 @@ toolkits.") (native-inputs `(("python-matplotlib" ,python-matplotlib) ("python-colorspacious" ,python-colorspacious) - ("python-sphinx" ,python-sphinx) + ("python-sphinx" ,python-sphinx-1.6) + ("python-sphinx-gallery" ,python-sphinx-gallery) ("python-numpydoc" ,python-numpydoc) ("python-ipython" ,python-ipython) ("python-mock" ,python-mock) @@ -3559,7 +3594,7 @@ toolkits.") (("latex_elements\\['pointsize'\\] = '11pt'" match) ;; insert at a point where latex_elements{} is defined: (string-append match "\nlatex_elements['papersize'] = 'a4paper'"))) - (zero? (system* "python" "make.py" "html" "latex" "texinfo")))) + (invoke "make" "SPHINXBUILD=sphinx-build" "html" "latex" "texinfo"))) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((data (string-append (assoc-ref outputs "out") "/share")) @@ -3693,14 +3728,14 @@ functions.") (define-public python-scipy (package (name "python-scipy") - (version "1.0.0") + (version "1.0.1") (source (origin (method url-fetch) (uri (pypi-uri "scipy" version)) (sha256 (base32 - "043djb3vyk6qripmyw30jhl0g8qza0fmar6wck10iv79l08izsl7")))) + "1fj0r7bg0cfk5clvl57ga06y9bfh05iwlv1dqqs1r6pd89wccfc7")))) (build-system python-build-system) (propagated-inputs `(("python-numpy" ,python-numpy) @@ -3838,6 +3873,27 @@ Python code against some of the style conventions in (define-public python2-pycodestyle (package-with-python2 python-pycodestyle)) +(define-public python-multidict + (package + (name "python-multidict") + (version "4.2.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "multidict" version)) + (sha256 + (base32 + "1vf5bq8hn5a9rvhr5v4fwbmarfsp35hhr8gs74kqfijy34j2f194")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-pytest-runner" ,python-pytest-runner))) + (home-page "https://github.com/aio-libs/multidict/") + (synopsis "Multidict implementation") + (description "Multidict is dict-like collection of key-value pairs +where key might be occurred more than once in the container.") + (license license:asl2.0))) + (define-public python-orderedmultidict (package (name "python-orderedmultidict") @@ -4996,14 +5052,14 @@ converts incoming documents to Unicode and outgoing documents to UTF-8.") (define-public python-netifaces (package (name "python-netifaces") - (version "0.10.6") + (version "0.10.7") (source (origin (method url-fetch) (uri (pypi-uri "netifaces" version)) (sha256 (base32 - "1q7bi5k2r955rlcpspx4salvkkpk28jky67fjbpz2dkdycisak8c")))) + "1gccklrcplbbqh81g1mdgpa5y8na7kkf29cq2ka3f5a2fp5hyndx")))) (build-system python-build-system) (home-page "https://github.com/al45tair/netifaces") (synopsis @@ -5187,6 +5243,29 @@ more advanced mathematics.") (define-public python2-mpmath (package-with-python2 python-mpmath)) +(define-public python-bigfloat + (package + (name "python-bigfloat") + (version "0.3.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "bigfloat" version)) + (sha256 + (base32 "0xd7q4l7v0f463diznjv4k9wlaks80pn9drdqmfifi7zx8qvybi6")))) + (build-system python-build-system) + (inputs + `(("mpfr" ,mpfr))) + (home-page "https://github.com/mdickinson/bigfloat") + (synopsis "Arbitrary precision floating-point arithmetic for Python") + (description + "This packages provides a Python interface to the MPFR library for +multiprecision arithmetic.") + (license license:lgpl3+))) + +(define-public python2-bigfloat + (package-with-python2 python-bigfloat)) + (define-public python-sympy (package (name "python-sympy") @@ -6339,6 +6418,26 @@ specification.") (define-public python2-idna (package-with-python2 python-idna)) +(define-public python-idna-ssl + (package + (name "python-idna-ssl") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "idna-ssl" version)) + (sha256 + (base32 + "0ydrc8hpg9mdr5hqq1lqfsfbn6sjq69slwpfrnlrm3k0phqg14qj")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ;circular dependency with python-aiohttp + (home-page "https://github.com/aio-libs/idna-ssl") + (synopsis "Patch @code{ssl.match_hostname} for Unicode(idna) domains support") + (description "Patch @code{ssl.match_hostname} for Unicode(idna) +domains support.") + (license license:expat))) + (define-public python-pretend (package (name "python-pretend") @@ -6894,6 +6993,12 @@ Jupyter kernels such as IJulia and IRKernel.") ("python-jupyter-console" ,python-jupyter-console) ("python-nbconvert" ,python-nbconvert) ("python-notebook" ,python-notebook))) + + (native-search-paths + (list (search-path-specification + (variable "JUPYTER_PATH") + (files '("share/jupyter"))))) + (home-page "http://jupyter.org") (synopsis "Web application for interactive documents") (description @@ -9446,25 +9551,30 @@ characters, mouse support, and auto suggestions.") (define-public python-jedi (package (name "python-jedi") - (version "0.9.0") + (version "0.12.0") (source - (origin - (method url-fetch) - (uri (pypi-uri "jedi" version)) - (sha256 - (base32 - "0c8x962ynpx001fdvp07m2q5jk4igkxbj3rmnydavphvlgxijk1v")))) + (origin + (method url-fetch) + (uri (pypi-uri "jedi" version)) + (sha256 + (base32 + "1bcr7csx4xil1iwmk03d79jis0bkmgi9k0kir3xa4rmwqsagcwhr")))) (build-system python-build-system) (arguments - ;; FIXME: One test fails (use "py.test" instead of 'setup.py test'). - '(#:tests? #f)) + `(#:phases + (modify-phases %standard-phases + (replace 'check (lambda _ + (invoke "py.test" "-vv")))))) (native-inputs - `(("python-pytest" ,python-pytest))) + `(("python-pytest" ,python-pytest) + ("python-parso" ,python-parso) + ("python-docopt" ,python-docopt))) (home-page "https://github.com/davidhalter/jedi") (synopsis - "Autocompletion for Python that can be used for text editors") + "Autocompletion for Python that can be used for text editors") (description - "Jedi is an autocompletion tool for Python that can be used for text editors.") + "Jedi is an autocompletion tool for Python that can be used for text + editors.") (license license:expat))) (define-public python2-jedi @@ -10498,6 +10608,10 @@ a file-like object from which an arbitrarly-sized key can be read.") `(("python-lxml" ,python-lxml) ; for SVG output ("python-pillow" ,python-pillow) ; for PNG output ("python-six" ,python-six))) + (inputs + `(;; The setup.cfg file needs to be used, and support for this requires + ;; at least version 30.3.0 of setuptools + ("python-setuptools" ,python-setuptools))) (home-page "https://github.com/lincolnloop/python-qrcode") (synopsis "QR Code image generator") (description "This package provides a pure Python QR Code generator @@ -10563,14 +10677,14 @@ convering text with ANSI color codes to HTML or LaTeX.") (define-public python-ddt (package (name "python-ddt") - (version "1.1.2") + (version "1.1.3") (source (origin (method url-fetch) (uri (pypi-uri "ddt" version)) (sha256 (base32 - "1wqkmz0yhanly8sif5vb02p2iik7mwxwph8ywph2kbb8ws8szdpx")))) + "1lw17420iimhghkgzgax85nn8d1an2d6k2cfvb7j5kwn2dqlr1vk")))) (build-system python-build-system) (native-inputs `(("python-mock" ,python-mock) @@ -10784,10 +10898,12 @@ and bit flag values.") "1jafnn1kzd6qhxgprhx6y6ik1r5m2rilx25syzcmq03azp660y8w")))) (build-system python-build-system) (native-inputs - `(("python-pytest" ,python-pytest) + `(("python-coverage" ,python-coverage) ("python-hypothesis" ,python-hypothesis) - ("python-zope-interface" ,python-zope-interface) - ("python-six" ,python-six))) + ("python-pytest" ,python-pytest) + ("python-six" ,python-six) + ("python-sphinx" ,python-sphinx) + ("python-zope-interface" ,python-zope-interface))) (home-page "https://github.com/python-attrs/attrs/") (synopsis "Attributes without boilerplate") (description "@code{attrs} is a Python package with class decorators that @@ -13269,3 +13385,233 @@ in Python. You can simply type pybtex instead of bibtex.") (description "Python one-time password library for HMAC-based (HOTP) and time-based (TOTP) passwords.") (license license:expat))) + +(define-public python-parso + (package + (name "python-parso") + (version "0.2.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "parso" version)) + (sha256 + (base32 + "0lamywk6dm5xshlkdvxxf5j6fa2k2zpi7xagf0bwidaay3vnpgb2")))) + (native-inputs + `(("python-pytest" ,python-pytest))) + (build-system python-build-system) + (home-page "https://github.com/davidhalter/parso") + (synopsis "Python Parser") + (description "Parso is a Python parser that supports error recovery and +round-trip parsing for different Python versions (in multiple Python versions). +Parso is also able to list multiple syntax errors in your Python file.") + (license license:expat))) + +(define-public python2-parso + (package-with-python2 python-parso)) + +(define-public python-async-generator + (package + (name "python-async-generator") + (version "1.9") + (source + (origin + (method url-fetch) + (uri (pypi-uri "async_generator" version)) + (sha256 + (base32 + "0wc3hidz1q85cja93k5pzybn0fprfnqyrv4qlkdqdzklc5f4dmdp")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest))) + (home-page "https://github.com/python-trio/async_generator") + (synopsis "Async generators and context managers for Python 3.5+") + (description "@code{async_generator} back-ports Python 3.6's native async +generators and Python 3.7's context managers into Python 3.5.") + ;; Dual licensed. + (license (list license:expat license:asl2.0)))) + +(define-public python-async-timeout + (package + (name "python-async-timeout") + (version "2.0.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "async-timeout" version)) + (sha256 + (base32 + "1l3kg062m02mph6rf9rdv8r5c5n356clxa6b6mrn0i77vk9g9kq0")))) + (build-system python-build-system) + (home-page "https://github.com/aio-libs/async_timeout/") + (synopsis "Timeout context manager for asyncio programs") + (description "@code{async-timeout} provides a timeout timeout context +manager compatible with @code{asyncio}.") + (license license:asl2.0))) + +(define-public python-glob2 + (package + (name "python-glob2") + (version "0.6") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/miracle2k/python-glob2/archive/" + version + ".tar.gz")) + (sha256 + (base32 + "0ja168f0dz4kbz4m06dm0rd3acaypk6hjx2km541pw22y9s40mag")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system python-build-system) + (home-page "https://github.com/miracle2k/python-glob2/") + (synopsis "Extended Version of the python buildin glob module") + (description "This is an extended version of the Python +@url{http://docs.python.org/library/glob.html, built-in glob module} which +adds: + +@itemize +@item The ability to capture the text matched by glob patterns, and return +those matches alongside the file names. +@item A recursive @code{**} globbing syntax, akin for example to the +@code{globstar} option of Bash. +@item The ability to replace the file system functions used, in order to glob +on virtual file systems. +@item Compatible with Python 2 and Python 3 (tested with 3.3). +@end itemize + +Glob2 currently based on the glob code from Python 3.3.1.") + (license license:bsd-2))) + +(define-public python2-glob2 + (package-with-python2 python-glob2)) + +(define-public python-gipc + (package + (name "python-gipc") + (version "0.6.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "gipc" version ".zip")) + (sha256 + (base32 + "0pd9by719qh882hqs6xpby61sn1x5h98hms5p2p8yqnycrf1s0h2")))) + (build-system python-build-system) + (native-inputs + `(("unzip" ,unzip))) + (propagated-inputs + `(("python-gevent" ,python-gevent))) + (home-page "http://gehrcke.de/gipc") + (synopsis "Child process management in the context of gevent") + (description "Usage of Python's multiprocessing package in a +gevent-powered application may raise problems. With @code{gipc}, +process-based child processes can safely be created anywhere within a +gevent-powered application.") + (license license:expat))) + +(define-public python2-gipc + (package-with-python2 python-gipc)) + +(define-public python-fusepy + (package + (name "python-fusepy") + (version "2.0.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "fusepy" version)) + (sha256 + (base32 + "0v5grm4zyf58hsplwsxfbihddw95lz9w8cy3rpzbyha287swgx8h")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'set-library-file-name + (lambda* (#:key inputs #:allow-other-keys) + (let ((fuse (assoc-ref inputs "fuse"))) + (substitute* "fuse.py" + (("find_library\\('fuse'\\)") + (string-append "'" fuse "/lib/libfuse.so'"))) + #t)))))) + (propagated-inputs + `(("fuse" ,fuse))) + (home-page "https://github.com/fusepy/fusepy") + (synopsis "Simple ctypes bindings for FUSE") + (description "Python module that provides a simple interface to FUSE and +MacFUSE. The binding is created using the standard @code{ctypes} library.") + (license license:isc))) + +(define-public python2-fusepy + (package-with-python2 python-fusepy)) + +(define-public python2-gdrivefs + (package + (name "python2-gdrivefs") + (version "0.14.9") + (source + (origin + (method url-fetch) + (uri (pypi-uri "gdrivefs" version)) + (sha256 + (base32 + "0v9sp2cfg4ki3wagkwf3rnfpjhvgf845anz3757il9z95yvvcvb7")))) + (build-system python-build-system) + (arguments + `(#:python ,python-2 + #:phases + (modify-phases %standard-phases + (add-before 'build 'patch-setup-py + (lambda _ + ;; Update requirements from dependency==version + ;; to dependency>=version + (substitute* "gdrivefs/resources/requirements.txt" + (("==") ">=")) + #t))))) + (native-inputs + `(("python2-gipc" ,python2-gipc) + ("python2-gevent" ,python2-gevent) + ("python2-greenlet" ,python2-greenlet) + ("python2-httplib2" ,python2-httplib2) + ("python2-uritemplate" ,python2-uritemplate) + ("python2-oauth2client" ,python2-oauth2client) + ("python2-six" ,python2-six))) + (propagated-inputs + `(("python2-dateutil" ,python2-dateutil) + ("python2-fusepy" ,python2-fusepy) + ("python2-google-api-client" ,python2-google-api-client))) + (home-page "https://github.com/dsoprea/GDriveFS") + (synopsis "Mount Google Drive as a local file system") + (description "@code{gdrivefs} provides a FUSE wrapper for Google Drive +under Python 2.7.") + (license license:gpl2))) + +(define-public pybind11 + (package + (name "pybind11") + (version "2.2.3") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/pybind/pybind11/archive/v" + version ".tar.gz")) + (sha256 + (base32 + "1sj0x4fwsbnwdai5sxpw1l1vh8m5hpbkfk3zanxcbcgs39jpnfrs")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system cmake-build-system) + (native-inputs + `(("python" ,python) + ("python-pytest" ,python-pytest))) + (arguments + `(#:test-target "check")) + (home-page "https://github.com/pybind/pybind11/") + (synopsis "Seamless operability between C++11 and Python") + (description "pybind11 is a lightweight header-only library that exposes +C++ types in Python and vice versa, mainly to create Python bindings of +existing C++ code. Its goals and syntax are similar to the excellent +Boost.Python library by David Abrahams: to minimize boilerplate code in +traditional extension modules by inferring type information using compile-time +introspection.") + (license license:expat))) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index b139d2bc8c..7d323cd2d5 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -372,16 +372,16 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtbase (package (name "qtbase") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1kq422vb2zaic099pgzwk7c0qzgc3xap6qahw5vklrq0mgivvrk9")) + "0rny87ypnkkvyp9p76nim77v6np0cdf1dbjfmcilklzphkdlcvpd")) ;; Use TZDIR to avoid depending on package "tzdata". (patches (search-patches "qtbase-use-TZDIR.patch")) (modules '((guix build utils))) @@ -392,7 +392,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") (lambda (dir) (delete-file-recursively (string-append "src/3rdparty/" dir))) (list "double-conversion" "freetype" "harfbuzz-ng" - "libpng" "libjpeg" "pcre2" "sqlite" "xcb" + "libpng" "libjpeg" "pcre2" "xcb" "xkbcommon" "zlib")) #t)))) (build-system gnu-build-system) @@ -434,7 +434,7 @@ developers using C++ or QML, a CSS & JavaScript like language.") ("pcre2" ,pcre2) ("postgresql" ,postgresql) ("pulseaudio" ,pulseaudio) - ("sqlite" ,sqlite) + ;("sqlite" ,sqlite) ("unixodbc" ,unixodbc) ("xcb-util" ,xcb-util) ("xcb-util-image" ,xcb-util-image) @@ -477,42 +477,55 @@ developers using C++ or QML, a CSS & JavaScript like language.") (("NO_DEFAULT_PATH") "")) ;; do not pass "--enable-fast-install", which makes the ;; configure process fail - (zero? (system* - "./configure" - "-verbose" - "-prefix" out - "-docdir" (string-append out "/share/doc/qt5") - "-headerdir" (string-append out "/include/qt5") - "-archdatadir" (string-append out "/lib/qt5") - "-datadir" (string-append out "/share/qt5") - "-examplesdir" (string-append - out "/share/doc/qt5/examples") - "-opensource" - "-confirm-license" - ;; Do not build examples; if desired, these could go - ;; into a separate output, but for the time being, we - ;; prefer to save the space and build time. - "-no-compile-examples" - ;; Most "-system-..." are automatic, but some use - ;; the bundled copy by default. - "-system-sqlite" - "-system-harfbuzz" - "-system-pcre" - ;; explicitly link with openssl instead of dlopening it - "-openssl-linked" - ;; explicitly link with dbus instead of dlopening it - "-dbus-linked" - ;; don't use the precompiled headers - "-no-pch" - ;; drop special machine instructions that do not have - ;; runtime detection - ,@(if (string-prefix? "x86_64" - (or (%current-target-system) - (%current-system))) - '() - '("-no-sse2")) - "-no-mips_dsp" - "-no-mips_dspr2"))))) + (invoke + "./configure" + "-verbose" + "-prefix" out + "-docdir" (string-append out "/share/doc/qt5") + "-headerdir" (string-append out "/include/qt5") + "-archdatadir" (string-append out "/lib/qt5") + "-datadir" (string-append out "/share/qt5") + "-examplesdir" (string-append + out "/share/doc/qt5/examples") + "-opensource" + "-confirm-license" + + ;; These features require higher versions of Linux than the + ;; minimum version of the glibc. See + ;; src/corelib/global/minimum-linux_p.h. By disabling these + ;; features Qt5 applications can be used on the oldest + ;; kernels that the glibc supports, including the RHEL6 + ;; (2.6.32) and RHEL7 (3.10) kernels. + "-no-feature-getentropy" ; requires Linux 3.17 + "-no-feature-renameat2" ; requires Linux 3.16 + + ;; Do not build examples; if desired, these could go + ;; into a separate output, but for the time being, we + ;; prefer to save the space and build time. + "-no-compile-examples" + ;; Most "-system-..." are automatic, but some use + ;; the bundled copy by default. + ;; System sqlite fails on 5.10+ + ;;.obj/qsql_sqlite.o: In function `QSQLiteResultPrivate::initColumns(bool)': + ;;qsql_sqlite.cpp:(.text+0x190c): undefined reference to `sqlite3_column_table_name16' + ;"-system-sqlite" + "-system-harfbuzz" + "-system-pcre" + ;; explicitly link with openssl instead of dlopening it + "-openssl-linked" + ;; explicitly link with dbus instead of dlopening it + "-dbus-linked" + ;; don't use the precompiled headers + "-no-pch" + ;; drop special machine instructions that do not have + ;; runtime detection + ,@(if (string-prefix? "x86_64" + (or (%current-target-system) + (%current-system))) + '() + '("-no-sse2")) + "-no-mips_dsp" + "-no-mips_dspr2")))) (add-after 'install 'patch-mkspecs (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -602,16 +615,16 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtsvg (package (inherit qtbase) (name "qtsvg") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0yh3an9rc7fh013cw3bm318ap6428icsmnj38hhg1w6lpwr2gwm2")))) + "0m0zglp0m5gv75ivma6l3hm8brb0cf44dhbc6lqwfdwacxhgx3jb")))) (propagated-inputs `()) (native-inputs `(("perl" ,perl))) (inputs @@ -664,7 +677,7 @@ HostData=lib/qt5 (lambda* (#:key inputs outputs #:allow-other-keys) ;; Valid QT_BUILD_PARTS variables are: ;; libs tools tests examples demos docs translations - (zero? (system* "qmake" "QT_BUILD_PARTS = libs tools tests")))) + (invoke "qmake" "QT_BUILD_PARTS = libs tools tests"))) (add-before 'check 'set-display (lambda _ ;; make Qt render "offscreen", required for tests @@ -677,19 +690,21 @@ HostData=lib/qt5 (define-public qtimageformats (package (inherit qtsvg) (name "qtimageformats") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1nfxvf96wh1smdmcsk4m9f7zg69fgp844f8772qpv6v4m20p1qb9")) + "0w0yy7zzln3v7dm7ksjxkzhq8r0a9nwk823wv4f1x7vsa3pnyh2q")) (modules '((guix build utils))) - (snippet '(begin (delete-file-recursively "src/3rdparty") - #t)))) + (snippet + '(begin + (delete-file-recursively "src/3rdparty") + #t)))) (native-inputs `()) (inputs `(("jasper" ,jasper) @@ -706,16 +721,16 @@ support for MNG, TGA, TIFF and WBMP image formats."))) (define-public qtx11extras (package (inherit qtsvg) (name "qtx11extras") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1a125fi7lbxfps207i12jammm4cjbiawmp4sqa3bxqah8p21i6w7")))) + "13vbx61wcd8pnpgk3j5r665pm03s7jp2s98apvc6fhp1njlr0rhi")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -730,16 +745,16 @@ from within Qt 5."))) (define-public qtxmlpatterns (package (inherit qtsvg) (name "qtxmlpatterns") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0ybz0i3wblvrm958s9ykp3a79bakjbb7k74q71mqaaswkv9imxgs")))) + "13nj2pa706sy874bqbv7y94ypicr4k09x6n2jyxkw93flb5pi8qr")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -759,16 +774,16 @@ xmlpatternsvalidator."))) (define-public qtdeclarative (package (inherit qtsvg) (name "qtdeclarative") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0r9dhfc6qmxlzn2v9r6z6n2mcq6pv1nmyh91g9hcdlkx40xqlqyw")))) + "1h2pbyr7dnak4q96373xpa6gk6rl528rnqima8xnvhdi2y5kgagf")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -791,27 +806,16 @@ with JavaScript and C++."))) (define-public qtconnectivity (package (inherit qtsvg) (name "qtconnectivity") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "12qckqz6ldvn1czkkigadmgl07yk4gs74hy4ifh4hmpm7cv519yv")))) - (arguments - (substitute-keyword-arguments (package-arguments qtsvg) - ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'disable-failing-tests - ;; this test fails on armhf and aarch64 - (lambda _ - (substitute* "tests/auto/qndefnfcsmartposterrecord/tst_qndefnfcsmartposterrecord.cpp" - (("QCOMPARE\\(record.action\\(\\), QNdefNfcSmartPosterRecord::UnspecifiedAction") - "//QCOMPARE(record.action(), QNdefNfcSmartPosterRecord::UnspecifiedAction")) - #t)))))) + "0wqq5q5saf007aphvpn5pvj6l0qp0z7wxvfba6v9iq5ylyqm6bnd")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) @@ -826,16 +830,16 @@ with Bluetooth and NFC."))) (define-public qtwebsockets (package (inherit qtsvg) (name "qtwebsockets") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "00786d9m8skj68n5x9d8151zmmskx7ckhgcdd08hs9nly04h55vj")))) + "1drr6nxxbkwpmz39bhyfmmsqjhy11bj3w1nc3q9dwhpcbf04an3x")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -853,16 +857,16 @@ consume data received from the server, or both."))) (define-public qtsensors (package (inherit qtsvg) (name "qtsensors") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0n6lkkn7c9x8vcplmfvkx7jq6najh2mrwnfb3blrmkmpash3lgvr")))) + "1az22rdkpc1m44qb3dyh7cpiprplkvynzjr629ai05i8ngbfdi0g")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:parallel-tests? _ #f) #f) ; can lead to race condition @@ -886,16 +890,16 @@ recognition API for devices."))) (define-public qtmultimedia (package (inherit qtsvg) (name "qtmultimedia") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0x2f3vpax7rq0lxnncbp5b248bxdicrwn8hv4hsas2g2283s0lj9")) + "0g4x1w251imq58zp1px6yschwj6icsxzwl3fy7pjfbgd27qjhlzg")) (modules '((guix build utils))) (snippet '(begin @@ -912,9 +916,9 @@ recognition API for devices."))) (replace 'configure (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (zero? (system* "qmake" "QT_BUILD_PARTS = libs tools tests" - (string-append "QMAKE_LFLAGS_RPATH=-Wl,-rpath," out "/lib -Wl,-rpath,") - (string-append "PREFIX=" out)))))))) + (invoke "qmake" "QT_BUILD_PARTS = libs tools tests" + (string-append "QMAKE_LFLAGS_RPATH=-Wl,-rpath," out "/lib -Wl,-rpath,") + (string-append "PREFIX=" out))))))) ((#:tests? _ #f) #f))) ; TODO: Enable the tests (native-inputs `(("perl" ,perl) @@ -937,21 +941,22 @@ set of plugins for interacting with pulseaudio and GStreamer."))) (define-public qtwayland (package (inherit qtsvg) (name "qtwayland") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0x4q17k23akf14i3pyllr96s8lvprk1x006wp0mi5rhk4199cx1z")) + "09s1ckqj0cgjmmi7jylsf039vgzlq7i9rr4swb590fkz427lx0b8")) (modules '((guix build utils))) (snippet ;; The examples try to build and cause the build to fail - '(begin (delete-file-recursively "examples") - #t)))) + '(begin + (delete-file-recursively "examples") + #t)))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -988,16 +993,16 @@ compositor libraries."))) (define-public qtserialport (package (inherit qtsvg) (name "qtserialport") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "172i5cpqnk0c3m0hg08hgj15qvsyd1xvw9yf2dqicg3l10lqwg8c")))) + "1cbf1jsginp5p3y17cyb6dfhsafxal0bn9pya6aybz0q799zgvl5")))) (native-inputs `(("perl" ,perl))) (inputs `(("qtbase" ,qtbase) @@ -1022,16 +1027,16 @@ interacting with serial ports from within Qt."))) (define-public qtserialbus (package (inherit qtsvg) (name "qtserialbus") - (version "5.9.5") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0gz5xsskv02yy078yffxyn8rdlklf4rsgnqrziyz5ywxwdh96gn5")))) + "0r3crk7gw0xs6wk1gvw2k8r9s9vam3sfwrji1njhswavii9fbp85")))) (inputs `(("qtbase" ,qtbase) ("qtserialport" ,qtserialport))) @@ -1043,16 +1048,16 @@ and others."))) (define-public qtwebchannel (package (inherit qtsvg) (name "qtwebchannel") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1acs0fa5rxm3cir0lydc9a8685qagf1786vkssv51wk3v9r3lc4h")))) + "05fa5pwvk24cjp8m6pbw3ma95vnls762crpjdgvygfk0h8xilxmh")))) (native-inputs `(("perl" ,perl) ("qtdeclarative" ,qtdeclarative) @@ -1067,16 +1072,16 @@ popular web engines, Qt WebKit 2 and Qt WebEngine."))) (define-public qtlocation (package (inherit qtsvg) (name "qtlocation") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "186jzv19v674n8jmm13v5xwv211lygih5657rlvbhc1s4jq6iv9p")))) + "074cjqhr14mqlsqj9rzagzdcqnayyichp31lq02k05q07wg93xi8")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1097,16 +1102,16 @@ positioning and geolocation plugins."))) (define-public qttools (package (inherit qtsvg) (name "qttools") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "11vfk6c8snsqwqj1xk53c0h2mkqr4gfa9kinp8py56x7sn15galm")))) + "1nb77bfs63nyy0wkhsci9qbqmahncy3sdcrwj4qr1prc4y2cm4wx")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1124,16 +1129,16 @@ that helps in Qt development."))) (define-public qtscript (package (inherit qtsvg) (name "qtscript") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0lz0iv1baah7cxrpyiqzqp4fxxf75i21qd06ha7r5d80hq3xlia0")) + "1ib8a5gsxarbm2j94j5d097ly3ap4snqkx2imz3sl6xk6gknm4i5")) (patches (search-patches "qtscript-disable-tests.patch")))) (native-inputs `(("perl" ,perl) @@ -1148,16 +1153,16 @@ ECMAScript and Qt."))) (define-public qtquickcontrols (package (inherit qtsvg) (name "qtquickcontrols") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "12yrmv6afjbd1fw3r8zjdrbq5l7cy7k5bxcyiv1m97gykfh0b8hn")))) + "01ziibf4afdhb5b3gfci8maprmviqwhdvma2z1jlq2ck45cpsqi6")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1172,16 +1177,16 @@ can be used to build complete interfaces in Qt Quick."))) (define-public qtquickcontrols2 (package (inherit qtsvg) (name "qtquickcontrols2") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0334ayansm743kf113rs3k9hi9qb6giscfx9xig3y1z7asisfa0m")))) + "1hsa8n4dlqpyz9xq2kq1hsxrxsjc7ywzzfhqijylgzzclvlqgb7y")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1197,16 +1202,16 @@ not available."))) (define-public qtgraphicaleffects (package (inherit qtsvg) (name "qtgraphicaleffects") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1vxq4j7cb5cya1g234rxhfb361n45gp8c70gj8pc03njswkm7xwp")))) + "0xzr4421w7idlgndxnd68wwc2asabycjiskkyl1f8nwqv34lcy3j")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1230,15 +1235,16 @@ coloring, and many more."))) (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 "0zwch9vn17f3bpy300jcfxx6cx9qymk5j7khx0x9k1xqid4166c3")) (modules '((guix build utils))) (snippet - '(begin (delete-file-recursively "tools/opengldummy/3rdparty") - #t)))) + '(begin + (delete-file-recursively "tools/opengldummy/3rdparty") + #t)))) (native-inputs `()) (inputs `(("qtbase" ,qtbase) @@ -1251,16 +1257,16 @@ backend for QtQuick scene graph.") (define-public qtgamepad (package (inherit qtsvg) (name "qtgamepad") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1ci6aapq0i8qbzkn9xxvxn1n81z3y28yrlyzw0anqzj9qp97cl6f")))) + "0g52c03gdgz57h7szdxvc5hdy45l7q7m29yfzhwqc57hwdfl98bi")))) (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config))) @@ -1281,16 +1287,16 @@ and mobile applications targeting TV-like form factors."))) (define-public qtscxml (package (inherit qtsvg) (name "qtscxml") - (version "5.9.5") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0knp328cinawz6xbhf9wd6h6gbwp74rb5cpmlr8gv3g5a7fjlsh1")) + "00wb89ris8fyivhz9qpqn72mzpkh6mqdjss82j3q10g3c142072k")) (modules '((guix build utils))) (snippet '(begin @@ -1312,16 +1318,16 @@ also contains functionality to support data models and executable content."))) (define-public qtpurchasing (package (inherit qtsvg) (name "qtpurchasing") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "08sk8vw16pa1qv36rfr9dsbzlwlv6kznfpsq8wfabhkgbfl6awqs")))) + "1c92yv2yi38sic06nyr9r6zpq3y4sxnasmj14d3jmg50gc1ncqfs")))) (inputs `(("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) @@ -1332,20 +1338,21 @@ purchasing goods and services."))) (define-public qtcanvas3d (package (inherit qtsvg) (name "qtcanvas3d") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0agdxgk7knf6zkjdi6316y2k9zq72wcg5zn3cbhw4hzjw81qadgg")) + "1kqcaks6lkz8cp9s3pwrvgrr8381rjzf5fbf2bzshdw7psphxiiz")) (modules '((guix build utils))) (snippet - '(begin (delete-file-recursively "examples/canvas3d/3rdparty") - #t)))) + '(begin + (delete-file-recursively "examples/canvas3d/3rdparty") + #t)))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ;; Building the tests depends on the bundled 3rd party javascript files, @@ -1356,8 +1363,8 @@ purchasing goods and services."))) (replace 'configure (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (zero? (system* "qmake" "QT_BUILD_PARTS = libs tools" - (string-append "PREFIX=" out)))))))) + (invoke "qmake" "QT_BUILD_PARTS = libs tools" + (string-append "PREFIX=" out))))))) ((#:tests? _ #f) #f))) ; TODO: Enable the tests (native-inputs `()) (inputs @@ -1370,16 +1377,16 @@ drawing calls from Qt Quick JavaScript."))) (define-public qtcharts (package (inherit qtsvg) (name "qtcharts") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1rykb72gr95rxd0rvbl846ys8xvyyhrms1jz7l4hlwp6zn1jkxvm")))) + "0lg39vd6i0l76spjz6bhb1kkpbk2mgc0hxccj7733xxbxaz14vn4")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1397,16 +1404,16 @@ selecting one of the charts themes.") (define-public qtdatavis3d (package (inherit qtsvg) (name "qtdatavis3d") - (version "5.9.5") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0i1zd7lcakhicfpqj7dlw8hzk8x5i4ddk1427jhxcpja48l4jxy5")))) + "1s7gmgh6g3aia74yiqahffrc6n8f4491vb7g3i4i10ilandipg34")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1424,16 +1431,16 @@ customized by using themes or by adding custom items and labels to them.") (define-public qtnetworkauth (package (inherit qtsvg) (name "qtnetworkauth") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "0mqcqkp9h5bgzb3wfy239wh1c9s9zxd7mww11c0jyp56wk5balcx")))) + "1kr8hwjsb8a5cypvqj48vrnkcvm2rcni102dh6i909i70a7hcsym")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1453,16 +1460,26 @@ implementation of OAuth and OAuth2 authenticathon methods for Qt."))) (define-public qtremoteobjects (package (inherit qtsvg) (name "qtremoteobjects") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "1wb50dapv0l45c0rfmpiaddvwv9na50lmd5zmm052q9d1xb15f6b")))) + "1chn1xxhapfwvhrlv4chwfgf2dw8x8kn1lssdmpmg5s420z3pbq9")))) + (arguments + (substitute-keyword-arguments (package-arguments qtsvg) + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'remove-failing-test + (lambda _ + ;; This test can't find its imports. + (substitute* "tests/auto/qml/qml.pro" + (("integration") "# integration")) + #t)))))) (inputs `(("qtbase" ,qtbase) ("qtdeclarative" ,qtdeclarative))) @@ -1475,16 +1492,16 @@ processes or computers."))) (define-public qtspeech (package (inherit qtsvg) (name "qtspeech") - (version "5.9.4") + (version "5.11.0") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version - "/submodules/" name "-opensource-src-" + "/submodules/" name "-everywhere-src-" version ".tar.xz")) (sha256 (base32 - "17h8hrixxcsn7pd5iipbj2hxpp5m2dhfq3w04wkamambb49qs80x")))) + "1bgfg0akqf1nfzm28n8dhvhj0p1niwxrfs763gj7m0g6vpwjbhd1")))) (inputs `(("qtbase" ,qtbase))) (native-inputs @@ -1504,7 +1521,7 @@ message."))) (define-public python-sip (package (name "python-sip") - (version "4.19.3") + (version "4.19.8") (source (origin (method url-fetch) @@ -1513,7 +1530,7 @@ message."))) "sip-" version "/sip-" version ".tar.gz")) (sha256 (base32 - "0x2bghbprwl3az1ni3p87i0bq8r99694la93kg65vi0cz12gh3bl")))) + "1g4pq9vj753r2s061jc4y9ydzgb48ibhc9bdvmb8mlyllwp7mbvy")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-wrapper))) @@ -1567,7 +1584,7 @@ module provides support functions to the automatically generated code.") (define-public python-pyqt (package (name "python-pyqt") - (version "5.9") + (version "5.10.1") (source (origin (method url-fetch) @@ -1577,7 +1594,7 @@ module provides support functions to the automatically generated code.") version ".tar.gz")) (sha256 (base32 - "15hh4z5vd45dcswjla58q6rrfr6ic7jfz2n7c8lwfb10rycpj3mb")) + "1vz9c4v0k8azk2b08swwybrshzw32x8djjpq13mf9v15x1qyjclr")) (patches (search-patches "pyqt-configure.patch")))) (build-system gnu-build-system) (native-inputs @@ -1596,7 +1613,7 @@ module provides support functions to the automatically generated code.") ("qtsvg" ,qtsvg) ("qttools" ,qttools) ("qtwebchannel" ,qtwebchannel) - ("qtwebkit" ,qtwebkit) + ;("qtwebkit" ,qtwebkit) ("qtwebsockets" ,qtwebsockets) ("qtx11extras" ,qtx11extras) ("qtxmlpatterns" ,qtxmlpatterns))) @@ -1605,6 +1622,12 @@ module provides support functions to the automatically generated code.") ,@%gnu-build-system-modules) #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-build-with-qt-5.11 + ;; See: https://bugs.gentoo.org/654742 + (lambda _ + (substitute* "sip/QtTest/qtestmouse.sip" + (("void waitForEvents\\(\\) /ReleaseGIL/;") "")) + #t)) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1712,7 +1735,7 @@ contain over 620 classes.") (define-public qscintilla (package (name "qscintilla") - (version "2.10.2") + (version "2.10.3") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/pyqt/QScintilla2/" @@ -1720,7 +1743,7 @@ contain over 620 classes.") version ".tar.gz")) (sha256 (base32 - "1l2ylsv6s3wfhyx7qr5cxgkwwwhvbrpd2k7akgm9bvbyf4h1vcql")))) + "1rw1nlwnyzj5pb86cc5kk56qhrvwvrjvjzgrkwh3g7b9wxl7lrfj")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index c15e677438..5c70f5e743 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -669,14 +669,14 @@ line of code.") (define-public ruby-asciidoctor (package (name "ruby-asciidoctor") - (version "1.5.6.2") + (version "1.5.7.1") (source (origin (method url-fetch) (uri (rubygems-uri "asciidoctor" version)) (sha256 (base32 - "0zq3az4836nxkc8g5wnnbzmarw7663s1ky6gf8pc04sfpa8n2l3f")))) + "0v52bzc72cvg7zfgq27pa4mgyf29dx9m20fghrw1xmvwgd519n1w")))) (build-system ruby-build-system) (arguments `(#:test-target "test:all" @@ -698,7 +698,7 @@ line of code.") (description "Asciidoctor is a text processor and publishing toolchain for converting AsciiDoc content to HTML5, DocBook 5 (or 4.5) and other formats.") - (home-page "http://asciidoctor.org") + (home-page "https://asciidoctor.org") (license license:expat))) (define-public ruby-sporkmonger-rack-mount @@ -1005,13 +1005,13 @@ interfaces.") (define-public ruby-lumberjack (package (name "ruby-lumberjack") - (version "1.0.12") + (version "1.0.13") (source (origin (method url-fetch) (uri (rubygems-uri "lumberjack" version)) (sha256 (base32 - "0yz26k9mi0djx1qvlmvdw1xw2yf7a2rkfmnb2j0d28kms33xpibp")))) + "06im7gcg42x77yhz2w5da2ly9xz0n0c36y5ks7xs53v0l9g0vf5n")))) (build-system ruby-build-system) (native-inputs `(("ruby-rspec" ,ruby-rspec) @@ -1346,13 +1346,13 @@ disable tests, have before and after blocks that run once and more.") (define-public ruby-connection-pool (package (name "ruby-connection-pool") - (version "2.2.1") + (version "2.2.2") (source (origin (method url-fetch) (uri (rubygems-uri "connection_pool" version)) (sha256 (base32 - "17vpaj6kyf2i8bimaxz7rg1kyadf4d10642ja67qiqlhwgczl2w7")))) + "0lflx29mlznf1hn0nihkgllzbj8xp5qasn8j7h838465pi399k68")))) (build-system ruby-build-system) (native-inputs `(("bundler" ,bundler))) @@ -2068,14 +2068,14 @@ instance, it provides @code{assert_true}, @code{assert_false} and (define-public ruby-minitest-hooks (package (name "ruby-minitest-hooks") - (version "1.4.1") + (version "1.4.2") (source (origin (method url-fetch) (uri (rubygems-uri "minitest-hooks" version)) (sha256 (base32 - "05bngfyxwq1cflk568nhddgfrmws5ff6kiqax4skklsjnh71ykbi")))) + "0lnpvzijbjrvxjc43d155jnbk2mkfshrz22an711wh004scavlzc")))) (build-system ruby-build-system) (arguments '(#:test-target "spec")) @@ -2924,13 +2924,13 @@ a native C extension.") (define-public ruby-rb-fsevent (package (name "ruby-rb-fsevent") - (version "0.10.2") + (version "0.10.3") (source (origin (method url-fetch) (uri (rubygems-uri "rb-fsevent" version)) (sha256 (base32 - "1fbpmjypwxkb8r7y1kmhmyp6gawa4byw0yb3jc3dn9ly4ld9lizf")))) + "1lm1k7wpz69jx7jrc92w3ggczkjyjbfziq5mg62vjnxmzs383xx8")))) (build-system ruby-build-system) ;; Tests need "guard-rspec", which needs "guard". However, "guard" needs ;; "listen", which needs "rb-fsevent" at runtime. @@ -3694,17 +3694,17 @@ application.") (define-public ruby-eventmachine (package (name "ruby-eventmachine") - (version "1.2.5") + (version "1.2.7") (source (origin (method url-fetch) (uri (rubygems-uri "eventmachine" version)) (sha256 (base32 - "075hdw0fgzldgss3xaqm2dk545736khcvv1fmzbf1sgdlkyh1v8z")))) + "0wh9aqb0skz80fhfn66lbpr4f86ya2z5rx6gm5xlfhd05bj1ch4r")))) (build-system ruby-build-system) (arguments - '(#:tests? #f)) ; test suite tries to connect to google.com + '(#:tests? #f)) ; test suite tries to connect to google.com (native-inputs `(("ruby-rake-compiler" ,ruby-rake-compiler))) (synopsis "Single-threaded network event framework for Ruby") @@ -3713,7 +3713,8 @@ application.") communications. EventMachine wraps all interactions with sockets, allowing programs to concentrate on the implementation of network protocols. It can be used to create both network servers and clients.") - (home-page "http://rubyeventmachine.com") + ;; The ‘official’ rubyeventmachine.com domain is now registrar-squatted. + (home-page "https://github.com/eventmachine/eventmachine") (license (list license:ruby license:gpl3)))) ; GPLv3 only AFAICT (define-public ruby-ruby-engine @@ -3882,14 +3883,14 @@ definitions.") (define-public ruby-fivemat (package (name "ruby-fivemat") - (version "1.3.5") + (version "1.3.6") (source (origin (method url-fetch) (uri (rubygems-uri "fivemat" version)) (sha256 (base32 - "0ij7n250gk5c1g34rsbwjnpcv64gk4vsas8lkz8fac4wbygvk6z1")))) + "006n7b09vviv5bs5hv2ccmjxw9iw3brcsm3xh3dhzfncsknz4jp7")))) (build-system ruby-build-system) (arguments `(#:tests? #f)) ; no tests diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 0a9d5bb382..7fcc795b6f 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -59,36 +59,49 @@ (define %cargo-reference-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855") +(define* (nix-system->gnu-triplet-for-rust + #:optional (system (%current-system))) + (match system + ("x86_64-linux" "x86_64-unknown-linux-gnu") + ("i686-linux" "i686-unknown-linux-gnu") + ("armhf-linux" "armv7-unknown-linux-gnueabihf") + ("aarch64-linux" "aarch64-unknown-linux-gnu") + ("mips64el-linux" "mips64el-unknown-linux-gnuabi64") + (_ (nix-system->gnu-triplet system)))) + (define rust-bootstrap (package (name "rust-bootstrap") (version "1.22.1") - (source (origin - (method url-fetch) - (uri (string-append - "https://static.rust-lang.org/dist/" - "rust-" version "-" %host-type ".tar.gz")) - (sha256 - (base32 - (match %host-type - ("i686-unknown-linux-gnu" - "15zqbx86nm13d5vq2gm69b7av4vg479f74b5by64hs3bcwwm08pr") - ("x86_64-unknown-linux-gnu" - "1yll78x6b3abnvgjf2b66gvp6mmcb9y9jdiqcwhmgc0z0i0fix4c") - ("armv7-unknown-linux-gnueabihf" - "138a8l528kzp5wyk1mgjaxs304ac5ms8vlpq0ggjaznm6bn2j7a5") - ("aarch64-unknown-linux-gnu" - "0z6m9m1rx4d96nvybbfmpscq4dv616m615ijy16d5wh2vx0p4na8") - ("mips64el-unknown-linux-gnuabi64" - "07k4pcv7jvfa48cscdj8752lby7m7xdl88v3a6na1vs675lhgja2") - (_ "")))))) + (source #f) (build-system gnu-build-system) (native-inputs `(("patchelf" ,patchelf))) (inputs `(("gcc" ,(canonical-package gcc)) ("gcc:lib" ,(canonical-package gcc) "lib") - ("zlib" ,zlib))) + ("zlib" ,zlib) + ("source" + ,(origin + (method url-fetch) + (uri (string-append + "https://static.rust-lang.org/dist/" + "rust-" version "-" (nix-system->gnu-triplet-for-rust) + ".tar.gz")) + (sha256 + (base32 + (match (nix-system->gnu-triplet-for-rust) + ("i686-unknown-linux-gnu" + "15zqbx86nm13d5vq2gm69b7av4vg479f74b5by64hs3bcwwm08pr") + ("x86_64-unknown-linux-gnu" + "1yll78x6b3abnvgjf2b66gvp6mmcb9y9jdiqcwhmgc0z0i0fix4c") + ("armv7-unknown-linux-gnueabihf" + "138a8l528kzp5wyk1mgjaxs304ac5ms8vlpq0ggjaznm6bn2j7a5") + ("aarch64-unknown-linux-gnu" + "0z6m9m1rx4d96nvybbfmpscq4dv616m615ijy16d5wh2vx0p4na8") + ("mips64el-unknown-linux-gnuabi64" + "07k4pcv7jvfa48cscdj8752lby7m7xdl88v3a6na1vs675lhgja2") + (_ "")))))))) (outputs '("out" "cargo")) (arguments `(#:tests? #f @@ -117,7 +130,8 @@ (invoke "bash" "install.sh" (string-append "--prefix=" out) (string-append "--components=rustc," - "rust-std-" %host-type)) + "rust-std-" + ,(nix-system->gnu-triplet-for-rust))) ;; Instal cargo (invoke "bash" "install.sh" (string-append "--prefix=" cargo-out) @@ -138,7 +152,7 @@ (home-page "https://www.rust-lang.org") (synopsis "Prebuilt rust compiler and cargo package manager") (description "This package provides a pre-built @command{rustc} compiler -and a pre-built @command{cargo} package manaer, which can +and a pre-built @command{cargo} package manager, which can in turn be used to build the final Rust.") (license license:asl2.0))) @@ -196,6 +210,12 @@ in turn be used to build the final Rust.") ;; This test is known to fail on aarch64 and powerpc64le: ;; https://github.com/rust-lang/rust/issues/45410 (("fn test_loading_cosine") "#[ignore]\nfn test_loading_cosine")) + ;; nm doesn't recognize the file format because of the + ;; nonstandard sections used by the Rust compiler, but readelf + ;; ignores them. + (substitute* "src/test/run-make/atomic-lock-free/Makefile" + (("\tnm ") + "\treadelf -c ")) #t))) (add-after 'patch-source-shebangs 'patch-cargo-checksums (lambda* _ @@ -237,8 +257,21 @@ in turn be used to build the final Rust.") ("llvm" ,llvm-3.9.1) ("openssl" ,openssl) ("libcurl" ,curl))) ; For "cargo" + ;; rustc invokes gcc, so we need to set its search paths accordingly. - (native-search-paths (package-native-search-paths gcc)) + ;; Note: duplicate its value here to cope with circular dependencies among + ;; modules (see <https://bugs.gnu.org/31392>). + (native-search-paths + (list (search-path-specification + (variable "C_INCLUDE_PATH") + (files '("include"))) + (search-path-specification + (variable "CPLUS_INCLUDE_PATH") + (files '("include"))) + (search-path-specification + (variable "LIBRARY_PATH") + (files '("lib" "lib64"))))) + (synopsis "Compiler for the Rust progamming language") (description "Rust is a systems programming language that provides memory safety and thread safety guarantees.") @@ -259,8 +292,8 @@ safety and thread safety guarantees.") (package-native-inputs base-rust)))))) (define-public mrustc - (let ((commit "4f98e4322ef7aabd3bbef8cd93c0980cd6eeeed1") - (revision "1") + (let ((commit "b5b70897015ee70d62ddda9711c256ca7c720e0f") + (revision "3") (rustc-version "1.19.0")) (package (name "mrustc") @@ -273,7 +306,7 @@ safety and thread safety guarantees.") (file-name (git-file-name name version)) (sha256 (base32 - "1hk1x2iv64il5g2n3z06d6h219hnxg1w84lj7vi1lydqa65qk92p")))) + "1d6jr6agiy598ab8lax0h9dfn9n67wg906y1f46l1c27sz3w82lb")))) (outputs '("out" "cargo")) (build-system gnu-build-system) (inputs @@ -300,14 +333,16 @@ safety and thread safety guarantees.") (("^RUSTC_TARGET := x86_64-unknown-linux-gnu") (string-append "RUSTC_TARGET := " ,(or (%current-target-system) - (nix-system->gnu-triplet - (%current-system)))))) + (nix-system->gnu-triplet-for-rust))))) (invoke "tar" "xf" (assoc-ref inputs "rustc")) (chdir "rustc-1.19.0-src") (invoke "patch" "-p0" "../rust_src.patch") (chdir "..") #t)) - (delete 'configure) + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) + (setenv "CC" (string-append (assoc-ref inputs "gcc") "/bin/gcc")) + #t)) (add-after 'build 'build-minicargo (lambda _ (for-each (lambda (target) @@ -370,6 +405,10 @@ safety and thread safety guarantees.") (substitute* "src/tools/cargo/tests/death.rs" ;; This is stuck when built in container. (("fn ctrl_c_kills_everyone") "#[ignore]\nfn ctrl_c_kills_everyone")) + ;; Prints test output in the wrong order when built on + ;; i686-linux. + (substitute* "src/tools/cargo/tests/test.rs" + (("fn cargo_test_env") "#[ignore]\nfn cargo_test_env")) #t)) (add-after 'patch-cargo-tests 'fix-mtime-bug (lambda* _ @@ -417,7 +456,7 @@ rpath = true # codegen/mainsubprogram.rs and codegen/mainsubprogramstart.rs # This tests required patched LLVM codegen-tests = false -[target." %host-type "] +[target." ,(nix-system->gnu-triplet-for-rust) "] llvm-config = \"" llvm "/bin/llvm-config" "\" cc = \"" gcc "/bin/gcc" "\" cxx = \"" gcc "/bin/g++" "\" @@ -440,8 +479,10 @@ jemalloc = \"" jemalloc "/lib/libjemalloc_pic.a" "\" (invoke "./x.py" "build" "src/tools/cargo"))) (replace 'check (lambda* _ - (invoke "./x.py" "test") - (invoke "./x.py" "test" "src/tools/cargo"))) + ;; Disable parallel execution to prevent EAGAIN errors when + ;; running tests. + (invoke "./x.py" "-j1" "test") + (invoke "./x.py" "-j1" "test" "src/tools/cargo"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (invoke "./x.py" "install") diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 13b904a6c5..37576ee9f6 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -150,14 +150,14 @@ anywhere.") (define-public samba (package (name "samba") - (version "4.7.7") + (version "4.8.2") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 (base32 - "0c81x2ncnvz3mi6fjj81clm1mh049d3ip3fj031l44qclxpx3yi9")))) + "08mz29jmjxqvyyhm6pa388paagw1i2i21lc7pd2aprj9dllm5rb2")))) (build-system gnu-build-system) (arguments `(#:phases @@ -192,8 +192,8 @@ anywhere.") (add-before 'install 'disable-etc-samba-directory-creation (lambda _ (substitute* "dynconfig/wscript" - (("bld\\.INSTALL_DIRS\\(\"\",[[:blank:]]{1,}\"\\$\\{CONFIGDIR\\}[[:blank:]]{1,}") - "bld.INSTALL_DIRS(\"\", \"")) + (("bld\\.INSTALL_DIR\\(\"\\$\\{CONFIGDIR\\}\"\\)") + "")) #t))) ;; XXX: The test infrastructure attempts to set password with ;; smbpasswd, which fails with "smbpasswd -L can only be used by root." @@ -206,14 +206,16 @@ anywhere.") ("gnutls" ,gnutls) ("iniparser" ,iniparser) ("libaio" ,libaio) - ("ldb" ,ldb) ("linux-pam" ,linux-pam) ("openldap" ,openldap) ("popt" ,popt) ("readline" ,readline) - ("talloc" ,talloc) - ("tevent" ,tevent) ("tdb" ,tdb))) + (propagated-inputs + ;; In Requires or Requires.private of pkg-config files. + `(("ldb" ,ldb) + ("talloc" ,talloc) + ("tevent" ,tevent))) (native-inputs `(("docbook-xsl" ,docbook-xsl) ;for generating manpages ("xsltproc" ,libxslt) ;ditto @@ -340,14 +342,14 @@ many event types, including timers, signals, and the classic file descriptor eve (define-public ldb (package (name "ldb") - (version "1.3.2") + (version "1.3.3") (source (origin (method url-fetch) (uri (string-append "https://www.samba.org/ftp/ldb/ldb-" version ".tar.gz")) (sha256 (base32 - "1avn4fl393kc80krbc47phbp0argdkys62ycs8vm934a6nvz0gnf")))) + "14gsrm7dvyjpbpnc60z75j6fz2p187abm2h353lq95kx2bv70c1b")))) (build-system gnu-build-system) (arguments '(#:phases diff --git a/gnu/packages/scribus.scm b/gnu/packages/scribus.scm index 6cf382e0bb..98bdf5d24e 100644 --- a/gnu/packages/scribus.scm +++ b/gnu/packages/scribus.scm @@ -1,7 +1,8 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -46,7 +47,7 @@ (define-public scribus (package (name "scribus") - (version "1.5.3") + (version "1.5.4") (source (origin (method url-fetch) @@ -54,48 +55,13 @@ version "/scribus-" version ".tar.xz")) (sha256 (base32 - "0kyp45vidxa3v35ic9592db4zk3m8al26vck38q5v7z14x3hp8vk")) - (patches - (list - (origin - (method url-fetch) - (uri (string-append "https://github.com/scribusproject/scribus/commit/" - "61186c7ef083046b7e0c908952e8a773e2787d82.patch")) - (file-name "scribus-fix-poppler-0.58-breakage.patch") - (sha256 - (base32 "189qw9xmgz01xz1w1bi9lzrp399zk1j1iz5qdhchdrhgnd69b7ly"))) - (origin - (method url-fetch) - (uri (string-append "https://github.com/scribusproject/scribus/commit/" - "d82b1c989bd0e79b5611521f671adbfb94996e5e.patch")) - (file-name "scribus-fix-poppler-packaging.patch") - (sha256 - (base32 "1p9s18jjvj2h0ba1xvk1zhmnn4f4n3ykrgb56mjd6in30h0vrykx"))))) - (modules '((guix build utils))) - (snippet - ;; Fix typo. Equivalent to patch at - ;; https://bugs.scribus.net/view.php?id=14850 - '(begin - (substitute* "cmake/modules/FindLIBPODOFO.cmake" - (("find_package\\(OPENSSL\\)") "find_package(OpenSSL)")) - #t)))) + "00ys0p6h3iq77kh72dkl0qrf7qvznq18qdrgiq10gfxja1995034")) + (modules '((guix build utils))))) (build-system cmake-build-system) (arguments `(#:tests? #f ;no test target #:configure-flags - '("-DWANT_GRAPHICSMAGICK=1") - #:phases - (modify-phases %standard-phases - (add-after 'install 'wrap-program - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Fix "ImportError: No module named _sysconfigdata_nd" where - ;; Scribus checks PATH and eventually runs system's Python - ;; instead of package's. - (let* ((out (assoc-ref outputs "out")) - (py2 (assoc-ref inputs "python"))) - (wrap-program (string-append out "/bin/scribus") - `("PATH" ":" prefix (,(string-append py2 "/bin"))))) - #t))))) + '("-DWANT_GRAPHICSMAGICK=1"))) (inputs `(("boost" ,boost) ("cairo" ,cairo) @@ -116,6 +82,7 @@ ("libtiff" ,libtiff) ("libvisio" ,libvisio) ("libxml2" ,libxml2) + ("libzmf" ,libzmf) ("openssl" ,openssl) ("podofo" ,podofo) ("poppler" ,poppler) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 02deb5c4ae..e176fd1aa7 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015, 2016 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -32,12 +33,14 @@ #:use-module (gnu packages compression) #:use-module (gnu packages check) #:use-module (gnu packages databases) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages linux) #:use-module (gnu packages perl) #:use-module (gnu packages pdf) #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages web) + #:use-module (gnu packages xdisorg) #:use-module (gnu packages xml)) (define-public xapian @@ -62,13 +65,13 @@ ;; getaddrinfo(). This does not work in the build environment, ;; so exclude those tests. See HACKING for the list of targets. (lambda _ - (zero? (system* "make" - "check-inmemory" - "check-remoteprog" - ;"check-remotetcp" - "check-multi" - "check-glass" - "check-chert"))))))) + (invoke "make" + "check-inmemory" + "check-remoteprog" + ;"check-remotetcp" + "check-multi" + "check-glass" + "check-chert")))))) (synopsis "Search Engine Library") (description "Xapian is a highly adaptable toolkit which allows developers to easily @@ -326,27 +329,52 @@ search the generated indexes.") "0ykz6hn3qj46w3c99d6q0pi5ncq2894simcl7vapv047zm3cylmd")))) (build-system python-build-system) (propagated-inputs - `(("python-urwid" ,python-urwid))) - (inputs `(("poppler" ,poppler) - ("python" ,python) - ("python-latexcodec" ,python-latexcodec) + ("python-urwid" ,python-urwid) + ("xclip" ,xclip) + ("xdg-utils" ,xdg-utils))) + (inputs + `(("python-latexcodec" ,python-latexcodec) ("python-pybtex" ,python-pybtex) ("python-pycurl" ,python-pycurl) ("python-pyyaml" ,python-pyyaml) ("python-six" ,python-six) ("python-xapian-bindings" ,python-xapian-bindings))) (arguments - `(#:phases + `(#:modules ((ice-9 rdelim) + (guix build python-build-system) + (guix build utils)) + #:phases (modify-phases %standard-phases (add-after 'install 'install-doc (lambda* (#:key inputs outputs #:allow-other-keys) + (define (purge-term-support input output) + (let loop ((line (read-line input))) + (if (string-prefix? "if [[ \"$term\"" line) + (begin (display "eval \"$cmd\"\n" output) + #t) + (begin (display (string-append line "\n") output) + (loop (read-line input)))))) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin")) + (adder-out (string-append bin "/xapers-adder")) (man1 (string-append out "/share/man/man1"))) (install-file "man/man1/xapers.1" man1) (install-file "man/man1/xapers-adder.1" man1) - (install-file "bin/xapers-adder" bin))))))) + ;; below is equivalent to setting --no-term option + ;; permanently on; this is desirable to avoid imposing + ;; an x-terminal installation on the user but breaks + ;; some potential xapers-adder uses like auto browser + ;; pdf handler, but user could instead still use + ;; e.g. "xterm -e xapers-adder %F" for same use. + ;; alternatively we could propagate xterm as an input + ;; and replace 'x-terminal-emulator' with 'xterm' + (call-with-input-file "bin/xapers-adder" + (lambda (input) + (call-with-output-file adder-out + (lambda (output) + (purge-term-support input output))))) + (chmod adder-out #o555))))))) (home-page "https://finestructure.net/xapers/") (synopsis "Personal document indexing system") (description diff --git a/gnu/packages/security-token.scm b/gnu/packages/security-token.scm index 6ff83ce5a4..9c8474dd02 100644 --- a/gnu/packages/security-token.scm +++ b/gnu/packages/security-token.scm @@ -4,8 +4,9 @@ ;;; Copyright © 2016 Mike Gerwitz <mtg@gnu.org> ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> ;;; 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 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,14 +32,20 @@ #:use-module (guix build-system glib-or-gtk) #:use-module (gnu packages autotools) #:use-module (gnu packages curl) + #:use-module (gnu packages check) + #:use-module (gnu packages docbook) + #:use-module (gnu packages documentation) #:use-module (gnu packages gettext) + #:use-module (gnu packages graphviz) #:use-module (gnu packages gtk) #:use-module (gnu packages libusb) #:use-module (gnu packages linux) #:use-module (gnu packages man) #:use-module (gnu packages networking) #:use-module (gnu packages cyrus-sasl) + #:use-module (gnu packages readline) #:use-module (gnu packages tls) + #:use-module (gnu packages tex) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages xml)) @@ -50,8 +57,8 @@ (source (origin (method url-fetch) (uri (string-append - "https://alioth.debian.org/frs/download.php/file/4238/" - "ccid-" version ".tar.bz2")) + "https://ccid.apdu.fr/files/" + name "-" version ".tar.bz2")) (sha256 (base32 "0kdqmbma6sclsrbxy9w85h7cs0v11if4nc2r9v09613k8pl2lhx5")))) @@ -72,7 +79,7 @@ (inputs `(("libusb" ,libusb) ("pcsc-lite" ,pcsc-lite))) - (home-page "https://pcsclite.alioth.debian.org/ccid.html") + (home-page "https://ccid.apdu.fr/") (synopsis "PC/SC driver for USB smart card devices") (description "This package provides a PC/SC IFD handler implementation for devices @@ -150,8 +157,8 @@ the low-level development kit for the Yubico YubiKey authentication device.") (source (origin (method url-fetch) (uri (string-append - "https://alioth.debian.org/frs/download.php/file/4235/" - "pcsc-lite-" version ".tar.bz2")) + "https://pcsclite.apdu.fr/files/" + name "-" version ".tar.bz2")) (sha256 (base32 "1jc9ws5ra6v3plwraqixin0w0wfxj64drahrbkyrrwzghqjjc9ss")))) @@ -164,7 +171,7 @@ the low-level development kit for the Yubico YubiKey authentication device.") ("pkg-config" ,pkg-config))) (inputs `(("libudev" ,eudev))) - (home-page "https://pcsclite.alioth.debian.org/pcsclite.html") + (home-page "https://pcsclite.apdu.fr/") (synopsis "Middleware to access a smart card using PC/SC") (description "pcsc-lite provides an interface to communicate with smartcards and @@ -202,3 +209,86 @@ one-time-password (OTP) YubiKey against Yubico’s servers. See the Yubico website for more information about Yubico and the YubiKey.") (home-page "https://developers.yubico.com/yubico-c-client/") (license license:bsd-2))) + +(define-public opensc + (package + (name "opensc") + (version "0.17.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/OpenSC/OpenSC/releases/download/" + version "/opensc-" version ".tar.gz")) + (sha256 + (base32 + "0043jh5g7q2lyd5vnb0akwb5y349isx7vbm9wqhlgav7d20wcwxy")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; By setting an absolute path here, we arrange for OpenSC to + ;; successfully dlopen libpcsclite.so.1 by default. The user can + ;; still override this if they want to, by specifying a custom OpenSC + ;; configuration file at runtime. + (add-after 'unpack 'set-default-libpcsclite.so.1-path + (lambda* (#:key inputs #:allow-other-keys) + (let ((libpcsclite (string-append (assoc-ref inputs "pcsc-lite") + "/lib/libpcsclite.so.1"))) + (substitute* "configure" + (("DEFAULT_PCSC_PROVIDER=\"libpcsclite\\.so\\.1\"") + (string-append + "DEFAULT_PCSC_PROVIDER=\"" libpcsclite "\""))) + #t)))))) + (inputs + `(("readline" ,readline) + ("openssl" ,openssl) + ("pcsc-lite" ,pcsc-lite) + ("ccid" ,ccid))) + (native-inputs + `(("libxslt" ,libxslt) + ("docbook-xsl" ,docbook-xsl) + ("pkg-config" ,pkg-config))) + (home-page "https://github.com/OpenSC/OpenSC/wiki") + (synopsis "Tools and libraries related to smart cards") + (description + "OpenSC is a set of software tools and libraries to work with smart +cards, with the focus on smart cards with cryptographic capabilities. OpenSC +facilitate the use of smart cards in security applications such as +authentication, encryption and digital signatures. OpenSC implements the PKCS +#15 standard and the PKCS #11 API.") + (license license:lgpl2.1+))) + +(define-public yubico-piv-tool + (package + (name "yubico-piv-tool") + (version "1.5.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://developers.yubico.com/yubico-piv-tool/Releases/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1axa0lnky5gsc8yack6mpfbjh49z0czr1cv52gbgjnx2kcbpb0y1")))) + (build-system gnu-build-system) + (inputs + `(("perl" ,perl) + ("pcsc-lite" ,pcsc-lite) + ("openssl" ,openssl))) + (native-inputs + `(("doxygen" ,doxygen) + ("graphviz" ,graphviz) + ("check" ,check) + ("texlive-bin" ,texlive-bin) + ("pkg-config" ,pkg-config))) + (home-page "https://developers.yubico.com/yubico-piv-tool/") + (synopsis "Interact with the PIV application on a YubiKey") + (description + "The Yubico PIV tool is used for interacting with the Privilege and +Identification Card (PIV) application on a YubiKey. With it you may generate +keys on the device, import keys and certificates, create certificate requests, +and other operations. It includes a library and a command-line tool.") + ;; The file ykcs11/pkcs11.h also declares an additional, very short free + ;; license for that one file. Please see it for details. The vast + ;; majority of files are licensed under bsd-2. + (license license:bsd-2))) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index 77afe2a11e..3064e385e2 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -248,7 +248,7 @@ that implements both the msgpack and msgpack-rpc specifications.") (define-public yaml-cpp (package (name "yaml-cpp") - (version "0.6.1") + (version "0.6.2") (source (origin (method url-fetch) (uri (string-append @@ -256,12 +256,10 @@ that implements both the msgpack and msgpack-rpc specifications.") "yaml-cpp-" version ".tar.gz")) (sha256 (base32 - "038ddf771d1zrdfiwqzq2lsjdis1fxbaasbdja2w9f1av3k3gv15")))) + "01gxn7kc8pzyh4aadjxxzq8cignmbwmm9rfrsmgqfg9w2q75dn74")))) (build-system cmake-build-system) (arguments '(#:configure-flags '("-DBUILD_SHARED_LIBS=ON"))) - (inputs - `(("boost" ,boost))) (native-inputs `(("python" ,python))) (home-page "https://github.com/jbeder/yaml-cpp") diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 8b41c8d613..bbf44e246c 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -52,7 +52,7 @@ (define-public dash (package (name "dash") - (version "0.5.9.1") + (version "0.5.10.2") (source (origin (method url-fetch) @@ -60,7 +60,7 @@ "dash-" version ".tar.gz")) (sha256 (base32 - "0ng695mq5ngg43h7ljhxvbjm46ym3nayj6ssn47d2gm9fbm5pkay")) + "0wb0bwmqc661hylqcfdp7l7x12myw3vpqk513ncyqrjwvhckjriw")) (modules '((guix build utils))) (snippet '(begin @@ -356,14 +356,14 @@ ksh, and tcsh.") (define-public xonsh (package (name "xonsh") - (version "0.6.1") + (version "0.6.2") (source (origin (method url-fetch) (uri (pypi-uri "xonsh" version)) (sha256 (base32 - "09rrfcwpirbxmjjqnsbyn7lwm1wyn41z5zhkbnv57i5hcgs72kx6")) + "0c2bbmdg0n10q54vq9k1z5n53l0mh1hb1q5xprfhilvrbr6hlcwr")) (modules '((guix build utils))) (snippet `(begin diff --git a/gnu/packages/skarnet.scm b/gnu/packages/skarnet.scm index a0b482a671..21d2eebaa9 100644 --- a/gnu/packages/skarnet.scm +++ b/gnu/packages/skarnet.scm @@ -29,7 +29,7 @@ (define-public skalibs (package (name "skalibs") - (version "2.6.3.1") + (version "2.6.4.0") (source (origin (method url-fetch) @@ -37,7 +37,7 @@ version ".tar.gz")) (sha256 (base32 - "108c4vslsfy57892ybbksscrjd4bx444hzzcq2g5wdg2sh0cl245")))) + "1iywavxaw398ifc35xda27cb8hx14viy3kqrzby8fqysx3qp7b1h")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests exist @@ -218,7 +218,7 @@ clock synchronization."))) (define-public s6-rc (package (name "s6-rc") - (version "0.4.0.0") + (version "0.4.0.1") (source (origin (method url-fetch) @@ -226,7 +226,7 @@ clock synchronization."))) version ".tar.gz")) (sha256 (base32 - "1fkg9635cvrf6gw055y346a3n634dy2xiwbypawi68flfprfgf4n")))) + "0p4yczbib626kygr3pdvvay0xwyha92rjnhn79cbx18ywc2n4jsb")))) (build-system gnu-build-system) (inputs `(("skalibs" ,skalibs) ("execline" ,execline) diff --git a/gnu/packages/skribilo.scm b/gnu/packages/skribilo.scm index f10acaec70..12bdd1a2fa 100644 --- a/gnu/packages/skribilo.scm +++ b/gnu/packages/skribilo.scm @@ -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> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,22 +31,18 @@ (define-public skribilo (package (name "skribilo") - (version "0.9.3") + (version "0.9.4") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/skribilo/skribilo-" version ".tar.gz")) (sha256 (base32 - "04d8xa76jvlz25jnc6p1gzsplwcwcqrmi3f7ixdhddhl1chyz66y")))) + "06ywnfjfa9sxrzdszb5sryzg266380g519cm64kq62sskzl7zmnf")))) (build-system gnu-build-system) (arguments ;; Make the modules available under the usual location. - '(#:configure-flags (list (string-append "--with-guilemoduledir=" - (assoc-ref %outputs "out") - "/share/guile/site/2.0")) - - #:phases + '(#:phases (modify-phases %standard-phases (add-before 'configure 'pre-configure (lambda* (#:key inputs #:allow-other-keys) @@ -57,8 +53,8 @@ (substitute* "src/skribilo.in" (("^exec (.*) -c" _ things) (string-append "exec " things - " -L " reader "/share/guile/site/2.0" - " -C " reader "/share/guile/site/2.0" + " -L " reader "/share/guile/site/2.2" + " -C " reader "/lib/guile/2.2/site-ccache" " -c")))) #t))) @@ -66,7 +62,7 @@ (native-inputs `(("pkg-config" ,pkg-config))) - (inputs `(("guile" ,guile-2.0) + (inputs `(("guile" ,guile-2.2) ("imagemagick" ,imagemagick) ("ghostscript" ,ghostscript) ; for 'convert' ("ploticus" ,ploticus) @@ -74,8 +70,8 @@ ;; The 'skribilo' command needs them, and for people using Skribilo as a ;; library, these inputs are needed as well. - (propagated-inputs `(("guile-reader" ,guile2.0-reader) - ("guile-lib" ,guile2.0-lib))) + (propagated-inputs `(("guile-reader" ,guile-reader) + ("guile-lib" ,guile-lib))) (home-page "https://www.nongnu.org/skribilo/") (synopsis "Document production tool written in Guile Scheme") diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index 112ccb3280..dd8518002d 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -116,11 +116,24 @@ remote applications.") ;; zlib libraries, so we need to propagate the inputs. (propagated-inputs `(("libgcrypt" ,libgcrypt) ("zlib" ,zlib))) - (arguments '(#:configure-flags `("--with-libgcrypt") - #:phases (modify-phases %standard-phases - (add-before 'configure 'autoreconf - (lambda _ - (invoke "autoreconf" "-v")))))) + (arguments `(#:configure-flags `("--with-libgcrypt") + #:phases + ;; FIXME: In the next core-updates cycle, replace the entire + ;; following ,(...) form with its first 'modify-phases' + ;; subform. The change made here is only strictly needed on + ;; MIPS, but should work on any system. For now, we apply it + ;; only to MIPS to avoid forcing thousands of rebuilds on + ;; other systems. + ,(if (string-prefix? "mips" (or (%current-target-system) + (%current-system))) + '(modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + (invoke "autoreconf" "-v")))) + '(modify-phases %standard-phases + (add-before 'configure 'autoreconf + (lambda _ + (invoke "autoreconf" "-v"))))))) (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake))) (synopsis "Client-side C library implementing the SSH2 protocol") @@ -444,16 +457,15 @@ particularly useful for embedded systems, such as wireless routers.") (define-public liboop (package (name "liboop") - (version "1.0") + (version "1.0.1") (source (origin (method url-fetch) - (uri (string-append "http://download.ofb.net/liboop/liboop-" - version ".tar.gz")) + (uri (string-append "http://ftp.lysator.liu.se/pub/liboop/" + name "-" version ".tar.gz")) (sha256 (base32 - "0z6rlalhvfca64jpvksppc9bdhs7jwhiw4y35g5ibvh91xp3rn1l")) - (patches (search-patches "liboop-mips64-deplibs-fix.patch")))) + "1q0p1l72pq9k3bi7a366j2rishv7dzzkg3i6r2npsfg7cnnidbsn")))) (build-system gnu-build-system) (home-page "http://www.lysator.liu.se/liboop/") (synopsis "Event loop library") diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 51f5ad91b1..3eba723a43 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -61,6 +61,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (gnu packages ssh) + #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) #:use-module (gnu packages time) #:use-module (gnu packages tls) @@ -112,10 +113,10 @@ be output in text, PostScript, PDF or HTML.") ;; Update this package together with the set of recommended packages: r-boot, ;; r-class, r-cluster, r-codetools, r-foreign, r-kernsmooth, r-lattice, ;; r-mass, r-matrix, r-mgcv, r-nlme, r-nnet, r-rpart, r-spatial, r-survival. -(define-public r-minimal +(define r-with-tests (package - (name "r-minimal") - (version "3.4.4") + (name "r-with-tests") + (version "3.5.0") (source (origin (method url-fetch) (uri (string-append "mirror://cran/src/base/R-" @@ -123,7 +124,7 @@ be output in text, PostScript, PDF or HTML.") version ".tar.gz")) (sha256 (base32 - "0dq3jsnwsb5j3fhl0wi3p5ycv8avf8s5j1y4ap3d2mkjmcppvsdk")))) + "0w38865laqg28cdhikxdxhx4rfp0kgcn72gakwypsy91br9ja5zx")))) (build-system gnu-build-system) (arguments `(#:disallowed-references (,tzdata-for-tests) @@ -216,17 +217,22 @@ as.POSIXct(if (\"\" != Sys.getenv(\"SOURCE_DATE_EPOCH\")) {\ (add-after 'build 'install-info (lambda _ (zero? (system* "make" "install-info"))))) #:configure-flags - '(;; Do not build the recommended packages. The build system creates - ;; random temporary directories and embeds their names in some - ;; package files. We build these packages with the r-build-system - ;; instead. - "--without-recommended-packages" + `(;; We build the recommended packages here, because they are needed in + ;; order to run the test suite. We disable them in the r-minimal + ;; package. "--with-cairo" "--with-blas=-lopenblas" "--with-libpng" "--with-jpeglib" "--with-libtiff" "--with-ICU" + "--with-tcltk" + ,(string-append "--with-tcl-config=" + (assoc-ref %build-inputs "tcl") + "/lib/tclConfig.sh") + ,(string-append "--with-tk-config=" + (assoc-ref %build-inputs "tk") + "/lib/tkConfig.sh") "--enable-R-shlib" "--enable-BLAS-shlib" "--with-system-tre"))) @@ -265,6 +271,8 @@ as.POSIXct(if (\"\" != Sys.getenv(\"SOURCE_DATE_EPOCH\")) {\ ;; This avoids a reference to the ungraftable static bash. R uses the ;; detected shell for the "system" procedure. ("bash" ,bash-minimal) + ("tcl" ,tcl) + ("tk" ,tk) ("which" ,which) ("zlib" ,zlib))) (native-search-paths @@ -282,6 +290,19 @@ publication-quality data plots. A large amount of 3rd-party packages are available, greatly increasing its breadth and scope.") (license license:gpl3+))) +(define-public r-minimal + (package (inherit r-with-tests) + (name "r-minimal") + (arguments + `(#:tests? #f + ,@(substitute-keyword-arguments (package-arguments r-with-tests) + ((#:configure-flags flags) + ;; Do not build the recommended packages. The build system creates + ;; random temporary directories and embeds their names in some + ;; package files. We build these packages with the r-build-system + ;; instead. + `(cons "--without-recommended-packages" ,flags))))))) + (define-public rmath-standalone (package (inherit r-minimal) (name "rmath-standalone") @@ -318,14 +339,14 @@ D.V. Hinkley (1997, CUP), originally written by Angelo Canty for S.") (define-public r-mass (package (name "r-mass") - (version "7.3-49") + (version "7.3-50") (source (origin (method url-fetch) (uri (cran-uri "MASS" version)) (sha256 (base32 - "1yjbnj1p4z0vw84wga8q5fyqiw4n6r7pc6rdwam7vsbiamyzfcqs")))) + "16hasv9k4n773jsyzvh8s3gbga49hwdj8n5hxij6zqisy4i0kxq6")))) (properties `((upstream-name . "MASS"))) (build-system r-build-system) (home-page "http://www.stats.ox.ac.uk/pub/MASS4/") @@ -639,14 +660,14 @@ curves, Cox models, and parametric accelerated failure time models.") (define-public r-bit (package (name "r-bit") - (version "1.1-12") + (version "1.1-14") (source (origin (method url-fetch) (uri (cran-uri "bit" version)) (sha256 (base32 - "0a6ig6nnjzq80r2ll4hc74za3xwzbzig6wlyb4dby0knzf3iqa6f")))) + "0m7jrqzpa1pk8ixcl814x06jf96nlvvr16x6did6cfk4zghsrfjw")))) (build-system r-build-system) (home-page "http://ff.r-forge.r-project.org") (synopsis "Class for vectors of 1-bit booleans") @@ -752,14 +773,14 @@ non-estimable cases correctly.") (define-public r-pheatmap (package (name "r-pheatmap") - (version "1.0.8") + (version "1.0.10") (source (origin (method url-fetch) (uri (cran-uri "pheatmap" version)) (sha256 (base32 - "1ik0k69kb4n7xl3bkx4p09kw08ri93855zcsxq1c668171jqfiji")))) + "1jzxs5hwbz3r0z2pp09i7fd14sndxnrbm3zibaac3kny4nzydzf7")))) (build-system r-build-system) (propagated-inputs `(("r-gtable" ,r-gtable) @@ -939,14 +960,14 @@ solution for sending email, including attachments, from within R.") (define-public r-stringi (package (name "r-stringi") - (version "1.1.7") + (version "1.2.2") (source (origin (method url-fetch) (uri (cran-uri "stringi" version)) (sha256 (base32 - "0nck1s2iglmkrn15ay2chrrwsy5lngcylz2sc87fxy5skxaahxdl")))) + "1z8yqnh3alq0xriz77vifgl27msf3av6maz07fld78m90ajb6y8r")))) (build-system r-build-system) (inputs `(("icu4c" ,icu4c))) (native-inputs `(("pkg-config" ,pkg-config))) @@ -965,13 +986,13 @@ transliteration, concatenation, date-time formatting and parsing, etc.") (define-public r-stringr (package (name "r-stringr") - (version "1.3.0") + (version "1.3.1") (source (origin (method url-fetch) (uri (cran-uri "stringr" version)) (sha256 - (base32 "07dvfbkhv8gk6l32j43jvxpmqlhqp0mdby406h5a3bsc6k94ic13")))) + (base32 "0hq3ybz7clnifi5wdm2s6p2i0kzljdkv26blg6yphng472h8x2vs")))) (build-system r-build-system) (propagated-inputs `(("r-glue" ,r-glue) @@ -1188,13 +1209,13 @@ evaluation (NSE) in R.") (define-public r-dbi (package (name "r-dbi") - (version "0.8") + (version "1.0.0") (source (origin (method url-fetch) (uri (cran-uri "DBI" version)) (sha256 (base32 - "16nf8flxr5vdz8yrpprfbzydy3ajixkp9hc8ibd9n7r9nc29waym")))) + "1x8wy2vg2gcgd9bww04qmf0dsn3kp0rfjd8q8j1r2x9zxccg25pz")))) (build-system r-build-system) (home-page "https://github.com/rstats-db/DBI") (synopsis "R database interface") @@ -1331,13 +1352,13 @@ syntax that can be converted to XHTML or other formats.") (define-public r-yaml (package (name "r-yaml") - (version "2.1.18") + (version "2.1.19") (source (origin (method url-fetch) (uri (cran-uri "yaml" version)) (sha256 (base32 - "15m4q5krfqg0avvqg9i2g6ns4757lk6zbyrwbx5c5bgh51glvd8v")))) + "04bzrnfgbpk0rhkvzwp3k3ip7jpq26bjxz71bx5mwxmcjdb07nz5")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/yaml/") (synopsis "Methods to convert R data to YAML and back") @@ -1376,19 +1397,20 @@ generation in R using Literate Programming techniques.") (define-public r-knitrbootstrap (package (name "r-knitrbootstrap") - (version "1.0.1") + (version "1.0.2") (source (origin (method url-fetch) (uri (cran-uri "knitrBootstrap" version)) (sha256 (base32 - "089147g7nqp99rwdxxsfmklsrwc8aia09sr8ndmrc335r33v6r6p")))) + "1aj60j7f0gcs120fdrnfbnb7vk7lfn1phil0mghg6a5zldz4cqs3")))) (properties `((upstream-name . "knitrBootstrap"))) (build-system r-build-system) (propagated-inputs `(("r-knitr" ,r-knitr) - ("r-rmarkdown" ,r-rmarkdown))) + ("r-rmarkdown" ,r-rmarkdown) + ("r-markdown" ,r-markdown))) (home-page "https://github.com/jimhester/knitrBootstrap") (synopsis "Knitr bootstrap framework") (description @@ -1551,13 +1573,13 @@ defined in different packages.") (define-public r-rlang (package (name "r-rlang") - (version "0.2.0") + (version "0.2.1") (source (origin (method url-fetch) (uri (cran-uri "rlang" version)) (sha256 (base32 - "0f87fhw5pj6s2zjdxnpnd7pwn78czdz71b0xhm5adqg1p38sfwj8")))) + "0ghg66vyri8nck4p6kl1nh47qdppbmxvjiyms69nhvipphk4ifpj")))) (build-system r-build-system) (home-page "http://rlang.tidyverse.org") (synopsis "Functions for base types, core R and Tidyverse features") @@ -1593,13 +1615,13 @@ and printing capabilities than traditional data frames.") (define-public r-dplyr (package (name "r-dplyr") - (version "0.7.4") + (version "0.7.5") (source (origin (method url-fetch) (uri (cran-uri "dplyr" version)) (sha256 (base32 - "1hm8ml7yaraag1ak6kvz2mxx6if568c759ix8a1n9d7va03wj7vv")))) + "0l6smzdgb8w505gyl8gnwlg988a6cmafh3rssiv00rsrd8qqzg9g")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -1610,7 +1632,8 @@ and printing capabilities than traditional data frames.") ("r-glue" ,r-glue) ("r-pkgconfig" ,r-pkgconfig) ("r-bindrcpp" ,r-bindrcpp) - ("r-tibble" ,r-tibble))) + ("r-tibble" ,r-tibble) + ("r-tidyselect" ,r-tidyselect))) (native-inputs `(("r-rcpp" ,r-rcpp) ("r-bh" ,r-bh))) @@ -1681,14 +1704,14 @@ transformations.") (define-public r-formula (package (name "r-formula") - (version "1.2-2") + (version "1.2-3") (source (origin (method url-fetch) (uri (cran-uri "Formula" version)) (sha256 (base32 - "0ad49bzip1zqmpj1d8jajwl4bd81fm3k6dq8p26x6mvlzc04dvwd")))) + "0wiqh8rr9d5ciy80wj8f5fnmiiw0ywanvvnhkwd622dx42dk848l")))) (properties `((upstream-name . "Formula"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/Formula") @@ -1742,13 +1765,13 @@ times.") (define-public r-data-table (package (name "r-data-table") - (version "1.10.4-3") + (version "1.11.4") (source (origin (method url-fetch) (uri (cran-uri "data.table" version)) (sha256 (base32 - "12caklgr19vy9wprdks6zh825vr1iw1cajgwcnbpyvmijqdlz2xs")))) + "1mc1drqj5i5ar2za3nkh5j70y37s7z7xwqri2r2b72zkqggg3k7x")))) (build-system r-build-system) (home-page "https://github.com/Rdatatable/data.table/wiki") (synopsis "Enhanced version of data.frame R object") @@ -1824,14 +1847,15 @@ building design matrices.") (uri (pypi-uri "statsmodels" version)) (sha256 (base32 - "0j30v3932shnj9368c9jr3svkyrvfj90h2l7nxnqkbpv0svilhr6")) - (patches (search-patches "python-statsmodels-fix-tests.patch")))) + "0j30v3932shnj9368c9jr3svkyrvfj90h2l7nxnqkbpv0svilhr6")))) (build-system python-build-system) (arguments - `(#:phases + `(;; The test suite is very large and rather brittle. Tests often fail + ;; because of minor changes in dependencies that upstream hasn't fixed + ;; in a new release. + #:tests? #f + #:phases (modify-phases %standard-phases - ;; tests must be run after installation - (delete 'check) (add-after 'unpack 'set-matplotlib-backend-to-agg (lambda _ ;; Set the matplotlib backend to Agg to avoid problems using the @@ -1843,14 +1867,17 @@ building design matrices.") (string-append "import matplotlib;matplotlib.use('Agg');" line))) #t)) - (add-after 'install 'check - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Make installed package available for running the tests - (add-installed-pythonpath inputs outputs) - (with-directory-excursion "/tmp" - (zero? (system* "nosetests" - "--stop" - "-v" "statsmodels")))))))) + ;; FIXME: This is a bug in version 0.8 since the upgrade to scipy 1.0. + ;; See https://github.com/statsmodels/statsmodels/issues/3931 + ;; This has been fixed in version 0.9. + (add-after 'unpack 'patch-for-scipy + (lambda _ + (substitute* "statsmodels/discrete/discrete_model.py" + (("return stats.chisqprob" match) + (string-append + "stats.chisqprob = lambda chisq, df: stats.chi2.sf(chisq, df);" + match))) + #t))))) (propagated-inputs `(("python-numpy" ,python-numpy) ("python-scipy" ,python-scipy) @@ -2157,14 +2184,14 @@ module, Java Server Pages, and Python's psp module.") (define-public r-desc (package (name "r-desc") - (version "1.1.1") + (version "1.2.0") (source (origin (method url-fetch) (uri (cran-uri "desc" version)) (sha256 (base32 - "0k07qighac1xzmm8k988zi7i88a0yfvia3gk5hbz0fyvb2v9kzrj")))) + "1s6s13fk6sxwcj8wzkwxl9vr33153xx11p5wi9avqx3rzkabavz6")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -2182,14 +2209,14 @@ other packages.") (define-public r-commonmark (package (name "r-commonmark") - (version "1.4") + (version "1.5") (source (origin (method url-fetch) (uri (cran-uri "commonmark" version)) (sha256 (base32 - "1vb8r9khpvcf0q7acv8rsplfjjwcll302bg5kp596cvn6aacypl6")))) + "1jwx5rgm0ypd9a3v4jd9za4a644rdzhk1n4dvmgkj9hdpwsida3z")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/commonmark") (synopsis "CommonMark and Github Markdown Rendering in R") @@ -2423,13 +2450,13 @@ disk (or a connection).") (define-public r-plotrix (package (name "r-plotrix") - (version "3.7") + (version "3.7-2") (source (origin (method url-fetch) (uri (cran-uri "plotrix" version)) (sha256 (base32 - "0rw81n9p3d2i03b4pgcfj5blryc94f29bm9a4j9bnp5h8qjj6pry")))) + "0hx3xv94gzlyy7ny5k4mzs7w1798h1zka175m5bkzc524493cm88")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/plotrix") (synopsis "Various plotting functions") @@ -2482,13 +2509,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.8.400.0.0") + (version "0.8.500.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "11y2ksf46zw6fcz0kk70szyfn7qqxwwd33xylrxvnyb7ldmbc5yr")))) + "1sh36dx6inmb56m40nigy94gxlgjva816qnlmjwg7y2bdvqj8vsi")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) (native-inputs @@ -2694,13 +2721,13 @@ a column in data frame.") (define-public r-rsqlite (package (name "r-rsqlite") - (version "2.1.0") + (version "2.1.1") (source (origin (method url-fetch) (uri (cran-uri "RSQLite" version)) (sha256 (base32 - "0hknfqcgijdapx1ryy20zy68qmm8wsb1hjx4n4hmkgl552z82q5d")))) + "1giwk4335sc6yhj3rs8h070g1mwy38kyqyqv6vcfxvskykj7vp6z")))) (properties `((upstream-name . "RSQLite"))) (build-system r-build-system) (propagated-inputs @@ -2820,13 +2847,13 @@ plotted and compared with the asymptotic curve.") (define-public r-lambda-r (package (name "r-lambda-r") - (version "1.2.2") + (version "1.2.3") (source (origin (method url-fetch) (uri (cran-uri "lambda.r" version)) (sha256 (base32 - "05cfaq9dbgdnmmj3d6ggmsw300qgiw8k7f6h6k0ylv63cf3v6pkq")))) + "0cc6pszs6yccn0hgjpyn9gspv9aiva9d91ba0640i5m0l5xy7n0c")))) (properties `((upstream-name . "lambda.r"))) (build-system r-build-system) (propagated-inputs @@ -3149,20 +3176,24 @@ path-wise fashion.") (define-public r-pkgmaker (package (name "r-pkgmaker") - (version "0.22") + (version "0.27") (source (origin (method url-fetch) (uri (cran-uri "pkgmaker" version)) (sha256 (base32 - "0vrqnd3kg6liqvpbd969jjsdx0f0rvmmxgdbwwrp6xfmdg0pib8r")))) + "0spcamjncj78kzjps2rw4v1a4494yazv6xvhn0vmdflnypc8k8hp")))) (build-system r-build-system) (propagated-inputs - `(("r-codetools" ,r-codetools) + `(("r-bibtex" ,r-bibtex) + ("r-codetools" ,r-codetools) ("r-digest" ,r-digest) + ("r-magrittr" ,r-magrittr) ("r-registry" ,r-registry) + ("r-stringi" ,r-stringi) ("r-stringr" ,r-stringr) + ("r-withr" ,r-withr) ("r-xtable" ,r-xtable))) (home-page "https://renozao.github.io/pkgmaker") (synopsis "Package development utilities") @@ -3194,14 +3225,14 @@ package registries.") (define-public r-rngtools (package (name "r-rngtools") - (version "1.2.4") + (version "1.3.1") (source (origin (method url-fetch) (uri (cran-uri "rngtools" version)) (sha256 (base32 - "1fcgfqrrb48z37xgy8sffx91p9irp39yqzxv7nqp1x2hnwsrh097")))) + "097215qcfw6ybllpzmp1532r59h2srvch3aca4z4s6l2rf9w8gvn")))) (build-system r-build-system) (propagated-inputs `(("r-digest" ,r-digest) @@ -3286,14 +3317,14 @@ bigmemory and synchronicity packages.") (define-public r-synchronicity (package (name "r-synchronicity") - (version "1.3.2") + (version "1.3.4") (source (origin (method url-fetch) (uri (cran-uri "synchronicity" version)) (sha256 (base32 - "1idrjzl7nkamf1ip55s6qcf64s63xs9j8z9jv3r89p6r5lw7k5mv")))) + "1km5hx82gy71m5nc6pkcksv0dn32fylhg2axpdsnarrxva14mgdg")))) (build-system r-build-system) (propagated-inputs `(("r-bh" ,r-bh) @@ -3502,13 +3533,13 @@ vignettes.") (define-public r-mvtnorm (package (name "r-mvtnorm") - (version "1.0-7") + (version "1.0-8") (source (origin (method url-fetch) (uri (cran-uri "mvtnorm" version)) (sha256 (base32 - "0f7hzflygdnbwvzadr3knhybhanwg7agqddclj6mhbvwqpgb0qyh")))) + "0la42lylb7cjrcrc285bn69bz9kyg556xw317iz139dp1yswl410")))) (build-system r-build-system) (inputs `(("gfortran" ,gfortran))) @@ -3623,14 +3654,14 @@ selection.") (define-public r-tidyr (package (name "r-tidyr") - (version "0.8.0") + (version "0.8.1") (source (origin (method url-fetch) (uri (cran-uri "tidyr" version)) (sha256 (base32 - "1qjpbj1a2vw6nw4hdb6fgassnrxrdpqwf9a8i6wqnv3wxvjb6zqb")))) + "0485f19mkkglc4bv57y6bm6l9rfgd878hsz2xdg1nwgbqchjhgix")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -3679,14 +3710,14 @@ It uses and relies on grid graphics and formal (S4) classes and methods.") (define-public r-purrr (package (name "r-purrr") - (version "0.2.4") + (version "0.2.5") (source (origin (method url-fetch) (uri (cran-uri "purrr" version)) (sha256 (base32 - "0wgbnbrqncjpggg8f9bdpcd1gy351s5f0az5k8lc55cvs9lhz3gd")))) + "0dc53zzan3km2l9lzxjixcv6yn7dhw2ppmz8qf2awhak7x2qm9m4")))) (build-system r-build-system) (propagated-inputs `(("r-tibble" ,r-tibble) @@ -3945,14 +3976,14 @@ conversion of R objects to LaTeX code, and recoding variables.") (define-public r-runit (package (name "r-runit") - (version "0.4.31") + (version "0.4.32") (source (origin (method url-fetch) (uri (cran-uri "RUnit" version)) (sha256 (base32 - "1jqr871jkll2xmk7wk5hv1z3a36hyn2ibgivw7bwk4b346940xlx")))) + "1wc1gwb7yw7phf8b0gkig6c23klya3ax11c6i4s0f049k42r78r3")))) (properties `((upstream-name . "RUnit"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/RUnit") @@ -3986,14 +4017,14 @@ hierarchical clustering dendrograms.") (define-public r-preprocesscore (package (name "r-preprocesscore") - (version "1.40.0") + (version "1.42.0") (source (origin (method url-fetch) (uri (bioconductor-uri "preprocessCore" version)) (sha256 (base32 - "0mrdgbkb9dcfr9gsqyxfpshnxx60mq97pl98b8yl00l2gfwz48ph")))) + "1afar1z7959v7mbzsqa77vqfh0yc7y3nv5ayx71485a8scwsfwbk")))) (properties `((upstream-name . "preprocessCore"))) (build-system r-build-system) @@ -4313,13 +4344,13 @@ data at that region, and avoids over-plotting.") (define-public r-ggthemes (package (name "r-ggthemes") - (version "3.4.2") + (version "3.5.0") (source (origin (method url-fetch) (uri (cran-uri "ggthemes" version)) (sha256 (base32 - "0i7ygpizs00acizixc29bhbrci523ys7vzxbii9b3bcmfa3pj7i3")))) + "0drbzzb4i5jq1579fx1wmgh87ybnswjn7srak2l8g771ip49xwb8")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -4731,14 +4762,14 @@ analysis} (PCA) by projection pursuit.") (define-public r-rrcov (package (name "r-rrcov") - (version "1.4-3") + (version "1.4-4") (source (origin (method url-fetch) (uri (cran-uri "rrcov" version)) (sha256 (base32 - "0kagqggi634mvrhd67ia7mpjrj5v6w2wq0z3kyppg5xkvzh335nq")))) + "0wn5h8vi0zyk5ah898m37ysz4kiih6y792nb9zdvhvd8r07f0sc5")))) (build-system r-build-system) (propagated-inputs `(("r-cluster" ,r-cluster) @@ -5006,14 +5037,14 @@ using modular prediction and response module classes.") (define-public r-quantreg (package (name "r-quantreg") - (version "5.35") + (version "5.36") (source (origin (method url-fetch) (uri (cran-uri "quantreg" version)) (sha256 (base32 - "18f3qxv1j1bqmq55hzssz8mnp5ww4flhy80rm2v1rk0mmg9paz7m")))) + "023gdzahxp582rpabilpxbl3wyjrgjjnnrhcv9xhrqdfiq5l2yza")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -5166,14 +5197,14 @@ to Applied regression, Second Edition, Sage, 2011.") (define-public r-caret (package (name "r-caret") - (version "6.0-79") + (version "6.0-80") (source (origin (method url-fetch) (uri (cran-uri "caret" version)) (sha256 (base32 - "1i6sjw279g6mj83vz5gv99x0nljcbpy7v0nbl72lmd80sf7rjshl")))) + "0xhdhazzfh0hiqv2hgxglj9ffd2p4ls8acqn2sjn0ndx6158f187")))) (build-system r-build-system) (propagated-inputs `(("r-foreach" ,r-foreach) @@ -5195,14 +5226,14 @@ classification and regression models.") (define-public r-rcppprogress (package (name "r-rcppprogress") - (version "0.4") + (version "0.4.1") (source (origin (method url-fetch) (uri (cran-uri "RcppProgress" version)) (sha256 (base32 - "09ayw6d69i0lplmaj5md25p5hn1nmiyp6a4sh60v93nrrs1cq7iv")))) + "0yk01hfv961zyp569682k9igvhnwqyg5j0n5fm63sxigj82l2xhi")))) (properties `((upstream-name . "RcppProgress"))) (build-system r-build-system) (propagated-inputs @@ -5287,15 +5318,16 @@ multivariate case.") (define-public r-tclust (package (name "r-tclust") - (version "1.3-1") + (version "1.4-1") (source (origin (method url-fetch) (uri (cran-uri "tclust" version)) (sha256 (base32 - "1li62wynv81kb17fx7nk63a26qlb78l8fdf63in8yzcl7fkpji7y")))) + "17md6l9v9dl9b72l84df01b52h2xiynbcjm437mv9mzcr09fc2sb")))) (build-system r-build-system) + ;; These are all suggested packages, not build dependencies. (propagated-inputs `(("r-cluster" ,r-cluster) ("r-mclust" ,r-mclust) @@ -5312,14 +5344,14 @@ diagnostic tools (@code{ctlcurves} and @code{DiscrFact}).") (define-public r-ranger (package (name "r-ranger") - (version "0.9.0") + (version "0.10.1") (source (origin (method url-fetch) (uri (cran-uri "ranger" version)) (sha256 (base32 - "1pilj5pxl8jl0gsy9vsyqxqdqfcxzvphbgvrlp4hf7r9mrfw9v0p")))) + "12z67xkgdmr5cflpd6cln0mn5xxajanqbfwlckv6cfma0gvf2z1j")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp) @@ -5531,14 +5563,14 @@ parameters.") (define-public r-directlabels (package (name "r-directlabels") - (version "2017.03.31") + (version "2018.05.22") (source (origin (method url-fetch) (uri (cran-uri "directlabels" version)) (sha256 (base32 - "01ahw0c56mnzwl611s8hnghicww4c4dgf5v2wv6bl1s1pramw9pr")))) + "0xcpc56ssb9430b0xcdhayk3qaak2qcakyss2pz14y5w2027hblv")))) (build-system r-build-system) (propagated-inputs `(("r-quadprog" ,r-quadprog))) diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 4cd0773062..a343e3cb6e 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -171,7 +171,7 @@ numbers of user-defined menu items efficiently.") (define-public spoon (package (name "spoon") - (version "0.3") + (version "0.6") (source (origin (method url-fetch) @@ -179,16 +179,16 @@ numbers of user-defined menu items efficiently.") name "-" version ".tar.gz")) (sha256 (base32 - "10c5i7ykpy7inzzfiw1dh0srpkljycr3blxhvd8160wsvplbws48")))) + "1jpmg9k9f4f3lpz0k3cphqjswlyf8lz2sm8ccifiip93kd4rrdj0")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; No tests + `(#:tests? #f ; no tests #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)))) (inputs `(("libx11" ,libx11) ("libxkbfile" ,libxkbfile) - ("alsa-lib" ,alsa-lib) + ("alsa-lib" ,alsa-lib) ; tinyalsa (unpackaged) would suffice ("libmpdclient" ,libmpdclient))) (home-page "https://git.2f30.org/spoon/") (synopsis "Set dwm status") @@ -227,7 +227,7 @@ numbers of user-defined menu items efficiently.") (define-public st (package (name "st") - (version "0.7") + (version "0.8.1") (source (origin (method url-fetch) @@ -235,7 +235,7 @@ numbers of user-defined menu items efficiently.") version ".tar.gz")) (sha256 (base32 - "00309qiw20rc89696pk8bdr7ik4r1aarik7jxqk8k66cdj80v1zp")))) + "09k94v3n20gg32xy7y68p96x9dq5msl80gknf9gbvlyjp3i0zyy4")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests @@ -247,14 +247,15 @@ numbers of user-defined menu items efficiently.") (add-after 'unpack 'inhibit-terminfo-install (lambda _ (substitute* "Makefile" - (("\t@tic -s st.info") "")) + (("\ttic .*") "")) #t))))) (inputs `(("libx11" ,libx11) ("libxft" ,libxft) ("fontconfig" ,fontconfig) ("freetype" ,freetype))) - (native-inputs `(("pkg-config" ,pkg-config))) + (native-inputs + `(("pkg-config" ,pkg-config))) (home-page "https://st.suckless.org/") (synopsis "Simple terminal emulator") (description @@ -311,19 +312,19 @@ point surf to another URI by setting its XProperties.") (define-public sent (package (name "sent") - (version "0.2") + (version "1") (source (origin - (method url-fetch) + (method url-fetch/tarbomb) (uri (string-append "https://dl.suckless.org/tools/sent-" version ".tar.gz")) (sha256 (base32 - "0xhh752hwaa26k4q6wvrb9jnpbnylss2aw6z11j7l9rav7wn3fak")))) + "0cxysz5lp25mgww73jl0mgip68x7iyvialyzdbriyaff269xxwvv")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases - (delete 'configure)) ;no configuration - #:tests? #f ;no test suite + (delete 'configure)) ; no configuration + #:tests? #f ; no test suite #:make-flags (let ((pkg-config (lambda (flag) (string-append "$(shell pkg-config " flag " " @@ -340,8 +341,8 @@ point surf to another URI by setting its XProperties.") ("libx11" ,libx11) ("libxft" ,libxft) ("fontconfig" ,fontconfig))) - (synopsis "Plaintext presentation tool") - (description "Sent uses plaintext files and PNG images to create slideshow + (synopsis "Plain-text presentation tool") + (description "Sent uses plain-text files and PNG images to create slideshow presentations. Each paragraph represents a slide in the presentation. Especially for presentations using the Takahashi method this is very nice and allows you to write down the presentation for a quick lightning talk within a @@ -526,31 +527,28 @@ cups server to be installed.") "Noice is a small curses-based file browser.") (license license:bsd-2))) -;;; We want some commits that are more recent than the latest release, 0.2 (define-public human - (let ((commit "50c80e6ba12823184b6866e06b955dbd2ccdc5d7") - (revision "1")) - (package - (name "human") - (version (string-append "0.2-" revision "." (string-take commit 7))) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "git://git.2f30.org/human.git") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "18xngm4h9vsyip52zwd79rrp1irzg6rs462lpbp61amf7hj955gn")))) + (package + (name "human") + (version "0.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "git://git.2f30.org/human.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0y0bsmvpwfwb2lwspi6a799y34h1faxc6yfanyw6hygxc8661mga")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; No tests + `(#:tests? #f ; no tests #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) #:phases (modify-phases %standard-phases - (delete 'configure)))) ; No configure script + (delete 'configure)))) ; no configure script (home-page "https://git.2f30.org/human/") (synopsis "Convert bytes to human readable formats") (description @@ -559,7 +557,7 @@ human readable format. By default, it tries to detect the best factorisation, but you can force its output. You can adjust the number of decimals with the @code{SCALE} environment variable.") - (license license:wtfpl2)))) + (license license:wtfpl2))) (define-public fortify-headers (package @@ -682,8 +680,8 @@ as -1, to be used instead of U+FFFD. ;; No release tarballs so far. (define-public lchat - (let ((revision "2") - (commit "25d90f4630b45e2b609d2e3daecb32cf5ff065fd")) + (let ((revision "3") + (commit "f95191970fd59c52a8b09cff32bd8d2135cbfc6b")) (package (name "lchat") (version (string-append "0.0.0-" revision "." (string-take commit 7))) @@ -696,24 +694,26 @@ as -1, to be used instead of U+FFFD. (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0dvljyq3m7rxxkqv7rkmijak6vj8i4db3iq2z988bvf76chz268b")))) + "07pxzziczhzprmjy61k7nl9i1kxpgnad37qkjf5fn4wf06nqdxpl")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; No tests + `(#:test-target "test" #:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) #:phases (modify-phases %standard-phases - (delete 'configure) ; No configure script + (delete 'configure) ; no configure script (add-before 'build 'libbsd (lambda _ (substitute* "Makefile" (("-lutf") "-lutf -lbsd")))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin"))) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man1 (string-append out "/share/man/man1"))) (install-file "lchat" bin) + (install-file "lchat.1" man1) #t)))))) (inputs `(("grep" ,grep) @@ -724,6 +724,6 @@ as -1, to be used instead of U+FFFD. (synopsis "Line chat is a frontend for the irc client ii from suckless") (description "Lchat (line chat) is the little and small brother of cii. -It is a front end for ii-like chat programs. It uses tail(1) -f to get the -chat output in background.") +It is a front end for ii-like chat programs. It uses @code{tail -f} to get the +chat output in the background.") (license license:isc)))) diff --git a/gnu/packages/syncthing.scm b/gnu/packages/syncthing.scm index 0a90610ecb..f43c51714a 100644 --- a/gnu/packages/syncthing.scm +++ b/gnu/packages/syncthing.scm @@ -29,7 +29,7 @@ (define-public syncthing (package (name "syncthing") - (version "0.14.46") + (version "0.14.48") (source (origin (method url-fetch) (uri (string-append "https://github.com/syncthing/syncthing" @@ -37,7 +37,7 @@ "/syncthing-source-v" version ".tar.gz")) (sha256 (base32 - "0h5b2mp0li0qzrz3wggzavdfqfaz9b79hx6wds84ya2i9maw80cl")) + "0bxkm5jlj6l4gai23bg0y31brr80r9qllh1rdg29pahjn0c2b4ml")) (modules '((guix build utils))) ;; Delete bundled ("vendored") free software source code. (snippet '(begin @@ -145,7 +145,7 @@ ("go-golang-org-x-net-union" ,(go-golang-org-x-net-union)) ("go-golang-org-x-text" ,(go-golang-org-x-text-union)) ("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate) - ("go-github-com-zillode-notify" ,go-github-com-zillode-notify) + ("go-github-com-syncthing-notify" ,go-github-com-syncthing-notify) ;; For tests ("go-github-com-d4l3k-messagediff" ,go-github-com-d4l3k-messagediff))) (synopsis "Decentralized continuous file system synchronization") @@ -507,7 +507,10 @@ address of the default LAN gateway.") "056dkgxrqjj5r18bnc3knlpgdz5p3yvp12y4y978hnsfhwaqvbjz")))) (build-system go-build-system) (arguments - `(#:import-path "github.com/kardianos/osext")) + `(#:import-path "github.com/kardianos/osext" + ;; The tests are flaky: + ;; <https://github.com/kardianos/osext/issues/21> + #:tests? #f)) (synopsis "Find the running executable") (description "Osext provides a method for finding the current executable file that is running. This can be used for upgrading the current executable or @@ -910,7 +913,6 @@ libraries are in the same directory.") (define* (go-golang-org-x-net-union #:optional (packages (list go-golang-org-x-net-ipv4 go-golang-org-x-net-bpf - go-golang-org-x-net-context go-golang-org-x-net-ipv6 go-golang-org-x-net-proxy go-golang-org-x-net-internal-iana))) @@ -989,8 +991,8 @@ virtual connections from a single physical connection.") (license expat)))) (define-public go-github-com-chmduquesne-rollinghash-adler32 - (let ((commit "3dc7875a1f890f9bcf0619adb5571fc6f7d516bb") - (revision "1")) + (let ((commit "abb8cbaf9915e48ee20cae94bcd94221b61707a2") + (revision "2")) (package (name "go-github-com-chmduquesne-rollinghash-adler32") (version (git-version "0.0.0" revision commit)) @@ -1003,7 +1005,7 @@ virtual connections from a single physical connection.") (file-name (git-file-name name version)) (sha256 (base32 - "0frl021qdqcdyk9fccw6x1v2byvh0hls4rsrdjih5jgqpc18kx6y")))) + "0ylqb9r60q77qw0d6g9cg4yzadxzwcw74lfd25cw9yglyq0wgd3l")))) (build-system go-build-system) (arguments '(#:import-path "github.com/chmduquesne/rollinghash/adler32" @@ -1111,30 +1113,30 @@ using sh's word-splitting rules.") (home-page "https://github.com/kballard/go-shellquote") (license expat)))) -(define-public go-github-com-zillode-notify - (let ((commit "53dd6873a851fc377c87d82f994b1fecdf25aadb") - (revision "3")) +(define-public go-github-com-syncthing-notify + (let ((commit "b9ceffc925039c77cd9e0d38f248279ccc4399e2") + (revision "0")) (package - (name "go-github-com-zillode-notify") + (name "go-github-com-syncthing-notify") (version (git-version "0.0.0" revision commit)) (source (origin (method git-fetch) (uri (git-reference - (url "https://github.com/calmh/notify") + (url "https://github.com/syncthing/notify") (commit commit))) (file-name (git-file-name name version)) (sha256 (base32 - "0ar6mj6s91y7hc5gdp88lz3i7xi29cqkx9f090xj899ir21a8djn")))) + "1scha9b2r35bvqzqx86sarzjxf72ywvj3g6n9pm3xq4i4xzpylxf")))) (build-system go-build-system) (arguments - '(#:import-path "github.com/Zillode/notify")) + '(#:import-path "github.com/syncthing/notify")) (propagated-inputs `(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix))) (synopsis "File system event notification library") (description "This package provides @code{notify}, a file system event notification library in Go.") - (home-page "https://github.com/zillode/notify") + (home-page "https://github.com/syncthing/notify") (license expat)))) (define-public go-github-com-beorn7-perks-quantile diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 5210e73ed4..6b625b5d3f 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -8,6 +8,7 @@ ;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,6 +31,7 @@ #:use-module (gnu packages avahi) #:use-module (gnu packages boost) #:use-module (gnu packages check) + #:use-module (gnu packages file) #:use-module (gnu packages protobuf) #:use-module (gnu packages gnupg) #:use-module (gnu packages linux) @@ -42,9 +44,15 @@ #:use-module (gnu packages tls) #:use-module (gnu packages xiph) #:use-module (gnu packages xorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages readline) + #:use-module (gnu packages bison) + #:use-module (gnu packages flex) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu)) (define-public commoncpp @@ -482,3 +490,64 @@ Mumble consists of two applications for separate usage: (license (list license:bsd-3 ;; The bundled celt is bsd-2. Remove after 1.3.0. license:bsd-2)))) + +(define-public twinkle + (let ((commit "02e1d1538af3337134bd7381dcd95f8d7775b30f") + (revision "1")) + (package + (name "twinkle") + (version (git-version "1.10.1" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/LubosD/twinkle") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ds4rp4vr1wagn4m4m7ldqbsx5vgmgbfcqqgyhn1wf6s1dm0020z")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ; no test target + #:configure-flags '("-DWITH_SPEEX=On") + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-executable + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/twinkle") + `("QT_PLUGIN_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/plugins")) + '("qtbase" "qtdeclarative"))) + `("QML2_IMPORT_PATH" ":" prefix + ,(map (lambda (label) + (string-append (assoc-ref inputs label) + "/lib/qt5/qml")) + '("qtdeclarative" "qtquickcontrols")))) + #t)))))) + (native-inputs + `(("bison" ,bison) + ("flex" ,flex) + ("readline" ,readline) + ("file" ,file) + ("ucommon" ,ucommon) + ("ccrtp" ,ccrtp) + ("libxml2" ,libxml2) + ("speex" ,speex) + ("speexdsp" ,speexdsp) + ("libsndfile" ,libsndfile) + ("alsa-lib" ,alsa-lib) + ("qttools" ,qttools))) + (inputs + `(("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("qtquickcontrols" ,qtquickcontrols))) + (home-page "http://twinkle.dolezel.info/") + (synopsis "Softphone for voice over IP and instant messaging") + (description "Twinkle is a softphone for your voice over IP and instant +messaging communcations using the SIP protocol. You can use it for direct IP +phone to IP phone communication or in a network using a SIP proxy to route your +calls and messages") + (license license:gpl2+)))) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 399a633269..1cd00f4621 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -76,7 +76,7 @@ (build-system glib-or-gtk-build-system) (arguments '(#:phases (modify-phases %standard-phases - (add-before 'patch-source-shebangs 'bootstrap + (replace 'bootstrap (lambda _ (setenv "NOCONFIGURE" "true") (invoke "sh" "autogen.sh")))))) @@ -619,7 +619,7 @@ eye-candy, customizable, and reasonably lightweight.") (define-public sakura (package (name "sakura") - (version "3.5.0") + (version "3.6.0") (source (origin (method url-fetch) (uri (string-append "https://launchpad.net/" name "/trunk/" @@ -627,14 +627,13 @@ eye-candy, customizable, and reasonably lightweight.") ".tar.bz2")) (sha256 (base32 - "0fhcn3540iw22l5zg3njh5z8cj0g2n9p6fvagjqa5zc323jfsc7b")))) + "1q463qm41ym7jb3kbzjz7b6x549vmgkb70arpkhsf86yxly1y5m1")))) (build-system cmake-build-system) (arguments - ;; no check phase - '(#:tests? #f)) + '(#:tests? #f)) ; no check phase (native-inputs `(("gettext" ,gettext-minimal) - ("perl" ,perl) ; for pod2man + ("perl" ,perl) ; for pod2man ("pkg-config" ,pkg-config))) (inputs `(("libxft" ,libxft) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index df4273e208..b6bc9dda62 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Danny Milosavljevic <dannym+a@scratchpost.org> +;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -175,6 +176,15 @@ (string-prefix? "mips64" s)))) #:phases (modify-phases %standard-phases + (add-after 'unpack 'fix-unix-detection + ;; ps2eps.pl uses the "gswin32c" ghostscript executable on Windows, + ;; and the "gs" ghostscript executable on Unix. It detects Unix by + ;; checking for the existence of the /usr/bin directory. Since + ;; GuixSD does not have /usr/bin, it is also detected as Windows. + (lambda _ + (substitute* "utils/ps2eps/ps2eps-src/bin/ps2eps.pl" + (("gswin32c") "gs")) + #t)) (add-after 'install 'postint (lambda* (#:key inputs outputs #:allow-other-keys #:rest args) (let* ((out (assoc-ref outputs "out")) @@ -196,7 +206,13 @@ (with-directory-excursion "texlive-extra" (apply unpack (list #:source texlive-extra)) (apply patch-source-shebangs (list #:source texlive-extra)) - (invoke "mv" "tlpkg" share)))))))) + (invoke "mv" "tlpkg" share)) + ;; texlua shebangs are not patched by the patch-source-shebangs + ;; phase because the texlua executable does not exist at that + ;; time. + (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin")) + (with-directory-excursion out + (patch-source-shebangs)))))))) (synopsis "TeX Live, a package of the TeX typesetting system") (description "TeX Live provides a comprehensive TeX document production system. diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index 075ec8bbbe..a2f8a80704 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2016 Danny Milosavljevic <dannym+a@scratchpost.org> ;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com> -;;; Copyright © 2016, 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu> @@ -264,16 +264,16 @@ ISO 8601 dates, time and duration.") (define-public python-monotonic (package (name "python-monotonic") - (version "1.4") + (version "1.5") (source (origin (method url-fetch) (uri (pypi-uri "monotonic" version)) (sha256 (base32 - "110zd5ld3nchdjds34r95lzs1csmmv81pli2px8l1k8qnpai29m0")))) + "1c6z46yb600klbfhqadyl7vq0jdjdxkm72k43ra3iw3d0xakv593")))) (build-system python-build-system) - (arguments '(#:tests? #f)) ;no tests + (arguments '(#:tests? #f)) ; no tests (home-page "https://github.com/atdt/monotonic") (synopsis "Implementation of time.monotonic() for Python 2 & < 3.3") (description diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index ada2088c4c..a934a50878 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is> ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; @@ -115,7 +115,7 @@ in intelligent transportation networks.") (define-public p11-kit (package (name "p11-kit") - (version "0.23.10") + (version "0.23.12") (source (origin (method url-fetch) @@ -123,7 +123,7 @@ in intelligent transportation networks.") "download/" version "/p11-kit-" version ".tar.gz")) (sha256 (base32 - "0hxfwnyb5yllvlsh0cj6favcph36gm94b6df7zhl7xay48zjl8gr")))) + "00ylbx2gxrm9bv6w4y3qf8z30vpdkqaa8z1y22hy27fv34py5fjq")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -131,7 +131,17 @@ in intelligent transportation networks.") `(("libffi" ,libffi) ("libtasn1" ,libtasn1))) (arguments - `(#:configure-flags '("--without-trust-paths"))) + `(#:configure-flags '("--without-trust-paths") + #:phases (modify-phases %standard-phases + (add-before 'check 'prepare-tests + (lambda _ + ;; "test-runtime" expects XDG_RUNTIME_DIR to be set up + ;; and looks for .cache and other directories (only). + ;; For simplicity just drop it since it is irrelevant + ;; in the build container. + (substitute* "Makefile" + (("test-runtime\\$\\(EXEEXT\\)") "")) + #t))))) (home-page "https://p11-glue.freedesktop.org/p11-kit.html") (synopsis "PKCS#11 library") (description @@ -449,14 +459,14 @@ required structures.") (define-public libressl (package (name "libressl") - (version "2.7.2") + (version "2.7.3") (source (origin (method url-fetch) (uri (string-append "mirror://openbsd/LibreSSL/" name "-" version ".tar.gz")) (sha256 (base32 - "1589f0kg7kj51j9hid542s4isb96s1azjaqsfprpy5s2qdwqfyli")))) + "1597kj9jy3jyw52ys19sd4blg2gkam5q0rqdxbnrnvnyw67hviqn")))) (build-system gnu-build-system) (arguments ;; Do as if 'getentropy' was missing since older Linux kernels lack it @@ -493,13 +503,13 @@ netcat implementation that supports TLS.") (package (name "python-acme") ;; Remember to update the hash of certbot when updating python-acme. - (version "0.23.0") + (version "0.24.0") (source (origin (method url-fetch) (uri (pypi-uri "acme" version)) (sha256 (base32 - "0l257dq1i2gka6ynldidpwaz1aa726643crqqckga1w5awsndh88")))) + "1jq1nlly5146k08dw31fc1pw78plya5jswznnd512c08giif0mfn")))) (build-system python-build-system) (arguments `(#:phases @@ -548,7 +558,7 @@ netcat implementation that supports TLS.") (uri (pypi-uri name version)) (sha256 (base32 - "0gh5fr61c3mj5vdkn68k17wcvri9rdj506cmmz6631i2l5flrzvc")))) + "0w3dbz74rpabjnc3l3ybnzjdypbr65lsjqf9yn243b5kid9d8wm0")))) (build-system python-build-system) (arguments `(,@(substitute-keyword-arguments (package-arguments python-acme) @@ -634,18 +644,20 @@ servers or clients for more complicated applications.") (define-public perl-crypt-openssl-rsa (package (name "perl-crypt-openssl-rsa") - (version "0.28") + (version "0.30") (source (origin (method url-fetch) (uri (string-append - "mirror://cpan/authors/id/P/PE/PERLER/Crypt-OpenSSL-RSA-" + "mirror://cpan/authors/id/T/TO/TODDR/Crypt-OpenSSL-RSA-" version ".tar.gz")) (sha256 (base32 - "1gnpvv09b2gpifwdzc5jnhama3d1a4c39lzj9hcaicsb8rvzjmsk")))) + "1b19kaaw4wda8dy6kjiwqa2prpbs2dqcyjyj9zdh5wbs74qkbq93")))) (build-system perl-build-system) + (native-inputs + `(("perl-crypt-openssl-guess" ,perl-crypt-openssl-guess))) (inputs `(("perl-crypt-openssl-bignum" ,perl-crypt-openssl-bignum) ("perl-crypt-openssl-random" ,perl-crypt-openssl-random) @@ -793,7 +805,7 @@ then ported to the GNU / Linux environment.") (define-public mbedtls-apache (package (name "mbedtls-apache") - (version "2.7.2") + (version "2.7.3") (source (origin (method url-fetch) @@ -803,7 +815,7 @@ then ported to the GNU / Linux environment.") version "-apache.tgz")) (sha256 (base32 - "1mvkqlxxvl6yp1g5g9dk4l7h3wl6149p3pfwgwzgs7xybyxw4f7x")))) + "0rfpcc4i01qsl66iy1z9vaw00s34h4qgx3r41i1v5vazv7vjla05")))) (build-system cmake-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index 795c105f61..b18673b81b 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -47,14 +47,14 @@ (define-public tor (package (name "tor") - (version "0.3.2.10") + (version "0.3.3.6") (source (origin (method url-fetch) (uri (string-append "https://dist.torproject.org/tor-" version ".tar.gz")) (sha256 (base32 - "1vnb2wkcmm8rnz0fqi3k7arl60mpycs8rjn8hvbgv56g3p1pgpv0")))) + "1drk2h8zd05xrfpx7xn77pcxz0hs4nrq6figw56qk5gkvgv5kg4r")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-gcc-hardening" diff --git a/gnu/packages/upnp.scm b/gnu/packages/upnp.scm index 3385d80fbc..475e1750a8 100644 --- a/gnu/packages/upnp.scm +++ b/gnu/packages/upnp.scm @@ -29,14 +29,14 @@ (define-public miniupnpc (package (name "miniupnpc") - (version "2.0.20180410") + (version "2.1") (source (origin (method url-fetch) (uri (string-append "https://miniupnp.tuxfamily.org/files/" name "-" version ".tar.gz")) (sha256 - (base32 "08vs9012bahdwid4nsf3mi2kawcq1hvz7lzpdmiynxcbpip6sk0f")))) + (base32 "1ik440yspbp3clr4m01xsl9skwyrzcvzb5nbm3i0g9x53vhbb7z1")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 0c84c29fe8..5487298929 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -19,6 +19,8 @@ ;;; Copyright © 2017 Stefan Reichör <stefan@xsteve.at> ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org> +;;; Copyright © 2018 Christopher Baines <mail@cbaines.net> +;;; Copyright © 2018 Timothy Sample <samplet@ngyro.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -83,6 +85,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages python-web) #:use-module (gnu packages readline) + #:use-module (gnu packages rsync) #:use-module (gnu packages databases) #:use-module (gnu packages admin) #:use-module (gnu packages xml) @@ -141,14 +144,14 @@ as well as the classic centralized workflow.") (name "git") ;; XXX When updating Git, check if the special 'git:src' input to cgit needs ;; to be updated as well. - (version "2.17.0") + (version "2.17.1") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "1ismz7nsz8dgjmk782xr9s0mr2qh06f72pdcgbxfmnw1bvlya5p9")))) + "0pm6bdnrrm165k3krnazxcxadifk2gqi30awlbcf9fism1x6w4vr")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -161,7 +164,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "09rpjj0m97h5lpzpwk47m6xsz9gb8wqf1s3dfqma3mwav2pb3njb")))))) + "0m7grrwsqaihdgcgaicxiy4rlqjpa75n5wl6hi2qhi33xa34gmc3")))))) (inputs `(("curl" ,curl) ("expat" ,expat) @@ -555,6 +558,21 @@ collaboration using typical untrusted file hosts or services.") (quoted-file-name (assoc-ref inputs "bzip2") "/bin/bzip2")) (("\"xz\"") (quoted-file-name (assoc-ref inputs "xz") "/bin/xz"))) + + (substitute* "filters/about-formatting.sh" + (("$\\(dirname $0\\)") (string-append (assoc-ref outputs "out") + "/lib/cgit/filters")) + (("\\| tr") (string-append "| " (which "tr")))) + + (substitute* "filters/html-converters/txt2html" + (("sed") (which "sed"))) + + (substitute* "filters/html-converters/man2html" + (("groff") (which "groff"))) + + (substitute* "filters/html-converters/rst2html" + (("rst2html\\.py") (which "rst2html.py"))) + #t)) (delete 'configure) ; no configure script (add-after 'build 'build-man @@ -573,7 +591,17 @@ collaboration using typical untrusted file hosts or services.") ;; to get it stripped. (rename-file (string-append out "/share/cgit/cgit.cgi") (string-append out "/lib/cgit/cgit.cgi")) - #t))))))) + #t)))) + (add-after 'install 'wrap-python-scripts + (lambda* (#:key outputs #:allow-other-keys) + (for-each + (lambda (file) + (wrap-program (string-append (assoc-ref outputs "out") + "/lib/cgit/filters/" file) + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))))) + '("syntax-highlighting.py" + "html-converters/md2html")) + #t))))) (native-inputs ;; For building manpage. `(("asciidoc" ,asciidoc) @@ -592,6 +620,11 @@ collaboration using typical untrusted file hosts or services.") (base32 "1r2aa19gnrvm2y4fqcvpw1g9l72n48axqmpgv18s6d0y2p72vhzj")))) ("openssl" ,openssl) + ("groff" ,groff) + ("python" ,python) + ("python-docutils" ,python-docutils) + ("python-markdown" ,python-markdown) + ("python-pygments" ,python-pygments) ("zlib" ,zlib))) (home-page "https://git.zx2c4.com/cgit/") (synopsis "Web frontend for git repositories") @@ -698,13 +731,13 @@ allowing to handle large objects with a small memory footprint.") (define-public python-gitpython (package (name "python-gitpython") - (version "2.1.9") + (version "2.1.10") (source (origin (method url-fetch) (uri (pypi-uri "GitPython" version)) (sha256 (base32 - "0a9in1jfv9ssxhckl6sasw45bhm762y2r5ikgb2pk2g8yqdc6z64")))) + "00bk48s5szh296r7zyvdpv3sd7q9j2cb9sqdc9diwcjayrf082xn")))) (build-system python-build-system) (arguments `(#:tests? #f ;XXX: Tests can only be run within the GitPython repository. @@ -1470,7 +1503,8 @@ any project with more than one developer, is one of Aegis's major functions.") (lambda* (#:key outputs #:allow-other-keys) (install-file "reposurgeon-mode.el" (string-append (assoc-ref outputs "out") - "/share/emacs/site-lisp"))))))) + "/share/emacs/site-lisp")) + #t))))) (inputs `(("python" ,python-wrapper) ("tzdata" ,tzdata))) @@ -1569,7 +1603,8 @@ modification time.") (commit version))) (file-name (string-append name "-" version "-checkout")) (sha256 - (base32 "10q7lpx152xnkk701fscn4dq99q9znnmv3bc2482khhjg7z8rps0")))) + (base32 "10q7lpx152xnkk701fscn4dq99q9znnmv3bc2482khhjg7z8rps0")) + (patches (search-patches "myrepos-CVE-2018-7032.patch")))) (build-system gnu-build-system) (inputs `(("perl" ,perl))) @@ -1960,3 +1995,130 @@ venerable RCS, hence the anagrammatic acronym. The design is tuned for use cases like all those little scripts in your @file{~/bin} directory, or a directory full of HOWTOs.") (license license:bsd-2))) + +(define-public git-annex + (package + (name "git-annex") + (version "6.20170818") + (source + (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "git-annex/git-annex-" version ".tar.gz")) + (sha256 + (base32 + "0ybxixbqvy4rx6mq9s02rh349rbr04hb17z4bfayin0qwa5kzpvx")))) + (build-system haskell-build-system) + (arguments + `(#:configure-flags + '("--flags=-Android -Assistant -Pairing -S3 -Webapp -WebDAV") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'patch-shell + (lambda _ + (substitute* "Utility/Shell.hs" + (("/bin/sh") (which "sh"))) + #t)) + (add-before 'configure 'factor-setup + (lambda _ + ;; Factor out necessary build logic from the provided + ;; `Setup.hs' script. The script as-is does not work because + ;; it cannot find its dependencies, and there is no obvious way + ;; to tell it where to look. Note that we do not preserve the + ;; code that installs man pages here. + (call-with-output-file "PreConf.hs" + (lambda (out) + (format out "import qualified Build.Configure as Configure~%") + (format out "main = Configure.run Configure.tests~%"))) + (call-with-output-file "Setup.hs" + (lambda (out) + (format out "import Distribution.Simple~%") + (format out "main = defaultMain~%"))) + #t)) + (add-before 'configure 'pre-configure + (lambda _ + (invoke "runhaskell" "PreConf.hs") + #t)) + (replace 'check + (lambda _ + ;; We need to set the path so that Git recognizes + ;; `git annex' as a custom command. + (setenv "PATH" (string-append (getenv "PATH") ":" + (getcwd) "/dist/build/git-annex")) + (with-directory-excursion "dist/build/git-annex" + (symlink "git-annex" "git-annex-shell")) + (invoke "git-annex" "test") + #t)) + (add-after 'install 'install-symlinks + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (symlink (string-append bin "/git-annex") + (string-append bin "/git-annex-shell")) + (symlink (string-append bin "/git-annex") + (string-append bin "/git-remote-tor-annex")) + #t)))))) + (inputs + `(("curl" ,curl) + ("ghc-aeson" ,ghc-aeson) + ("ghc-async" ,ghc-async) + ("ghc-bloomfilter" ,ghc-bloomfilter) + ("ghc-byteable" ,ghc-byteable) + ("ghc-case-insensitive" ,ghc-case-insensitive) + ("ghc-crypto-api" ,ghc-crypto-api) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-data-default" ,ghc-data-default) + ("ghc-disk-free-space" ,ghc-disk-free-space) + ("ghc-dlist" ,ghc-dlist) + ("ghc-edit-distance" ,ghc-edit-distance) + ("ghc-esqueleto" ,ghc-esqueleto) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-feed" ,ghc-feed) + ("ghc-free" ,ghc-free) + ("ghc-hslogger" ,ghc-hslogger) + ("ghc-http-client" ,ghc-http-client) + ("ghc-http-conduit" ,ghc-http-conduit) + ("ghc-http-types" ,ghc-http-types) + ("ghc-ifelse" ,ghc-ifelse) + ("ghc-memory" ,ghc-memory) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-monad-logger" ,ghc-monad-logger) + ("ghc-mtl" ,ghc-mtl) + ("ghc-network" ,ghc-network) + ("ghc-old-locale" ,ghc-old-locale) + ("ghc-optparse-applicative" ,ghc-optparse-applicative) + ("ghc-persistent" ,ghc-persistent) + ("ghc-persistent-sqlite" ,ghc-persistent-sqlite) + ("ghc-persistent-template" ,ghc-persistent-template) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-random" ,ghc-random) + ("ghc-regex-tdfa" ,ghc-regex-tdfa) + ("ghc-resourcet" ,ghc-resourcet) + ("ghc-safesemaphore" ,ghc-safesemaphore) + ("ghc-sandi" ,ghc-sandi) + ("ghc-securemem" ,ghc-securemem) + ("ghc-socks" ,ghc-socks) + ("ghc-split" ,ghc-split) + ("ghc-stm" ,ghc-stm) + ("ghc-stm-chans" ,ghc-stm-chans) + ("ghc-text" ,ghc-text) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-uuid" ,ghc-uuid) + ("git" ,git) + ("rsync" ,rsync))) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-tasty-rerun" ,ghc-tasty-rerun))) + (home-page "https://git-annex.branchable.com/") + (synopsis "Manage files with Git, without checking in their contents") + (description "This package allows managing files with Git, without +checking the file contents into Git. It can store files in many places, +such as local hard drives and cloud storage services. It can also be +used to keep a folder in sync between computers.") + ;; The web app is released under the AGPLv3+. + (license (list license:gpl3+ + license:agpl3+)))) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 85efda65ec..51ca1c0ce5 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014, 2015, 2016 David Thompson <davet@gnu.org> -;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> +;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> ;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015 Andy Patterson <ajpatter@uwaterloo.ca> @@ -63,6 +63,7 @@ #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) + #:use-module (gnu packages backup) #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages boost) @@ -94,6 +95,7 @@ #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages iso-codes) + #:use-module (gnu packages libidn) #:use-module (gnu packages libreoffice) #:use-module (gnu packages linux) #:use-module (gnu packages lua) @@ -110,7 +112,9 @@ #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages qt) + #:use-module (gnu packages rdesktop) #:use-module (gnu packages ruby) + #:use-module (gnu packages samba) #:use-module (gnu packages sdl) #:use-module (gnu packages serialization) #:use-module (gnu packages shells) @@ -118,6 +122,7 @@ #:use-module (gnu packages texinfo) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) + #:use-module (gnu packages upnp) #:use-module (gnu packages version-control) #:use-module (gnu packages vulkan) #:use-module (gnu packages web) @@ -361,13 +366,13 @@ H.264 (MPEG-4 AVC) video streams.") (replace 'build (lambda _ (let ((-j (list "-j" (number->string (parallel-job-count))))) - (zero? (apply system* "rake" -j))))) + (apply invoke "rake" -j)))) (replace 'check (lambda _ - (zero? (system* "rake" "tests/unit")))) + (invoke "rake" "tests/unit"))) (replace 'install (lambda _ - (zero? (system* "rake" "install"))))))) + (invoke "rake" "install")))))) (home-page "https://mkvtoolnix.download") (synopsis "Tools to create, alter and inspect Matroska files") (description @@ -379,7 +384,7 @@ and creating Matroska files from other media files (@code{mkvmerge}).") (define-public x265 (package (name "x265") - (version "2.6") + (version "2.8") (source (origin (method url-fetch) @@ -387,7 +392,7 @@ and creating Matroska files from other media files (@code{mkvmerge}).") "x265_" version ".tar.gz")) (sha256 (base32 - "1gyd94jkwdii9308m07nymsbxrmrcl81c0j8i10zhslr2mj07w0v")) + "0qx8mavwdzdpkkby7n29i9av7zsnklavacwfz537mf62q2pzjnbf")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "source/compat/getopt") @@ -395,7 +400,7 @@ and creating Matroska files from other media files (@code{mkvmerge}).") (build-system cmake-build-system) (arguments `(#:tests? #f ; tests are skipped if cpu-optimized code isn't built - ;; Currently the source code doesn't check for aarch64 + ;; Currently the source code doesn't check for aarch64. ,@(if (string-prefix? "aarch64" (or (%current-target-system) (%current-system))) '(#:configure-flags '("-DENABLE_PIC=TRUE")) '()) @@ -472,7 +477,7 @@ canvas operations.") (define-public libdca (package (name "libdca") - (version "0.0.5") + (version "0.0.6") (source (origin (method url-fetch) (uri (string-append @@ -480,7 +485,7 @@ canvas operations.") version "/libdca-" version ".tar.bz2")) (sha256 (base32 - "0hh6a7l8vvccsd5i1fkv9av2gzv9fy8m0b8jpsn5p6hh4bh2586v")))) + "0h0zvcn97i9kyljdpifzi8in9xnw31fx3b3ggj96p8h0l2d8mycq")))) (build-system gnu-build-system) (home-page "https://www.videolan.org/developers/libdca.html") (synopsis "DTS Coherent Acoustics decoder") @@ -515,7 +520,7 @@ SMPTE 314M.") (define-public libmatroska (package (name "libmatroska") - (version "1.4.8") + (version "1.4.9") (source (origin (method url-fetch) @@ -523,12 +528,14 @@ SMPTE 314M.") name "/" name "-" version ".tar.xz")) (sha256 (base32 - "14n9sw974prr3yp4yjb7aadi6x2yz5a0hjw8fs3qigy5shh2piyq")))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) + "1j4mjzx6mjzfjf9hz8g4w84krf5jccmr5cyynll0j1vwv3aiv9iq")))) + (build-system cmake-build-system) (inputs `(("libebml" ,libebml))) + (arguments + `(#:configure-flags + (list "-DBUILD_SHARED_LIBS=YES") + #:tests? #f)) ; no test suite (home-page "https://www.matroska.org") (synopsis "C++ library to parse Matroska files (.mkv and .mka)") (description @@ -564,7 +571,8 @@ libebml is a C++ library to read and write EBML files.") ("libx11" ,libx11) ("libxext" ,libxext) ("libxfixes" ,libxfixes) - ("mesa" ,mesa))) + ("mesa" ,mesa) + ("wayland" ,wayland))) (arguments `(#:phases (modify-phases %standard-phases @@ -806,7 +814,7 @@ audio/video codec library.") (define-public vlc (package (name "vlc") - (version "2.2.8") + (version "3.0.3") (source (origin (method url-fetch) (uri (string-append @@ -814,55 +822,90 @@ audio/video codec library.") version "/vlc-" version ".tar.xz")) (sha256 (base32 - "1v32snw46rkgbdqdy3dssl2y13i8p2cr1cw1i18r6vdmiy24dw4v")))) + "0lavzly8l0ll1d9iris9cnirgcs77g48lxj14058dxqkvd5v1a4v")))) (build-system gnu-build-system) (native-inputs - `(("git" ,git) ; needed for a test + `(("flex" ,flex) + ("bison" ,bison) + ("gettext" ,gettext-minimal) + ("git" ,git) ; needed for a test ("pkg-config" ,pkg-config))) ;; FIXME: Add optional inputs once available. (inputs `(("alsa-lib" ,alsa-lib) ("avahi" ,avahi) ("dbus" ,dbus) + ("eudev" ,eudev) ("flac" ,flac) - ("ffmpeg" ,ffmpeg-2.8) ;fails to build against ffmpeg 3.0 + ("ffmpeg" ,ffmpeg) ("fontconfig" ,fontconfig) ("freetype" ,freetype) + ("fribidi" ,fribidi) ("gnutls" ,gnutls) ("liba52" ,liba52) + ("libarchive" ,libarchive) + ("libass" ,libass) + ("libavc1394" ,libavc1394) + ("libbluray" ,libbluray) + ("libcaca" ,libcaca) ("libcddb" ,libcddb) + ("libdca" ,libdca) ("libdvbpsi" ,libdvbpsi) + ("libdvdnav" ,libdvdnav) + ("libdvdread" ,libdvdread) + ("libebml" ,libebml) ("libgcrypt" ,libgcrypt) + ("libidn" ,libidn) ("libkate" ,libkate) ("libmad" ,libmad) + ("libmatroska" ,libmatroska) + ("libmodplug" ,libmodplug) + ("libmpeg2" ,libmpeg2) ("libogg" ,libogg) ("libpng" ,libpng) + ("libraw1394" ,libraw1394) + ("librsvg" ,librsvg) ("libsamplerate" ,libsamplerate) + ("libsecret" ,libsecret) ("libssh2" ,libssh2) + ("libupnp" ,libupnp) + ("libva" ,libva) + ("libvdpau" ,libvdpau) ("libvorbis" ,libvorbis) + ("libvpx" ,libvpx) ("libtheora" ,libtheora) + ("libx264" ,libx264) ("libxext" ,libxext) ("libxi" ,libxi) ("libxinerama" ,libxinerama) ("libxml2" ,libxml2) ("libxpm" ,libxpm) ("livemedia-utils" ,livemedia-utils) - ("lua" ,lua-5.1) + ("lua" ,lua-5.2) ("mesa" ,mesa) ("opus" ,opus) ("perl" ,perl) ("pulseaudio" ,pulseaudio) ("python" ,python-wrapper) ("qtbase" ,qtbase) + ("qtsvg" ,qtsvg) ("qtx11extras" ,qtx11extras) + ("samba" ,samba) ("sdl" ,sdl) ("sdl-image" ,sdl-image) ("speex" ,speex) + ("speexdsp" ,speexdsp) + ("taglib" ,taglib) + ("twolame" ,twolame) + ("unzip" ,unzip) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) ("x265" ,x265) ("xcb-util-keysyms" ,xcb-util-keysyms))) (arguments `(#:configure-flags `("CXXFLAGS=-std=gnu++11" + "BUILDCC=gcc" ,(string-append "LDFLAGS=-Wl,-rpath -Wl," (assoc-ref %build-inputs "ffmpeg") "/lib")) ;needed for the tests @@ -879,11 +922,24 @@ audio/video codec library.") ;; which fails in our sandboxed build system (substitute* "test/run_vlc.sh" (("./vlc --ignore-config") "echo")) - ;; XXX Likely not needed for >2.2.6. - (substitute* "modules/gui/qt4/components/interface_widgets.cpp" - (("<qx11info_x11.h>") "<QtX11Extras/qx11info_x11.h>")) + + ;; modules/text_renderer/freetype/text_layout.c uses a + ;; now-deprecated interface 'fribidi_get_par_embedding_levels' + ;; from fribidi.h, so for now we enable the use of deprecated + ;; fribidi interfaces from this file. + ;; FIXME: Try removing this for vlc >= 3.0.3. + (substitute* "modules/text_renderer/freetype/text_layout.c" + (("# define FRIBIDI_NO_DEPRECATED 1") "")) + + ;; Fix build against Qt 5.11. + (substitute* "modules/gui/qt/actions_manager.cpp" + (("#include <vlc_keys.h>") "#include <vlc_keys.h> +#include <QAction>")) + (substitute* "modules/gui/qt/components/simple_preferences.cpp" + (("#include <QFont>") "#include <QFont> +#include <QButtonGroup>")) #t))) - (add-after 'install 'regenerate-plugin-cache + (add-after 'strip 'regenerate-plugin-cache (lambda* (#:key outputs #:allow-other-keys) ;; The 'install-exec-hook' rule in the top-level Makefile.am ;; generates 'lib/vlc/plugins/plugins.dat', a plugin cache, using @@ -900,9 +956,16 @@ audio/video codec library.") (for-each (lambda (file) (let ((s (lstat file))) (unless (eq? (stat:type s) 'symlink) - (utime file 0 0 0 0)))) + (utime file 1 1)))) (find-files plugindir)) - (zero? (system* cachegen plugindir)))))))) + (invoke cachegen plugindir)))) + (add-after 'install 'wrap-executable + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (plugin-path (getenv "QT_PLUGIN_PATH"))) + (wrap-program (string-append out "/bin/vlc") + `("QT_PLUGIN_PATH" ":" prefix (,plugin-path)))) + #t))))) (home-page "https://www.videolan.org/") (synopsis "Audio and video framework") (description "VLC is a cross-platform multimedia player and framework @@ -1054,7 +1117,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") ("pulseaudio" ,pulseaudio) ("rsound" ,rsound) ("shaderc" ,shaderc) - ("vulkan-icd-loader" ,vulkan-icd-loader) + ("vulkan-loader" ,vulkan-loader) ("waf" ,python-waf) ("wayland" ,wayland) ("wayland-protocols" ,wayland-protocols) @@ -1155,7 +1218,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2018.04.25") + (version "2018.05.09") (source (origin (method url-fetch) (uri (string-append "https://yt-dl.org/downloads/" @@ -1163,7 +1226,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "17zxgwfcy7c6gdyxdgh02f5zi52gvmy0zpccfj6zjkhw5iqj1vbw")))) + "0sl4bi2jls3417rd62awbqdq1b6wskkjbfwpnyw4a61qarfxid1d")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion @@ -1273,7 +1336,7 @@ other site that youtube-dl supports.") (define-public you-get (package (name "you-get") - (version "0.4.1060") + (version "0.4.1077") (source (origin (method url-fetch) (uri (string-append @@ -1282,7 +1345,7 @@ other site that youtube-dl supports.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1pq7c2ay42aan7ykpmddzh6ylq0qsq8a27pk68m5imaxi6abbwsz")))) + "04vxc91k627qgsqs8dhqajrb6vpj4pw21jlwbha28qakfiz2x11k")))) (build-system python-build-system) (inputs `(("ffmpeg" ,ffmpeg))) ; for multi-part and >=1080p videos @@ -2070,7 +2133,7 @@ making @dfn{screencasts}.") (define-public simplescreenrecorder (package (name "simplescreenrecorder") - (version "0.3.10") + (version "0.3.11") (source (origin (method url-fetch) @@ -2079,14 +2142,14 @@ making @dfn{screencasts}.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "02rl9yyx3hlz9fqvgzv7ipmvx2qahj7ws5wx2m7zs3lssq3qag3g")))) + "0l6irdadqpajvv0dj3ngs1231n559l0y1pykhs2h7526qm4w7xal")))) (build-system cmake-build-system) ;; Although libx11, libxfixes, libxext are listed as build dependencies in ;; README.md, the program builds and functions properly without them. ;; As a result, they are omitted. Please add them back if problems appear. (inputs `(("alsa-lib" ,alsa-lib) - ("ffmpeg" ,ffmpeg-3.4) + ("ffmpeg" ,ffmpeg) ("glu" ,glu) ("jack" ,jack-1) ("libxi" ,libxi) @@ -2192,7 +2255,7 @@ Content System specification.") (define-public mps-youtube (package (name "mps-youtube") - (version "0.2.7.1") + (version "0.2.8") (source (origin (method url-fetch) @@ -2201,7 +2264,7 @@ Content System specification.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1s7h35yx6f0szf8mm8612ic913w3v05m2kwphjfcxnpq0ammhyci")))) + "0x7cmfh199q9j396v7bz81nnvanfllhsg86489i5dw2p3yyc9wnm")))) (build-system python-build-system) (arguments ;; Tests need to be disabled until #556 upstream is fixed. It reads as if the diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index e85d3ebd5b..76240d85f1 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -61,7 +61,7 @@ (define-public vim (package (name "vim") - (version "8.0.1428") + (version "8.1.0026") (source (origin (method url-fetch) (uri (string-append "https://github.com/vim/vim/archive/v" @@ -69,7 +69,7 @@ (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "08hzx843cxr5b2llc3332wxpgh3gjrs7jgd6s3sdrxnvg0s0y7s8")))) + "14q99dn113czp522j34p71za6g1mkriy04xxwcbm3axnrrpv1y52")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -81,7 +81,8 @@ (substitute* "runtime/tools/mve.awk" (("/usr/bin/nawk") (which "gawk"))) (substitute* '("src/testdir/Makefile" - "src/testdir/test_normal.vim") + "src/testdir/test_normal.vim" + "src/testdir/test_terminal.vim") (("/bin/sh") (which "sh"))) #t)) (add-before 'check 'patch-failing-test @@ -93,7 +94,6 @@ #t))))) (inputs `(("gawk" ,gawk) - ("inetutils" ,inetutils) ("ncurses" ,ncurses) ("perl" ,perl) ("tcsh" ,tcsh))) ; For runtime/tools/vim32 @@ -121,12 +121,14 @@ configuration files.") (delete 'configure) (add-after 'unpack 'chdir (lambda _ - (chdir "src/xxd"))) + (chdir "src/xxd") + #t)) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) (install-file "xxd" bin) #t)))))) + (inputs `()) (synopsis "Hexdump utility from vim") (description "This package provides the Hexdump utility xxd that comes with the editor vim."))) diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index 9dd8bb8971..05d2ab0b87 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -383,14 +383,14 @@ manage system or application containers.") (define-public libvirt (package (name "libvirt") - (version "4.2.0") + (version "4.3.0") (source (origin (method url-fetch) (uri (string-append "https://libvirt.org/sources/libvirt-" version ".tar.xz")) (sha256 (base32 - "0nq1iz5iic466qahp0i8dlvyd6li0b0pdrvvrz9286l12x2fm61s")))) + "1dy243dqaj174hcka0my7q781wf0dvyi7f9328nwnplqicnf4cd5")))) (build-system gnu-build-system) (arguments `(;; FAIL: virshtest diff --git a/gnu/packages/vulkan.scm b/gnu/packages/vulkan.scm index ac9f6f2f25..62c5d500ff 100644 --- a/gnu/packages/vulkan.scm +++ b/gnu/packages/vulkan.scm @@ -157,19 +157,19 @@ interpretation of the specifications for these languages.") ;; include/SPIRV/{bitutils,hex_float}.h are Apache 2.0. license:asl2.0))))) -(define-public vulkan-icd-loader +(define-public vulkan-loader (package - (name "vulkan-icd-loader") + (name "vulkan-loader") (version "1.1.73.0") (source (origin (method url-fetch) (uri (string-append - "https://github.com/KhronosGroup/Vulkan-LoaderAndValidationLayers/" + "https://github.com/KhronosGroup/Vulkan-Loader/" "archive/sdk-" version ".tar.gz")) (sha256 (base32 - "1qb34j2zrc04fgs96m3k76vi4nx3sygbdcyg7pbwasr45cbdhsxb")))) + "0lvdpy6ybx5h7w15m9s2n9q3167q618clra2k7yi2cbm397ci4hn")))) (build-system cmake-build-system) (arguments `(#:tests? #f ;FIXME: 23/39 tests fail. Try "tests/run_all_tests.sh". diff --git a/gnu/packages/w3m.scm b/gnu/packages/w3m.scm index db23b4d8df..4e3264a47e 100644 --- a/gnu/packages/w3m.scm +++ b/gnu/packages/w3m.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016, 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,10 +25,12 @@ #:use-module (gnu packages gettext) #:use-module (gnu packages bdw-gc) #:use-module (gnu packages compression) + #:use-module (gnu packages gtk) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) + #:use-module (gnu packages xorg) #:use-module (gnu packages) #:use-module (guix packages) #:use-module (guix git-download) @@ -61,7 +64,9 @@ (("@PERL@") (which "perl"))) #t))))) (inputs - `(("libgc" ,libgc) + `(("gdk-pixbuf" ,gdk-pixbuf) + ("libgc" ,libgc) + ("libx11" ,libx11) ("ncurses" ,ncurses) ("openssl" ,openssl) ("zlib" ,zlib))) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index a5ecd0b546..e36677282a 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -79,14 +80,14 @@ older or slower computers and embedded systems.") (define-public links (package (name "links") - (version "2.15") + (version "2.16") (source (origin (method url-fetch) (uri (string-append "http://links.twibright.com/download/" name "-" version ".tar.bz2")) (sha256 (base32 - "1jp3xyvp87a188b4kg5ycqahrazj7928zncgsznzn54w8d5iqahy")))) + "0gsa2gpb1grhssl5jzpc5pa0zi21mxi8g25rh5bacl70slw31w42")))) (build-system gnu-build-system) (arguments `(#:phases @@ -130,7 +131,7 @@ features including, tables, builtin image display, bookmarks, SSL and more.") (define-public lynx (package (name "lynx") - (version "2.8.9dev.17") + (version "2.8.9dev.19") (source (origin (method url-fetch) (uri (string-append @@ -138,7 +139,7 @@ features including, tables, builtin image display, bookmarks, SSL and more.") "/lynx" version ".tar.bz2")) (sha256 (base32 - "1lvfsnrw5mmwrmn1m76q9mx287xwm3h5lg8sv7bcqilc0ywi2f54")))) + "17wfiad2ha4y15pmwv55j0l9z1z1pcgcasrc6hwbgv0hhdpp08q2")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("perl" ,perl))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index a8f28040b0..7819a87479 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -25,6 +25,7 @@ ;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> +;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -72,6 +73,7 @@ #:use-module (gnu packages databases) #:use-module (gnu packages bison) #:use-module (gnu packages flex) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages kerberos) #:use-module (gnu packages gd) #:use-module (gnu packages gettext) @@ -82,6 +84,7 @@ #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gperf) #:use-module (gnu packages gtk) + #:use-module (gnu packages guile) #:use-module (gnu packages java) #:use-module (gnu packages javascript) #:use-module (gnu packages jemalloc) @@ -96,6 +99,7 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages openstack) #:use-module (gnu packages base) + #:use-module (gnu packages package-management) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) #:use-module (gnu packages python) @@ -519,7 +523,7 @@ data.") (define-public json-c (package (name "json-c") - (version "0.13") + (version "0.13.1") (source (origin (method url-fetch) (uri (string-append @@ -527,7 +531,7 @@ data.") version ".tar.gz")) (sha256 (base32 - "0kf2594kxcfga6x0mvwzj2qg8pgxhjkibc16ghnw85mdx45ph5h3")) + "0ws8dz9nk8q2c0gbf66kg2r6mrkl7kamd3gpdv9zsyrz9n6n0zmq")) (modules '((guix build utils))) (snippet '(begin @@ -536,14 +540,8 @@ data.") ;; run 'autoheader'. (set-file-time "config.h.in" (stat "aclocal.m4")) - - ;; Don't try to build with -Werror. - (substitute* (find-files "." "Makefile\\.in") - (("-Werror") "")) #t)))) (build-system gnu-build-system) - (arguments '(#:parallel-build? #f - #:parallel-tests? #f)) (home-page "https://github.com/json-c/json-c/wiki") (synopsis "JSON implementation in C") (description @@ -692,8 +690,8 @@ instances, while JSON's objects will be mapped to @code{QVariantMap}.") (add-after 'wrap-program 'check (lambda* (#:key inputs outputs #:allow-other-keys) (with-directory-excursion "data" - (zero? (system* (string-append (assoc-ref outputs "out") "/bin/ktImportText") - "ec.tsv")))))))) + (invoke (string-append (assoc-ref outputs "out") "/bin/ktImportText") + "ec.tsv"))))))) (inputs `(("perl" ,perl))) (home-page "https://github.com/marbl/Krona/wiki") @@ -857,7 +855,7 @@ UTS#46.") ;; source tree. (copy-recursively "build/gnuauto" ".") (setenv "AUTOMAKE" "automake --foreign") - (zero? (system* "autoreconf" "-vfi"))))))) + (invoke "autoreconf" "-vfi")))))) (native-inputs `(("automake" ,automake) ("autoconf" ,autoconf) @@ -1238,11 +1236,9 @@ minimum to provide high performance operation.") (delete 'configure) (add-after 'unpack 'unpack-libsass-and-set-path (lambda* (#:key inputs #:allow-other-keys) - (and (zero? (system* "tar" "xvf" (assoc-ref inputs "libsass"))) - (begin - (setenv "SASS_LIBSASS_PATH" - (string-append (getcwd) "/libsass-" ,version)) - #t))))))) + (invoke "tar" "xvf" (assoc-ref inputs "libsass")) + (setenv "SASS_LIBSASS_PATH" + (string-append (getcwd) "/libsass-" ,version))))))) (inputs `(("libsass" ,libsass))) (synopsis "CSS pre-processor") @@ -1818,15 +1814,15 @@ number, file name, and code context surrounding the line number.") (define-public perl-catalyst-plugin-static-simple (package (name "perl-catalyst-plugin-static-simple") - (version "0.33") + (version "0.36") (source (origin (method url-fetch) - (uri (string-append "mirror://cpan/authors/id/J/JJ/JJNAPIORK/" + (uri (string-append "mirror://cpan/authors/id/I/IL/ILMARI/" "Catalyst-Plugin-Static-Simple-" version ".tar.gz")) (sha256 (base32 - "1h8f12bhzh0ssq9gs8r9g3hqn8zn2k0q944vc1vm8j81bns16msy")))) + "0m4l627p2fvzr4i6sgdxhdvsx4wpa6qmaibsbxlg5x5yjs7k7drn")))) (build-system perl-build-system) (native-inputs `(("perl-module-install" ,perl-module-install))) @@ -2439,7 +2435,7 @@ composed of HTML::Element style components.") (define-public perl-html-scrubber (package (name "perl-html-scrubber") - (version "0.15") + (version "0.17") (source (origin (method url-fetch) @@ -2449,11 +2445,12 @@ composed of HTML::Element style components.") ".tar.gz")) (sha256 (base32 - "1m1f8gm2jry42zxja05dxp2ck7y66m7i8vc38nj6hccnwlby6cvi")))) + "06p7w4zd42b2yh541mlzyqj40lwmvvn3fyqi8big4mf34la7m2jm")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build) ("perl-test-cpan-meta" ,perl-test-cpan-meta) + ("perl-test-differences" ,perl-test-differences) ("perl-test-eol" ,perl-test-eol) ("perl-test-memory-cycle" ,perl-test-memory-cycle) ("perl-test-notabs" ,perl-test-notabs))) @@ -3412,7 +3409,7 @@ either mocked HTTP or a locally spawned server.") (define-public perl-test-www-mechanize (package (name "perl-test-www-mechanize") - (version "1.48") + (version "1.50") (source (origin (method url-fetch) @@ -3420,17 +3417,12 @@ either mocked HTTP or a locally spawned server.") "Test-WWW-Mechanize-" version ".tar.gz")) (sha256 (base32 - "1d11fx9155d5v17d5w7q3kj37b01l8yj2yb0g6b0z1vh938rrlcr")))) + "097pl87vdbxbb56vawzvs6ikrlb8nz3dx223kjjbdn3jlli3jjhg")))) (build-system perl-build-system) - (native-inputs - `(("perl-test-exception" ,perl-test-exception))) - (native-inputs - `(("perl-module-install" ,perl-module-install))) (propagated-inputs `(("perl-carp-assert-more" ,perl-carp-assert-more) ("perl-html-form" ,perl-html-form) ("perl-html-lint" ,perl-html-lint) - ("perl-html-tree" ,perl-html-tree) ("perl-http-server-simple" ,perl-http-server-simple) ("perl-libwww" ,perl-libwww) ("perl-test-longstring" ,perl-test-longstring) @@ -3480,7 +3472,7 @@ testing of Catalyst applications without needing to start up a web server.") (define-public perl-test-www-mechanize-psgi (package (name "perl-test-www-mechanize-psgi") - (version "0.37") + (version "0.38") (source (origin (method url-fetch) @@ -3488,7 +3480,7 @@ testing of Catalyst applications without needing to start up a web server.") "Test-WWW-Mechanize-PSGI-" version ".tar.gz")) (sha256 (base32 - "0c9a9w0d2whadnrich7f09w37fgq5hws4gq04zgz4jsdjcvr3qv2")))) + "0fsh2i05kf1kfavv2r9kmnjl7qlyqrd11ikc0qcqzzxsqzzjkg9r")))) (build-system perl-build-system) (native-inputs `(("perl-test-pod" ,perl-test-pod))) @@ -3784,13 +3776,13 @@ CDF, Atom 0.3, and Atom 1.0 feeds.") (define-public r-httpuv (package (name "r-httpuv") - (version "1.4.1") + (version "1.4.3") (source (origin (method url-fetch) (uri (cran-uri "httpuv" version)) (sha256 (base32 - "1pndv0h870ygibk0bmg9ayzkls60jqscrsyk39k29gy2pvm9ha5y")))) + "15ghxcyg9h0za3qy077fnn3izbpihskvaqwsppm2s43a771imsf6")))) (build-system r-build-system) (native-inputs `(("r-rcpp" ,r-rcpp))) (propagated-inputs @@ -3836,21 +3828,19 @@ in systems and applications.") (define-public r-servr (package (name "r-servr") - (version "0.9") + (version "0.10") (source (origin (method url-fetch) (uri (cran-uri "servr" version)) (sha256 (base32 - "0bs0i5mjfzxfshqz8i30nhn7kvgwly4fqn5bfq6dqfdrn7biai2x")))) + "0yz3igqsiyqnjj1ngh199zicg3spx4kbmvl0wc8i8xahk6l9g06v")))) (build-system r-build-system) (propagated-inputs `(("r-httpuv" ,r-httpuv) ("r-jsonlite" ,r-jsonlite) ("r-mime" ,r-mime) ("r-xfun" ,r-xfun))) - (native-inputs - `(("r-rcpp" ,r-rcpp))) (home-page "https://github.com/yihui/servr") (synopsis "Simple HTTP server to serve static files or dynamic documents") (description @@ -3919,14 +3909,14 @@ applications.") (define-public r-htmltable (package (name "r-htmltable") - (version "1.11.2") + (version "1.12") (source (origin (method url-fetch) (uri (cran-uri "htmlTable" version)) (sha256 (base32 - "1lbpi0kkk8b41w10scmlf27dg5azcv51a4q3p5bpqyphrnqp78k4")))) + "1n5136vb7mi4rxl5jgwdmdhn4mwv2pcqyw2mrj406ih4hy6hpxa2")))) (properties `((upstream-name . "htmlTable"))) (build-system r-build-system) (propagated-inputs @@ -4010,14 +4000,14 @@ objects in HTML format.") (define-public r-rjson (package (name "r-rjson") - (version "0.2.15") + (version "0.2.19") (source (origin (method url-fetch) (uri (cran-uri "rjson" version)) (sha256 (base32 - "1vzjyvf57k1fjizlk28rby65y5lsww5qnfvgnhln74qwda7hvl3p")))) + "1g29vp3gfbh73a5br68jydsrigia4vnr5avc84avgwl6353749jw")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/rjson") (synopsis "JSON library for R") @@ -4791,7 +4781,7 @@ handling many of the web standards in use today.") (let* ((out (assoc-ref %outputs "out")) (man (string-append out "/share/man/man1"))) (with-directory-excursion man - (zero? (system* "gzip" "elvi.1sr"))))))))) + (invoke "gzip" "elvi.1sr")))))))) (inputs `(("perl" ,perl) ("perl-www-opensearch" ,perl-www-opensearch) @@ -4896,8 +4886,8 @@ on the fly.") (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out"))) (setenv "CONFIG_SHELL" (which "bash")) - (zero? (system* "./configure" - (string-append "--prefix=" out))))))))) + (invoke "./configure" + (string-append "--prefix=" out)))))))) (home-page "http://www.nocrew.org/software/httptunnel.html") (synopsis "Tunnel data connections through HTTP requests") (description "httptunnel creates a bidirectional virtual data connection @@ -4910,7 +4900,7 @@ tools like SSH (Secure Shell) to reach the outside world.") (define-public stunnel (package (name "stunnel") - (version "5.44") + (version "5.46") (source (origin (method url-fetch) @@ -4918,7 +4908,7 @@ tools like SSH (Secure Shell) to reach the outside world.") version ".tar.gz")) (sha256 (base32 - "1692y69wl7j6yjgnrrzclgzb34bxsaxjzl1dfy47vms7pdfk42lr")))) + "1iw4gap9ysag8iww2ik029scmdllk7jdzcpnnbj7hgbl526b9akn")))) (build-system gnu-build-system) (inputs `(("openssl" ,openssl))) (arguments @@ -5247,12 +5237,12 @@ command-line arguments or read from stdin.") (add-installed-pythonpath inputs outputs) (setenv "PATH" (string-append (assoc-ref outputs "out") "/bin" ":" (getenv "PATH"))) - (zero? (system* "py.test" "-v" "-k" - (string-append - ;; These tests attempt to make a connection to - ;; an external web service. - "not test_get_item_with_kwargs" - " and not test_ia")))))))) + (invoke "py.test" "-v" "-k" + (string-append + ;; These tests attempt to make a connection to + ;; an external web service. + "not test_get_item_with_kwargs" + " and not test_ia"))))))) (propagated-inputs `(("python-requests" ,python-requests) ("python-jsonpatch" ,python-jsonpatch-0.4) @@ -5313,14 +5303,15 @@ internetarchive python module for programatic access to archive.org.") (modify-phases %standard-phases (add-after 'unpack 'get-tests (lambda _ - (copy-file (assoc-ref %build-inputs "test-clf") "test_clf.py"))) + (copy-file (assoc-ref %build-inputs "test-clf") "test_clf.py") + #t)) (replace 'check (lambda _ - (zero? (system* "nosetests" - ;; These tests require internet connection - "--exclude=test_browse" - "--exclude=test_command" - "--exclude=test_search"))))))) + (invoke "nosetests" + ;; These tests require an Internet connection. + "--exclude=test_browse" + "--exclude=test_command" + "--exclude=test_search")))))) (home-page "https://github.com/ncrocfer/clf") (synopsis "Search code snippets on @url{https://commandlinefu.com}") (description "@code{clf} is a command line tool for searching code @@ -5333,16 +5324,17 @@ snippets on @url{https://commandlinefu.com}.") (define-public r-shiny (package (name "r-shiny") - (version "1.0.3") + (version "1.1.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/rstudio/shiny/" - "archive/v" version ".tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/rstudio/shiny.git") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "0z2v2s4hd44mvzjn7r70549kdzkrrch9nxhp27r6x2cy6micizm3")))) + "041q2gzvzs13syfhbirmkik96asdji8dxnnbs63j7v1ks97hrvvz")))) (build-system r-build-system) (arguments `(#:modules ((guix build r-build-system) @@ -5407,7 +5399,8 @@ snippets on @url{https://commandlinefu.com}.") "jquery.min.js"))))) #t))))) (propagated-inputs - `(("r-httpuv" ,r-httpuv) + `(("r-crayon" ,r-crayon) + ("r-httpuv" ,r-httpuv) ("r-mime" ,r-mime) ("r-jsonlite" ,r-jsonlite) ("r-xtable" ,r-xtable) @@ -5555,8 +5548,7 @@ named elements: the @code{status}, the @code{headers}, and the @code{body}.") %build-inputs)) (mkdir-p share-rss-bridge) (invoke "tar" "xvf" (assoc-ref %build-inputs "source") - "--strip-components" "1" "-C" share-rss-bridge) - #t)))) + "--strip-components" "1" "-C" share-rss-bridge))))) (home-page "https://github.com/RSS-Bridge/rss-bridge") (synopsis "Generate Atom feeds for social networking websites") (description "rss-bridge generates Atom feeds for social networking @@ -5568,28 +5560,23 @@ Instagram and YouTube.") (define-public linkchecker (package (name "linkchecker") - (version "9.3") + (version "9.4.0") (source (origin - (method url-fetch) - (uri (pypi-uri "LinkChecker" version)) + (method git-fetch) + (uri (git-reference + (url "https://github.com/linkchecker/linkchecker") + (commit (string-append "v" version)))) (sha256 (base32 - "0v8pavf0bx33xnz1kwflv0r7lxxwj7vg3syxhy2wzza0wh6sc2pf")))) + "03ihjmc4bqxxqv71bb43r2f23sx0xnbq1k2fsg9fw05qa5s9x187")))) (build-system python-build-system) (inputs - `(("python2-requests" ,python2-requests))) + `(("python2-dnspython" ,python2-dnspython) + ("python2-pyxdg" ,python2-pyxdg) + ("python2-requests" ,python2-requests))) (arguments - `(#:python ,python-2 - #:phases - (modify-phases %standard-phases - ;; Remove faulty python-requests version check. This has been fixed - ;; upstream, and can be removed in version 9.4. - (add-after 'unpack 'remove-python-requests-version - (lambda _ - (substitute* "linkcheck/__init__.py" - (("requests.__version__ <= '2.2.0'") "False")) - #t))))) + `(#:python ,python-2)) (home-page "https://linkcheck.github.io/linkchecker") (synopsis "Check websites for broken links") (description "LinkChecker is a website validator. It checks for broken @@ -5598,15 +5585,10 @@ colored or normal text, HTML, SQL, CSV, XML or as a sitemap graph. It supports checking HTTP/1.1, HTTPS, FTP, mailto, news, nntp, telnet and local file links.") (license (list l:gpl2+ - l:bsd-2 ; linkcheck/better_exchook2.py - l:bsd-3 ; linkcheck/colorama.py - l:psfl ; linkcheck/gzip2.py - l:expat ; linkcheck/mem.py - ;; FIXME: Unbundle dnspython and miniboa - ;; This issue has been raised upstream - ;; https://github.com/wummel/linkchecker/issues/729 - l:isc ; third_party/dnspython - l:asl2.0)))) ; third_party/miniboa + l:bsd-2 ; linkcheck/better_exchook2.py + l:bsd-3 ; linkcheck/colorama.py + l:psfl ; linkcheck/gzip2.py + l:expat)))) ; linkcheck/mem.py (define-public cadaver (package @@ -6436,3 +6418,81 @@ compressed JSON header blocks. @item @command{inflatehd} converts such compressed headers back to JSON pairs. @end itemize\n") (license l:expat))) + +(define-public hpcguix-web + (let ((commit "3e3b9a3a406ee2dcd10c96cbedcc16ea378e8e8f")) + (package + (name "hpcguix-web") + (version (git-version "0.0.1" "0" commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/UMCUGenetics/hpcguix-web.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "01888byi9mh7d3adcmwhmg44kg98g92r44ilc4wd7an66mjnxpry")))) + (build-system gnu-build-system) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-26) + (ice-9 popen) + (ice-9 rdelim)) + + #:phases + (modify-phases %standard-phases + (add-before 'configure 'autoconf + (lambda _ + (setenv "GUILE_AUTO_COMPILE" "0") + (setenv "XDG_CACHE_HOME" (getcwd)) + (invoke "autoreconf" "-vif"))) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (guix (assoc-ref inputs "guix")) + (guile (assoc-ref inputs "guile")) + (json (assoc-ref inputs "guile-json")) + (guile-cm (assoc-ref inputs + "guile-commonmark")) + (deps (list guile guile-cm guix json)) + (effective + (read-line + (open-pipe* OPEN_READ + (string-append guile "/bin/guile") + "-c" "(display (effective-version))"))) + (path (string-join + (map (cut string-append <> + "/share/guile/site/" + effective) + deps) + ":")) + (gopath (string-join + (map (cut string-append <> + "/lib/guile/" effective + "/site-ccache") + deps) + ":"))) + (wrap-program (string-append out "/bin/run") + `("GUILE_LOAD_PATH" ":" prefix (,path)) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix (,gopath))) + + #t)))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("uglify-js" ,uglify-js) + ("pkg-config" ,pkg-config))) + (inputs + `(("guix" ,guix))) + (propagated-inputs + `(("guile" ,guile-2.2) + ("guile-commonmark" ,guile-commonmark) + ("guile-json" ,guile-json))) + (home-page "https://github.com/UMCUGenetics/hpcguix-web") + (synopsis "Web interface for cluster deployments of Guix") + (description "Hpcguix-web provides a web interface to the list of packages +provided by Guix. The list of packages is searchable and provides +instructions on how to use Guix in a shared HPC environment.") + (license l:agpl3+)))) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index cb852243b1..d1abb0b687 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -55,14 +55,14 @@ (define-public webkitgtk (package (name "webkitgtk") - (version "2.20.1") + (version "2.20.2") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "0nc9dj05dbk31ciip08b3rdsfja7ckc5mgagrj030fafza2k5r23")))) + "1qi6nnj4qidzija1am9xscwjxwfqwhiy7x39ndriqgzh86i97znz")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no tests diff --git a/gnu/packages/wget.scm b/gnu/packages/wget.scm index 9331af9a65..bd43e372cf 100644 --- a/gnu/packages/wget.scm +++ b/gnu/packages/wget.scm @@ -44,7 +44,7 @@ (define-public wget (package (name "wget") - (version "1.19.4") + (version "1.19.5") (source (origin (method url-fetch) @@ -52,7 +52,7 @@ version ".tar.lz")) (sha256 (base32 - "16jmcqcasx3q9k4azssryli9qyxfq0sfijw998g8zp58cnwzzh1g")))) + "0xfaxmlnih7dhkyks5wi4vrn0n1xshmy6gx6fb2k1120sprydyr9")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/wine.scm b/gnu/packages/wine.scm index 13772cd9a8..369f64c547 100644 --- a/gnu/packages/wine.scm +++ b/gnu/packages/wine.scm @@ -46,6 +46,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) + #:use-module (gnu packages kerberos) #:use-module (gnu packages linux) #:use-module (gnu packages openldap) #:use-module (gnu packages perl) @@ -68,7 +69,7 @@ (define-public wine (package (name "wine") - (version "3.0") + (version "3.0.1") (source (origin (method url-fetch) (uri (string-append "https://dl.winehq.org/wine/source/" @@ -76,7 +77,7 @@ "/wine-" version ".tar.xz")) (sha256 (base32 - "1v7vq9iinkscbq6wg85fb0d2137660fg2nk5iabxkl2wr850asil")))) + "1wr63n70pli83p3rmclr2j4lxzs4ll1cwlpdlaajfrf6v9yhvl5s")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("gettext" ,gettext-minimal) @@ -115,6 +116,7 @@ ("libXinerama" ,libxinerama) ("libXxf86vm" ,libxxf86vm) ("libXcomposite" ,libxcomposite) + ("mit-krb5" ,mit-krb5) ("ncurses" ,ncurses) ("openal" ,openal) ("pulseaudio" ,pulseaudio) @@ -221,7 +223,7 @@ integrate Windows applications into your desktop.") (define-public wine-staging-patchset-data (package (name "wine-staging-patchset-data") - (version "3.6") + (version "3.9") (source (origin (method url-fetch) @@ -230,7 +232,7 @@ integrate Windows applications into your desktop.") (file-name (string-append name "-" version ".zip")) (sha256 (base32 - "1q5mgq7lk3sh82im65g51yk110ci9afl5wgqs2q6i8qd2nj5pv7d")))) + "0akccqrp1ymjrra2c99f6hxlaa77jyihfs3q8x93vkgb9c0lq5xx")))) (build-system trivial-build-system) (native-inputs `(("bash" ,bash) @@ -277,14 +279,14 @@ integrate Windows applications into your desktop.") (file-name (string-append name "-" version ".tar.xz")) (sha256 (base32 - "0p4h0ynb5yf8rx5badpxg7b6vsrqdqafwszn5qm0shv0kb3jsl3q")))) + "0ddphvlp9lsjyqc6zckinc36bggpkg925v0x2vqr8nkdjs0w5bfc")))) (inputs `(("autoconf" ,autoconf) ; for autoreconf ("gtk+" ,gtk+) ("libva" ,libva) ("python" ,python) ("sdl2" ,sdl2) ("util-linux" ,util-linux) ; for hexdump - ("vulkan-icd-loader" ,vulkan-icd-loader) + ("vulkan-loader" ,vulkan-loader) ("wine-staging-patchset-data" ,wine-staging-patchset-data) ,@(package-inputs wine))) (arguments diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 0b5e0848c1..a3705c9d91 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -135,14 +136,14 @@ the leaves of a full binary tree.") (define-public i3status (package (name "i3status") - (version "2.11") + (version "2.12") (source (origin (method url-fetch) (uri (string-append "https://i3wm.org/i3status/i3status-" version ".tar.bz2")) (sha256 (base32 - "0pwcy599fw8by1a1sf91crkqba7679qhvhbacpmhis8c1xrpxnwq")))) + "06krpbijv4yi33nypg6qcn4hilcrdyarsdpd9fmr2cq46qaqiikg")))) (build-system gnu-build-system) (arguments `(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) @@ -919,7 +920,7 @@ It is inspired by Xmonad and dwm. Its major features include: (define-public cwm (package (name "cwm") - (version "6.2") + (version "6.3") (source (origin (method url-fetch) @@ -927,7 +928,7 @@ It is inspired by Xmonad and dwm. Its major features include: version ".tar.gz")) (sha256 (base32 - "1b8k2hjxpb0bzqjh2wj6mn2nf2360zacf8z19sw2rw5lxvmfy89x")))) + "17pdp9cfgh2n3n3905l4rl9qk7b722i8psnarhlc2h98qzx7zmac")))) (build-system gnu-build-system) (arguments `(#:make-flags (list "CC=gcc" @@ -967,3 +968,47 @@ It is inspired by Xmonad and dwm. Its major features include: (description "Cwm is a stacking window manager for X11. It is an OpenBSD project derived from the original Calm Window Manager.") (license license:isc))) + +(define-public nitrogen + (package + (name "nitrogen") + (version "1.6.1") + (source (origin + (method url-fetch) + (uri (string-append "http://github.com/l3ib/nitrogen/" + "releases/download/" version "/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0zc3fl1mbhq0iyndy4ysmy8vv5c7xwf54rbgamzfhfvsgdq160pl")))) + (build-system gnu-build-system) + (inputs + `(("gtk+" ,gtk+-2) + ("gtkmm" ,gtkmm-2) + ("glib" ,glib) + ("glibmm" ,glibmm))) + (native-inputs + `(("pkg-config", pkg-config))) + (arguments + `(#:configure-flags (list + (string-append "--prefix=" %output) + "CXXFLAGS=-std=c++11"))) + (home-page "http://projects.l3ib.org/nitrogen/") + (synopsis "Background browser and setter for X windows") + (description + "This package is a background browser and setter for X windows. It's +features are: + +@itemize +@item Multihead and Xinerama aware +@item Recall mode to used via startup script +@item Uses freedesktop.org standard for thumbnails +@item Can set GNOME background +@item Command lie set modes for script use +@item Inotify monitoring of browse directory +@item Lazy loading of thumbnails - conserves memory +@item \"Automatic\" set mode - determines best mode to set an image based on +its size +@item Display preview images in a tiled icon layout +@end itemize") + (license license:gpl2+))) diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm index dc74c9f59e..be082eef73 100644 --- a/gnu/packages/xdisorg.scm +++ b/gnu/packages/xdisorg.scm @@ -18,10 +18,11 @@ ;;; Copyright © 2016 Petter <petter@mykolab.ch> ;;; Copyright © 2017 Mekeor Melire <mekeor.melire@gmail.com> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> -;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Marek Benc <dusxmt@gmx.com> ;;; Copyright © 2017 Mike Gerwitz <mtg@gnu.org> ;;; Copyright © 2018 Thomas Sigurdsen <tonton@riseup.net> +;;; Copyright © 2018 Pierre Neidhardt <ambrevar@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -155,14 +156,14 @@ avoiding password prompts when X11 forwarding has already been setup.") (define-public libxkbcommon (package (name "libxkbcommon") - (version "0.7.1") + (version "0.8.0") (source (origin (method url-fetch) (uri (string-append "https://xkbcommon.org/download/" name "-" version ".tar.xz")) (sha256 (base32 - "12z6hih3n1r0asp2hzp9qsiwdfkfz46jwp06x8kprr0r5rfk0nds")))) + "0vgy84vfbig5bqznr137h5arjidnfwrxrdli0pxyn2jfn1fjcag8")))) (build-system gnu-build-system) (inputs `(("libx11" ,libx11) @@ -529,7 +530,7 @@ selection's dimensions to stdout.") (define-public maim (package (name "maim") - (version "5.5") + (version "5.5.1") (source (origin (method url-fetch) (uri (string-append @@ -538,7 +539,7 @@ selection's dimensions to stdout.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "02blbimjdckbcb04crhv0k2vxnp3rcgskyq66sk0v13l2h52849v")))) + "1dvw0axnr9hhjg6zdcq9lwvaq0x7vrzlz00p8n3hj25qzsi4z5as")))) (build-system cmake-build-system) (arguments '(#:tests? #f)) ; no "check" target @@ -881,14 +882,15 @@ Escape key when Left Control is pressed and released on its own.") (define-public libwacom (package (name "libwacom") - (version "0.29") + (version "0.30") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/linuxwacom/libwacom/" - name "-" version ".tar.bz2")) + (uri (string-append + "https://github.com/linuxwacom/libwacom/releases/download/" + name "-" version "/" name "-" version ".tar.bz2")) (sha256 (base32 - "1diklgcjhmvcxi9p1ifp6wcnyr6k7z9jhrlzfhzjqd6zipk01slw")))) + "0n9294f2534qcgfry4n7vmr6vy49iqym0y74a88g1h0l0ml0hd2j")))) (build-system glib-or-gtk-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -901,7 +903,7 @@ Escape key when Left Control is pressed and released on its own.") ;; libwacom includes header files that include GLib, and libinput uses ;; those header files. `(("glib" ,glib))) - (home-page "http://linuxwacom.sourceforge.net/") + (home-page "https://linuxwacom.github.io/") (synopsis "Helper library for Wacom tablet settings") (description "Libwacom is a library to help implement Wacom tablet settings. It is @@ -913,15 +915,16 @@ Wacom tablet applet.") (define-public xf86-input-wacom (package (name "xf86-input-wacom") - (version "0.36.0") - (source (origin - (method url-fetch) - (uri (string-append - "mirror://sourceforge/linuxwacom/xf86-input-wacom/" - name "-" version ".tar.bz2")) - (sha256 - (base32 - "1xi39hl8ddgj9m7m2k2ll2r3wh0k0aq45fvrsv43651bhz9cbrza")))) + (version "0.36.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/linuxwacom/xf86-input-wacom/releases/download/" + name "-" version "/" name "-" version ".tar.bz2")) + (sha256 + (base32 + "029y8varbricba2dzhzhy0ndd7lbfif411ca8c3wxzni9qmbj1ij")))) (arguments `(#:configure-flags (list (string-append "--with-sdkdir=" @@ -939,7 +942,7 @@ Wacom tablet applet.") ("libxinerama" ,libxinerama) ("libxi" ,libxi) ("eudev" ,eudev))) - (home-page "http://linuxwacom.sourceforge.net/") + (home-page "https://linuxwacom.github.io/") (synopsis "Wacom input driver for X") (description "The xf86-input-wacom driver is the wacom-specific X11 input driver for @@ -949,7 +952,7 @@ the X.Org X Server version 1.7 and later (X11R7.5 or later).") (define-public redshift (package (name "redshift") - (version "1.11") + (version "1.12") (source (origin (method url-fetch) @@ -959,7 +962,7 @@ the X.Org X Server version 1.7 and later (X11R7.5 or later).") "/redshift-" version ".tar.xz")) (sha256 (base32 - "0ngkwj7rg8nfk806w0sg443w6wjr91xdc0zisqfm5h2i77wm1qqh")))) + "1fi27b73x85qqar526dbd33av7mahca2ykaqwr7siqiw1qqcby6j")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -969,7 +972,7 @@ the X.Org X Server version 1.7 and later (X11R7.5 or later).") ("libx11" ,libx11) ("libxcb" ,libxcb) ("libxxf86vm" ,libxxf86vm) - ("glib" ,glib))) ;for Geoclue2 support + ("glib" ,glib))) ; for Geoclue2 support (home-page "https://github.com/jonls/redshift") (synopsis "Adjust the color temperature of your screen") (description @@ -1435,3 +1438,39 @@ with black color on a white background (colors are configurable on the commandline).") (home-page "https://www.joachim-breitner.de/projects#screen-message") (license license:gpl2+))) + +(define-public xss-lock + ;; xss-lock does not seem to be maintained any longer, but the last commits + ;; fix important issues so we package them. + (let ((version "0.3.0") + (revision "1") + (commit "1e158fb20108058dbd62bd51d8e8c003c0a48717")) + (package + (name "xss-lock") + (version (git-version version revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://bitbucket.org/raymonad/xss-lock.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "10hx7k7ga8g08akwz8qrsvj8iqr5nd4siiva6sjx789jvf0sak7r")))) + (build-system cmake-build-system) + (inputs `(("glib" ,glib) + ("xcb-util" ,xcb-util))) + (native-inputs + `(("python-docutils" ,python-docutils) + ("pkg-config" ,pkg-config))) + (arguments + `(#:tests? #f)) + (synopsis "Use external screen locker on events") + (description "@code{xss-lock} listens to X signals to fire up a +user-defined screensaver. In effect this allows to automatically lock the +screen when closing a laptop lid or after a period of user inactivity (as set +with @code{xset s TIMEOUT}). The notifier command, if specified, is executed +first. Additionally, xss-lock uses the inhibition logic to lock the screen +before the system goes to sleep.") + (home-page "https://bitbucket.org/raymonad/xss-lock") + (license license:expat)))) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 8491faf881..d0184c45d1 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -84,7 +84,7 @@ things the parser might find in the XML document (like start tags).") (define-public libebml (package (name "libebml") - (version "1.3.5") + (version "1.3.6") (source (origin (method url-fetch) @@ -92,8 +92,23 @@ things the parser might find in the XML document (like start tags).") name "/" name "-" version ".tar.xz")) (sha256 (base32 - "005a0ipqnfbsq47zrc61zszi439jw32q5xd6dc1jyb3lc0zl266q")))) - (build-system gnu-build-system) + "17iynkj22rbszaymxiaq6k02qy9w4fs1appkn1iam4y441w7lnhy")) + (patches + (list + (origin + (method url-fetch) + (uri + (string-append "https://github.com/Matroska-Org/libebml/commit/" + "e46906b80e7662fb78d305f576412f9fa4a22218.patch")) + (file-name "libebml-use-limits-not-climits.patch") + (sha256 + (base32 + "1803rcj4kzg385xij8j3fcz8h86z43ivciv512zr7jp9jwrafs58"))))))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags + (list "-DBUILD_SHARED_LIBS=YES") + #:tests? #f)) ; no test suite (home-page "https://matroska-org.github.io/libebml/") (synopsis "C++ library to parse EBML files") (description "libebml is a C++ library to read and write @dfn{EBML} @@ -636,14 +651,14 @@ that conforms to the API of the Document Object Model.") (define-public perl-xml-compile-tester (package (name "perl-xml-compile-tester") - (version "0.90") + (version "0.91") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" "XML-Compile-Tester-" version ".tar.gz")) (sha256 (base32 - "1bcl8x8cyacqv9yjp97aq9qq85sy8wv78kd8c16yd9yw3by4cpp1")))) + "1drzwziwi96rfkh48qpw4l225mcbk8ppl2157nj92cslcpwwdk75")))) (build-system perl-build-system) (propagated-inputs `(("perl-log-report" ,perl-log-report) @@ -735,14 +750,14 @@ used.") (define-public perl-xml-compile-wsdl11 (package (name "perl-xml-compile-wsdl11") - (version "3.06") + (version "3.07") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/M/MA/MARKOV/" "XML-Compile-WSDL11-" version ".tar.gz")) (sha256 (base32 - "0vbq05cpynm3jj81fw1k4nsb3wv4zngi6blvi1jhdarmh2rfg1x2")))) + "09ayl442hzvn97q4ghn5rz4r82dm9w3l69hixhb29h9xq9ysi7ba")))) (build-system perl-build-system) (propagated-inputs `(("perl-log-report" ,perl-log-report) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 0d9ec32a47..f4bf2a503a 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -2908,12 +2908,11 @@ X server.") (define-public xf86-video-intel - (let ((commit "af6d8e9e8f546e5cba60e3a62765c2dbd0328e83") - (revision "9")) + (let ((commit "d7dfab62a9853b44bbcd67dac08391d8e5114c97") + (revision "10")) (package (name "xf86-video-intel") - (version (string-append "2.99.917-" revision "-" - (string-take commit 7))) + (version (git-version "2.99.917" revision commit)) (source (origin ;; there's no current tarball @@ -2923,8 +2922,8 @@ X server.") (commit commit))) (sha256 (base32 - "0f6sbkgykvvdggy8z6y7blf7yharg9vmiixxy190643bjxlnpp2s")) - (file-name (string-append name "-" version)))) + "1vcfal4xr9q6016p28lnlyg709da6d305dysyyrj3fjp9fj48sva")) + (file-name (git-file-name name version)))) (build-system gnu-build-system) (inputs `(("mesa" ,mesa) ("udev" ,eudev) @@ -5726,7 +5725,7 @@ to answer a question. Xmessage can also exit after a specified time.") (define-public xterm (package (name "xterm") - (version "332") + (version "333") (source (origin (method url-fetch) (uri (list @@ -5736,7 +5735,7 @@ to answer a question. Xmessage can also exit after a specified time.") name "-" version ".tgz"))) (sha256 (base32 - "0zdjiik4ravc3zld5c9i2ndrvazjmwiwbgl2c21348762wki2jsx")))) + "0y7gl26mxw6kwqx9j9mi6lx1lp1v3nrlga19ddn07j2m9q0l479g")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--enable-wide-chars" "--enable-load-vt-fonts" @@ -5900,7 +5899,7 @@ basic eye-candy effects.") (define-public xpra (package (name "xpra") - (version "2.2.6") + (version "2.3.1") (source (origin (method url-fetch) @@ -5908,7 +5907,7 @@ basic eye-candy effects.") version ".tar.xz")) (sha256 (base32 - "1zyynghhzjbgnmzcibm17wpj9f7jy31d7dr373li8cwg2yl2swyz")))) + "0wghjmrw77pkh6agc5rz7ynr6s8yyc68qvj9rnp0vlwa3x1fl3ry")))) (build-system python-build-system) (inputs `(("ffmpeg" ,ffmpeg) ("flac" ,flac) @@ -5919,6 +5918,7 @@ basic eye-candy effects.") ("libx264" ,libx264) ("libxcomposite" ,libxcomposite) ("libxdamage" ,libxdamage) + ("libxi" ,libxi) ("libxkbfile" ,libxkbfile) ("libxrandr" ,libxrandr) ("libxtst" ,libxtst) @@ -6001,15 +6001,15 @@ X11 servers, Windows, or macOS.") (define-public uim (package (name "uim") - (version "1.8.6") + (version "1.8.8") (source (origin (method url-fetch) - (uri (string-append "https://github.com/uim/uim/releases/download/uim-" + (uri (string-append "https://github.com/uim/uim/releases/download/" version "/uim-" version ".tar.bz2")) (sha256 (base32 - "0pr3rfqpxha8p6cxzdjsxbbmmr76riklzw36f68phd1zqw1sh7kv")))) + "1p7sl0js47ja4glmax93ci59h02ipqw3wxkh4f1qgaz5qjy9nn9l")))) (build-system gnu-build-system) (inputs `(("anthy" ,anthy) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 694aab882e..b34bb7132b 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -303,15 +303,14 @@ seconds after @code{SIGTERM} has been sent are terminated with (define (file-system->fstab-entry file-system) "Return a @file{/etc/fstab} entry for @var{file-system}." - (string-append (case (file-system-title file-system) - ((label) - (string-append "LABEL=" (file-system-device file-system))) - ((uuid) - (string-append - "UUID=" - (uuid->string (file-system-device file-system)))) - (else - (file-system-device file-system))) + (string-append (match (file-system-device file-system) + ((? file-system-label? label) + (string-append "LABEL=" + (file-system-label->string label))) + ((? uuid? uuid) + (string-append "UUID=" (uuid->string uuid))) + ((? string? device) + device)) "\t" (file-system-mount-point file-system) "\t" (file-system-type file-system) "\t" @@ -1962,10 +1961,16 @@ extra rules from the packages listed in @var{rules}." "Return a service that uses @var{device} as a swap device." (service swap-service-type device)) +(define %default-gpm-options + ;; Default options for GPM. + '("-m" "/dev/input/mice" "-t" "ps2")) + (define-record-type* <gpm-configuration> gpm-configuration make-gpm-configuration gpm-configuration? - (gpm gpm-configuration-gpm) ;package - (options gpm-configuration-options)) ;list of strings + (gpm gpm-configuration-gpm ;package + (default gpm)) + (options gpm-configuration-options ;list of strings + (default %default-gpm-options))) (define gpm-shepherd-service (match-lambda @@ -2000,14 +2005,15 @@ extra rules from the packages listed in @var{rules}." (extensions (list (service-extension shepherd-root-service-type gpm-shepherd-service))) + (default-value (gpm-configuration)) (description "Run GPM, the general-purpose mouse daemon, with the given command-line options. GPM allows users to use the mouse in the console, notably to select, copy, and paste text. The default options use the @code{ps2} protocol, which works for both USB and PS/2 mice."))) -(define* (gpm-service #:key (gpm gpm) - (options '("-m" "/dev/input/mice" "-t" "ps2"))) +(define* (gpm-service #:key (gpm gpm) ;deprecated + (options %default-gpm-options)) "Run @var{gpm}, the general-purpose mouse daemon, with the given command-line @var{options}. GPM allows users to use the mouse in the console, notably to select, copy, and paste text. The default value of @var{options} diff --git a/gnu/services/cgit.scm b/gnu/services/cgit.scm index 8ef12cd5a0..3289d37333 100644 --- a/gnu/services/cgit.scm +++ b/gnu/services/cgit.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> +;;; Copyright © 2018 Christopher Baines <mail@cbaines.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -115,6 +116,10 @@ (define (serialize-file-object field-name val) (serialize-string field-name val)) +(define (project-list? val) + (or (list? val) + (file-object? val))) + ;;; ;;; Serialize <nginx-server-configuration> @@ -167,7 +172,12 @@ (if (null? val) "" (serialize-field 'project-list - (plain-file "project-list" (string-join val "\n"))))) + (if (file-object? val) + val + (plain-file "project-list" (string-join val "\n")))))) + +(define (serialize-extra-options extra-options) + (string-join extra-options "\n" 'suffix)) (define repository-directory? string?) @@ -543,7 +553,7 @@ disabled.") "Flag which, when set to @samp{#t}, will make cgit omit the standard header on all pages.") (project-list - (list '()) + (project-list '()) "A list of subdirectories inside of @code{repository-directory}, relative to it, that should loaded as Git repositories. An empty list means that all subdirectories will be loaded.") @@ -641,6 +651,7 @@ for cgit to allow access to that repository.") (define (rest? field) (not (memq (configuration-field-name field) '(project-list + extra-options repository-directory repositories)))) #~(string-append @@ -649,6 +660,8 @@ for cgit to allow access to that repository.") #$(serialize-project-list 'project-list (cgit-configuration-project-list config)) + #$(serialize-extra-options + (cgit-configuration-extra-options config)) #$(serialize-repository-directory 'repository-directory (cgit-configuration-repository-directory config)) diff --git a/gnu/services/dbus.scm b/gnu/services/dbus.scm index 360a8af9ab..1e24d93ccb 100644 --- a/gnu/services/dbus.scm +++ b/gnu/services/dbus.scm @@ -63,7 +63,7 @@ all the services that may be activated by the daemon." (find-files (string-append service - "/share/dbus-1/system-services") + "/share/dbus-1/") "\\.service$")) (list #$@services))) diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 517d5d3efe..1e8c02c02a 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -5,6 +5,8 @@ ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2017 Nils Gillmann <ng0@n0.is> +;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,8 +31,10 @@ #:use-module (gnu services avahi) #:use-module (gnu services xorg) #:use-module (gnu services networking) + #:use-module (gnu services sound) #:use-module ((gnu system file-systems) #:select (%elogind-file-systems)) + #:use-module (gnu system) #:use-module (gnu system shadow) #:use-module (gnu system pam) #:use-module (gnu packages glib) @@ -44,9 +48,11 @@ #:use-module (gnu packages linux) #:use-module (gnu packages libusb) #:use-module (gnu packages mate) + #:use-module (gnu packages enlightenment) #:use-module (guix records) #:use-module (guix packages) #:use-module (guix store) + #:use-module (guix utils) #:use-module (guix gexp) #:use-module (srfi srfi-1) #:use-module (ice-9 match) @@ -96,6 +102,10 @@ x11-socket-directory-service + enlightenment-desktop-configuration + enlightenment-desktop-configuration? + enlightenment-desktop-service-type + %desktop-services)) ;;; Commentary: @@ -819,7 +829,8 @@ rules." gnome-polkit-settings) (service-extension profile-service-type (compose list - gnome-package)))))) + gnome-package)))) + (description "Run the GNOME desktop environment."))) (define* (gnome-desktop-service #:key (config (gnome-desktop-configuration))) "Return a service that adds the @code{gnome} package to the system profile, @@ -845,7 +856,8 @@ and extends polkit with the actions from @code{gnome-settings-daemon}." mate-package)) (service-extension profile-service-type (compose list - mate-package)))))) + mate-package)))) + (description "Run the MATE desktop environment."))) (define* (mate-desktop-service #:key (config (mate-desktop-configuration))) "Return a service that adds the @code{mate} package to the system profile, @@ -899,6 +911,60 @@ with the administrator's password." (let ((directory "/tmp/.X11-unix")) (mkdir-p directory) (chmod directory #o777)))))) + +;;; +;;; Enlightenment desktop service. +;;; + +(define-record-type* <enlightenment-desktop-configuration> + enlightenment-desktop-configuration make-enlightenment-desktop-configuration + enlightenment-desktop-configuration? + ;; <package> + (enlightenment enlightenment-package + (default enlightenment))) + +(define (enlightenment-setuid-programs enlightenment-desktop-configuration) + (match-record enlightenment-desktop-configuration + <enlightenment-desktop-configuration> + (enlightenment) + (list (file-append enlightenment + "/lib/enlightenment/utils/enlightenment_sys") + (file-append enlightenment + "/lib/enlightenment/utils/enlightenment_backlight") + ;; TODO: Move this binary to a screen-locker service. + (file-append enlightenment + "/lib/enlightenment/utils/enlightenment_ckpasswd") + (file-append enlightenment + (string-append + "/lib/enlightenment/modules/cpufreq/" + (match (string-tokenize (%current-system) + (char-set-complement (char-set #\-))) + ((arch "linux") (string-append "linux-gnu-" arch)) + ((arch "gnu") (string-append "gnu-" arch))) + "-" + (version-major+minor (package-version enlightenment)) + "/freqset"))))) + +(define enlightenment-desktop-service-type + (service-type + (name 'enlightenment-desktop) + (extensions + (list (service-extension dbus-root-service-type + (compose list + (package-direct-input-selector + "efl") + enlightenment-package)) + (service-extension setuid-program-service-type + enlightenment-setuid-programs) + (service-extension profile-service-type + (compose list + enlightenment-package)))) + (default-value (enlightenment-desktop-configuration)) + (description + "Return a service that adds the @code{enlightenment} package to the system +profile, and extends dbus with the ability for @code{efl} to generate +thumbnails and makes setuid the programs which enlightenment needs to function +as expected."))) ;;; @@ -934,6 +1000,8 @@ with the administrator's password." x11-socket-directory-service + (service alsa-service-type) + %base-services)) ;;; desktop.scm ends here diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm index 673ab1a98d..d0913e90ed 100644 --- a/gnu/services/dns.scm +++ b/gnu/services/dns.scm @@ -27,6 +27,7 @@ #:use-module (guix records) #:use-module (guix gexp) #:use-module (srfi srfi-1) + #:use-module (srfi srfi-26) #:use-module (srfi srfi-34) #:use-module (srfi srfi-35) #:use-module (ice-9 match) @@ -41,7 +42,10 @@ knot-configuration define-zone-entries zone-file - zone-entry)) + zone-entry + + dnsmasq-service-type + dnsmasq-configuration)) ;;; ;;; Knot DNS. @@ -591,3 +595,76 @@ knot-activation) (service-extension account-service-type (const %knot-accounts)))))) + + +;;; +;;; Dnsmasq. +;;; + +(define-record-type* <dnsmasq-configuration> + dnsmasq-configuration make-dnsmasq-configuration + dnsmasq-configuration? + (package dnsmasq-configuration-package + (default dnsmasq)) ;package + (no-hosts? dnsmasq-configuration-no-hosts? + (default #f)) ;boolean + (port dnsmasq-configuration-port + (default 53)) ;integer + (local-service? dnsmasq-configuration-local-service? + (default #t)) ;boolean + (listen-addresses dnsmasq-configuration-listen-address + (default '())) ;list of string + (resolv-file dnsmasq-configuration-resolv-file + (default "/etc/resolv.conf")) ;string + (no-resolv? dnsmasq-configuration-no-resolv? + (default #f)) ;boolean + (servers dnsmasq-configuration-servers + (default '())) ;list of string + (cache-size dnsmasq-configuration-cache-size + (default 150)) ;integer + (no-negcache? dnsmasq-configuration-no-negcache? + (default #f))) ;boolean + +(define dnsmasq-shepherd-service + (match-lambda + (($ <dnsmasq-configuration> package + no-hosts? + port local-service? listen-addresses + resolv-file no-resolv? servers + cache-size no-negcache?) + (shepherd-service + (provision '(dnsmasq)) + (requirement '(networking)) + (documentation "Run the dnsmasq DNS server.") + (start #~(make-forkexec-constructor + '(#$(file-append package "/sbin/dnsmasq") + "--keep-in-foreground" + "--pid-file=/run/dnsmasq.pid" + #$@(if no-hosts? + '("--no-hosts") + '()) + #$(format #f "--port=~a" port) + #$@(if local-service? + '("--local-service") + '()) + #$@(map (cut format #f "--listen-address=~a" <>) + listen-addresses) + #$(format #f "--resolv-file=~a" resolv-file) + #$@(if no-resolv? + '("--no-resolv") + '()) + #$@(map (cut format #f "--server=~a" <>) + servers) + #$(format #f "--cache-size=~a" cache-size) + #$@(if no-negcache? + '("--no-negcache") + '())) + #:pid-file "/run/dnsmasq.pid")) + (stop #~(make-kill-destructor)))))) + +(define dnsmasq-service-type + (service-type + (name 'dnsmasq) + (extensions + (list (service-extension shepherd-root-service-type + (compose list dnsmasq-shepherd-service)))))) diff --git a/gnu/services/games.scm b/gnu/services/games.scm index b146696237..b9d78e078d 100644 --- a/gnu/services/games.scm +++ b/gnu/services/games.scm @@ -27,7 +27,7 @@ #:use-module (guix records) #:use-module (ice-9 match) #:export (wesnothd-configuration - wesnoth-configuration? + wesnothd-configuration? wesnothd-service-type)) ;;; diff --git a/gnu/services/messaging.scm b/gnu/services/messaging.scm index 80ffed0f2f..4b7e724a78 100644 --- a/gnu/services/messaging.scm +++ b/gnu/services/messaging.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -691,7 +692,14 @@ See also @url{https://prosody.im/doc/modules/mod_muc}." (service-extension account-service-type (const %prosody-accounts)) (service-extension activation-service-type - prosody-activation))))) + prosody-activation))) + (default-value (prosody-configuration + (virtualhosts + (list + (virtualhost-configuration + (domain "localhost")))))) + (description + "Run Prosody, a modern XMPP communication server."))) ;; A little helper to make it easier to document all those fields. (define (generate-documentation) @@ -783,20 +791,24 @@ string, you could instantiate a prosody service like this: (default "127.0.0.1")) (port bitlbee-configuration-port (default 6667)) + (plugins bitlbee-plugins + (default '())) (extra-settings bitlbee-configuration-extra-settings (default ""))) (define bitlbee-shepherd-service (match-lambda - (($ <bitlbee-configuration> bitlbee interface port extra-settings) - (let ((conf (plain-file "bitlbee.conf" - (string-append " + (($ <bitlbee-configuration> bitlbee interface port + plugins extra-settings) + (let ((conf (mixed-text-file "bitlbee.conf" + " [settings] User = bitlbee ConfigDir = /var/lib/bitlbee DaemonInterface = " interface " DaemonPort = " (number->string port) " -" extra-settings)))) + PluginDir = " (directory-union "bitlbee-plugins" plugins) "/lib/bitlbee +" extra-settings))) (with-imported-modules (source-module-closure '((gnu build shepherd) diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index 67674e895e..e4441f6475 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -46,6 +46,8 @@ #:use-module (srfi srfi-9) #:use-module (srfi srfi-26) #:use-module (ice-9 match) + #:re-export (static-networking-service + static-networking-service-type) #:export (%facebook-host-aliases dhcp-client-service @@ -462,6 +464,8 @@ make an initial adjustment of more than 1,000 seconds." openntpd-shepherd-service) (service-extension account-service-type (const %ntp-accounts)) + (service-extension profile-service-type + (compose list openntpd-configuration-openntpd)) (service-extension activation-service-type openntpd-service-activation))) (default-value (openntpd-configuration)) @@ -950,6 +954,8 @@ wireless networking.")))) (extensions (list (service-extension shepherd-root-service-type connman-shepherd-service) + (service-extension polkit-service-type + connman-package) (service-extension dbus-root-service-type connman-package) (service-extension activation-service-type @@ -957,6 +963,7 @@ wireless networking.")))) ;; Add connman to the system profile. (service-extension profile-service-type connman-package))) + (default-value (connman-configuration)) (description "Run @url{https://01.org/connman,Connman}, a network connection manager.")))) diff --git a/gnu/services/sound.scm b/gnu/services/sound.scm new file mode 100644 index 0000000000..5fe555e8b6 --- /dev/null +++ b/gnu/services/sound.scm @@ -0,0 +1,86 @@ +;;; 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 sound) + #:use-module (gnu services base) + #:use-module (gnu services configuration) + #:use-module (gnu services shepherd) + #: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 (gnu packages pulseaudio) + #:use-module (ice-9 match) + #:export (alsa-configuration + alsa-service-type)) + +;;; Commentary: +;;; +;;; Sound services. +;;; +;;; Code: + + +;;; +;;; ALSA +;;; + +(define-record-type* <alsa-configuration> + alsa-configuration make-alsa-configuration alsa-configuration? + (pulseaudio? alsa-configuration-pulseaudio? ;boolean + (default #t)) + (extra-options alsa-configuration-extra-options ;string + (default ""))) + +(define (alsa-config-file config) + "Return the ALSA configuration file corresponding to CONFIG." + (plain-file "asound.conf" + (string-append "# Generated by 'alsa-service'.\n\n" + (if (alsa-configuration-pulseaudio? config) + "# Use PulseAudio by default +pcm.!default { + type pulse + fallback \"sysdefault\" + hint { + show on + description \"Default ALSA Output (currently PulseAudio Sound Server)\" + } +} + +ctl.!default { + type pulse + fallback \"sysdefault\" +} +" + "") + (alsa-configuration-extra-options config)))) + +(define (alsa-etc-service config) + (list `("asound.conf" ,(alsa-config-file config)))) + +(define alsa-service-type + (service-type + (name 'alsa) + (extensions + (list (service-extension etc-service-type alsa-etc-service))) + (default-value (alsa-configuration)) + (description "Configure low-level Linux sound support, ALSA."))) + +;;; sound.scm ends here diff --git a/gnu/services/web.scm b/gnu/services/web.scm index b336a8dd30..aae2f3db0d 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net> ;;; Copyright © 2017 nee <nee-git@hidamari.blue> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> +;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -25,11 +26,14 @@ (define-module (gnu services web) #:use-module (gnu services) #:use-module (gnu services shepherd) + #:use-module (gnu system pam) #:use-module (gnu system shadow) #:use-module (gnu packages admin) #:use-module (gnu packages web) #:use-module (gnu packages php) + #:use-module (gnu packages guile) #:use-module (guix records) + #:use-module (guix modules) #:use-module (guix gexp) #:use-module ((guix utils) #:select (version-major)) #:use-module ((guix packages) #:select (package-version)) @@ -155,7 +159,11 @@ php-fpm-service-type nginx-php-location - cat-avatar-generator-service)) + cat-avatar-generator-service + + hpcguix-web-configuration + hpcguix-web-configuration? + hpcguix-web-service-type)) ;;; Commentary: ;;; @@ -893,3 +901,65 @@ a webserver.") (nginx-server-configuration-locations configuration))) (root #~(string-append #$package "/share/web/cat-avatar-generator")))))) + + +(define-record-type* <hpcguix-web-configuration> + hpcguix-web-configuration make-hpcguix-web-configuration + hpcguix-web-configuration? + + (package hpcguix-web-package (default hpcguix-web)) ;<package> + + ;; Specs is gexp of hpcguix-web configuration file + (specs hpcguix-web-configuration-specs)) + +(define %hpcguix-web-accounts + (list (user-group + (name "hpcguix-web") + (system? #t)) + (user-account + (name "hpcguix-web") + (group "hpcguix-web") + (system? #t) + (comment "hpcguix-web") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin"))))) + +(define %hpcguix-web-activation + #~(begin + (use-modules (guix build utils)) + (let ((home-dir "/var/cache/guix/web") + (user (getpwnam "hpcguix-web"))) + (mkdir-p home-dir) + (chown home-dir (passwd:uid user) (passwd:gid user)) + (chmod home-dir #o755)))) + +(define (hpcguix-web-shepherd-service config) + (let ((specs (hpcguix-web-configuration-specs config)) + (hpcguix-web (hpcguix-web-package config))) + (with-imported-modules (source-module-closure + '((gnu build shepherd))) + (shepherd-service + (documentation "hpcguix-web daemon") + (provision '(hpcguix-web)) + (requirement '(networking)) + (start #~(make-forkexec-constructor + (list #$(file-append hpcguix-web "/bin/run") + (string-append "--config=" + #$(scheme-file "hpcguix-web.scm" specs))) + #:user "hpcguix-web" + #:group "hpcguix-web" + #:environment-variables + (list "XDG_CACHE_HOME=/var/cache"))) + (stop #~(make-kill-destructor)))))) + +(define hpcguix-web-service-type + (service-type + (name 'hpcguix-web) + (description "Run the hpcguix-web server.") + (extensions + (list (service-extension account-service-type + (const %hpcguix-web-accounts)) + (service-extension activation-service-type + (const %hpcguix-web-activation)) + (service-extension shepherd-root-service-type + (compose list hpcguix-web-shepherd-service)))))) diff --git a/gnu/system.scm b/gnu/system.scm index c68455bddc..f3dafd144b 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -131,13 +131,16 @@ "Prepend extra arguments to KERNEL-ARGUMENTS that allow SYSTEM.DRV to be booted from ROOT-DEVICE" (cons* (string-append "--root=" - (if (uuid? root-device) - - ;; Note: Always use the DCE format because that's - ;; what (gnu build linux-boot) expects for the - ;; '--root' kernel command-line option. - (uuid->string (uuid-bytevector root-device) 'dce) - root-device)) + (cond ((uuid? root-device) + + ;; Note: Always use the DCE format because that's + ;; what (gnu build linux-boot) expects for the + ;; '--root' kernel command-line option. + (uuid->string (uuid-bytevector root-device) + 'dce)) + ((file-system-label? root-device) + (file-system-label->string root-device)) + (else root-device))) #~(string-append "--system=" #$system.drv) #~(string-append "--load=" #$system.drv "/boot") kernel-arguments)) @@ -251,10 +254,16 @@ file system labels." (match-lambda (('uuid (? symbol? type) (? bytevector? bv)) (bytevector->uuid bv type)) + (('file-system-label (? string? label)) + (file-system-label label)) ((? bytevector? bv) ;old format (bytevector->uuid bv 'dce)) ((? string? device) - device))) + ;; It used to be that we would not distinguish between labels and + ;; device names. Try to infer the right thing here. + (if (string-prefix? "/dev/" device) + device + (file-system-label device))))) (match (read port) (('boot-parameters ('version 0) @@ -308,8 +317,8 @@ file system labels." (_ ;the old format "/"))))) (x ;unsupported format - (warning (G_ "unrecognized boot parameters for '~a'~%") - system) + (warning (G_ "unrecognized boot parameters at '~a'~%") + (port-filename port)) #f))) (define (read-boot-parameters-file system) @@ -377,7 +386,7 @@ marked as 'needed-for-boot'." (let ((target (string-append "/dev/mapper/" (mapped-device-target device)))) (find (lambda (fs) (or (member device (file-system-dependencies fs)) - (and (eq? 'device (file-system-title fs)) + (and (string? (file-system-device fs)) (string=? (file-system-device fs) target)))) file-systems))) @@ -841,9 +850,8 @@ hardware-related operations as necessary when booting a Linux container." (define (operating-system-root-file-system os) "Return the root file system of OS." - (find (match-lambda - (($ <file-system> device title "/") #t) - (x #f)) + (find (lambda (fs) + (string=? "/" (file-system-mount-point fs))) (operating-system-file-systems os))) (define (operating-system-initrd-file os) @@ -934,13 +942,6 @@ listed in OS. The C library expects to find it under (bootloader-configuration-bootloader bootloader-conf)) bootloader-conf (list entry) #:old-entries old-entries))) -(define (fs->boot-device fs) - "Given FS, a <file-system> object, return a value suitable for use as the -device in a <menu-entry>." - (case (file-system-title fs) - ((uuid label device) (file-system-device fs)) - (else #f))) - (define (operating-system-boot-parameters os system.drv root-device) "Return a monadic <boot-parameters> record that describes the boot parameters of OS. SYSTEM.DRV is either a derivation or #f. If it's a derivation, adds @@ -962,7 +963,7 @@ kernel arguments for that derivation to <boot-parameters>." (operating-system-user-kernel-arguments os))) (initrd initrd) (bootloader-name bootloader-name) - (store-device (ensure-not-/dev (fs->boot-device store))) + (store-device (ensure-not-/dev (file-system-device store))) (store-mount-point (file-system-mount-point store)))))) (define (device->sexp device) @@ -970,6 +971,8 @@ kernel arguments for that derivation to <boot-parameters>." (match device ((? uuid? uuid) `(uuid ,(uuid-type uuid) ,(uuid-bytevector uuid))) + ((? file-system-label? label) + `(file-system-label ,(file-system-label->string label))) (_ device))) diff --git a/gnu/system/examples/bare-bones.tmpl b/gnu/system/examples/bare-bones.tmpl index 7e0c8fbee0..cb6d2623db 100644 --- a/gnu/system/examples/bare-bones.tmpl +++ b/gnu/system/examples/bare-bones.tmpl @@ -16,8 +16,7 @@ (bootloader grub-bootloader) (target "/dev/sdX"))) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) diff --git a/gnu/system/examples/beaglebone-black.tmpl b/gnu/system/examples/beaglebone-black.tmpl index 97201330c7..d1130c76b6 100644 --- a/gnu/system/examples/beaglebone-black.tmpl +++ b/gnu/system/examples/beaglebone-black.tmpl @@ -20,8 +20,7 @@ (initrd-modules (cons "omap_hsmmc" %base-initrd-modules)) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) diff --git a/gnu/system/examples/lightweight-desktop.tmpl b/gnu/system/examples/lightweight-desktop.tmpl index 65a8ee1809..360ee62ffe 100644 --- a/gnu/system/examples/lightweight-desktop.tmpl +++ b/gnu/system/examples/lightweight-desktop.tmpl @@ -20,13 +20,11 @@ ;; Assume the target root file system is labelled "my-root", ;; and the EFI System Partition has UUID 1234-ABCD. (file-systems (cons* (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) (file-system (device (uuid "1234-ABCD" 'fat)) - (title 'uuid) (mount-point "/boot/efi") (type "vfat")) %base-file-systems)) diff --git a/gnu/system/examples/vm-image.tmpl b/gnu/system/examples/vm-image.tmpl index ce3653c8b4..36e272722d 100644 --- a/gnu/system/examples/vm-image.tmpl +++ b/gnu/system/examples/vm-image.tmpl @@ -31,8 +31,7 @@ partprobe, and then 2) resizing the filesystem with resize2fs.\n")) (target "/dev/sda") (terminal-outputs '(console)))) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index d2acd705de..2b5948256a 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -20,16 +20,17 @@ #:use-module (ice-9 match) #:use-module (rnrs bytevectors) #:use-module (srfi srfi-1) + #:use-module (srfi srfi-9) + #:use-module (srfi srfi-9 gnu) #:use-module (guix records) #:use-module (gnu system uuid) #:re-export (uuid ;backward compatibility string->uuid uuid->string) - #:export (<file-system> - file-system + #:export (file-system file-system? file-system-device - file-system-title + file-system-title ;deprecated file-system-mount-point file-system-type file-system-needed-for-boot? @@ -43,6 +44,10 @@ file-system-type-predicate + file-system-label + file-system-label? + file-system-label->string + file-system->spec spec->file-system specification->file-system-mapping @@ -83,12 +88,10 @@ ;;; Code: ;; File system declaration. -(define-record-type* <file-system> file-system +(define-record-type* <file-system> %file-system make-file-system file-system? - (device file-system-device) ; string - (title file-system-title ; 'device | 'label | 'uuid - (default 'device)) + (device file-system-device) ; string | <uuid> | <file-system-label> (mount-point file-system-mount-point) ; string (type file-system-type) ; string (flags file-system-flags ; list of symbols @@ -109,6 +112,83 @@ (default (current-source-location)) (innate))) +;; A file system label for use in the 'device' field. +(define-record-type <file-system-label> + (file-system-label label) + file-system-label? + (label file-system-label->string)) + +(set-record-type-printer! <file-system-label> + (lambda (obj port) + (format port "#<file-system-label ~s>" + (file-system-label->string obj)))) + +(define-syntax report-deprecation + (lambda (s) + "Report the use of the now-deprecated 'title' field." + (syntax-case s () + ((_ field) + (let* ((source (syntax-source #'field)) + (file (and source (assq-ref source 'filename))) + (line (and source + (and=> (assq-ref source 'line) 1+))) + (column (and source (assq-ref source 'column)))) + (format (current-error-port) + "~a:~a:~a: warning: 'title' field is deprecated~%" + file line column) + #t))))) + +;; Helper for 'process-file-system-declaration'. +(define-syntax device-expression + (syntax-rules (quote label uuid device) + ((_ (quote label) dev) + (file-system-label dev)) + ((_ (quote uuid) dev) + (if (uuid? dev) dev (uuid dev))) + ((_ (quote device) dev) + dev) + ((_ title dev) + (case title + ((label) (file-system-label dev)) + ((uuid) (uuid dev)) + (else dev))))) + +;; Helper to interpret the now-deprecated 'title' field. Detect forms like +;; (title 'label), remove them, and adjust the 'device' field accordingly. +;; TODO: Remove this once 'title' has been deprecated long enough. +(define-syntax process-file-system-declaration + (syntax-rules (device title) + ((_ () (rest ...) #f #f) ;no 'title' and no 'device' field + (%file-system rest ...)) + ((_ () (rest ...) dev #f) ;no 'title' field + (%file-system rest ... (device dev))) + ((_ () (rest ...) dev titl) ;got a 'title' field + (%file-system rest ... + (device (device-expression titl dev)))) + ((_ ((title titl) rest ...) (previous ...) dev _) + (begin + (report-deprecation (title titl)) + (process-file-system-declaration (rest ...) + (previous ...) + dev titl))) + ((_ ((device dev) rest ...) (previous ...) _ titl) + (process-file-system-declaration (rest ...) + (previous ...) + dev titl)) + ((_ (field rest ...) (previous ...) dev titl) + (process-file-system-declaration (rest ...) + (previous ... field) + dev titl)))) + +(define-syntax-rule (file-system fields ...) + (process-file-system-declaration (fields ...) () #f #f)) + +(define (file-system-title fs) ;deprecated + (match (file-system-device fs) + ((? file-system-label?) 'label) + ((? uuid?) 'uuid) + ((? string?) 'device))) + ;; Note: This module is used both on the build side and on the host side. ;; Arrange not to pull (guix store) and (guix config) because the latter ;; differs from user to user. @@ -161,23 +241,26 @@ store--e.g., if FS is the root file system." "Return a list corresponding to file-system FS that can be passed to the initrd code." (match fs - (($ <file-system> device title mount-point type flags options _ _ check?) - (list (if (uuid? device) - `(uuid ,(uuid-type device) ,(uuid-bytevector device)) - device) - title mount-point type flags options check?)))) + (($ <file-system> device mount-point type flags options _ _ check?) + (list (cond ((uuid? device) + `(uuid ,(uuid-type device) ,(uuid-bytevector device))) + ((file-system-label? device) + `(file-system-label ,(file-system-label->string device))) + (else device)) + mount-point type flags options check?)))) (define (spec->file-system sexp) "Deserialize SEXP, a list, to the corresponding <file-system> object." (match sexp - ((device title mount-point type flags options check?) + ((device mount-point type flags options check?) (file-system (device (match device (('uuid (? symbol? type) (? bytevector? bv)) (bytevector->uuid bv type)) + (('file-system-label (? string? label)) + (file-system-label label)) (_ device))) - (title title) (mount-point mount-point) (type type) (flags flags) (options options) (check? check?))))) diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 920d215272..35f4ba9c24 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -49,7 +49,12 @@ a20-olinuxino-micro-installation-os banana-pi-m2-ultra-installation-os beaglebone-black-installation-os - nintendo-nes-classic-edition-installation-os)) + mx6cuboxi-installation-os + nintendo-nes-classic-edition-installation-os + novena-installation-os + pine64-plus-installation-os + rk3399-puma-installation-os + wandboard-installation-os)) ;;; Commentary: ;;; @@ -324,8 +329,7 @@ You have been warned. Thanks for being so brave.\x1b[0m ;; the appropriate one. (cons* (file-system (mount-point "/") - (device "GuixSD_image") - (title 'label) + (device (file-system-label "GuixSD_image")) (type "ext4")) ;; Make /tmp a tmpfs instead of keeping the overlayfs. This @@ -337,7 +341,6 @@ You have been warned. Thanks for being so brave.\x1b[0m (file-system (mount-point "/tmp") (device "none") - (title 'device) (type "tmpfs") (check? #f)) @@ -429,11 +432,36 @@ The bootloader BOOTLOADER is installed to BOOTLOADER-TARGET." "/dev/mmcblk1" ; eMMC storage "ttyS0")) +(define mx6cuboxi-installation-os + (embedded-installation-os u-boot-mx6cuboxi-bootloader + "/dev/mmcblk0" ; SD card storage + "ttymxc0")) + +(define novena-installation-os + (embedded-installation-os u-boot-novena-bootloader + "/dev/mmcblk1" ; SD card storage + "ttymxc1")) + (define nintendo-nes-classic-edition-installation-os (embedded-installation-os u-boot-nintendo-nes-classic-edition-bootloader "/dev/mmcblk0" ; SD card (solder it yourself) "ttyS0")) +(define pine64-plus-installation-os + (embedded-installation-os u-boot-pine64-plus-bootloader + "/dev/mmcblk0" ; SD card storage + "ttyS0")) + +(define rk3399-puma-installation-os + (embedded-installation-os u-boot-puma-rk3399-bootloader + "/dev/mmcblk0" ; SD card storage + "ttyS0")) + +(define wandboard-installation-os + (embedded-installation-os u-boot-wandboard-bootloader + "/dev/mmcblk0" ; SD card storage + "ttymxc0")) + ;; Return the default os here so 'guix system' can consume it directly. installation-os diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm index e0cb59c009..d73ebfd8d3 100644 --- a/gnu/system/linux-initrd.scm +++ b/gnu/system/linux-initrd.scm @@ -283,7 +283,7 @@ FILE-SYSTEMS." (define virtio-modules ;; Modules for Linux para-virtualized devices, for use in QEMU guests. '("virtio_pci" "virtio_balloon" "virtio_blk" "virtio_net" - "virtio_console")) + "virtio_console" "virtio-rng")) `("ahci" ;for SATA controllers "usb-storage" "uas" ;for the installation image etc. diff --git a/gnu/system/uuid.scm b/gnu/system/uuid.scm index 73695ddeb8..f13960c3e9 100644 --- a/gnu/system/uuid.scm +++ b/gnu/system/uuid.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org> ;;; ;;; This file is part of GNU Guix. @@ -251,7 +251,8 @@ corresponding bytevector; otherwise return #f." (define-syntax uuid (lambda (s) - "Return the UUID object corresponding to the given UUID representation." + "Return the UUID object corresponding to the given UUID representation or +#f if the string could not be parsed." (syntax-case s (quote) ((_ str (quote type)) (and (string? (syntax->datum #'str)) @@ -266,9 +267,11 @@ corresponding bytevector; otherwise return #f." (string? (syntax->datum #'str)) #'(uuid str 'dce)) ((_ str) - #'(make-uuid 'dce (string->uuid str 'dce))) + #'(let ((bv (string->uuid str 'dce))) + (and bv (make-uuid 'dce bv)))) ((_ str type) - #'(make-uuid type (string->uuid str type)))))) + #'(let ((bv (string->uuid str type))) + (and bv (make-uuid type bv))))))) (define uuid->string ;; Convert the given bytevector or UUID object, to the corresponding UUID diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 09a11af863..8cfbda2264 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -23,7 +23,6 @@ (define-module (gnu system vm) #:use-module (guix config) - #:use-module (guix docker) #:use-module (guix store) #:use-module (guix gexp) #:use-module (guix derivations) @@ -411,58 +410,57 @@ should set REGISTER-CLOSURES? to #f." (eval-when (expand load eval) (define %libgcrypt #+(file-append libgcrypt "/lib/libgcrypt")))))) + (mlet %store-monad ((os-drv (operating-system-derivation os #:container? #t)) (name -> (string-append name ".tar.gz")) (graph -> "system-graph")) (define build - (with-imported-modules `(,@(source-module-closure '((guix docker) - (guix build utils) - (gnu build vm)) - #:select? not-config?) - (guix build store-copy) - ((guix config) => ,config)) - #~(begin - ;; Guile-JSON is required by (guix docker). - (add-to-load-path - (string-append #+guile-json "/share/guile/site/" - (effective-version))) - (use-modules (guix docker) - (guix build utils) - (gnu build vm) - (srfi srfi-19) - (guix build store-copy)) - - (let* ((inputs '#$(append (list tar) - (if register-closures? - (list guix) - '()))) - ;; This initializer requires elevated privileges that are - ;; not normally available in the build environment (e.g., - ;; it needs to create device nodes). In order to obtain - ;; such privileges, we run it as root in a VM. - (initialize (root-partition-initializer - #:closures '(#$graph) - #:register-closures? #$register-closures? - #:system-directory #$os-drv - ;; De-duplication would fail due to - ;; cross-device link errors, so don't do it. - #:deduplicate? #f)) - ;; Even as root in a VM, the initializer would fail due to - ;; lack of privileges if we use a root-directory that is on - ;; a file system that is shared with the host (e.g., /tmp). - (root-directory "/guixsd-system-root")) - (set-path-environment-variable "PATH" '("bin" "sbin") inputs) - (mkdir root-directory) - (initialize root-directory) - (build-docker-image - (string-append "/xchg/" #$name) ;; The output file. - (cons* root-directory - (call-with-input-file (string-append "/xchg/" #$graph) - read-reference-graph)) - #$os-drv - #:compressor '(#+(file-append gzip "/bin/gzip") "-9n") - #:creation-time (make-time time-utc 0 1) - #:transformations `((,root-directory -> ""))))))) + (with-extensions (list guile-json) ;for (guix docker) + (with-imported-modules `(,@(source-module-closure + '((guix docker) + (guix build utils) + (gnu build vm)) + #:select? not-config?) + (guix build store-copy) + ((guix config) => ,config)) + #~(begin + (use-modules (guix docker) + (guix build utils) + (gnu build vm) + (srfi srfi-19) + (guix build store-copy)) + + (let* ((inputs '#$(append (list tar) + (if register-closures? + (list guix) + '()))) + ;; This initializer requires elevated privileges that are + ;; not normally available in the build environment (e.g., + ;; it needs to create device nodes). In order to obtain + ;; such privileges, we run it as root in a VM. + (initialize (root-partition-initializer + #:closures '(#$graph) + #:register-closures? #$register-closures? + #:system-directory #$os-drv + ;; De-duplication would fail due to + ;; cross-device link errors, so don't do it. + #:deduplicate? #f)) + ;; Even as root in a VM, the initializer would fail due to + ;; lack of privileges if we use a root-directory that is on + ;; a file system that is shared with the host (e.g., /tmp). + (root-directory "/guixsd-system-root")) + (set-path-environment-variable "PATH" '("bin" "sbin") inputs) + (mkdir root-directory) + (initialize root-directory) + (build-docker-image + (string-append "/xchg/" #$name) ;; The output file. + (cons* root-directory + (call-with-input-file (string-append "/xchg/" #$graph) + read-reference-graph)) + #$os-drv + #:compressor '(#+(file-append gzip "/bin/gzip") "-9n") + #:creation-time (make-time time-utc 0 1) + #:transformations `((,root-directory -> "")))))))) (expression->derivation-in-linux-vm name ;; The VM's initrd Guile doesn't support dlopen, but our "build" gexp @@ -571,7 +569,6 @@ to USB sticks meant to be read-only." (file-systems (cons (file-system (mount-point "/") (device root-uuid) - (title 'uuid) (type file-system-type)) file-systems-to-keep))))) @@ -636,7 +633,6 @@ of the GNU system as described by OS." (file-systems (cons (file-system (mount-point "/") (device root-uuid) - (title 'uuid) (type file-system-type)) file-systems-to-keep))))) (mlet* %store-monad @@ -693,13 +689,12 @@ environment with the store shared with the host. MAPPINGS is a list of (source (file-system-device fs))) (or (string=? target (%store-prefix)) (string=? target "/") - (and (eq? 'device (file-system-title fs)) + (and (string? source) (string-prefix? "/dev/" source)) ;; Labels and UUIDs are necessarily invalid in the VM. (and (file-system-mount? fs) - (or (eq? 'label (file-system-title fs)) - (eq? 'uuid (file-system-title fs)) + (or (file-system-label? source) (uuid? source)))))) (operating-system-file-systems os))) @@ -752,6 +747,10 @@ with the host. When FULL-BOOT? is true, return an image that does a complete boot sequence, bootloaded included; thus, make a disk image that contains everything the bootloader refers to: OS kernel, initrd, bootloader data, etc." + (define root-uuid + ;; Use a fixed UUID to improve determinism. + (operating-system-uuid os 'dce)) + (mlet* %store-monad ((os-drv (operating-system-derivation os)) (bootcfg (operating-system-bootcfg os))) ;; XXX: When FULL-BOOT? is true, we end up creating an image that contains @@ -763,6 +762,7 @@ bootloader refers to: OS kernel, initrd, bootloader data, etc." #:bootloader (bootloader-configuration-bootloader (operating-system-bootloader os)) #:disk-image-size disk-image-size + #:file-system-uuid root-uuid #:inputs (if full-boot? `(("bootcfg" ,bootcfg)) '()) diff --git a/gnu/tests.scm b/gnu/tests.scm index 2aef370af5..5d4a4f8062 100644 --- a/gnu/tests.scm +++ b/gnu/tests.scm @@ -208,8 +208,7 @@ the system under test." (bootloader grub-bootloader) (target "/dev/sdX"))) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) diff --git a/gnu/tests/dict.scm b/gnu/tests/dict.scm index b9c741e3e0..4431e37dc1 100644 --- a/gnu/tests/dict.scm +++ b/gnu/tests/dict.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -96,22 +96,7 @@ ;; Wait until dicod is actually listening. ;; TODO: Use a PID file instead. (test-assert "connect inside" - (marionette-eval - '(begin - (use-modules (ice-9 rdelim)) - (let ((sock (socket PF_INET SOCK_STREAM 0))) - (let loop ((i 0)) - (pk 'try i) - (catch 'system-error - (lambda () - (connect sock AF_INET INADDR_LOOPBACK 2628)) - (lambda args - (pk 'connection-error args) - (when (< i 20) - (sleep 1) - (loop (+ 1 i)))))) - (read-line sock 'concat))) - marionette)) + (wait-for-tcp-port 2628 marionette)) (test-assert "connect" (let ((addr (make-socket-address AF_INET INADDR_LOOPBACK 8000))) diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index e3bb1b46af..4764ffffde 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -66,8 +66,7 @@ (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) @@ -105,8 +104,7 @@ (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) @@ -351,8 +349,7 @@ per %test-installed-os, this test is expensive in terms of CPU and storage.") (target "/dev/vda"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) %base-file-systems)) @@ -428,13 +425,11 @@ reboot\n") (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons* (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4")) (file-system (device "none") - (title 'device) (type "tmpfs") (mount-point "/home") (type "tmpfs")) @@ -488,13 +483,11 @@ partition. In particular, home directories must be correctly created (see (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons* (file-system - (device "root-fs") - (title 'label) + (device (file-system-label "root-fs")) (mount-point "/") (type "ext4")) (file-system - (device "store-fs") - (title 'label) + (device (file-system-label "store-fs")) (mount-point "/gnu") (type "ext4")) %base-file-systems)) @@ -574,8 +567,7 @@ where /gnu lives on a separate partition.") (target "/dev/md0") (type raid-device-mapping)))) (file-systems (cons (file-system - (device "root-fs") - (title 'label) + (device (file-system-label "root-fs")) (mount-point "/") (type "ext4") (dependencies mapped-devices)) @@ -658,7 +650,6 @@ by 'mdadm'.") (type luks-device-mapping)))) (file-systems (cons (file-system (device "/dev/mapper/the-root-device") - (title 'device) (mount-point "/") (type "ext4")) %base-file-systems)) @@ -779,8 +770,7 @@ build (current-guix) and then store a couple of full system images.") (target "/dev/vdb"))) (kernel-arguments '("console=ttyS0")) (file-systems (cons (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "btrfs")) %base-file-systems)) diff --git a/gnu/tests/ssh.scm b/gnu/tests/ssh.scm index 6abc6c2501..9247a43e6d 100644 --- a/gnu/tests/ssh.scm +++ b/gnu/tests/ssh.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com> ;;; @@ -49,156 +49,150 @@ When SFTP? is true, run an SFTP server test." (define test (with-imported-modules '((gnu build marionette)) - #~(begin - (eval-when (expand load eval) - ;; Prepare to use Guile-SSH. - (set! %load-path - (cons (string-append #+guile-ssh "/share/guile/site/" - (effective-version)) - %load-path))) - - (use-modules (gnu build marionette) - (srfi srfi-26) - (srfi srfi-64) - (ice-9 match) - (ssh session) - (ssh auth) - (ssh channel) - (ssh sftp)) - - (define marionette - ;; Enable TCP forwarding of the guest's port 22. - (make-marionette (list #$vm))) - - (define (make-session-for-test) - "Make a session with predefined parameters for a test." - (make-session #:user "root" - #:port 2222 - #:host "localhost" - #:log-verbosity 'protocol)) - - (define (call-with-connected-session proc) - "Call the one-argument procedure PROC with a freshly created and + (with-extensions (list guile-ssh) + #~(begin + (use-modules (gnu build marionette) + (srfi srfi-26) + (srfi srfi-64) + (ice-9 match) + (ssh session) + (ssh auth) + (ssh channel) + (ssh sftp)) + + (define marionette + ;; Enable TCP forwarding of the guest's port 22. + (make-marionette (list #$vm))) + + (define (make-session-for-test) + "Make a session with predefined parameters for a test." + (make-session #:user "root" + #:port 2222 + #:host "localhost" + #:log-verbosity 'protocol)) + + (define (call-with-connected-session proc) + "Call the one-argument procedure PROC with a freshly created and connected SSH session object, return the result of the procedure call. The session is disconnected when the PROC is finished." - (let ((session (make-session-for-test))) - (dynamic-wind - (lambda () - (let ((result (connect! session))) - (unless (equal? result 'ok) - (error "Could not connect to a server" - session result)))) - (lambda () (proc session)) - (lambda () (disconnect! session))))) - - (define (call-with-connected-session/auth proc) - "Make an authenticated session. We should be able to connect as + (let ((session (make-session-for-test))) + (dynamic-wind + (lambda () + (let ((result (connect! session))) + (unless (equal? result 'ok) + (error "Could not connect to a server" + session result)))) + (lambda () (proc session)) + (lambda () (disconnect! session))))) + + (define (call-with-connected-session/auth proc) + "Make an authenticated session. We should be able to connect as root with an empty password." - (call-with-connected-session - (lambda (session) - ;; Try the simple authentication methods. Dropbear requires - ;; 'none' when there are no passwords, whereas OpenSSH accepts - ;; 'password' with an empty password. - (let loop ((methods (list (cut userauth-password! <> "") - (cut userauth-none! <>)))) - (match methods - (() - (error "all the authentication methods failed")) - ((auth rest ...) - (match (pk 'auth (auth session)) - ('success - (proc session)) - ('denied - (loop rest))))))))) - - (mkdir #$output) - (chdir #$output) - - (test-begin "ssh-daemon") - - ;; Wait for sshd to be up and running. - (test-eq "service running" - 'running! - (marionette-eval - '(begin - (use-modules (gnu services herd)) - (start-service 'ssh-daemon) - 'running!) - marionette)) - - ;; Check sshd's PID file. - (test-equal "sshd PID" - (wait-for-file #$pid-file marionette) - (marionette-eval - '(begin - (use-modules (gnu services herd) - (srfi srfi-1)) - - (live-service-running - (find (lambda (live) - (memq 'ssh-daemon - (live-service-provision live))) - (current-services)))) - marionette)) - - ;; Connect to the guest over SSH. Make sure we can run a shell - ;; command there. - (test-equal "shell command" - 'hello - (call-with-connected-session/auth - (lambda (session) - ;; FIXME: 'get-server-public-key' segfaults. - ;; (get-server-public-key session) - (let ((channel (make-channel session))) - (channel-open-session channel) - (channel-request-exec channel "echo hello > /root/witness") - (and (zero? (channel-get-exit-status channel)) - (wait-for-file "/root/witness" marionette)))))) - - ;; Connect to the guest over SFTP. Make sure we can write and - ;; read a file there. - (unless #$sftp? - (test-skip 1)) - (test-equal "SFTP file writing and reading" - 'hello - (call-with-connected-session/auth - (lambda (session) - (let ((sftp-session (make-sftp-session session)) - (witness "/root/sftp-witness")) - (call-with-remote-output-file sftp-session witness - (cut display "hello" <>)) - (call-with-remote-input-file sftp-session witness - read))))) - - ;; Connect to the guest over SSH. Make sure we can run commands - ;; from the system profile. - (test-equal "run executables from system profile" - #t - (call-with-connected-session/auth - (lambda (session) - (let ((channel (make-channel session))) - (channel-open-session channel) - (channel-request-exec - channel - (string-append - "mkdir -p /root/.guix-profile/bin && " - "touch /root/.guix-profile/bin/path-witness && " - "chmod 755 /root/.guix-profile/bin/path-witness")) - (zero? (channel-get-exit-status channel)))))) - - ;; Connect to the guest over SSH. Make sure we can run commands - ;; from the user profile. - (test-equal "run executable from user profile" - #t - (call-with-connected-session/auth - (lambda (session) - (let ((channel (make-channel session))) - (channel-open-session channel) - (channel-request-exec channel "path-witness") - (zero? (channel-get-exit-status channel)))))) - - (test-end) - (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + (call-with-connected-session + (lambda (session) + ;; Try the simple authentication methods. Dropbear requires + ;; 'none' when there are no passwords, whereas OpenSSH accepts + ;; 'password' with an empty password. + (let loop ((methods (list (cut userauth-password! <> "") + (cut userauth-none! <>)))) + (match methods + (() + (error "all the authentication methods failed")) + ((auth rest ...) + (match (pk 'auth (auth session)) + ('success + (proc session)) + ('denied + (loop rest))))))))) + + (mkdir #$output) + (chdir #$output) + + (test-begin "ssh-daemon") + + ;; Wait for sshd to be up and running. + (test-eq "service running" + 'running! + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (start-service 'ssh-daemon) + 'running!) + marionette)) + + ;; Check sshd's PID file. + (test-equal "sshd PID" + (wait-for-file #$pid-file marionette) + (marionette-eval + '(begin + (use-modules (gnu services herd) + (srfi srfi-1)) + + (live-service-running + (find (lambda (live) + (memq 'ssh-daemon + (live-service-provision live))) + (current-services)))) + marionette)) + + ;; Connect to the guest over SSH. Make sure we can run a shell + ;; command there. + (test-equal "shell command" + 'hello + (call-with-connected-session/auth + (lambda (session) + ;; FIXME: 'get-server-public-key' segfaults. + ;; (get-server-public-key session) + (let ((channel (make-channel session))) + (channel-open-session channel) + (channel-request-exec channel "echo hello > /root/witness") + (and (zero? (channel-get-exit-status channel)) + (wait-for-file "/root/witness" marionette)))))) + + ;; Connect to the guest over SFTP. Make sure we can write and + ;; read a file there. + (unless #$sftp? + (test-skip 1)) + (test-equal "SFTP file writing and reading" + 'hello + (call-with-connected-session/auth + (lambda (session) + (let ((sftp-session (make-sftp-session session)) + (witness "/root/sftp-witness")) + (call-with-remote-output-file sftp-session witness + (cut display "hello" <>)) + (call-with-remote-input-file sftp-session witness + read))))) + + ;; Connect to the guest over SSH. Make sure we can run commands + ;; from the system profile. + (test-equal "run executables from system profile" + #t + (call-with-connected-session/auth + (lambda (session) + (let ((channel (make-channel session))) + (channel-open-session channel) + (channel-request-exec + channel + (string-append + "mkdir -p /root/.guix-profile/bin && " + "touch /root/.guix-profile/bin/path-witness && " + "chmod 755 /root/.guix-profile/bin/path-witness")) + (zero? (channel-get-exit-status channel)))))) + + ;; Connect to the guest over SSH. Make sure we can run commands + ;; from the user profile. + (test-equal "run executable from user profile" + #t + (call-with-connected-session/auth + (lambda (session) + (let ((channel (make-channel session))) + (channel-open-session channel) + (channel-request-exec channel "path-witness") + (zero? (channel-get-exit-status channel)))))) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0)))))) (gexp->derivation name test)) diff --git a/gnu/tests/web.scm b/gnu/tests/web.scm index 1912f8f79d..a6bf6efcfe 100644 --- a/gnu/tests/web.scm +++ b/gnu/tests/web.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> +;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,7 +32,8 @@ #:use-module (guix store) #:export (%test-httpd %test-nginx - %test-php-fpm)) + %test-php-fpm + %test-hpcguix-web)) (define %index.html-contents ;; Contents of the /index.html file. @@ -281,3 +283,81 @@ HTTP-PORT, along with php-fpm." (name "php-fpm") (description "Test PHP-FPM through nginx.") (value (run-php-fpm-test)))) + + +;;; +;;; hpcguix-web +;;; + +(define* (run-hpcguix-web-server-test name test-os) + "Run tests in %HPCGUIX-WEB-OS, which has hpcguix-web running." + (define os + (marionette-operating-system + test-os + #:imported-modules '((gnu services herd) + (guix combinators)))) + + (define vm + (virtual-machine + (operating-system os) + (port-forwardings '((8080 . 5000))))) + + (define test + (with-imported-modules '((gnu build marionette)) + #~(begin + (use-modules (srfi srfi-11) (srfi srfi-64) + (gnu build marionette) + (web uri) + (web client) + (web response)) + + (define marionette + (make-marionette (list #$vm))) + + (mkdir #$output) + (chdir #$output) + + (test-begin #$name) + + (test-assert "hpcguix-web running" + (marionette-eval + '(begin + (use-modules (gnu services herd)) + (match (start-service 'hpcguix-web) + (#f #f) + (('service response-parts ...) + (match (assq-ref response-parts 'running) + ((pid) (number? pid)))))) + marionette)) + + (test-equal "http-get" + 200 + (begin + (wait-for-tcp-port 5000 marionette) + (let-values (((response text) + (http-get "http://localhost:8080"))) + (response-code response)))) + + (test-end) + (exit (= (test-runner-fail-count (test-runner-current)) 0))))) + + (gexp->derivation (string-append name "-test") test)) + +(define %hpcguix-web-specs + ;; Server config gexp. + #~(define site-config + (hpcweb-configuration + (title-prefix "[TEST] HPCGUIX-WEB")))) + +(define %hpcguix-web-os + (simple-operating-system + (dhcp-client-service) + (service hpcguix-web-service-type + (hpcguix-web-configuration + (specs %hpcguix-web-specs))))) + +(define %test-hpcguix-web + (system-test + (name "hpcguix-web") + (description "Connect to a running hpcguix-web server.") + (value (run-hpcguix-web-server-test name %hpcguix-web-os)))) diff --git a/guix/build-system/android-ndk.scm b/guix/build-system/android-ndk.scm new file mode 100644 index 0000000000..dbfa626a19 --- /dev/null +++ b/guix/build-system/android-ndk.scm @@ -0,0 +1,127 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (guix build-system android-ndk) + #:use-module (guix search-paths) + #:use-module (guix store) + #:use-module (guix utils) + #:use-module (guix derivations) + #:use-module (guix packages) + #:use-module (guix build-system) + #:use-module (guix build-system gnu) + #:use-module (ice-9 match) + #:use-module (srfi srfi-26) + #:export (android-ndk-build-system)) + +(define %android-ndk-build-system-modules + ;; Build-side modules imported by default. + `((guix build android-ndk-build-system) + (guix build syscalls) + ,@%gnu-build-system-modules)) + +(define* (android-ndk-build store name inputs + #:key + (tests? #t) + (test-target #f) + (phases '(@ (guix build android-ndk-build-system) + %standard-phases)) + (outputs '("out")) + (make-flags ''()) + (search-paths '()) + (system (%current-system)) + (guile #f) + (imported-modules %android-ndk-build-system-modules) + (modules '((guix build android-ndk-build-system) + (guix build utils)))) + "Build SOURCE using Android NDK, and with INPUTS." + (define builder + `(begin + (use-modules ,@modules) + (android-ndk-build #:name ,name + #:source ,(match (assoc-ref inputs "source") + (((? derivation? source)) + (derivation->output-path source)) + ((source) + source) + (source + source)) + #:system ,system + #:test-target ,test-target + #:tests? ,tests? + #:phases ,phases + #:make-flags (cons* "-f" + ,(string-append + (derivation->output-path + (car (assoc-ref inputs "android-build"))) + "/share/android/build/core/main.mk") + ,make-flags) + #:outputs %outputs + #:search-paths ',(map search-path-specification->sexp + search-paths) + #:inputs %build-inputs))) + + (define guile-for-build + (match guile + ((? package?) + (package-derivation store guile system #:graft? #f)) + (#f ; the default + (let* ((distro (resolve-interface '(gnu packages commencement))) + (guile (module-ref distro 'guile-final))) + (package-derivation store guile system #:graft? #f))))) + + (build-expression->derivation store name builder + #:inputs inputs + #:system system + #:modules imported-modules + #:outputs outputs + #:guile-for-build guile-for-build)) + +(define* (lower name + #:key source inputs native-inputs outputs system target + #:allow-other-keys + #:rest arguments) + "Return a bag for NAME." + + (define private-keywords + '(#:source #:target #:inputs #:native-inputs #:outputs)) + + (and (not target) ;; TODO: support cross-compilation + (bag + (name name) + (system system) + (target target) + (host-inputs `(,@(if source + `(("source" ,source)) + '()) + ,@inputs + + ;; Keep the standard inputs of 'gnu-build-system' + ,@(standard-packages))) + (build-inputs `(("android-build" ,(module-ref (resolve-interface '(gnu packages android)) 'android-make-stub)) + ("android-googletest" ,(module-ref (resolve-interface '(gnu packages android)) 'android-googletest)) + ,@native-inputs)) + (outputs outputs) + (build android-ndk-build) + (arguments (strip-keyword-arguments private-keywords arguments))))) + +(define android-ndk-build-system + (build-system + (name 'android-ndk) + (description + "Android NDK build system, to build Android NDK packages") + (lower lower))) diff --git a/guix/build-system/r.scm b/guix/build-system/r.scm index 6bdb7061eb..d20f66e1a9 100644 --- a/guix/build-system/r.scm +++ b/guix/build-system/r.scm @@ -53,7 +53,7 @@ release corresponding to NAME and VERSION." (list (string-append "https://bioconductor.org/packages/release/bioc/src/contrib/" name "_" version ".tar.gz") ;; TODO: use %bioconductor-version from (guix import cran) - (string-append "https://bioconductor.org/packages/3.6/bioc/src/contrib/Archive/" + (string-append "https://bioconductor.org/packages/3.7/bioc/src/contrib/Archive/" name "_" version ".tar.gz"))) (define %r-build-system-modules diff --git a/guix/build/android-ndk-build-system.scm b/guix/build/android-ndk-build-system.scm new file mode 100644 index 0000000000..3c8f726d1d --- /dev/null +++ b/guix/build/android-ndk-build-system.scm @@ -0,0 +1,88 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (guix build android-ndk-build-system) + #:use-module ((guix build gnu-build-system) #:prefix gnu:) + #:use-module (guix build syscalls) + #:use-module (guix build utils) + #:use-module (ice-9 popen) + #:use-module (ice-9 rdelim) + #:use-module (ice-9 ftw) + #:use-module (ice-9 format) + #:use-module (ice-9 match) + #:use-module (rnrs io ports) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-26) + #:export (%standard-phases + android-ndk-build)) + +;; Commentary: +;; +;; Builder-side code of the Android NDK build system. +;; +;; Code: + +(define* (configure #:key inputs outputs #:allow-other-keys) + (let ((library-directories (filter-map (match-lambda + ((name . path) + (if (eq? 'directory (stat:type (stat path))) + path + #f))) + inputs))) + (setenv "CC" "gcc") + (setenv "CXX" "g++") + (setenv "CPPFLAGS" + (string-join + (map (cut string-append "-I " <> "/include") library-directories) + " ")) + (setenv "LDFLAGS" + (string-append "-L . " + (string-join + (map (lambda (x) + (string-append "-L " x "/lib" " -Wl,-rpath=" x "/lib")) + library-directories) + " "))) + #t)) + +(define* (install #:key inputs outputs (make-flags '()) #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (apply invoke "make" "install" + (string-append "prefix=" out) + make-flags) + #t)) + +(define* (check #:key target inputs outputs (tests? (not target)) (make-flags '()) #:allow-other-keys) + (if tests? + (begin + (apply invoke "make" "check" make-flags) + (when (and (file-exists? "tests") tests?) + (with-directory-excursion "tests" + (apply invoke "make" "check" make-flags)))) + (format #t "test suite not run~%")) + #t) + +(define %standard-phases + (modify-phases gnu:%standard-phases + (replace 'configure configure) + (replace 'install install) + (replace 'check check))) + +(define* (android-ndk-build #:key inputs (phases %standard-phases) + #:allow-other-keys #:rest args) + "Build the given Android NDK package, applying all of PHASES in order." + (apply gnu:gnu-build #:inputs inputs #:phases phases args)) diff --git a/guix/build/ant-build-system.scm b/guix/build/ant-build-system.scm index a6da530dab..d081a2b313 100644 --- a/guix/build/ant-build-system.scm +++ b/guix/build/ant-build-system.scm @@ -166,12 +166,26 @@ to the default GNU unpack strategy." "/share/java") source-dir test-dir main-class test-include test-exclude)) (setenv "JAVA_HOME" (assoc-ref inputs "jdk")) - (setenv "CLASSPATH" (generate-classpath inputs))) + (setenv "CLASSPATH" (generate-classpath inputs)) + #t) (define* (build #:key (make-flags '()) (build-target "jar") #:allow-other-keys) (zero? (apply system* `("ant" ,build-target ,@make-flags)))) +(define* (generate-jar-indices #:key outputs #:allow-other-keys) + "Generate file \"META-INF/INDEX.LIST\". This file does not use word wraps +and is preferred over \"META-INF/MAINFEST.MF\", which does use word wraps, +by Java when resolving dependencies. So we make sure to create it so that +grafting works - and so that the garbage collector doesn't collect +dependencies of this jar file." + (define (generate-index jar) + (invoke "jar" "-i" jar)) + (every (match-lambda + ((output . directory) + (every generate-index (find-files directory "\\.jar$")))) + outputs)) + (define* (strip-jar-timestamps #:key outputs #:allow-other-keys) "Unpack all jar archives, reset the timestamp of all contained files, and @@ -233,7 +247,9 @@ repack them. This is necessary to ensure that archives are reproducible." (replace 'build build) (replace 'check check) (replace 'install install) - (add-after 'install 'strip-jar-timestamps strip-jar-timestamps))) + (add-after 'install 'generate-jar-indices generate-jar-indices) + (add-after 'generate-jar-indices 'strip-jar-timestamps + strip-jar-timestamps))) (define* (ant-build #:key inputs (phases %standard-phases) #:allow-other-keys #:rest args) diff --git a/guix/build/compile.scm b/guix/build/compile.scm index 1bd8c60fe5..7b6e31107c 100644 --- a/guix/build/compile.scm +++ b/guix/build/compile.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -120,6 +120,28 @@ front." (lambda () (set! path initial-value))))) +(define (call/exit-on-exception thunk) + "Evaluate THUNK and exit right away if an exception is thrown." + (catch #t + thunk + (const #f) + (lambda (key . args) + (false-if-exception + ;; Duplicate stderr to avoid thread-safety issues. + (let* ((port (duplicate-port (current-error-port) "w0")) + (stack (make-stack #t)) + (depth (stack-length stack)) + (frame (and (> depth 1) (stack-ref stack 1)))) + (false-if-exception (display-backtrace stack port)) + (print-exception port frame key args))) + + ;; Don't go any further. + (primitive-exit 1)))) + +(define-syntax-rule (exit-on-exception exp ...) + "Evaluate EXP and exit if an exception is thrown." + (call/exit-on-exception (lambda () exp ...))) + (define* (compile-files source-directory build-directory files #:key (host %host-type) @@ -139,15 +161,18 @@ files are for HOST, a GNU triplet such as \"x86_64-linux-gnu\"." (define (build file) (with-mutex progress-lock (report-compilation file total completed)) - (with-fluids ((*current-warning-prefix* "")) - (with-target host - (lambda () - (let ((relative (relative-file source-directory file))) - (compile-file file - #:output-file (string-append build-directory "/" - (scm->go relative)) - #:opts (append warning-options - (optimization-options relative))))))) + + ;; Exit as soon as something goes wrong. + (exit-on-exception + (with-fluids ((*current-warning-prefix* "")) + (with-target host + (lambda () + (let ((relative (relative-file source-directory file))) + (compile-file file + #:output-file (string-append build-directory "/" + (scm->go relative)) + #:opts (append warning-options + (optimization-options relative)))))))) (with-mutex progress-lock (set! completed (+ 1 completed)))) diff --git a/guix/build/emacs-utils.scm b/guix/build/emacs-utils.scm index c1b00c7890..fdacd30dd6 100644 --- a/guix/build/emacs-utils.scm +++ b/guix/build/emacs-utils.scm @@ -60,7 +60,9 @@ (define* (emacs-byte-compile-directory dir) "Byte compile all files in DIR and its sub-directories." - (let ((expr `(byte-recompile-directory (file-name-as-directory ,dir) 0))) + (let ((expr `(progn + (setq byte-compile-debug t) ; for proper exit status + (byte-recompile-directory (file-name-as-directory ,dir) 0 1)))) (emacs-batch-eval expr))) (define-syntax emacs-substitute-sexps diff --git a/guix/build/profiles.scm b/guix/build/profiles.scm index b4160fba1b..819688a913 100644 --- a/guix/build/profiles.scm +++ b/guix/build/profiles.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +24,7 @@ #:use-module (ice-9 ftw) #:use-module (ice-9 match) #:use-module (ice-9 pretty-print) + #:re-export (symlink-relative) ;for convenience #:export (ensure-writable-directory build-profile)) @@ -129,12 +130,15 @@ instead make DIRECTORY a \"real\" directory containing symlinks." (apply throw args)))))) (define* (build-profile output inputs - #:key manifest search-paths) - "Build a user profile from INPUTS in directory OUTPUT. Write MANIFEST, an -sexp, to OUTPUT/manifest. Create OUTPUT/etc/profile with Bash definitions for --all the variables listed in SEARCH-PATHS." + #:key manifest search-paths + (symlink symlink)) + "Build a user profile from INPUTS in directory OUTPUT, using SYMLINK to +create symlinks. Write MANIFEST, an sexp, to OUTPUT/manifest. Create +OUTPUT/etc/profile with Bash definitions for -all the variables listed in +SEARCH-PATHS." ;; Make the symlinks. (union-build output inputs + #:symlink symlink #:log-port (%make-void-port "w")) ;; Store meta-data. diff --git a/guix/build/r-build-system.scm b/guix/build/r-build-system.scm index 5e18939d22..4d8ac5b479 100644 --- a/guix/build/r-build-system.scm +++ b/guix/build/r-build-system.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -24,6 +24,7 @@ #:use-module (ice-9 popen) #:use-module (srfi srfi-1) #:use-module (srfi srfi-26) + #:use-module (srfi srfi-35) #:export (%standard-phases r-build)) @@ -34,12 +35,19 @@ ;; Code: (define (invoke-r command params) - (zero? (apply system* "R" "CMD" command params))) + (apply invoke "R" "CMD" command params)) (define (pipe-to-r command params) (let ((port (apply open-pipe* OPEN_WRITE "R" params))) (display command port) - (zero? (status:exit-val (close-pipe port))))) + (let ((code (status:exit-val (close-pipe port)))) + (unless (zero? code) + (raise (condition ((@@ (guix build utils) &invoke-error) + (program "R") + (arguments (string-append params " " command)) + (exit-status (status:exit-val code)) + (term-signal (status:term-sig code)) + (stop-signal (status:stop-sig code))))))))) (define (generate-site-path inputs) (string-join (map (match-lambda @@ -68,13 +76,12 @@ (pkg-name (car (scandir libdir (negate (cut member <> '("." "..")))))) (testdir (string-append libdir pkg-name "/" test-target)) (site-path (string-append libdir ":" (generate-site-path inputs)))) - (if (and tests? (file-exists? testdir)) - (begin - (setenv "R_LIBS_SITE" site-path) - (pipe-to-r (string-append "tools::testInstalledPackage(\"" pkg-name "\", " - "lib.loc = \"" libdir "\")") - '("--no-save" "--slave"))) - #t))) + (when (and tests? (file-exists? testdir)) + (setenv "R_LIBS_SITE" site-path) + (pipe-to-r (string-append "tools::testInstalledPackage(\"" pkg-name "\", " + "lib.loc = \"" libdir "\")") + '("--no-save" "--slave"))) + #t)) (define* (install #:key outputs inputs (configure-flags '()) #:allow-other-keys) diff --git a/guix/build/union.scm b/guix/build/union.scm index 1179f1234b..fff795c4d3 100644 --- a/guix/build/union.scm +++ b/guix/build/union.scm @@ -27,7 +27,10 @@ #:use-module (rnrs io ports) #:export (union-build - warn-about-collision)) + warn-about-collision + + relative-file-name + symlink-relative)) ;;; Commentary: ;;; @@ -78,14 +81,23 @@ identical, #f otherwise." (or (eof-object? n1) (loop)))))))))))))) +(define %harmless-collisions + ;; This is a list of files that are known to collide, but for which emitting + ;; a warning doesn't make sense. For example, "icon-theme.cache" is + ;; regenerated by a profile hook which shadows the file provided by + ;; individual packages, and "gschemas.compiled" is made available to + ;; applications via 'glib-or-gtk-build-system'. + '("icon-theme.cache" "gschemas.compiled")) + (define (warn-about-collision files) "Handle the collision among FILES by emitting a warning and choosing the first one of THEM." - (format (current-error-port) - "~%warning: collision encountered:~%~{ ~a~%~}" - files) (let ((file (first files))) - (format (current-error-port) "warning: choosing ~a~%" file) + (unless (member (basename file) %harmless-collisions) + (format (current-error-port) + "~%warning: collision encountered:~%~{ ~a~%~}" + files) + (format (current-error-port) "warning: choosing ~a~%" file)) file)) (define* (union-build output inputs @@ -174,4 +186,47 @@ returns #f, skip the faulty file altogether." (union-of-directories output (delete-duplicates inputs))) + +;;; +;;; Relative symlinks. +;;; + +(define %not-slash + (char-set-complement (char-set #\/))) + +(define (relative-file-name reference file) + "Given REFERENCE and FILE, both of which are absolute file names, return the +file name of FILE relative to REFERENCE. + + (relative-file-name \"/gnu/store/foo\" \"/gnu/store/bin/bar\") + => \"../bin/bar\" + +Note that this is from a purely lexical standpoint; conversely, \"..\" is +*not* resolved lexically on POSIX in the presence of symlinks." + (if (and (string-prefix? "/" file) (string-prefix? "/" reference)) + (let loop ((reference (string-tokenize reference %not-slash)) + (file (string-tokenize file %not-slash))) + (define (finish) + (string-join (append (make-list (length reference) "..") file) + "/")) + + (match reference + (() + (finish)) + ((head . tail) + (match file + (() + (finish)) + ((head* . tail*) + (if (string=? head head*) + (loop tail tail*) + (finish))))))) + file)) + +(define (symlink-relative old new) + "Assuming both OLD and NEW are absolute file names, make NEW a symlink to +OLD, but using a relative file name." + (symlink (relative-file-name (dirname new) old) + new)) + ;;; union.scm ends here diff --git a/guix/config.scm.in b/guix/config.scm.in index 8f2c4abd8e..dfe5fe0dbf 100644 --- a/guix/config.scm.in +++ b/guix/config.scm.in @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017 Caleb Ristvedt <caleb.ristvedt@cune.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,6 +30,7 @@ %store-directory %state-directory + %store-database-directory %config-directory %guix-register-program @@ -80,6 +82,10 @@ (or (getenv "NIX_STATE_DIR") (string-append %localstatedir "/guix"))) +(define %store-database-directory + (or (and=> (getenv "NIX_DB_DIR") canonicalize-path) + (string-append %state-directory "/db"))) + (define %config-directory ;; This must match `GUIX_CONFIGURATION_DIRECTORY' as defined in `nix/local.mk'. (or (getenv "GUIX_CONFIGURATION_DIRECTORY") diff --git a/guix/docker.scm b/guix/docker.scm index a75534c33b..b869901599 100644 --- a/guix/docker.scm +++ b/guix/docker.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> -;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -26,6 +26,7 @@ delete-file-recursively with-directory-excursion invoke)) + #:use-module (json) ;guile-json #:use-module (srfi srfi-19) #:use-module (srfi srfi-26) #:use-module ((texinfo string-utils) @@ -34,9 +35,6 @@ #:use-module (ice-9 match) #:export (build-docker-image)) -;; Load Guile-JSON at run time to simplify the job of 'imported-modules' & co. -(module-use! (current-module) (resolve-interface '(json))) - ;; Generate a 256-bit identifier in hexadecimal encoding for the Docker image. (define docker-id (compose bytevector->base16-string sha256 string->utf8)) diff --git a/guix/download.scm b/guix/download.scm index 66d97eed44..988117885c 100644 --- a/guix/download.scm +++ b/guix/download.scm @@ -391,11 +391,6 @@ (plain-file "content-addressed-mirrors" (object->string %content-addressed-mirrors))) -(define (gnutls-package) - "Return the default GnuTLS package." - (let ((module (resolve-interface '(gnu packages tls)))) - (module-ref module 'gnutls))) - (define built-in-builders* (let ((cache (make-weak-key-hash-table))) (lambda () diff --git a/guix/gexp.scm b/guix/gexp.scm index 5ffe505be1..153b29bd42 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -33,6 +33,7 @@ #:export (gexp gexp? with-imported-modules + with-extensions gexp-input gexp-input? @@ -118,10 +119,11 @@ ;; "G expressions". (define-record-type <gexp> - (make-gexp references modules proc) + (make-gexp references modules extensions proc) gexp? (references gexp-references) ;list of <gexp-input> (modules gexp-self-modules) ;list of module names + (extensions gexp-self-extensions) ;list of lowerable things (proc gexp-proc)) ;procedure (define (write-gexp gexp port) @@ -492,19 +494,20 @@ whether this should be considered a \"native\" input or not." (set-record-type-printer! <gexp-output> write-gexp-output) -(define (gexp-modules gexp) - "Return the list of Guile module names GEXP relies on. If (gexp? GEXP) is -false, meaning that GEXP is a plain Scheme object, return the empty list." +(define (gexp-attribute gexp self-attribute) + "Recurse on GEXP and the expressions it refers to, summing the items +returned by SELF-ATTRIBUTE, a procedure that takes a gexp." (if (gexp? gexp) (delete-duplicates - (append (gexp-self-modules gexp) + (append (self-attribute gexp) (append-map (match-lambda (($ <gexp-input> (? gexp? exp)) - (gexp-modules exp)) + (gexp-attribute exp self-attribute)) (($ <gexp-input> (lst ...)) (append-map (lambda (item) (if (gexp? item) - (gexp-modules item) + (gexp-attribute item + self-attribute) '())) lst)) (_ @@ -512,6 +515,17 @@ false, meaning that GEXP is a plain Scheme object, return the empty list." (gexp-references gexp)))) '())) ;plain Scheme data type +(define (gexp-modules gexp) + "Return the list of Guile module names GEXP relies on. If (gexp? GEXP) is +false, meaning that GEXP is a plain Scheme object, return the empty list." + (gexp-attribute gexp gexp-self-modules)) + +(define (gexp-extensions gexp) + "Return the list of Guile extensions (packages) GEXP relies on. If (gexp? +GEXP) is false, meaning that GEXP is a plain Scheme object, return the empty +list." + (gexp-attribute gexp gexp-self-extensions)) + (define* (lower-inputs inputs #:key system target) "Turn any package from INPUTS into a derivation for SYSTEM; return the @@ -577,6 +591,7 @@ names and file names suitable for the #:allowed-references argument to (modules '()) (module-path %load-path) (guile-for-build (%guile-for-build)) + (effective-version "2.2") (graft? (%graft?)) references-graphs allowed-references disallowed-references @@ -595,6 +610,9 @@ names of Guile modules searched in MODULE-PATH to be copied in the store, compiled, and made available in the load path during the execution of EXP---e.g., '((guix build utils) (guix build gnu-build-system)). +EFFECTIVE-VERSION determines the string to use when adding extensions of +EXP (see 'with-extensions') to the search path---e.g., \"2.2\". + GRAFT? determines whether packages referred to by EXP should be grafted when applicable. @@ -630,7 +648,7 @@ The other arguments are as for 'derivation'." (define (graphs-file-names graphs) ;; Return a list of (FILE-NAME . STORE-PATH) pairs made from GRAPHS. (map (match-lambda - ;; TODO: Remove 'derivation?' special cases. + ;; TODO: Remove 'derivation?' special cases. ((file-name (? derivation? drv)) (cons file-name (derivation->output-path drv))) ((file-name (? derivation? drv) sub-drv) @@ -639,7 +657,13 @@ The other arguments are as for 'derivation'." (cons file-name thing))) graphs)) - (mlet* %store-monad (;; The following binding forces '%current-system' and + (define (extension-flags extension) + `("-L" ,(string-append (derivation->output-path extension) + "/share/guile/site/" effective-version) + "-C" ,(string-append (derivation->output-path extension) + "/lib/guile/" effective-version "/site-ccache"))) + + (mlet* %store-monad ( ;; The following binding forces '%current-system' and ;; '%current-target-system' to be looked up at >>= ;; time. (graft? (set-grafting graft?)) @@ -660,16 +684,24 @@ The other arguments are as for 'derivation'." #:target target)) (builder (text-file script-name (object->string sexp))) + (extensions -> (gexp-extensions exp)) + (exts (mapm %store-monad + (lambda (obj) + (lower-object obj system)) + extensions)) (modules (if (pair? %modules) (imported-modules %modules #:system system #:module-path module-path - #:guile guile-for-build) + #:guile guile-for-build + #:deprecation-warnings + deprecation-warnings) (return #f))) (compiled (if (pair? %modules) (compiled-modules %modules #:system system #:module-path module-path + #:extensions extensions #:guile guile-for-build #:deprecation-warnings deprecation-warnings) @@ -702,6 +734,7 @@ The other arguments are as for 'derivation'." `("-L" ,(derivation->output-path modules) "-C" ,(derivation->output-path compiled)) '()) + ,@(append-map extension-flags exts) ,builder) #:outputs outputs #:env-vars env-vars @@ -711,6 +744,7 @@ The other arguments are as for 'derivation'." ,@(if modules `((,modules) (,compiled) ,@inputs) inputs) + ,@(map list exts) ,@(match graphs (((_ . inputs) ...) inputs) (_ '()))) @@ -859,6 +893,17 @@ environment." (identifier-syntax modules))) body ...)) +(define-syntax-parameter current-imported-extensions + ;; Current list of extensions. + (identifier-syntax '())) + +(define-syntax-rule (with-extensions extensions body ...) + "Mark the gexps defined in BODY... as requiring EXTENSIONS in their +execution environment." + (syntax-parameterize ((current-imported-extensions + (identifier-syntax extensions))) + body ...)) + (define-syntax gexp (lambda (s) (define (collect-escapes exp) @@ -955,6 +1000,7 @@ environment." (refs (map escape->ref escapes))) #`(make-gexp (list #,@refs) current-imported-modules + current-imported-extensions (lambda #,formals #,sexp))))))) @@ -974,7 +1020,15 @@ environment." (define* (imported-files files #:key (name "file-import") (system (%current-system)) - (guile (%guile-for-build))) + (guile (%guile-for-build)) + + ;; XXX: The only reason we have + ;; #:deprecation-warnings is because (guix build + ;; utils), which we use here, relies on _IO*, which + ;; is deprecated in 2.2. On the next full-rebuild + ;; cycle, we should disable such warnings + ;; unconditionally. + (deprecation-warnings #f)) "Return a derivation that imports FILES into STORE. FILES must be a list of (FINAL-PATH . FILE) pairs. Each FILE is mapped to FINAL-PATH in the resulting store path. FILE can be either a file name, or a file-like object, @@ -1010,13 +1064,25 @@ as returned by 'local-file' for example." (gexp->derivation name build #:system system #:guile-for-build guile - #:local-build? #t))) + #:local-build? #t + + ;; TODO: On the next rebuild cycle, set to "no" + ;; unconditionally. + #:env-vars + (case deprecation-warnings + ((#f) + '(("GUILE_WARN_DEPRECATED" . "no"))) + ((detailed) + '(("GUILE_WARN_DEPRECATED" . "detailed"))) + (else + '()))))) (define* (imported-modules modules #:key (name "module-import") (system (%current-system)) (guile (%guile-for-build)) - (module-path %load-path)) + (module-path %load-path) + (deprecation-warnings #f)) "Return a derivation that contains the source files of MODULES, a list of module names such as `(ice-9 q)'. All of MODULES must be either names of modules to be found in the MODULE-PATH search path, or a module name followed @@ -1041,24 +1107,36 @@ last one is created from the given <scheme-file> object." (cons f (search-path* module-path f)))))) modules))) (imported-files files #:name name #:system system - #:guile guile))) + #:guile guile + #:deprecation-warnings deprecation-warnings))) (define* (compiled-modules modules #:key (name "module-import-compiled") (system (%current-system)) (guile (%guile-for-build)) (module-path %load-path) + (extensions '()) (deprecation-warnings #f)) "Return a derivation that builds a tree containing the `.go' files corresponding to MODULES. All the MODULES are built in a context where they can refer to each other." (define total (length modules)) + (define build-utils-hack? + ;; To avoid a full rebuild, we limit the fix below to the case where + ;; MODULE-PATH is different from %LOAD-PATH. This happens when building + ;; modules for 'compute-guix-derivation' upon 'guix pull'. TODO: Make + ;; this unconditional on the next rebuild cycle. + (and (member '(guix build utils) modules) + (not (equal? module-path %load-path)))) + (mlet %store-monad ((modules (imported-modules modules #:system system #:guile guile #:module-path - module-path))) + module-path + #:deprecation-warnings + deprecation-warnings))) (define build (gexp (begin @@ -1097,7 +1175,47 @@ they can refer to each other." (setvbuf (current-output-port) (cond-expand (guile-2.2 'line) (else _IOLBF))) + (ungexp-splicing + (if build-utils-hack? + (gexp ((define mkdir-p + ;; Capture 'mkdir-p'. + (@ (guix build utils) mkdir-p)))) + '())) + + ;; Add EXTENSIONS to the search path. + ;; TODO: Remove the outer 'ungexp-splicing' on the next rebuild cycle. + (ungexp-splicing + (if (null? extensions) + '() + (gexp ((set! %load-path + (append (map (lambda (extension) + (string-append extension + "/share/guile/site/" + (effective-version))) + '((ungexp-native-splicing extensions))) + %load-path)) + (set! %load-compiled-path + (append (map (lambda (extension) + (string-append extension "/lib/guile/" + (effective-version) + "/site-ccache")) + '((ungexp-native-splicing extensions))) + %load-compiled-path)))))) + (set! %load-path (cons (ungexp modules) %load-path)) + + (ungexp-splicing + (if build-utils-hack? + ;; Above we loaded our own (guix build utils) but now we may + ;; need to load a compile a different one. Thus, force a + ;; reload. + (gexp ((let ((utils (ungexp + (file-append modules + "/guix/build/utils.scm")))) + (when (file-exists? utils) + (load utils))))) + '())) + (mkdir (ungexp output)) (chdir (ungexp modules)) (process-directory "." (ungexp output) 0)))) @@ -1129,20 +1247,34 @@ they can refer to each other." (module-ref (resolve-interface '(gnu packages guile)) 'guile-2.2)) -(define* (load-path-expression modules #:optional (path %load-path)) +(define* (load-path-expression modules #:optional (path %load-path) + #:key (extensions '())) "Return as a monadic value a gexp that sets '%load-path' and '%load-compiled-path' to point to MODULES, a list of module names. MODULES are searched for in PATH." (mlet %store-monad ((modules (imported-modules modules #:module-path path)) (compiled (compiled-modules modules + #:extensions extensions #:module-path path))) (return (gexp (eval-when (expand load eval) (set! %load-path - (cons (ungexp modules) %load-path)) + (cons (ungexp modules) + (append (map (lambda (extension) + (string-append extension + "/share/guile/site/" + (effective-version))) + '((ungexp-native-splicing extensions))) + %load-path))) (set! %load-compiled-path (cons (ungexp compiled) - %load-compiled-path))))))) + (append (map (lambda (extension) + (string-append extension + "/lib/guile/" + (effective-version) + "/site-ccache")) + '((ungexp-native-splicing extensions))) + %load-compiled-path)))))))) (define* (gexp->script name exp #:key (guile (default-guile)) @@ -1151,7 +1283,9 @@ are searched for in PATH." imported modules in its search path. Look up EXP's modules in MODULE-PATH." (mlet %store-monad ((set-load-path (load-path-expression (gexp-modules exp) - module-path))) + module-path + #:extensions + (gexp-extensions exp)))) (gexp->derivation name (gexp (call-with-output-file (ungexp output) @@ -1180,35 +1314,38 @@ the resulting file. When SET-LOAD-PATH? is true, emit code in the resulting file to set '%load-path' and '%load-compiled-path' to honor EXP's imported modules. Lookup EXP's modules in MODULE-PATH." - (match (if set-load-path? (gexp-modules exp) '()) - (() ;zero modules - (gexp->derivation name - (gexp - (call-with-output-file (ungexp output) - (lambda (port) - (for-each (lambda (exp) - (write exp port)) - '(ungexp (if splice? - exp - (gexp ((ungexp exp))))))))) - #:local-build? #t - #:substitutable? #f)) - ((modules ...) - (mlet %store-monad ((set-load-path (load-path-expression modules - module-path))) - (gexp->derivation name - (gexp - (call-with-output-file (ungexp output) - (lambda (port) - (write '(ungexp set-load-path) port) - (for-each (lambda (exp) - (write exp port)) - '(ungexp (if splice? - exp - (gexp ((ungexp exp))))))))) - #:module-path module-path - #:local-build? #t - #:substitutable? #f))))) + (define modules (gexp-modules exp)) + (define extensions (gexp-extensions exp)) + + (if (or (not set-load-path?) + (and (null? modules) (null? extensions))) + (gexp->derivation name + (gexp + (call-with-output-file (ungexp output) + (lambda (port) + (for-each (lambda (exp) + (write exp port)) + '(ungexp (if splice? + exp + (gexp ((ungexp exp))))))))) + #:local-build? #t + #:substitutable? #f) + (mlet %store-monad ((set-load-path + (load-path-expression modules module-path + #:extensions extensions))) + (gexp->derivation name + (gexp + (call-with-output-file (ungexp output) + (lambda (port) + (write '(ungexp set-load-path) port) + (for-each (lambda (exp) + (write exp port)) + '(ungexp (if splice? + exp + (gexp ((ungexp exp))))))))) + #:module-path module-path + #:local-build? #t + #:substitutable? #f)))) (define* (text-file* name #:rest text) "Return as a monadic value a derivation that builds a text file containing diff --git a/guix/http-client.scm b/guix/http-client.scm index e8a2a23fc5..3b34d4ffba 100644 --- a/guix/http-client.scm +++ b/guix/http-client.scm @@ -114,7 +114,7 @@ Raise an '&http-get-error' condition if downloading fails." 308) ; permanent redirection (let ((uri (resolve-uri-reference (response-location resp) uri))) (close-port port) - (format #t (G_ "following redirection to `~a'...~%") + (format (current-error-port) (G_ "following redirection to `~a'...~%") (uri->string uri)) (loop uri))) (else diff --git a/guix/import/cran.scm b/guix/import/cran.scm index ec2b7e6029..49e5d2d358 100644 --- a/guix/import/cran.scm +++ b/guix/import/cran.scm @@ -128,9 +128,9 @@ package definition." (define %cran-url "http://cran.r-project.org/web/packages/") (define %bioconductor-url "https://bioconductor.org/packages/") -;; The latest Bioconductor release is 3.6. Bioconductor packages should be +;; The latest Bioconductor release is 3.7. Bioconductor packages should be ;; updated together. -(define %bioconductor-version "3.6") +(define %bioconductor-version "3.7") (define %bioconductor-packages-list-url (string-append "https://bioconductor.org/packages/" diff --git a/guix/man-db.scm b/guix/man-db.scm index 732aef1083..4cef874f8b 100644 --- a/guix/man-db.scm +++ b/guix/man-db.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,6 +19,7 @@ (define-module (guix man-db) #:use-module (guix zlib) #:use-module ((guix build utils) #:select (find-files)) + #:use-module (gdbm) ;gdbm-ffi #:use-module (srfi srfi-9) #:use-module (srfi srfi-26) #:use-module (ice-9 match) @@ -44,9 +45,6 @@ ;;; ;;; Code: -;; Load 'gdbm-ffi' at run time to simplify the job of 'imported-modules' & co. -(module-autoload! (current-module) '(gdbm) '(gdbm-open GDBM_WRCREAT)) - (define-record-type <mandb-entry> (mandb-entry file-name name section synopsis kind) mandb-entry? diff --git a/guix/packages.scm b/guix/packages.scm index ab4b6278d6..a6f9936d63 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -388,10 +388,11 @@ object." (define-condition-type &package-cross-build-system-error &package-error package-cross-build-system-error?) - -(define (package-full-name package) - "Return the full name of PACKAGE--i.e., `NAME-VERSION'." - (string-append (package-name package) "-" (package-version package))) +(define* (package-full-name package #:optional (delimiter "@")) + "Return the full name of PACKAGE--i.e., `NAME@VERSION'. By specifying +DELIMITER (a string), you can customize what will appear between the name and +the version. By default, DELIMITER is \"@\"." + (string-append (package-name package) delimiter (package-version package))) (define (%standard-patch-inputs) (let* ((canonical (module-ref (resolve-interface '(gnu packages base)) @@ -945,6 +946,10 @@ and return it." (($ <package> name version source build-system args inputs propagated-inputs native-inputs self-native-input? outputs) + ;; Even though we prefer to use "@" to separate the package + ;; name from the package version in various user-facing parts + ;; of Guix, checkStoreName (in nix/libstore/store-api.cc) + ;; prohibits the use of "@", so use "-" instead. (or (make-bag build-system (string-append name "-" version) #:system system #:target target diff --git a/guix/profiles.scm b/guix/profiles.scm index 95dc9746bd..9bddf88162 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -168,7 +168,7 @@ (version manifest-entry-version) ; string (output manifest-entry-output ; string (default "out")) - (item manifest-entry-item) ; package | store path + (item manifest-entry-item) ; package | file-like | store path (dependencies manifest-entry-dependencies ; <manifest-entry>* (default '())) (search-paths manifest-entry-search-paths ; search-path-specification* @@ -318,7 +318,7 @@ denoting a specific output of a package." (propagated-inputs #$(map entry->gexp deps)) (search-paths #$(map search-path-specification->sexp search-paths)))) - (($ <manifest-entry> name version output (? package? package) + (($ <manifest-entry> name version output package (deps ...) (search-paths ...)) #~(#$name #$version #$output (ungexp package (or output "out")) @@ -671,7 +671,13 @@ if not found." (return (find-among-inputs inputs))))) ((? string? item) (mlet %store-monad ((refs (references* item))) - (return (find-among-store-items refs))))))) + (return (find-among-store-items refs)))) + (item + ;; XXX: ITEM might be a 'computed-file' or anything like that, in + ;; which case we don't know what to do. The fix may be to check + ;; references once ITEM is compiled, as proposed at + ;; <https://bugs.gnu.org/29927>. + (return #f))))) (anym %store-monad entry-lookup-package (manifest-entries manifest))) @@ -837,6 +843,57 @@ MANIFEST. Single-file bundles are required by programs such as Git and Lynx." #:local-build? #t #:substitutable? #f)) +(define (glib-schemas manifest) + "Return a derivation that unions all schemas from manifest entries and +creates the Glib 'gschemas.compiled' file." + (define glib ; lazy reference + (module-ref (resolve-interface '(gnu packages glib)) 'glib)) + + (mlet %store-monad ((%glib (manifest-lookup-package manifest "glib")) + ;; XXX: Can't use glib-compile-schemas corresponding + ;; to the glib referenced by 'manifest'. Because + ;; '%glib' can be either a package or store path, and + ;; there's no way to get the "bin" output for the later. + (glib-compile-schemas + -> #~(string-append #+glib:bin + "/bin/glib-compile-schemas"))) + + (define build + (with-imported-modules '((guix build utils) + (guix build union) + (guix build profiles) + (guix search-paths) + (guix records)) + #~(begin + (use-modules (guix build utils) + (guix build union) + (guix build profiles) + (srfi srfi-26)) + + (let* ((destdir (string-append #$output "/share/glib-2.0/schemas")) + (schemadirs (filter file-exists? + (map (cut string-append <> "/share/glib-2.0/schemas") + '#$(manifest-inputs manifest))))) + + ;; Union all the schemas. + (mkdir-p (string-append #$output "/share/glib-2.0")) + (union-build destdir schemadirs + #:log-port (%make-void-port "w")) + + (let ((dir destdir)) + (when (file-is-directory? dir) + (ensure-writable-directory dir) + (invoke #+glib-compile-schemas + (string-append "--targetdir=" dir) + dir))))))) + + ;; Don't run the hook when there's nothing to do. + (if %glib + (gexp->derivation "glib-schemas" build + #:local-build? #t + #:substitutable? #f) + (return #f)))) + (define (gtk-icon-themes manifest) "Return a derivation that unions all icon themes from manifest entries and creates the GTK+ 'icon-theme.cache' file for each theme." @@ -1139,41 +1196,39 @@ the entries in MANIFEST." (define build (with-imported-modules modules - #~(begin - (add-to-load-path (string-append #$gdbm-ffi "/share/guile/site/" - (effective-version))) - - (use-modules (guix man-db) - (guix build utils) - (srfi srfi-1) - (srfi srfi-19)) - - (define (compute-entries) - (append-map (lambda (directory) - (let ((man (string-append directory "/share/man"))) - (if (directory-exists? man) - (mandb-entries man) - '()))) - '#$(manifest-inputs manifest))) - - (define man-directory - (string-append #$output "/share/man")) - - (mkdir-p man-directory) - - (format #t "Creating manual page database...~%") - (force-output) - (let* ((start (current-time)) - (entries (compute-entries)) - (_ (write-mandb-database (string-append man-directory - "/index.db") - entries)) - (duration (time-difference (current-time) start))) - (format #t "~a entries processed in ~,1f s~%" - (length entries) - (+ (time-second duration) - (* (time-nanosecond duration) (expt 10 -9)))) - (force-output))))) + (with-extensions (list gdbm-ffi) ;for (guix man-db) + #~(begin + (use-modules (guix man-db) + (guix build utils) + (srfi srfi-1) + (srfi srfi-19)) + + (define (compute-entries) + (append-map (lambda (directory) + (let ((man (string-append directory "/share/man"))) + (if (directory-exists? man) + (mandb-entries man) + '()))) + '#$(manifest-inputs manifest))) + + (define man-directory + (string-append #$output "/share/man")) + + (mkdir-p man-directory) + + (format #t "Creating manual page database...~%") + (force-output) + (let* ((start (current-time)) + (entries (compute-entries)) + (_ (write-mandb-database (string-append man-directory + "/index.db") + entries)) + (duration (time-difference (current-time) start))) + (format #t "~a entries processed in ~,1f s~%" + (length entries) + (+ (time-second duration) + (* (time-nanosecond duration) (expt 10 -9)))) + (force-output)))))) (gexp->derivation "manual-database" build @@ -1192,6 +1247,7 @@ the entries in MANIFEST." fonts-dir-file ghc-package-cache-file ca-certificate-bundle + glib-schemas gtk-icon-themes gtk-im-modules xdg-desktop-database @@ -1202,6 +1258,7 @@ the entries in MANIFEST." (hooks %default-profile-hooks) (locales? #t) (allow-collisions? #f) + (relative-symlinks? #f) system target) "Return a derivation that builds a profile (aka. 'user environment') with the given MANIFEST. The profile includes additional derivations returned by @@ -1213,6 +1270,9 @@ with a different version number.) When LOCALES? is true, the build is performed under a UTF-8 locale; this adds a dependency on the 'glibc-utf8-locales' package. +When RELATIVE-SYMLINKS? is true, use relative file names for symlink targets. +This is one of the things to do for the result to be relocatable. + When TARGET is true, it must be a GNU triplet, and the packages in MANIFEST are cross-built for TARGET." (mlet* %store-monad ((system (if system @@ -1275,6 +1335,9 @@ are cross-built for TARGET." (manifest-entries manifest)))))) (build-profile #$output '#$inputs + #:symlink #$(if relative-symlinks? + #~symlink-relative + #~symlink) #:manifest '#$(manifest->gexp manifest) #:search-paths search-paths)))) diff --git a/guix/records.scm b/guix/records.scm index c02395f2ae..da3ecdaaf8 100644 --- a/guix/records.scm +++ b/guix/records.scm @@ -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. ;;; @@ -52,13 +52,48 @@ ((weird _ ...) ;weird! (syntax-violation name "invalid field specifier" #'weird))))) +(define (print-record-abi-mismatch-error port key args + default-printer) + (match args + ((rtd . _) + ;; The source file where this exception is thrown must be recompiled. + (format port "ERROR: ~a: record ABI mismatch; recompilation needed" + rtd)))) + +(set-exception-printer! 'record-abi-mismatch-error + print-record-abi-mismatch-error) + +(eval-when (expand load eval) + ;; The procedures below are needed both at run time and at expansion time. + + (define (current-abi-identifier type) + "Return an identifier unhygienically derived from TYPE for use as its +\"current ABI\" variable." + (let ((type-name (syntax->datum type))) + (datum->syntax + type + (string->symbol + (string-append "% " (symbol->string type-name) + " abi-cookie"))))) + + (define (abi-check type cookie) + "Return syntax that checks that the current \"application binary +interface\" (ABI) for TYPE is equal to COOKIE." + (with-syntax ((current-abi (current-abi-identifier type))) + #`(unless (eq? current-abi #,cookie) + (throw 'record-abi-mismatch-error #,type))))) + (define-syntax make-syntactic-constructor (syntax-rules () "Make the syntactic constructor NAME for TYPE, that calls CTOR, and expects all of EXPECTED fields to be initialized. DEFAULTS is the list of FIELD/DEFAULT-VALUE tuples, THUNKED is the list of identifiers of thunked -fields, and DELAYED is the list of identifiers of delayed fields." +fields, and DELAYED is the list of identifiers of delayed fields. + +ABI-COOKIE is the cookie (an integer) against which to check the run-time ABI +of TYPE matches the expansion-time ABI." ((_ type name ctor (expected ...) + #:abi-cookie abi-cookie #:thunked thunked #:delayed delayed #:innate innate @@ -130,6 +165,7 @@ fields, and DELAYED is the list of identifiers of delayed fields." (syntax-case s (inherit expected ...) ((_ (inherit orig-record) (field value) (... ...)) #`(let* #,(field-bindings #'((field value) (... ...))) + #,(abi-check #'type abi-cookie) #,(record-inheritance #'orig-record #'((field value) (... ...))))) ((_ (field value) (... ...)) @@ -144,6 +180,7 @@ fields, and DELAYED is the list of identifiers of delayed fields." (cond ((lset= eq? fields '(expected ...)) #`(let* #,(field-bindings #'((field value) (... ...))) + #,(abi-check #'type abi-cookie) (ctor #,@(map field-value '(expected ...))))) ((pair? (lset-difference eq? fields '(expected ...))) @@ -270,6 +307,16 @@ inherited." ;; The real value of that field is a promise, so force it. (force (real-get x))))))) + (define (compute-abi-cookie field-specs) + ;; Compute an "ABI cookie" for the given FIELD-SPECS. We use + ;; 'string-hash' because that's a better hash function that 'hash' on a + ;; list of symbols. + (syntax-case field-specs () + (((field get properties ...) ...) + (string-hash (object->string + (syntax->datum #'((field properties ...) ...))) + most-positive-fixnum)))) + (syntax-case s () ((_ type syntactic-ctor ctor pred (field get properties ...) ...) @@ -278,7 +325,8 @@ inherited." (delayed (filter-map delayed-field? field-spec)) (innate (filter-map innate-field? field-spec)) (defaults (filter-map field-default-value - #'((field properties ...) ...)))) + #'((field properties ...) ...))) + (cookie (compute-abi-cookie field-spec))) (with-syntax (((field-spec* ...) (map field-spec->srfi-9 field-spec)) ((thunked-field-accessor ...) @@ -298,10 +346,13 @@ inherited." (ctor field ...) pred field-spec* ...) + (define #,(current-abi-identifier #'type) + #,cookie) thunked-field-accessor ... delayed-field-accessor ... (make-syntactic-constructor type syntactic-ctor ctor (field ...) + #:abi-cookie #,cookie #:thunked #,thunked #:delayed #,delayed #:innate #,innate diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm index 401087e830..4dd4fbccdf 100644 --- a/guix/scripts/build.scm +++ b/guix/scripts/build.scm @@ -661,43 +661,47 @@ build." (define system (assoc-ref opts 'system)) (define graft? (assoc-ref opts 'graft?)) - (parameterize ((%graft? graft?)) - (append-map (match-lambda - ((? package? p) - (let ((p (or (and graft? (package-replacement p)) p))) - (match src - (#f - (list (package->derivation store p system))) - (#t - (match (package-source p) - (#f - (format (current-error-port) - (G_ "~a: warning: \ + ;; We may get 'unbound-variable' errors while evaluating the 'inputs' fields + ;; of user packages. Since 'guix build' is the primary tool for people + ;; testing new packages, report such errors gracefully. + (with-unbound-variable-handling + (parameterize ((%graft? graft?)) + (append-map (match-lambda + ((? package? p) + (let ((p (or (and graft? (package-replacement p)) p))) + (match src + (#f + (list (package->derivation store p system))) + (#t + (match (package-source p) + (#f + (format (current-error-port) + (G_ "~a: warning: \ package '~a' has no source~%") - (location->string (package-location p)) - (package-name p)) - '()) - (s - (list (package-source-derivation store s))))) - (proc - (map (cut package-source-derivation store <>) - (proc p)))))) - ((? derivation? drv) - (list drv)) - ((? procedure? proc) - (list (run-with-store store - (mbegin %store-monad - (set-guile-for-build (default-guile)) - (proc)) - #:system system))) - ((? gexp? gexp) - (list (run-with-store store - (mbegin %store-monad - (set-guile-for-build (default-guile)) - (gexp->derivation "gexp" gexp - #:system system)))))) - (map (cut transform store <>) - (options->things-to-build opts))))) + (location->string (package-location p)) + (package-name p)) + '()) + (s + (list (package-source-derivation store s))))) + (proc + (map (cut package-source-derivation store <>) + (proc p)))))) + ((? derivation? drv) + (list drv)) + ((? procedure? proc) + (list (run-with-store store + (mbegin %store-monad + (set-guile-for-build (default-guile)) + (proc)) + #:system system))) + ((? gexp? gexp) + (list (run-with-store store + (mbegin %store-monad + (set-guile-for-build (default-guile)) + (gexp->derivation "gexp" gexp + #:system system)))))) + (map (cut transform store <>) + (options->things-to-build opts)))))) (define (show-build-log store file urls) "Show the build log for FILE, falling back to remote logs from URLS if diff --git a/guix/scripts/lint.scm b/guix/scripts/lint.scm index 4ec3267007..cd802985dc 100644 --- a/guix/scripts/lint.scm +++ b/guix/scripts/lint.scm @@ -1037,7 +1037,7 @@ them for PACKAGE." (check check-inputs-should-be-native)) (lint-checker (name 'inputs-should-not-be-input) - (description "Identify inputs that should be inputs at all") + (description "Identify inputs that shouldn't be inputs at all") (check check-inputs-should-not-be-an-input-at-all)) (lint-checker (name 'patch-file-names) diff --git a/guix/scripts/pack.scm b/guix/scripts/pack.scm index 488638adc5..76729d8e10 100644 --- a/guix/scripts/pack.scm +++ b/guix/scripts/pack.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018 Konrad Hinsen <konrad.hinsen@fastmail.net> ;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> ;;; @@ -32,17 +32,20 @@ #:use-module (guix packages) #:use-module (guix profiles) #:use-module (guix derivations) + #:use-module (guix search-paths) + #:use-module (guix build-system gnu) #:use-module (guix scripts build) #:use-module (gnu packages) #:use-module (gnu packages bootstrap) #:use-module (gnu packages compression) #:use-module (gnu packages guile) - #:autoload (gnu packages base) (tar) + #:use-module (gnu packages base) #:autoload (gnu packages package-management) (guix) #:autoload (gnu packages gnupg) (libgcrypt) #:autoload (gnu packages guile) (guile2.0-json guile-json) #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) + #:use-module (srfi srfi-26) #:use-module (srfi srfi-37) #:use-module (ice-9 match) #:export (compressor? @@ -90,7 +93,7 @@ found." (compressor (first %compressors)) localstatedir? (symlinks '()) - (tar tar)) + (archiver tar)) "Return a self-contained tarball containing a store initialized with the closure of PROFILE, a derivation. The tarball contains /gnu/store; if LOCALSTATEDIR? is true, it also contains /var/guix, including /var/guix/db @@ -99,11 +102,14 @@ with a properly initialized store database. SYMLINKS must be a list of (SOURCE -> TARGET) tuples denoting symlinks to be added to the pack." (define build - (with-imported-modules '((guix build utils) - (guix build store-copy) - (gnu build install)) + (with-imported-modules (source-module-closure + '((guix build utils) + (guix build union) + (guix build store-copy) + (gnu build install))) #~(begin (use-modules (guix build utils) + ((guix build union) #:select (relative-file-name)) (gnu build install) (srfi srfi-1) (srfi srfi-26) @@ -116,9 +122,17 @@ added to the pack." ;; parent directories. (match-lambda ((source '-> target) - (let ((target (string-append #$profile "/" target))) - `((directory ,(dirname source)) - (,source -> ,target)))))) + (let ((target (string-append #$profile "/" target)) + (parent (dirname source))) + ;; Never add a 'directory' directive for "/" so as to + ;; preserve its ownnership when extracting the archive (see + ;; below), and also because this would lead to adding the + ;; same entries twice in the tarball. + `(,@(if (string=? parent "/") + '() + `((directory ,parent))) + (,source + -> ,(relative-file-name parent target))))))) (define directives ;; Fully-qualified symlinks. @@ -128,7 +142,7 @@ added to the pack." ;; 2014-07-28. For testing, we use the bootstrap tar, which is ;; older and doesn't support it. (define tar-supports-sort? - (zero? (system* (string-append #+tar "/bin/tar") + (zero? (system* (string-append #+archiver "/bin/tar") "cf" "/dev/null" "--files-from=/dev/null" "--sort=name"))) @@ -137,11 +151,13 @@ added to the pack." (string-append #$(if localstatedir? (file-append guix "/sbin:") "") - #$tar "/bin")) + #$archiver "/bin")) - ;; Note: there is not much to gain here with deduplication and - ;; there is the overhead of the '.links' directory, so turn it - ;; off. + ;; Note: there is not much to gain here with deduplication and there + ;; is the overhead of the '.links' directory, so turn it off. + ;; Furthermore GNU tar < 1.30 sometimes fails to extract tarballs + ;; with hard links: + ;; <http://lists.gnu.org/archive/html/bug-tar/2017-11/msg00009.html>. (populate-single-profile-directory %root #:profile #$profile #:closure "profile" @@ -188,6 +204,8 @@ added to the pack." (filter-map (match-lambda (('directory directory) (string-append "." directory)) + ((source '-> _) + (string-append "." source)) (_ #f)) directives))))))))) @@ -196,13 +214,97 @@ added to the pack." build #:references-graphs `(("profile" ,profile)))) +(define* (squashfs-image name profile + #:key target + deduplicate? + (compressor (first %compressors)) + localstatedir? + (symlinks '()) + (archiver squashfs-tools-next)) + "Return a squashfs image containing a store initialized with the closure of +PROFILE, a derivation. The image contains a subset of /gnu/store, empty mount +points for virtual file systems (like procfs), and optional symlinks. + +SYMLINKS must be a list of (SOURCE -> TARGET) tuples denoting symlinks to be +added to the pack." + (define build + (with-imported-modules '((guix build utils) + (guix build store-copy) + (gnu build install)) + #~(begin + (use-modules (guix build utils) + (gnu build install) + (guix build store-copy) + (srfi srfi-1) + (srfi srfi-26) + (ice-9 match)) + + (setenv "PATH" (string-append #$archiver "/bin")) + + ;; We need an empty file in order to have a valid file argument when + ;; we reparent the root file system. Read on for why that's + ;; necessary. + (with-output-to-file ".empty" (lambda () (display ""))) + + ;; Create the squashfs image in several steps. + ;; Add all store items. Unfortunately mksquashfs throws away all + ;; ancestor directories and only keeps the basename. We fix this + ;; in the following invocations of mksquashfs. + (apply invoke "mksquashfs" + `(,@(call-with-input-file "profile" + read-reference-graph) + ,#$output + + ;; Do not perform duplicate checking because we + ;; don't have any dupes. + "-no-duplicates" + "-comp" + ,#+(compressor-name compressor))) + + ;; Here we reparent the store items. For each sub-directory of + ;; the store prefix we need one invocation of "mksquashfs". + (for-each (lambda (dir) + (apply invoke "mksquashfs" + `(".empty" + ,#$output + "-root-becomes" ,dir))) + (reverse (string-tokenize (%store-directory) + (char-set-complement (char-set #\/))))) + + ;; Add symlinks and mount points. + (apply invoke "mksquashfs" + `(".empty" + ,#$output + ;; Create SYMLINKS via pseudo file definitions. + ,@(append-map + (match-lambda + ((source '-> target) + (list "-p" + (string-join + ;; name s mode uid gid symlink + (list source + "s" "777" "0" "0" + (string-append #$profile "/" target)))))) + '#$symlinks) + + ;; Create empty mount points. + "-p" "/proc d 555 0 0" + "-p" "/sys d 555 0 0" + "-p" "/dev d 555 0 0"))))) + + (gexp->derivation (string-append name + (compressor-extension compressor) + ".squashfs") + build + #:references-graphs `(("profile" ,profile)))) + (define* (docker-image name profile #:key target deduplicate? (compressor (first %compressors)) localstatedir? (symlinks '()) - (tar tar)) + (archiver tar)) "Return a derivation to construct a Docker image of PROFILE. The image is a tarball conforming to the Docker Image Specification, compressed with COMPRESSOR. It can be passed to 'docker load'. If TARGET is true, it @@ -216,11 +318,13 @@ the image." (('gnu rest ...) #t) (rest #f))) + (define defmod 'define-module) ;trick Geiser + (define config ;; (guix config) module for consumption by (guix gcrypt). (scheme-file "gcrypt-config.scm" #~(begin - (define-module (guix config) + (#$defmod (guix config) #:export (%libgcrypt)) ;; XXX: Work around <http://bugs.gnu.org/15602>. @@ -236,28 +340,25 @@ the image." guile-json)) (define build - (with-imported-modules `(,@(source-module-closure '((guix docker)) - #:select? not-config?) - (guix build store-copy) - ((guix config) => ,config)) - #~(begin - ;; Guile-JSON is required by (guix docker). - (add-to-load-path - (string-append #+json "/share/guile/site/" - (effective-version))) - - (use-modules (guix docker) (srfi srfi-19) (guix build store-copy)) - - (setenv "PATH" (string-append #$tar "/bin")) - - (build-docker-image #$output - (call-with-input-file "profile" - read-reference-graph) - #$profile - #:system (or #$target (utsname:machine (uname))) - #:symlinks '#$symlinks - #:compressor '#$(compressor-command compressor) - #:creation-time (make-time time-utc 0 1))))) + ;; Guile-JSON is required by (guix docker). + (with-extensions (list json) + (with-imported-modules `(,@(source-module-closure '((guix docker)) + #:select? not-config?) + (guix build store-copy) + ((guix config) => ,config)) + #~(begin + (use-modules (guix docker) (srfi srfi-19) (guix build store-copy)) + + (setenv "PATH" (string-append #$archiver "/bin")) + + (build-docker-image #$output + (call-with-input-file "profile" + read-reference-graph) + #$profile + #:system (or #$target (utsname:machine (uname))) + #:symlinks '#$symlinks + #:compressor '#$(compressor-command compressor) + #:creation-time (make-time time-utc 0 1)))))) (gexp->derivation (string-append name ".tar" (compressor-extension compressor)) @@ -266,6 +367,165 @@ the image." ;;; +;;; Compiling C programs. +;;; + +;; A C compiler. That lowers to a single program that can be passed typical C +;; compiler flags, and it makes sure the whole toolchain is available. +(define-record-type <c-compiler> + (%c-compiler toolchain guile) + c-compiler? + (toolchain c-compiler-toolchain) + (guile c-compiler-guile)) + +(define* (c-compiler #:optional inputs + #:key (guile (default-guile))) + (%c-compiler inputs guile)) + +(define (bootstrap-c-compiler) + "Return the C compiler that uses the bootstrap toolchain. This is used only +by '--bootstrap', for testing purposes." + (define bootstrap-toolchain + (list (first (assoc-ref %bootstrap-inputs "gcc")) + (first (assoc-ref %bootstrap-inputs "binutils")) + (first (assoc-ref %bootstrap-inputs "libc")))) + + (c-compiler bootstrap-toolchain + #:guile %bootstrap-guile)) + +(define-gexp-compiler (c-compiler-compiler (compiler <c-compiler>) system target) + "Lower COMPILER to a single script that does the right thing." + (define toolchain + (or (c-compiler-toolchain compiler) + (list (first (assoc-ref (standard-packages) "gcc")) + (first (assoc-ref (standard-packages) "ld-wrapper")) + (first (assoc-ref (standard-packages) "binutils")) + (first (assoc-ref (standard-packages) "libc")) + (gexp-input (first (assoc-ref (standard-packages) "libc")) + "static")))) + + (define inputs + (match (append-map package-propagated-inputs + (filter package? toolchain)) + (((labels things . _) ...) + (append toolchain things)))) + + (define search-paths + (cons $PATH + (append-map package-native-search-paths + (filter package? inputs)))) + + (define run + (with-imported-modules (source-module-closure + '((guix build utils) + (guix search-paths))) + #~(begin + (use-modules (guix build utils) (guix search-paths) + (ice-9 match)) + + (define (output-file args) + (let loop ((args args)) + (match args + (() "a.out") + (("-o" file _ ...) file) + ((head rest ...) (loop rest))))) + + (set-search-paths (map sexp->search-path-specification + '#$(map search-path-specification->sexp + search-paths)) + '#$inputs) + + (let ((output (output-file (command-line)))) + (apply invoke "gcc" (cdr (command-line))) + (invoke "strip" output))))) + + (when target + ;; TODO: Yep, we'll have to do it someday! + (leave (G_ "cross-compilation not implemented here; +please email '~a'~%") + (@ (guix config) %guix-bug-report-address))) + + (gexp->script "c-compiler" run + #:guile (c-compiler-guile compiler))) + + +;;; +;;; Wrapped package. +;;; + +(define* (wrapped-package package + #:optional (compiler (c-compiler))) + (define runner + (local-file (search-auxiliary-file "run-in-namespace.c"))) + + (define build + (with-imported-modules (source-module-closure + '((guix build utils) + (guix build union))) + #~(begin + (use-modules (guix build utils) + ((guix build union) #:select (relative-file-name)) + (ice-9 ftw) + (ice-9 match)) + + (define (strip-store-prefix file) + ;; Given a file name like "/gnu/store/…-foo-1.2/bin/foo", return + ;; "/bin/foo". + (let* ((len (string-length (%store-directory))) + (base (string-drop file (+ 1 len)))) + (match (string-index base #\/) + (#f base) + (index (string-drop base index))))) + + (define (build-wrapper program) + ;; Build a user-namespace wrapper for PROGRAM. + (format #t "building wrapper for '~a'...~%" program) + (copy-file #$runner "run.c") + + (substitute* "run.c" + (("@WRAPPED_PROGRAM@") program) + (("@STORE_DIRECTORY@") (%store-directory))) + + (let* ((base (strip-store-prefix program)) + (result (string-append #$output "/" base))) + (mkdir-p (dirname result)) + (invoke #$compiler "-std=gnu99" "-static" "-Os" "-g0" "-Wall" + "run.c" "-o" result) + (delete-file "run.c"))) + + (setvbuf (current-output-port) + (cond-expand (guile-2.2 'line) + (else _IOLBF))) + + ;; Link the top-level files of PACKAGE so that search paths are + ;; properly defined in PROFILE/etc/profile. + (mkdir #$output) + (for-each (lambda (file) + (unless (member file '("." ".." "bin" "sbin" "libexec")) + (let ((file* (string-append #$package "/" file))) + (symlink (relative-file-name #$output file*) + (string-append #$output "/" file))))) + (scandir #$package)) + + (for-each build-wrapper + (append (find-files #$(file-append package "/bin")) + (find-files #$(file-append package "/sbin")) + (find-files #$(file-append package "/libexec"))))))) + + (computed-file (string-append (package-full-name package "-") "R") + build)) + +(define (map-manifest-entries proc manifest) + "Apply PROC to all the entries of MANIFEST and return a new manifest." + (make-manifest + (map (lambda (entry) + (manifest-entry + (inherit entry) + (item (proc (manifest-entry-item entry))))) + (manifest-entries manifest)))) + + +;;; ;;; Command-line options. ;;; @@ -283,6 +543,7 @@ the image." (define %formats ;; Supported pack formats. `((tarball . ,self-contained-tarball) + (squashfs . ,squashfs-image) (docker . ,docker-image))) (define %options @@ -301,6 +562,9 @@ the image." (option '(#\f "format") #t #f (lambda (opt name arg result) (alist-cons 'format (string->symbol arg) result))) + (option '(#\R "relocatable") #f #f + (lambda (opt name arg result) + (alist-cons 'relocatable? #t result))) (option '(#\e "expression") #t #f (lambda (opt name arg result) (alist-cons 'expression arg result))) @@ -353,6 +617,8 @@ Create a bundle of PACKAGE.\n")) (display (G_ " -f, --format=FORMAT build a pack in the given FORMAT")) (display (G_ " + -R, --relocatable produce relocatable executables")) + (display (G_ " -e, --expression=EXPR consider the package EXPR evaluates to")) (display (G_ " -s, --system=SYSTEM attempt to build for SYSTEM--e.g., \"i686-linux\"")) @@ -397,9 +663,15 @@ Create a bundle of PACKAGE.\n")) (read/eval-package-expression exp)) (x #f))) - (define (manifest-from-args opts) - (let ((packages (filter-map maybe-package-argument opts)) - (manifest-file (assoc-ref opts 'manifest))) + (define (manifest-from-args store opts) + (let* ((transform (options->transformation opts)) + (packages (map (match-lambda + (((? package? package) output) + (list (transform store package) output)) + ((? package? package) + (list (transform store package) "out"))) + (filter-map maybe-package-argument opts))) + (manifest-file (assoc-ref opts 'manifest))) (cond ((and manifest-file (not (null? packages))) (leave (G_ "both a manifest and a package list were given~%"))) @@ -409,39 +681,49 @@ Create a bundle of PACKAGE.\n")) (else (packages->manifest packages))))) (with-error-handling - (let* ((dry-run? (assoc-ref opts 'dry-run?)) - (manifest (manifest-from-args opts)) - (pack-format (assoc-ref opts 'format)) - (name (string-append (symbol->string pack-format) - "-pack")) - (target (assoc-ref opts 'target)) - (bootstrap? (assoc-ref opts 'bootstrap?)) - (compressor (if bootstrap? - bootstrap-xz - (assoc-ref opts 'compressor))) - (tar (if bootstrap? - %bootstrap-coreutils&co - tar)) - (symlinks (assoc-ref opts 'symlinks)) - (build-image (match (assq-ref %formats pack-format) - ((? procedure? proc) proc) - (#f - (leave (G_ "~a: unknown pack format") - format)))) - (localstatedir? (assoc-ref opts 'localstatedir?))) - (with-store store - (parameterize ((%graft? (assoc-ref opts 'graft?)) - (%guile-for-build (package-derivation - store - (if (assoc-ref opts 'bootstrap?) - %bootstrap-guile - (canonical-package guile-2.2))))) - ;; Set the build options before we do anything else. - (set-build-options-from-command-line store opts) - + (with-store store + ;; Set the build options before we do anything else. + (set-build-options-from-command-line store opts) + + (parameterize ((%graft? (assoc-ref opts 'graft?)) + (%guile-for-build (package-derivation + store + (if (assoc-ref opts 'bootstrap?) + %bootstrap-guile + (canonical-package guile-2.2)) + #:graft? (assoc-ref opts 'graft?)))) + (let* ((dry-run? (assoc-ref opts 'dry-run?)) + (relocatable? (assoc-ref opts 'relocatable?)) + (manifest (let ((manifest (manifest-from-args store opts))) + ;; Note: We cannot honor '--bootstrap' here because + ;; 'glibc-bootstrap' lacks 'libc.a'. + (if relocatable? + (map-manifest-entries wrapped-package manifest) + manifest))) + (pack-format (assoc-ref opts 'format)) + (name (string-append (symbol->string pack-format) + "-pack")) + (target (assoc-ref opts 'target)) + (bootstrap? (assoc-ref opts 'bootstrap?)) + (compressor (if bootstrap? + bootstrap-xz + (assoc-ref opts 'compressor))) + (archiver (if (equal? pack-format 'squashfs) + squashfs-tools-next + (if bootstrap? + %bootstrap-coreutils&co + tar))) + (symlinks (assoc-ref opts 'symlinks)) + (build-image (match (assq-ref %formats pack-format) + ((? procedure? proc) proc) + (#f + (leave (G_ "~a: unknown pack format") + format)))) + (localstatedir? (assoc-ref opts 'localstatedir?))) (run-with-store store (mlet* %store-monad ((profile (profile-derivation manifest + #:relative-symlinks? relocatable? #:hooks (if bootstrap? '() %default-profile-hooks) @@ -456,8 +738,8 @@ Create a bundle of PACKAGE.\n")) symlinks #:localstatedir? localstatedir? - #:tar - tar))) + #:archiver + archiver))) (mbegin %store-monad (show-what-to-build* (list drv) #:use-substitutes? diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index af501eb8f7..766cab1aad 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -393,9 +393,11 @@ it atomically, and then run OS's activation script." "~Y-~m-~d ~H:~M"))) (define* (profile-boot-parameters #:optional (profile %system-profile) - (numbers (generation-numbers profile))) - "Return a list of 'boot-parameters' for the generations of PROFILE specified by -NUMBERS, which is a list of generation numbers." + (numbers + (reverse (generation-numbers profile)))) + "Return a list of 'boot-parameters' for the generations of PROFILE specified +by NUMBERS, which is a list of generation numbers. The list is ordered from +the most recent to the oldest profiles." (define (system->boot-parameters system number time) (unless-file-not-found (let* ((params (read-boot-parameters-file system)) @@ -590,17 +592,17 @@ any, are available. Raise an error if they're not." (define labeled (filter (lambda (fs) - (eq? (file-system-title fs) 'label)) + (file-system-label? (file-system-device fs))) relevant)) (define literal (filter (lambda (fs) - (eq? (file-system-title fs) 'device)) + (string? (file-system-device fs))) relevant)) (define uuid (filter (lambda (fs) - (eq? (file-system-title fs) 'uuid)) + (uuid? (file-system-device fs))) relevant)) (define fail? #f) @@ -628,15 +630,15 @@ any, are available. Raise an error if they're not." (strerror errno)) (unless (string-prefix? "/" device) (display-hint (format #f (G_ "If '~a' is a file system -label, you need to add @code{(title 'label)} to your @code{file-system} -definition.") - device))))))) +label, write @code{(file-system-label ~s)} in your @code{device} field.") + device device))))))) literal) (for-each (lambda (fs) - (unless (find-partition-by-label (file-system-device fs)) - (error (G_ "~a: error: file system with label '~a' not found~%") - (file-system-location* fs) - (file-system-device fs)))) + (let ((label (file-system-label->string + (file-system-device fs)))) + (unless (find-partition-by-label label) + (error (G_ "~a: error: file system with label '~a' not found~%") + (file-system-location* fs) label)))) labeled) (for-each (lambda (fs) (unless (find-partition-by-uuid (file-system-device fs)) @@ -677,10 +679,13 @@ available in the initrd. Note that mapped devices are responsible for checking this by themselves in their 'check' procedure." (define (file-system-/dev fs) (let ((device (file-system-device fs))) - (match (file-system-title fs) - ('device device) - ('uuid (find-partition-by-uuid device)) - ('label (find-partition-by-label device))))) + (match device + ((? string?) + device) + ((? uuid?) + (find-partition-by-uuid device)) + ((? file-system-label?) + (find-partition-by-label (file-system-label->string device)))))) (define file-systems (filter file-system-needed-for-boot? diff --git a/guix/scripts/system/search.scm b/guix/scripts/system/search.scm index b4f790c9bf..955cdd1e95 100644 --- a/guix/scripts/system/search.scm +++ b/guix/scripts/system/search.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,9 +21,11 @@ #:use-module (guix ui) #:use-module (guix utils) #:use-module (gnu services) + #:use-module (gnu services shepherd) #:use-module (srfi srfi-1) #:use-module (srfi srfi-11) #:use-module (srfi srfi-26) + #:use-module (srfi srfi-34) #:use-module (ice-9 regex) #:use-module (ice-9 match) #:export (service-type->recutils @@ -39,6 +42,27 @@ (define service-type-name* (compose symbol->string service-type-name)) +(define (service-type-default-shepherd-services type) + "Return the list of Shepherd services created by default instances of TYPE, +provided TYPE has a default value." + (match (guard (c ((service-error? c) #f)) + (service type)) + (#f '()) + ((? service? service) + (let* ((extension (find (lambda (extension) + (eq? (service-extension-target extension) + shepherd-root-service-type)) + (service-type-extensions type))) + (compute (and extension (service-extension-compute extension)))) + (if compute + (compute (service-value service)) + '()))))) + +(define (service-type-shepherd-names type) + "Return the default names of Shepherd services created for TYPE." + (append-map shepherd-service-provision + (service-type-default-shepherd-services type))) + (define* (service-type->recutils type port #:optional (width (%text-width)) #:key (extra-fields '())) @@ -66,6 +90,16 @@ columns." (format port "extends: ~a~%" (extensions->recutils (service-type-extensions type))) + ;; If possible, display the list of *default* Shepherd service names. Note + ;; that we may not always be able to do this (e.g., if the service type + ;; lacks a default value); furthermore, it could be that the service + ;; generates Shepherd services with different names if we give it different + ;; parameters (this is the case, for instance, for + ;; 'console-font-service-type'.) + (match (service-type-shepherd-names type) + (() #f) + (names (format port "shepherdnames:~{ ~a~}~%" names))) + (when (service-type-description type) (format port "~a~%" (string->recutils diff --git a/guix/scripts/weather.scm b/guix/scripts/weather.scm index 5c934abaef..d7c2fbea10 100644 --- a/guix/scripts/weather.scm +++ b/guix/scripts/weather.scm @@ -208,10 +208,10 @@ unavailable)~%")) 0 queue))) (newline) (unless (null? missing) - (let ((missing (length missing))) - (match (queued-subset queue missing) - (#f #f) - ((= length queued) + (match (queued-subset queue missing) + (#f #f) + ((= length queued) + (let ((missing (length missing))) (format #t (G_ " ~,1f% (~h out of ~h) of the missing items \ are queued~%") (* 100. (/ queued missing)) diff --git a/guix/search-paths.scm b/guix/search-paths.scm index 4bf0e44389..002e6342bb 100644 --- a/guix/search-paths.scm +++ b/guix/search-paths.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -38,7 +38,8 @@ string-tokenize* evaluate-search-paths environment-variable-definition - search-path-definition)) + search-path-definition + set-search-paths)) ;;; Commentary: ;;; @@ -196,4 +197,14 @@ prefix/suffix." #:kind kind #:separator separator)))) +(define* (set-search-paths search-paths directories + #:key (setenv setenv)) + "Set the search path environment variables specified by SEARCH-PATHS for the +given directories." + (for-each (match-lambda + ((spec . value) + (setenv (search-path-specification-variable spec) + value))) + (evaluate-search-paths search-paths directories))) + ;;; search-paths.scm ends here diff --git a/guix/self.scm b/guix/self.scm index 6220efb397..3acfac6f80 100644 --- a/guix/self.scm +++ b/guix/self.scm @@ -82,6 +82,7 @@ GUILE-VERSION (\"2.0\" or \"2.2\"), or #f if none of the packages matches." ("guile-json" (ref '(gnu packages guile) 'guile-json)) ("guile-ssh" (ref '(gnu packages ssh) 'guile-ssh)) ("guile-git" (ref '(gnu packages guile) 'guile-git)) + ("guile-sqlite3" (ref '(gnu packages guile) 'guile-sqlite3)) ("libgcrypt" (ref '(gnu packages gnupg) 'libgcrypt)) ("zlib" (ref '(gnu packages compression) 'zlib)) ("gzip" (ref '(gnu packages compression) 'gzip)) @@ -92,6 +93,7 @@ GUILE-VERSION (\"2.0\" or \"2.2\"), or #f if none of the packages matches." ("guile2.0-json" (ref '(gnu packages guile) 'guile2.0-json)) ("guile2.0-ssh" (ref '(gnu packages ssh) 'guile2.0-ssh)) ("guile2.0-git" (ref '(gnu packages guile) 'guile2.0-git)) + ;; XXX: No "guile2.0-sqlite3". (_ #f)))) ;no such package @@ -167,7 +169,8 @@ must be present in the search path." (source (imported-files (string-append name "-source") (append module-files extra-files)))) (node name modules source dependencies - (compiled-modules name source modules + (compiled-modules name source + (map car module-files) (map node-source dependencies) (map node-compiled dependencies) #:extensions extensions @@ -215,12 +218,16 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." "guile-git" "guile2.0-git")) + (define guile-sqlite3 + (package-for-guile guile-version + "guile-sqlite3" + "guile2.0-sqlite3")) (define dependencies (match (append-map (lambda (package) (cons (list "x" package) - (package-transitive-inputs package))) - (list guile-git guile-json guile-ssh)) + (package-transitive-propagated-inputs package))) + (list guile-git guile-json guile-ssh guile-sqlite3)) (((labels packages _ ...) ...) packages))) @@ -248,25 +255,37 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (specification->package "libgcrypt")))) + ;; (guix man-db) is needed at build-time by (guix profiles) + ;; but we don't need to compile it; not compiling it allows + ;; us to avoid an extra dependency on guile-gdbm-ffi. + #:extra-files + `(("guix/man-db.scm" ,(local-file "../guix/man-db.scm"))) + #:guile-for-build guile-for-build)) (define *extra-modules* (scheme-node "guix-extra" (filter-map (match-lambda (('guix 'scripts _ ..1) #f) + (('guix 'man-db) #f) (name name)) (scheme-modules* source "guix")) (list *core-modules*) #:extensions dependencies #:guile-for-build guile-for-build)) - (define *package-modules* - (scheme-node "guix-packages" + (define *core-package-modules* + (scheme-node "guix-packages-base" `((gnu packages) - ,@(scheme-modules* source "gnu/packages")) + (gnu packages base)) (list *core-modules* *extra-modules*) #:extensions dependencies - #:extra-files ;all the non-Scheme files + + ;; Add all the non-Scheme files here. We must do it here so + ;; that 'search-patches' & co. can find them. Ideally we'd + ;; keep them next to the .scm files that use them but it's + ;; difficult to do (XXX). + #:extra-files (file-imports source "gnu/packages" (lambda (file stat) (and (eq? 'regular (stat:type stat)) @@ -276,23 +295,37 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (not (string-suffix? "~" file))))) #:guile-for-build guile-for-build)) + (define *package-modules* + (scheme-node "guix-packages" + (scheme-modules* source "gnu/packages") + (list *core-modules* *extra-modules* *core-package-modules*) + #:extensions dependencies + #:guile-for-build guile-for-build)) + (define *system-modules* (scheme-node "guix-system" `((gnu system) (gnu services) ,@(scheme-modules* source "gnu/system") ,@(scheme-modules* source "gnu/services")) - (list *package-modules* *extra-modules* *core-modules*) + (list *core-package-modules* *package-modules* + *extra-modules* *core-modules*) #:extensions dependencies #:extra-files - (file-imports source "gnu/system/examples" (const #t)) + (append (file-imports source "gnu/system/examples" + (const #t)) + + ;; Build-side code that we don't build. Some of + ;; these depend on guile-rsvg, the Shepherd, etc. + (file-imports source "gnu/build" (const #t))) #:guile-for-build guile-for-build)) (define *cli-modules* (scheme-node "guix-cli" (scheme-modules* source "/guix/scripts") - (list *core-modules* *extra-modules* *package-modules* + (list *core-modules* *extra-modules* + *core-package-modules* *package-modules* *system-modules*) #:extensions dependencies #:guile-for-build guile-for-build)) @@ -330,6 +363,7 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." *cli-modules* *system-modules* *package-modules* + *core-package-modules* *extra-modules* *core-modules*)) @@ -451,6 +485,11 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (define (imported-files name files) ;; This is a non-monadic, simplified version of 'imported-files' from (guix ;; gexp). + (define same-target? + (match-lambda* + (((file1 . _) (file2 . _)) + (string=? file1 file2)))) + (define build (with-imported-modules (source-module-closure '((guix build utils))) @@ -467,14 +506,15 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." ;; symlinks, as this makes a difference for ;; 'add-to-store'. (copy-file store-path final-path))) - '#$files)))) + '#$(delete-duplicates files same-target?))))) ;; We're just copying files around, no need to substitute or offload it. (computed-file name build #:options '(#:local-build? #t - #:substitutable? #f))) + #:substitutable? #f + #:env-vars (("COLUMNS" . "200"))))) -(define* (compiled-modules name module-tree modules +(define* (compiled-modules name module-tree module-files #:optional (dependencies '()) (dependencies-compiled '()) @@ -482,6 +522,9 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (extensions '()) ;full-blown Guile packages parallel? guile-for-build) + "Build all the MODULE-FILES from MODULE-TREE. MODULE-FILES must be a list +like '(\"guix/foo.scm\" \"gnu/bar.scm\") and MODULE-TREE is the directory +containing MODULE-FILES and possibly other files as well." ;; This is a non-monadic, enhanced version of 'compiled-file' from (guix ;; gexp). (define build @@ -512,16 +555,13 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (* 100. (/ completed total)) total) (force-output)) - (define (process-directory directory output) - (let ((files (find-files directory "\\.scm$")) - (prefix (+ 1 (string-length directory)))) - ;; Hide compilation warnings. - (parameterize ((current-warning-port (%make-void-port "w"))) - (compile-files directory #$output - (map (cut string-drop <> prefix) files) - #:workers (parallel-job-count) - #:report-load report-load - #:report-compilation report-compilation)))) + (define (process-directory directory files output) + ;; Hide compilation warnings. + (parameterize ((current-warning-port (%make-void-port "w"))) + (compile-files directory #$output files + #:workers (parallel-job-count) + #:report-load report-load + #:report-compilation report-compilation))) (setvbuf (current-output-port) _IONBF) (setvbuf (current-error-port) _IONBF) @@ -549,7 +589,7 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." (mkdir #$output) (chdir #+module-tree) - (process-directory "." #$output) + (process-directory "." '#+module-files #$output) (newline)))) (computed-file name build @@ -558,7 +598,11 @@ list of file-name/file-like objects suitable as inputs to 'imported-files'." `(#:local-build? #f ;allow substitutes ;; Don't annoy people about _IONBF deprecation. - #:env-vars (("GUILE_WARN_DEPRECATED" . "no"))))) + ;; Initialize 'terminal-width' in (system repl debug) + ;; to a large-enough value to make backtrace more + ;; verbose. + #:env-vars (("GUILE_WARN_DEPRECATED" . "no") + ("COLUMNS" . "200"))))) ;;; diff --git a/guix/store/database.scm b/guix/store/database.scm new file mode 100644 index 0000000000..3623c0e7a0 --- /dev/null +++ b/guix/store/database.scm @@ -0,0 +1,234 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Caleb Ristvedt <caleb.ristvedt@cune.org> +;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (guix store database) + #:use-module (sqlite3) + #:use-module (guix config) + #:use-module (guix serialization) + #:use-module (guix store deduplication) + #:use-module (guix base16) + #:use-module (guix build syscalls) + #:use-module (srfi srfi-11) + #:use-module (srfi srfi-19) + #:use-module (ice-9 match) + #:export (sqlite-register + register-path + reset-timestamps)) + +;;; Code for working with the store database directly. + + +(define-syntax-rule (with-database file db exp ...) + "Open DB from FILE and close it when the dynamic extent of EXP... is left." + (let ((db (sqlite-open file))) + (dynamic-wind noop + (lambda () + exp ...) + (lambda () + (sqlite-close db))))) + +(define (last-insert-row-id db) + ;; XXX: (sqlite3) currently lacks bindings for 'sqlite3_last_insert_rowid'. + ;; Work around that. + (let* ((stmt (sqlite-prepare db "SELECT last_insert_rowid();" + #:cache? #t)) + (result (sqlite-fold cons '() stmt))) + (sqlite-finalize stmt) + (match result + ((#(id)) id) + (_ #f)))) + +(define path-id-sql + "SELECT id FROM ValidPaths WHERE path = :path") + +(define* (path-id db path) + "If PATH exists in the 'ValidPaths' table, return its numerical +identifier. Otherwise, return #f." + (let ((stmt (sqlite-prepare db path-id-sql #:cache? #t))) + (sqlite-bind-arguments stmt #:path path) + (let ((result (sqlite-fold cons '() stmt))) + (sqlite-finalize stmt) + (match result + ((#(id) . _) id) + (_ #f))))) + +(define update-sql + "UPDATE ValidPaths SET hash = :hash, registrationTime = :time, deriver = +:deriver, narSize = :size WHERE id = :id") + +(define insert-sql + "INSERT INTO ValidPaths (path, hash, registrationTime, deriver, narSize) +VALUES (:path, :hash, :time, :deriver, :size)") + +(define* (update-or-insert db #:key path deriver hash nar-size time) + "The classic update-if-exists and insert-if-doesn't feature that sqlite +doesn't exactly have... they've got something close, but it involves deleting +and re-inserting instead of updating, which causes problems with foreign keys, +of course. Returns the row id of the row that was modified or inserted." + (let ((id (path-id db path))) + (if id + (let ((stmt (sqlite-prepare db update-sql #:cache? #t))) + (sqlite-bind-arguments stmt #:id id + #:path path #:deriver deriver + #:hash hash #:size nar-size #:time time) + (sqlite-fold cons '() stmt) + (sqlite-finalize stmt) + (last-insert-row-id db)) + (let ((stmt (sqlite-prepare db insert-sql #:cache? #t))) + (sqlite-bind-arguments stmt + #:path path #:deriver deriver + #:hash hash #:size nar-size #:time time) + (sqlite-fold cons '() stmt) ;execute it + (sqlite-finalize stmt) + (last-insert-row-id db))))) + +(define add-reference-sql + "INSERT OR IGNORE INTO Refs (referrer, reference) SELECT :referrer, id +FROM ValidPaths WHERE path = :reference") + +(define (add-references db referrer references) + "REFERRER is the id of the referring store item, REFERENCES is a list +containing store items being referred to. Note that all of the store items in +REFERENCES must already be registered." + (let ((stmt (sqlite-prepare db add-reference-sql #:cache? #t))) + (for-each (lambda (reference) + (sqlite-reset stmt) + (sqlite-bind-arguments stmt #:referrer referrer + #:reference reference) + (sqlite-fold cons '() stmt) ;execute it + (sqlite-finalize stmt) + (last-insert-row-id db)) + references))) + +;; XXX figure out caching of statement and database objects... later +(define* (sqlite-register #:key db-file path (references '()) + deriver hash nar-size) + "Registers this stuff in a database specified by DB-FILE. PATH is the string +path of some store item, REFERENCES is a list of string paths which the store +item PATH refers to (they need to be already registered!), DERIVER is a string +path of the derivation that created the store item PATH, HASH is the +base16-encoded sha256 hash of the store item denoted by PATH (prefixed with +\"sha256:\") after being converted to nar form, and nar-size is the size in +bytes of the store item denoted by PATH after being converted to nar form." + (with-database db-file db + (let ((id (update-or-insert db #:path path + #:deriver deriver + #:hash hash + #:nar-size nar-size + #:time (time-second (current-time time-utc))))) + (add-references db id references)))) + + +;;; +;;; High-level interface. +;;; + +;; TODO: Factorize with that in (gnu build install). +(define (reset-timestamps file) + "Reset the modification time on FILE and on all the files it contains, if +it's a directory." + (let loop ((file file) + (type (stat:type (lstat file)))) + (case type + ((directory) + (utime file 0 0 0 0) + (let ((parent file)) + (for-each (match-lambda + (("." . _) #f) + ((".." . _) #f) + ((file . properties) + (let ((file (string-append parent "/" file))) + (loop file + (match (assoc-ref properties 'type) + ((or 'unknown #f) + (stat:type (lstat file))) + (type type)))))) + (scandir* parent)))) + ((symlink) + ;; FIXME: Implement bindings for 'futime' to reset the timestamps on + ;; symlinks. + #f) + (else + (utime file 0 0 0 0))))) + +;; TODO: make this canonicalize store items that are registered. This involves +;; setting permissions and timestamps, I think. Also, run a "deduplication +;; pass", whatever that involves. Also, handle databases not existing yet +;; (what should the default behavior be? Figuring out how the C++ stuff +;; currently does it sounds like a lot of grepping for global +;; variables...). Also, return #t on success like the documentation says we +;; should. + +(define* (register-path path + #:key (references '()) deriver prefix + state-directory (deduplicate? #t)) + ;; Priority for options: first what is given, then environment variables, + ;; then defaults. %state-directory, %store-directory, and + ;; %store-database-directory already handle the "environment variables / + ;; defaults" question, so we only need to choose between what is given and + ;; those. + "Register PATH as a valid store file, with REFERENCES as its list of +references, and DERIVER as its deriver (.drv that led to it.) If PREFIX is +given, it must be the name of the directory containing the new store to +initialize; if STATE-DIRECTORY is given, it must be a string containing the +absolute file name to the state directory of the store being initialized. +Return #t on success. + +Use with care as it directly modifies the store! This is primarily meant to +be used internally by the daemon's build hook." + (let* ((db-dir (cond + (state-directory + (string-append state-directory "/db")) + (prefix + ;; If prefix is specified, the value of NIX_STATE_DIR + ;; (which affects %state-directory) isn't supposed to + ;; affect db-dir, only the compile-time-customized + ;; default should. + (string-append prefix %localstatedir "/guix/db")) + (else + %store-database-directory))) + (store-dir (if prefix + ;; same situation as above + (string-append prefix %storedir) + %store-directory)) + (to-register (if prefix + (string-append %storedir "/" (basename path)) + ;; note: we assume here that if path is, for + ;; example, /foo/bar/gnu/store/thing.txt and prefix + ;; isn't given, then an environment variable has + ;; been used to change the store directory to + ;; /foo/bar/gnu/store, since otherwise real-path + ;; would end up being /gnu/store/thing.txt, which is + ;; probably not the right file in this case. + path)) + (real-path (string-append store-dir "/" (basename path)))) + (let-values (((hash nar-size) + (nar-sha256 real-path))) + (reset-timestamps real-path) + (sqlite-register + #:db-file (string-append db-dir "/db.sqlite") + #:path to-register + #:references references + #:deriver deriver + #:hash (string-append "sha256:" + (bytevector->base16-string hash)) + #:nar-size nar-size) + + (when deduplicate? + (deduplicate real-path hash #:store store-dir))))) diff --git a/guix/store/deduplication.scm b/guix/store/deduplication.scm new file mode 100644 index 0000000000..4b4ac01f64 --- /dev/null +++ b/guix/store/deduplication.scm @@ -0,0 +1,148 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017 Caleb Ristvedt <caleb.ristvedt@cune.org> +;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +;;; This houses stuff we do to files when they arrive at the store - resetting +;;; timestamps, deduplicating, etc. + +(define-module (guix store deduplication) + #:use-module (guix hash) + #:use-module (guix build utils) + #:use-module (guix base16) + #:use-module (srfi srfi-11) + #:use-module (rnrs io ports) + #:use-module (ice-9 ftw) + #:use-module (guix serialization) + #:export (nar-sha256 + deduplicate)) + +;; Would it be better to just make WRITE-FILE give size as well? I question +;; the general utility of this approach. +(define (counting-wrapper-port output-port) + "Some custom ports don't implement GET-POSITION at all. But if we want to +figure out how many bytes are being written, we will want to use that. So this +makes a wrapper around a port which implements GET-POSITION." + (let ((byte-count 0)) + (make-custom-binary-output-port "counting-wrapper" + (lambda (bytes offset count) + (set! byte-count + (+ byte-count count)) + (put-bytevector output-port bytes + offset count) + count) + (lambda () + byte-count) + #f + (lambda () + (close-port output-port))))) + +(define (nar-sha256 file) + "Gives the sha256 hash of a file and the size of the file in nar form." + (let-values (((port get-hash) (open-sha256-port))) + (let ((wrapper (counting-wrapper-port port))) + (write-file file wrapper) + (force-output wrapper) + (force-output port) + (let ((hash (get-hash)) + (size (port-position wrapper))) + (close-port wrapper) + (values hash size))))) + +(define (tempname-in directory) + "Gives an unused temporary name under DIRECTORY. Not guaranteed to still be +unused by the time you create anything with that name, but a good shot." + (let ((const-part (string-append directory "/.tmp-link-" + (number->string (getpid))))) + (let try ((guess-part + (number->string (random most-positive-fixnum) 16))) + (if (file-exists? (string-append const-part "-" guess-part)) + (try (number->string (random most-positive-fixnum) 16)) + (string-append const-part "-" guess-part))))) + +(define* (get-temp-link target #:optional (link-prefix (dirname target))) + "Like mkstemp!, but instead of creating a new file and giving you the name, +it creates a new hardlink to TARGET and gives you the name. Since +cross-filesystem hardlinks don't work, the temp link must be created on the +same filesystem - where in that filesystem it is can be controlled by +LINK-PREFIX." + (let try ((tempname (tempname-in link-prefix))) + (catch 'system-error + (lambda () + (link target tempname) + tempname) + (lambda (args) + (if (= (system-error-errno args) EEXIST) + (try (tempname-in link-prefix)) + (throw 'system-error args)))))) + +;; There are 3 main kinds of errors we can get from hardlinking: "Too many +;; things link to this" (EMLINK), "this link already exists" (EEXIST), and +;; "can't fit more stuff in this directory" (ENOSPC). + +(define (replace-with-link target to-replace) + "Atomically replace the file TO-REPLACE with a link to TARGET. Note: TARGET +and TO-REPLACE must be on the same file system." + (let ((temp-link (get-temp-link target (dirname to-replace)))) + (rename-file temp-link to-replace))) + +(define-syntax-rule (false-if-system-error (errors ...) exp ...) + "Given ERRORS, a list of system error codes to ignore, evaluates EXP... and +return #f if any of the system error codes in the given list are thrown." + (catch 'system-error + (lambda () + exp ...) + (lambda args + (if (member (system-error-errno args) (list errors ...)) + #f + (apply throw args))))) + +(define* (deduplicate path hash #:key (store %store-directory)) + "Check if a store item with sha256 hash HASH already exists. If so, +replace PATH with a hardlink to the already-existing one. If not, register +PATH so that future duplicates can hardlink to it. PATH is assumed to be +under STORE." + (let* ((links-directory (string-append store "/.links")) + (link-file (string-append links-directory "/" + (bytevector->base16-string hash)))) + (mkdir-p links-directory) + (if (file-is-directory? path) + ;; Can't hardlink directories, so hardlink their atoms. + (for-each (lambda (file) + (unless (member file '("." "..")) + (deduplicate file (nar-sha256 file) + #:store store))) + (scandir path)) + (if (file-exists? link-file) + (false-if-system-error (EMLINK) + (replace-with-link link-file path)) + (catch 'system-error + (lambda () + (link path link-file)) + (lambda args + (let ((errno (system-error-errno args))) + (cond ((= errno EEXIST) + ;; Someone else put an entry for PATH in + ;; LINKS-DIRECTORY before we could. Let's use it. + (false-if-system-error (EMLINK) + (replace-with-link path link-file))) + ((= errno ENOSPC) + ;; There's not enough room in the directory index for + ;; more entries in .links, but that's fine: we can + ;; just stop. + #f) + (else (apply throw args)))))))))) diff --git a/guix/ui.scm b/guix/ui.scm index 07c78289ff..45f438fc45 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -82,6 +82,7 @@ show-manifest-transaction call-with-error-handling with-error-handling + with-unbound-variable-handling leave-on-EPIPE read/eval read/eval-package-expression @@ -164,7 +165,7 @@ messages." ((proc message (variable) _ ...) ;; We can always omit PROC because when it's useful (i.e., different from ;; "module-lookup"), it gets displayed before. - (format port (G_ "~a: unbound variable") variable)) + (format port (G_ "error: ~a: unbound variable") variable)) (_ (default-printer)))) @@ -179,9 +180,9 @@ messages." modules) module)) -(define* (load* file user-module - #:key (on-error 'nothing-special)) - "Load the user provided Scheme source code FILE." +(define (last-frame-with-source stack) + "Walk stack upwards and return the last frame that has source location +information, or #f if it could not be found." (define (frame-with-source frame) ;; Walk from FRAME upwards until source location information is found. (let loop ((frame frame) @@ -192,6 +193,15 @@ messages." frame (loop (frame-previous frame) frame))))) + (let* ((depth (stack-length stack)) + (last (and (> depth 0) (stack-ref stack 0)))) + (frame-with-source (if (> depth 1) + (stack-ref stack 1) ;skip the 'throw' frame + last)))) + +(define* (load* file user-module + #:key (on-error 'nothing-special)) + "Load the user provided Scheme source code FILE." (define (error-string frame args) (call-with-output-string (lambda (port) @@ -244,12 +254,7 @@ messages." ;; Capture the stack up to this procedure call, excluded, and pass ;; the faulty stack frame to 'report-load-error'. (let* ((stack (make-stack #t handle-error tag)) - (depth (stack-length stack)) - (last (and (> depth 0) (stack-ref stack 0))) - (frame (frame-with-source - (if (> depth 1) - (stack-ref stack 1) ;skip the 'throw' frame - last)))) + (frame (last-frame-with-source stack))) (report-load-error file args frame) @@ -311,6 +316,21 @@ PORT." (- (terminal-columns) 5)))) (texi->plain-text message)))) +(define* (report-unbound-variable-error args #:key frame) + "Return the given unbound-variable error, where ARGS is the list of 'throw' +arguments." + (match args + ((key . args) + (print-exception (current-error-port) frame key args))) + (match args + (('unbound-variable proc message (variable) _ ...) + (match (known-variable-definition variable) + (#f + (display-hint (G_ "Did you forget a @code{use-modules} form?"))) + ((? module? module) + (display-hint (format #f (G_ "Did you forget @code{(use-modules ~a)}?") + (module-name module)))))))) + (define* (report-load-error file args #:optional frame) "Report the failure to load FILE, a user-provided Scheme file. ARGS is the list of arguments received by the 'throw' handler." @@ -331,16 +351,8 @@ ARGS is the list of arguments received by the 'throw' handler." (let ((loc (source-properties->location properties))) (format (current-error-port) (G_ "~a: error: ~a~%") (location->string loc) message))) - (('unbound-variable proc message (variable) _ ...) - (match args - ((key . args) - (print-exception (current-error-port) frame key args))) - (match (known-variable-definition variable) - (#f - (display-hint (G_ "Did you forget a @code{use-modules} form?"))) - (module - (display-hint (format #f (G_ "Did you forget @code{(use-modules ~a)}?") - (module-name module)))))) + (('unbound-variable _ ...) + (report-unbound-variable-error args #:frame frame)) (('srfi-34 obj) (if (message-condition? obj) (if (error-location? obj) @@ -381,6 +393,27 @@ exiting. ARGS is the list of arguments received by the 'throw' handler." (warning (G_ "failed to load '~a':~%") file) (apply display-error #f (current-error-port) args)))) +(define (call-with-unbound-variable-handling thunk) + (define tag + (make-prompt-tag "user-code")) + + (catch 'unbound-variable + (lambda () + (call-with-prompt tag + thunk + (const #f))) + (const #t) + (rec (handle-error . args) + (let* ((stack (make-stack #t handle-error tag)) + (frame (and stack (last-frame-with-source stack)))) + (report-unbound-variable-error args #:frame frame) + (exit 1))))) + +(define-syntax-rule (with-unbound-variable-handling exp ...) + "Capture 'unbound-variable' exceptions in the dynamic extent of EXP... and +report them in a user-friendly way." + (call-with-unbound-variable-handling (lambda () exp ...))) + (define (install-locale) "Install the current locale settings." (catch 'system-error diff --git a/guix/utils.scm b/guix/utils.scm index 92e45de616..e9efea5866 100644 --- a/guix/utils.scm +++ b/guix/utils.scm @@ -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, 2014, 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> @@ -84,6 +84,7 @@ version-major+minor version-major guile-version>? + version-prefix? string-replace-substring arguments-from-environment-variable file-extension @@ -521,6 +522,27 @@ minor version numbers from version-string." (micro-version)) str)) +(define version-prefix? + (let ((not-dot (char-set-complement (char-set #\.)))) + (lambda (v1 v2) + "Return true if V1 is a version prefix of V2: + + (version-prefix? \"4.1\" \"4.16.2\") => #f + (version-prefix? \"4.1\" \"4.1.2\") => #t +" + (define (list-prefix? lst1 lst2) + (match lst1 + (() #t) + ((head1 tail1 ...) + (match lst2 + (() #f) + ((head2 tail2 ...) + (and (equal? head1 head2) + (list-prefix? tail1 tail2))))))) + + (list-prefix? (string-tokenize v1 not-dot) + (string-tokenize v2 not-dot))))) + (define (file-extension file) "Return the extension of FILE or #f if there is none." (let ((dot (string-rindex file #\.))) diff --git a/m4/guix.m4 b/m4/guix.m4 index 8e174e92e5..a6897be961 100644 --- a/m4/guix.m4 +++ b/m4/guix.m4 @@ -174,6 +174,24 @@ AC_DEFUN([GUIX_CHECK_GUILE_SSH], [ fi]) ]) +dnl GUIX_CHECK_GUILE_SQLITE3 +dnl +dnl Check whether a recent-enough Guile-Sqlite3 is available. +AC_DEFUN([GUIX_CHECK_GUILE_SQLITE3], [ + dnl Check whether 'sqlite-bind-arguments' is available. It was introduced + dnl in February 2018: + dnl <https://notabug.org/civodul/guile-sqlite3/commit/1cd1dec96a9999db48c0ff45bab907efc637247f>. + AC_CACHE_CHECK([whether Guile-Sqlite3 is available and recent enough], + [guix_cv_have_recent_guile_sqlite3], + [GUILE_CHECK([retval], + [(@ (sqlite3) sqlite-bind-arguments)]) + if test "$retval" = 0; then + guix_cv_have_recent_guile_sqlite3="yes" + else + guix_cv_have_recent_guile_sqlite3="no" + fi]) +]) + dnl GUIX_TEST_ROOT_DIRECTORY AC_DEFUN([GUIX_TEST_ROOT_DIRECTORY], [ AC_CACHE_CHECK([for unit test root directory], diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc index 34647e6774..c7f32494d0 100644 --- a/nix/libstore/build.cc +++ b/nix/libstore/build.cc @@ -1244,6 +1244,7 @@ static bool canBuildLocally(const string & platform) return platform == settings.thisSystem #if __linux__ || (platform == "i686-linux" && settings.thisSystem == "x86_64-linux") + || (platform == "armhf-linux" && settings.thisSystem == "aarch64-linux") #endif ; } @@ -2220,6 +2221,13 @@ void DerivationGoal::runChild() throw SysError("cannot set i686-linux personality"); } + if (drv.platform == "armhf-linux" && + (settings.thisSystem == "aarch64-linux" || + (!strcmp(utsbuf.sysname, "Linux") && !strcmp(utsbuf.machine, "aarch64")))) { + if (personality(PER_LINUX32) == -1) + throw SysError("cannot set armhf-linux personality"); + } + /* Impersonate a Linux 2.6 machine to get some determinism in builds that depend on the kernel version. */ if ((drv.platform == "i686-linux" || drv.platform == "x86_64-linux") && settings.impersonateLinux26) { diff --git a/po/guix/pt_BR.po b/po/guix/pt_BR.po index 317f5213f7..bb7d29c3cf 100644 --- a/po/guix/pt_BR.po +++ b/po/guix/pt_BR.po @@ -1,14 +1,14 @@ # Brazilian Portuguese translation of the guix -# Copyright (C) 2016 Free Software Foundation, Inc. -# Copyright (C) 2016 Ludovic Courtès +# Copyright (C) 2018 the authors of Guix (msgids) +# Copyright (C) 2018 Free Software Foundation, Inc. # This file is distributed under the same license as the guix package. # Rafael Fontenelle <rafaelff@gnome.org>, 2013, 2016, 2018. msgid "" msgstr "" -"Project-Id-Version: guix 0.14.0\n" +"Project-Id-Version: guix 0.15.0-pre1\n" "Report-Msgid-Bugs-To: ludo@gnu.org\n" -"POT-Creation-Date: 2017-11-28 08:56+0100\n" -"PO-Revision-Date: 2018-02-24 07:29-0200\n" +"POT-Creation-Date: 2018-04-27 19:13+0200\n" +"PO-Revision-Date: 2018-04-30 15:01-0200\n" "Last-Translator: Rafael Fontenelle <rafaelff@gnome.org>\n" "Language-Team: Brazilian Portuguese <ldpbr-translation@lists.sourceforge.net>\n" "Language: pt_BR\n" @@ -31,8 +31,8 @@ msgid "" "If you get the line @code{location: gnu/packages/bar.scm:174:2},\n" "add @code{bar} to the @code{use-package-modules} form." msgstr "" -"Você pode usara @command{guix package --show=foo | grep location} para pesquisar\n" -"pela localização do pacote @code{foo}.\n" +"Você pode usar @command{guix package --show=foo | grep location} para\n" +"pesquisar pela localização do pacote @code{foo}.\n" "Se você obtiver a linha @code{location: gnu/packages/bar.scm:174:2},\n" "adicione @code{bar} à forma @code{use-package-modules}." @@ -69,92 +69,127 @@ msgstr "~a: patch não localizado" msgid "could not find bootstrap binary '~a' for system '~a'" msgstr "não foi possível localizar binário de inicialização \"~a\" para o sistema \"~a\"" -#: gnu/packages.scm:240 +#: gnu/packages.scm:259 #, scheme-format msgid "ambiguous package specification `~a'~%" msgstr "especificação ambígua de pacote \"~a\"~%" -#: gnu/packages.scm:241 +#: gnu/packages.scm:260 #, scheme-format msgid "choosing ~a@~a from ~a~%" msgstr "escolhendo ~a@~a de ~a~%" -#: gnu/packages.scm:246 guix/scripts/package.scm:271 +#: gnu/packages.scm:265 guix/scripts/package.scm:278 #, scheme-format msgid "package '~a' has been superseded by '~a'~%" msgstr "pacote \"~a\" foi substituído por \"~a\"~%" -#: gnu/packages.scm:253 +#: gnu/packages.scm:272 #, scheme-format msgid "~A: package not found for version ~a~%" msgstr "~A: pacote não encontrado para versão ~a~%" -#: gnu/packages.scm:254 +#: gnu/packages.scm:273 #, scheme-format msgid "~A: unknown package~%" msgstr "~A: pacote desconhecido~%" -#: gnu/packages.scm:282 +#: gnu/packages.scm:301 #, scheme-format msgid "package `~a' lacks output `~a'~%" msgstr "pacote \"~a\" carece de mensagem de saída \"~a\"~%" -#: gnu/services.scm:235 +#: gnu/services.scm:238 #, scheme-format msgid "~a: no value specified for service of type '~a'" msgstr "~a: nenhum valor especificado para um serviço do tipo \"~a\"" -#: gnu/services.scm:650 +#: gnu/services.scm:643 #, scheme-format msgid "no target of type '~a' for service '~a'" msgstr "nenhum alvo do tipo \"~a\" para o serviço \"~a\"" -#: gnu/services.scm:662 gnu/services.scm:723 +#: gnu/services.scm:669 gnu/services.scm:762 #, scheme-format msgid "more than one target service of type '~a'" msgstr "mais de um serviço alvo do tipo \"~a\"" -#: gnu/services.scm:713 +#: gnu/services.scm:752 #, scheme-format msgid "service of type '~a' not found" msgstr "serviço do tipo \"~a\" não localizado" -#: gnu/system.scm:305 +#: gnu/system.scm:311 #, scheme-format msgid "unrecognized boot parameters for '~a'~%" msgstr "parâmetros de inicialização não reconhecidos para \"~a\"~%" -#: gnu/system.scm:695 +#: gnu/system.scm:712 #, scheme-format msgid "using a string for file '~a' is deprecated; use 'plain-file' instead~%" msgstr "usando um texto para arquivo \"~a\" está obsoleto; em vez disso, use \"plain-file\"~%" -#: gnu/system.scm:711 +#: gnu/system.scm:728 #, scheme-format msgid "using a monadic value for '~a' is deprecated; use 'plain-file' instead~%" msgstr "usando um valor monádico para \"~a\" está obsoleto; em vez disso, use \"plain-file\"~%" -#: gnu/system.scm:856 +#: gnu/system.scm:875 #, scheme-format msgid "~a: invalid locale name" msgstr "~a: nome de localidade inválido" -#: gnu/services/shepherd.scm:166 +#: gnu/services/shepherd.scm:177 #, scheme-format msgid "service '~a' provided more than once" msgstr "serviço \"~a\" fornecido mais de uma vez" -#: gnu/services/shepherd.scm:181 +#: gnu/services/shepherd.scm:192 #, scheme-format msgid "service '~a' requires '~a', which is not provided by any service" msgstr "serviço \"~a\" requer \"~a\", o que não é fornecido por nenhum serviço" -#: gnu/system/shadow.scm:231 +#: gnu/system/mapped-devices.scm:136 +#, scheme-format +msgid "you may need these modules in the initrd for ~a:~{ ~a~}" +msgstr "você pode precisar desses módulos no initrd para ~a:~{ ~a~}" + +#: gnu/system/mapped-devices.scm:140 +#, scheme-format +msgid "" +"Try adding them to the\n" +"@code{initrd-modules} field of your @code{operating-system} declaration, along\n" +"these lines:\n" +"\n" +"@example\n" +" (operating-system\n" +" ;; @dots{}\n" +" (initrd-modules (append (list~{ ~s~})\n" +" %base-initrd-modules)))\n" +"@end example\n" +msgstr "" +"Tente adicioná-los ao campo\n" +"@code{initrd-modules} de sua declaração @code{operating-system}, junto\n" +"com essas linhas:\n" +"\n" +"@example\n" +" (operating-system\n" +" ;; @dots{}\n" +" (initrd-modules (append (list~{ ~s~})\n" +" %base-initrd-modules)))\n" +"@end example\n" + +#: gnu/system/mapped-devices.scm:216 +#, scheme-format +msgid "no LUKS partition with UUID '~a'" +msgstr "nenhuma partição LUKS com UUID \"~a\"" + +#: gnu/system/shadow.scm:242 #, scheme-format msgid "supplementary group '~a' of user '~a' is undeclared" msgstr "grupo suplementar \"~a\" do usuário \"~a\" não está declarado" -#: gnu/system/shadow.scm:241 +#: gnu/system/shadow.scm:252 #, scheme-format msgid "primary group '~a' of user '~a' is undeclared" msgstr "grupo primário \"~a\" do usuário \"~a\" não está declarado" @@ -166,7 +201,7 @@ msgstr "argumento inválido: ~a~%" #: guix/scripts.scm:84 guix/scripts/download.scm:135 #: guix/scripts/import/cran.scm:82 guix/scripts/import/elpa.scm:77 -#: guix/scripts/publish.scm:844 guix/scripts/edit.scm:81 +#: guix/scripts/publish.scm:881 guix/scripts/edit.scm:81 #, scheme-format msgid "~A: unrecognized option~%" msgstr "~A: opção não reconhecida~%" @@ -187,17 +222,22 @@ msgstr "" "Considere executar \"guix pull\" seguido de\n" "\"~a\" para obter pacotes atualizados e atualizações de segurança.\n" -#: guix/scripts/build.scm:124 +#: guix/scripts/build.scm:81 +#, scheme-format +msgid "cannot access build log at '~a':~%" +msgstr "não foi possível acessar o log de compilação em \"~a\"~%" + +#: guix/scripts/build.scm:135 #, scheme-format msgid "failed to create GC root `~a': ~a~%" msgstr "falha ao criar raiz de GC \"~a\": ~a~%" -#: guix/scripts/build.scm:206 +#: guix/scripts/build.scm:237 #, scheme-format msgid "invalid replacement specification: ~s~%" msgstr "especificação de substituição inválida: ~s~%" -#: guix/scripts/build.scm:263 +#: guix/scripts/build.scm:294 msgid "" "\n" " --with-source=SOURCE\n" @@ -207,7 +247,7 @@ msgstr "" " --with-source=FONTE\n" " usa FONTE ao compilar o pacote correspondente" -#: guix/scripts/build.scm:266 +#: guix/scripts/build.scm:297 msgid "" "\n" " --with-input=PACKAGE=REPLACEMENT\n" @@ -217,7 +257,7 @@ msgstr "" " --with-input=PACOTE=SUBSTITUIÇÃO\n" " substitui a dependência PACOTE por SUBSTITUIÇÃO" -#: guix/scripts/build.scm:269 +#: guix/scripts/build.scm:300 msgid "" "\n" " --with-graft=PACKAGE=REPLACEMENT\n" @@ -227,12 +267,12 @@ msgstr "" " --with-graft=PACOTE=SUBSTITUIÇÃO\n" " insere SUBSTITUIÇÃO em pacotes referindo-se a PACOTE" -#: guix/scripts/build.scm:294 +#: guix/scripts/build.scm:325 #, scheme-format msgid "transformation '~a' had no effect on ~a~%" msgstr "a transformação \"~a\" não obteve efeito em ~a~%" -#: guix/scripts/build.scm:312 +#: guix/scripts/build.scm:343 msgid "" "\n" " -L, --load-path=DIR prepend DIR to the package module search path" @@ -241,7 +281,7 @@ msgstr "" " -L, --load-path=DIR insere DIR no início do caminho de pesquisa do\n" " módulo do pacote" -#: guix/scripts/build.scm:314 +#: guix/scripts/build.scm:345 msgid "" "\n" " -K, --keep-failed keep build tree of failed builds" @@ -249,7 +289,7 @@ msgstr "" "\n" " -K, --keep-failed mantém a árvore de compilado de pacotes falhos" -#: guix/scripts/build.scm:316 +#: guix/scripts/build.scm:347 msgid "" "\n" " -k, --keep-going keep going when some of the derivations fail" @@ -257,7 +297,7 @@ msgstr "" "\n" " -k, --keep-going continua mesmo se algumas das derivações falharem" -#: guix/scripts/build.scm:318 +#: guix/scripts/build.scm:349 msgid "" "\n" " -n, --dry-run do not build the derivations" @@ -265,7 +305,7 @@ msgstr "" "\n" " -n, --dry-run não compila as derivações" -#: guix/scripts/build.scm:320 +#: guix/scripts/build.scm:351 msgid "" "\n" " --fallback fall back to building when the substituter fails" @@ -273,7 +313,7 @@ msgstr "" "\n" " --fallback volta para compilação quando o substituto falhar" -#: guix/scripts/build.scm:322 +#: guix/scripts/build.scm:353 msgid "" "\n" " --no-substitutes build instead of resorting to pre-built substitutes" @@ -282,7 +322,7 @@ msgstr "" " --no-substitutes compila, em vez de recorrer a substitutos\n" " pré-construídos" -#: guix/scripts/build.scm:324 guix/scripts/size.scm:232 +#: guix/scripts/build.scm:355 guix/scripts/size.scm:232 msgid "" "\n" " --substitute-urls=URLS\n" @@ -292,7 +332,7 @@ msgstr "" " --substitute-urls=URLS\n" " obtém substituto a partir das URLS se autorizadas" -#: guix/scripts/build.scm:327 +#: guix/scripts/build.scm:358 msgid "" "\n" " --no-grafts do not graft packages" @@ -300,7 +340,7 @@ msgstr "" "\n" " --no-grafts não faz gráficos de pacotes" -#: guix/scripts/build.scm:329 +#: guix/scripts/build.scm:360 msgid "" "\n" " --no-build-hook do not attempt to offload builds via the build hook" @@ -309,7 +349,7 @@ msgstr "" " --no-build-hook não tenta descarregar compilações via hook de\n" " compilação" -#: guix/scripts/build.scm:331 +#: guix/scripts/build.scm:362 msgid "" "\n" " --max-silent-time=SECONDS\n" @@ -320,7 +360,7 @@ msgstr "" " marca a compilação como falha após transcorridos\n" " SEGUNDOS de silêncio" -#: guix/scripts/build.scm:334 +#: guix/scripts/build.scm:365 msgid "" "\n" " --timeout=SECONDS mark the build as failed after SECONDS of activity" @@ -330,7 +370,7 @@ msgstr "" " marca a compilação como falha após transcorridos\n" " SEGUNDOS de atividade" -#: guix/scripts/build.scm:336 +#: guix/scripts/build.scm:367 msgid "" "\n" " --verbosity=LEVEL use the given verbosity LEVEL" @@ -338,7 +378,7 @@ msgstr "" "\n" " --verbosity=NÍVEL usa o NÍVEL de detalhamento dado" -#: guix/scripts/build.scm:338 +#: guix/scripts/build.scm:369 msgid "" "\n" " --rounds=N build N times in a row to detect non-determinism" @@ -347,7 +387,7 @@ msgstr "" " --rounds=N compila N vezes de uma vez para detectar\n" " não determinismo" -#: guix/scripts/build.scm:340 +#: guix/scripts/build.scm:371 msgid "" "\n" " -c, --cores=N allow the use of up to N CPU cores for the build" @@ -355,7 +395,7 @@ msgstr "" "\n" " -c, --cores=N permite uso de até N núcleos de CPU para compilação" -#: guix/scripts/build.scm:342 +#: guix/scripts/build.scm:373 msgid "" "\n" " -M, --max-jobs=N allow at most N build jobs" @@ -363,12 +403,12 @@ msgstr "" "\n" " -M, --max-jobs=N permite no máximo N trabalhos de compilação" -#: guix/scripts/build.scm:448 guix/scripts/build.scm:455 +#: guix/scripts/build.scm:479 guix/scripts/build.scm:486 #, scheme-format msgid "not a number: '~a' option argument: ~a~%" msgstr "não é um número: argumento da opção \"~a\": ~a~%" -#: guix/scripts/build.scm:474 +#: guix/scripts/build.scm:505 msgid "" "Usage: guix build [OPTION]... PACKAGE-OR-DERIVATION...\n" "Build the given PACKAGE-OR-DERIVATION and return their output paths.\n" @@ -376,7 +416,7 @@ msgstr "" "Uso: guix build [OPÇÃO]... PACOTE-OU-DERIVAÇÃO...\n" "Compila o PACOTE-OU-DERIVAÇÃO dado e returna seus caminhos de saída.\n" -#: guix/scripts/build.scm:476 +#: guix/scripts/build.scm:507 msgid "" "\n" " -e, --expression=EXPR build the package or derivation EXPR evaluates to" @@ -384,7 +424,7 @@ msgstr "" "\n" " -e, --expression=EXPR compila o pacote ou derivação que EXPR corresponder" -#: guix/scripts/build.scm:478 +#: guix/scripts/build.scm:509 msgid "" "\n" " -f, --file=FILE build the package or derivation that the code within\n" @@ -394,7 +434,7 @@ msgstr "" " -f, --file=ARQUIVO compila o pacote ou derivação que o código dentro\n" " de ARQUIVO avaliar" -#: guix/scripts/build.scm:481 +#: guix/scripts/build.scm:512 msgid "" "\n" " -S, --source build the packages' source derivations" @@ -402,7 +442,7 @@ msgstr "" "\n" " -S, --source compila as derivações de fontes do pacote" -#: guix/scripts/build.scm:483 +#: guix/scripts/build.scm:514 msgid "" "\n" " --sources[=TYPE] build source derivations; TYPE may optionally be one\n" @@ -412,7 +452,7 @@ msgstr "" " --sources[=TIPO] compila derivações de fonte; como opção, TIPO pode\n" " um entre \"package\", \"all\" (padrão) ou \"transitive\"" -#: guix/scripts/build.scm:486 guix/scripts/pack.scm:338 +#: guix/scripts/build.scm:517 guix/scripts/pack.scm:357 msgid "" "\n" " -s, --system=SYSTEM attempt to build for SYSTEM--e.g., \"i686-linux\"" @@ -420,7 +460,7 @@ msgstr "" "\n" " -s, --system=SISTEMA tenta compilar para SISTEMA (ex.: \"i686-linux\")" -#: guix/scripts/build.scm:488 guix/scripts/pack.scm:340 +#: guix/scripts/build.scm:519 guix/scripts/pack.scm:359 msgid "" "\n" " --target=TRIPLET cross-build for TRIPLET--e.g., \"armel-linux-gnu\"" @@ -428,7 +468,7 @@ msgstr "" "\n" " --target=TRIO compilação cruzada para TRIO (ex: \"armel-linux-gnu\")" -#: guix/scripts/build.scm:490 +#: guix/scripts/build.scm:521 msgid "" "\n" " -d, --derivations return the derivation paths of the given packages" @@ -436,7 +476,7 @@ msgstr "" "\n" " -d, --derivations retorna os caminhos de derivação dos pacotes dados" -#: guix/scripts/build.scm:492 +#: guix/scripts/build.scm:523 msgid "" "\n" " --check rebuild items to check for non-determinism issues" @@ -445,7 +485,7 @@ msgstr "" " --check recompila itens para verificar questões de\n" " não determinismo" -#: guix/scripts/build.scm:494 +#: guix/scripts/build.scm:525 msgid "" "\n" " --repair repair the specified items" @@ -453,7 +493,7 @@ msgstr "" "\n" " --repair conserta os itens especificados" -#: guix/scripts/build.scm:496 +#: guix/scripts/build.scm:527 msgid "" "\n" " -r, --root=FILE make FILE a symlink to the result, and register it\n" @@ -463,7 +503,7 @@ msgstr "" " -r, --root=ARQUIVO faz do ARQUIVO um link simbólico para o resultado\n" " e o registra, como um coletor de lixo" -#: guix/scripts/build.scm:499 +#: guix/scripts/build.scm:530 msgid "" "\n" " -q, --quiet do not show the build log" @@ -471,7 +511,7 @@ msgstr "" "\n" " -q, --quiet não mostra o log de compilação" -#: guix/scripts/build.scm:501 +#: guix/scripts/build.scm:532 msgid "" "\n" " --log-file return the log file names for the given derivations" @@ -480,16 +520,16 @@ msgstr "" " --log-file retorna o os nomes de arquivos de log para as\n" " derivações fornecidas" -#: guix/scripts/build.scm:508 guix/scripts/download.scm:83 -#: guix/scripts/package.scm:425 guix/scripts/gc.scm:74 +#: guix/scripts/build.scm:539 guix/scripts/download.scm:83 +#: guix/scripts/package.scm:435 guix/scripts/gc.scm:76 #: guix/scripts/hash.scm:59 guix/scripts/import.scm:92 -#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:110 -#: guix/scripts/substitute.scm:889 guix/scripts/system.scm:870 -#: guix/scripts/lint.scm:1090 guix/scripts/publish.scm:94 +#: guix/scripts/import/cran.scm:47 guix/scripts/pull.scm:111 +#: guix/scripts/substitute.scm:879 guix/scripts/system.scm:970 +#: guix/scripts/lint.scm:1122 guix/scripts/publish.scm:94 #: guix/scripts/edit.scm:44 guix/scripts/size.scm:243 -#: guix/scripts/graph.scm:432 guix/scripts/challenge.scm:241 -#: guix/scripts/copy.scm:122 guix/scripts/pack.scm:349 -#: guix/scripts/weather.scm:156 guix/scripts/container.scm:33 +#: guix/scripts/graph.scm:466 guix/scripts/challenge.scm:241 +#: guix/scripts/copy.scm:122 guix/scripts/pack.scm:372 +#: guix/scripts/weather.scm:258 guix/scripts/container.scm:33 #: guix/scripts/container/exec.scm:43 msgid "" "\n" @@ -498,16 +538,16 @@ msgstr "" "\n" " -h, --help exibe esta ajuda e sai" -#: guix/scripts/build.scm:510 guix/scripts/download.scm:85 -#: guix/scripts/package.scm:427 guix/scripts/gc.scm:76 +#: guix/scripts/build.scm:541 guix/scripts/download.scm:85 +#: guix/scripts/package.scm:437 guix/scripts/gc.scm:78 #: guix/scripts/hash.scm:61 guix/scripts/import.scm:94 -#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:112 -#: guix/scripts/substitute.scm:891 guix/scripts/system.scm:872 -#: guix/scripts/lint.scm:1094 guix/scripts/publish.scm:96 +#: guix/scripts/import/cran.scm:49 guix/scripts/pull.scm:113 +#: guix/scripts/substitute.scm:881 guix/scripts/system.scm:972 +#: guix/scripts/lint.scm:1126 guix/scripts/publish.scm:96 #: guix/scripts/edit.scm:46 guix/scripts/size.scm:245 -#: guix/scripts/graph.scm:434 guix/scripts/challenge.scm:243 -#: guix/scripts/copy.scm:124 guix/scripts/pack.scm:351 -#: guix/scripts/weather.scm:158 guix/scripts/container.scm:35 +#: guix/scripts/graph.scm:468 guix/scripts/challenge.scm:243 +#: guix/scripts/copy.scm:124 guix/scripts/pack.scm:374 +#: guix/scripts/weather.scm:260 guix/scripts/container.scm:35 #: guix/scripts/container/exec.scm:45 msgid "" "\n" @@ -516,7 +556,7 @@ msgstr "" "\n" " -V, --version exibe informações da versão e sai" -#: guix/scripts/build.scm:537 +#: guix/scripts/build.scm:568 #, scheme-format msgid "" "invalid argument: '~a' option argument: ~a, ~\n" @@ -525,22 +565,22 @@ msgstr "" "argumento inválido: argumento da opção \"~a\": ~a, ~\n" "deve ser um entre \"package\", \"all\" ou \"transitive\"~%" -#: guix/scripts/build.scm:590 +#: guix/scripts/build.scm:621 #, scheme-format msgid "~s: not something we can build~%" msgstr "~s: não é algo que podemos compilar~%" -#: guix/scripts/build.scm:644 +#: guix/scripts/build.scm:675 #, scheme-format msgid "~a: warning: package '~a' has no source~%" msgstr "~a: aviso: pacote \"~a\" não possui fontes~%" -#: guix/scripts/build.scm:678 +#: guix/scripts/build.scm:709 #, scheme-format msgid "no build log for '~a'~%" msgstr "nenhum log de compilação para \"~a\"~%" -#: guix/discovery.scm:88 +#: guix/discovery.scm:90 #, scheme-format msgid "cannot access `~a': ~a~%" msgstr "não foi possível acessar \"~a\": ~a~%" @@ -592,8 +632,8 @@ msgstr "" msgid "unsupported hash format: ~a~%" msgstr "sem suporte ao formato de hash: ~a~%" -#: guix/scripts/download.scm:138 guix/scripts/package.scm:906 -#: guix/scripts/publish.scm:846 +#: guix/scripts/download.scm:138 guix/scripts/package.scm:924 +#: guix/scripts/publish.scm:883 #, scheme-format msgid "~A: extraneous argument~%" msgstr "~A: argumento estranho~%" @@ -649,35 +689,35 @@ msgstr "não será removida a geração ~a, que é o atual~%" msgid "no matching generation~%" msgstr "nenhuma geração correspondente~%" -#: guix/scripts/package.scm:193 guix/scripts/package.scm:716 -#: guix/scripts/system.scm:558 +#: guix/scripts/package.scm:193 guix/scripts/package.scm:730 +#: guix/scripts/system.scm:573 #, scheme-format msgid "invalid syntax: ~a~%" msgstr "sintaxe inválida: ~a~%" -#: guix/scripts/package.scm:219 +#: guix/scripts/package.scm:222 #, scheme-format msgid "nothing to be done~%" msgstr "nada para ser feito~%" -#: guix/scripts/package.scm:233 +#: guix/scripts/package.scm:236 #, scheme-format msgid "~a package in profile~%" msgid_plural "~a packages in profile~%" msgstr[0] "~a pacote no perfil~%" msgstr[1] "~a pacotes no perfil~%" -#: guix/scripts/package.scm:313 +#: guix/scripts/package.scm:320 #, scheme-format msgid "package '~a' no longer exists~%" msgstr "o pacote \"~a\" não existe mais~%" -#: guix/scripts/package.scm:351 +#: guix/scripts/package.scm:358 #, scheme-format msgid "The following environment variable definitions may be needed:~%" msgstr "As seguintes definições de variável de ambiente podem ser necessárias:~%" -#: guix/scripts/package.scm:366 +#: guix/scripts/package.scm:374 msgid "" "Usage: guix package [OPTION]...\n" "Install, remove, or upgrade packages in a single transaction.\n" @@ -685,7 +725,7 @@ msgstr "" "Uso: guix package [OPÇÃO]...\n" "Instala, remove ou atualiza pacotes em uma única transação.\n" -#: guix/scripts/package.scm:368 +#: guix/scripts/package.scm:376 msgid "" "\n" " -i, --install PACKAGE ...\n" @@ -695,7 +735,7 @@ msgstr "" " -i, --install PACOTE ...\n" " instala PACOTEs" -#: guix/scripts/package.scm:371 +#: guix/scripts/package.scm:379 msgid "" "\n" " -e, --install-from-expression=EXP\n" @@ -705,7 +745,7 @@ msgstr "" " -e, --install-from-expression=EXP\n" " instala o pacote que EXPR corresponder" -#: guix/scripts/package.scm:374 +#: guix/scripts/package.scm:382 msgid "" "\n" " -f, --install-from-file=FILE\n" @@ -717,7 +757,7 @@ msgstr "" " instala o pacote cujo código dentro do ARQUIVO\n" " corresponder" -#: guix/scripts/package.scm:378 +#: guix/scripts/package.scm:386 msgid "" "\n" " -r, --remove PACKAGE ...\n" @@ -727,7 +767,7 @@ msgstr "" " -r, --remove PACOTE ...\n" " remove PACOTEs" -#: guix/scripts/package.scm:381 +#: guix/scripts/package.scm:389 msgid "" "\n" " -u, --upgrade[=REGEXP] upgrade all the installed packages matching REGEXP" @@ -736,7 +776,7 @@ msgstr "" " -u, --upgrade[=REGEXP] atualiza todos os pacotes instalados correspondendo\n" " à REGEXP" -#: guix/scripts/package.scm:383 +#: guix/scripts/package.scm:391 msgid "" "\n" " -m, --manifest=FILE create a new profile generation with the manifest\n" @@ -746,7 +786,7 @@ msgstr "" " -m, --manifest=ARQUIVO cria a geração de um novo perfil com o manifesto\n" " do ARQUIVO" -#: guix/scripts/package.scm:386 +#: guix/scripts/package.scm:394 msgid "" "\n" " --do-not-upgrade[=REGEXP] do not upgrade any packages matching REGEXP" @@ -754,7 +794,7 @@ msgstr "" "\n" " --do-not-upgrade[=REGEXP] não atualiza pacotes correspondente a REGEXP" -#: guix/scripts/package.scm:388 +#: guix/scripts/package.scm:396 msgid "" "\n" " --roll-back roll back to the previous generation" @@ -762,7 +802,7 @@ msgstr "" "\n" " --roll-back reverte para a geração anterior" -#: guix/scripts/package.scm:390 +#: guix/scripts/package.scm:398 msgid "" "\n" " --search-paths[=KIND]\n" @@ -772,7 +812,7 @@ msgstr "" " --search-paths[=TIPO]\n" " exibe definições necessárias de variável de ambiente" -#: guix/scripts/package.scm:393 +#: guix/scripts/package.scm:401 msgid "" "\n" " -l, --list-generations[=PATTERN]\n" @@ -782,7 +822,7 @@ msgstr "" " -l, --list-generations[=PADRÃO]\n" " lista criações correspondendo a PADRÃO" -#: guix/scripts/package.scm:396 +#: guix/scripts/package.scm:404 msgid "" "\n" " -d, --delete-generations[=PATTERN]\n" @@ -792,7 +832,7 @@ msgstr "" " -d, --delete-generations[=PADRÃO]\n" " exclui gerações correspondendo a PADRÃO" -#: guix/scripts/package.scm:399 +#: guix/scripts/package.scm:407 msgid "" "\n" " -S, --switch-generation=PATTERN\n" @@ -802,7 +842,7 @@ msgstr "" " -S, --switch-generations=PADRÃO\n" " alterna para a geração correspondendo a PADRÃO" -#: guix/scripts/package.scm:402 +#: guix/scripts/package.scm:410 msgid "" "\n" " -p, --profile=PROFILE use PROFILE instead of the user's default profile" @@ -810,7 +850,15 @@ msgstr "" "\n" " -p, --profile=PERFIL usa PERFIL em vez do perfil padrão do usuário" -#: guix/scripts/package.scm:405 +#: guix/scripts/package.scm:413 +msgid "" +"\n" +" --allow-collisions do not treat collisions in the profile as an error" +msgstr "" +"\n" +" --allow-collisions não trata colisões no perfil como um erro" + +#: guix/scripts/package.scm:415 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the profile" @@ -818,7 +866,7 @@ msgstr "" "\n" " --bootstrap usa a inicialização do Guile para compilar o perfil" -#: guix/scripts/package.scm:407 guix/scripts/pull.scm:98 +#: guix/scripts/package.scm:417 guix/scripts/pull.scm:99 msgid "" "\n" " --verbose produce verbose output" @@ -826,7 +874,7 @@ msgstr "" "\n" " --verbose produz uma saída mais detalhada" -#: guix/scripts/package.scm:410 +#: guix/scripts/package.scm:420 msgid "" "\n" " -s, --search=REGEXP search in synopsis and description using REGEXP" @@ -834,7 +882,7 @@ msgstr "" "\n" " -s, --search=REGEXP pesquisa na sinopse e descrição usando REGEXP" -#: guix/scripts/package.scm:412 +#: guix/scripts/package.scm:422 msgid "" "\n" " -I, --list-installed[=REGEXP]\n" @@ -844,7 +892,7 @@ msgstr "" " -I, --list-installed[=REGEXP]\n" " lista pacotes instalados correspondentes a REGEXP" -#: guix/scripts/package.scm:415 +#: guix/scripts/package.scm:425 msgid "" "\n" " -A, --list-available[=REGEXP]\n" @@ -854,7 +902,7 @@ msgstr "" " -A, --list-available[=REGEXP]\n" " lista pacotes disponíveis correspondentes a REGEXP" -#: guix/scripts/package.scm:418 +#: guix/scripts/package.scm:428 msgid "" "\n" " --show=PACKAGE show details about PACKAGE" @@ -862,33 +910,33 @@ msgstr "" "\n" " --show=PACOTE mostra detalhes sobre o PACOTE" -#: guix/scripts/package.scm:470 +#: guix/scripts/package.scm:480 #, scheme-format msgid "upgrade regexp '~a' looks like a command-line option~%" msgstr "a regexp de atualização \"~a\" se parece com uma opção de linha de comando~%" -#: guix/scripts/package.scm:473 +#: guix/scripts/package.scm:483 #, scheme-format msgid "is this intended?~%" msgstr "isso é intencional?~%" -#: guix/scripts/package.scm:518 +#: guix/scripts/package.scm:528 #, scheme-format msgid "~a: unsupported kind of search path~%" msgstr "~a: sem suporte ao tipo de caminho de pesquisa~%" # geração, criação? -#: guix/scripts/package.scm:815 +#: guix/scripts/package.scm:829 #, scheme-format msgid "cannot switch to generation '~a'~%" msgstr "não foi possível alternar para a geração \"~a\"~%" -#: guix/scripts/package.scm:831 +#: guix/scripts/package.scm:846 #, scheme-format msgid "would install new manifest from '~a' with ~d entries~%" msgstr "instalaria novo manifesto a partir de \"~a\" com entradas ~d~%" -#: guix/scripts/package.scm:833 +#: guix/scripts/package.scm:848 #, scheme-format msgid "installing new manifest from '~a' with ~d entries~%" msgstr "instalando novo manifesto a partir de \"~a\" com entradas ~d~%" @@ -977,7 +1025,15 @@ msgstr "" "\n" " --referrers lista as referências de CAMINHOS" -#: guix/scripts/gc.scm:65 +#: guix/scripts/gc.scm:64 +msgid "" +"\n" +" --derivers list the derivers of PATHS" +msgstr "" +"\n" +" --derivers lista os derivadores de CAMINHOS" + +#: guix/scripts/gc.scm:67 msgid "" "\n" " --verify[=OPTS] verify the integrity of the store; OPTS is a\n" @@ -990,7 +1046,7 @@ msgstr "" " \"repair\" e \"contents\"" # são "arquivos inalcançáveis", segundo 'info guix', sobre o 'gc' -#: guix/scripts/gc.scm:69 +#: guix/scripts/gc.scm:71 msgid "" "\n" " --list-failures list cached build failures" @@ -998,7 +1054,7 @@ msgstr "" "\n" " --list-failures lista falhas de compilação em cache" -#: guix/scripts/gc.scm:71 +#: guix/scripts/gc.scm:73 msgid "" "\n" " --clear-failures remove PATHS from the set of cached failures" @@ -1006,25 +1062,30 @@ msgstr "" "\n" " --clear-failures remove CAMINHOS do conjunto de falhas em cache" -#: guix/scripts/gc.scm:100 +#: guix/scripts/gc.scm:87 +#, scheme-format +msgid "~a: invalid '--verify' option~%" +msgstr "~a: opção \"--verify\" inválida~%" + +#: guix/scripts/gc.scm:117 #, scheme-format msgid "invalid amount of storage: ~a~%" msgstr "quantidade inválida de armazenamento: ~a~%" -#: guix/scripts/gc.scm:185 +#: guix/scripts/gc.scm:202 msgid "already ~h bytes available on ~a, nothing to do~%" msgstr "~h bytes já disponíveis em ~a, nada para fazer~%" -#: guix/scripts/gc.scm:188 +#: guix/scripts/gc.scm:205 msgid "freeing ~h bytes~%" msgstr "liberando ~h bytes~%" -#: guix/scripts/gc.scm:200 +#: guix/scripts/gc.scm:217 #, scheme-format msgid "extraneous arguments: ~{~a ~}~%" msgstr "argumentos estranhos: ~{~a ~}~%" -#: guix/scripts/gc.scm:220 guix/scripts/gc.scm:223 +#: guix/scripts/gc.scm:237 guix/scripts/gc.scm:240 msgid "freed ~h bytes~%" msgstr "~h bytes liberados~%" @@ -1058,13 +1119,13 @@ msgstr "" "\n" " -r, --recursive computa o hash no AQUIVO recursivamente" -#: guix/scripts/hash.scm:150 guix/ui.scm:326 guix/ui.scm:601 guix/ui.scm:654 +#: guix/scripts/hash.scm:150 guix/ui.scm:346 guix/ui.scm:656 guix/ui.scm:709 #, scheme-format msgid "~a~%" msgstr "~a~%" -#: guix/scripts/hash.scm:153 guix/scripts/system.scm:1022 -#: guix/scripts/system.scm:1031 guix/scripts/system.scm:1038 +#: guix/scripts/hash.scm:153 guix/scripts/system.scm:1138 +#: guix/scripts/system.scm:1147 guix/scripts/system.scm:1154 #, scheme-format msgid "wrong number of arguments~%" msgstr "número errado de argumentos~%" @@ -1183,7 +1244,7 @@ msgstr "" " export GUILE_LOAD_COMPILED_PATH=$HOME/.guix-profile/lib/guile/~a/site-ccache:$GUILE_LOAD_COMPILED_PATH\n" "\n" -#: guix/scripts/pull.scm:96 +#: guix/scripts/pull.scm:97 msgid "" "Usage: guix pull [OPTION]...\n" "Download and deploy the latest version of Guix.\n" @@ -1191,7 +1252,7 @@ msgstr "" "Uso: guix pull [OPÇÃO]...\n" "Baixa e implanta a última versão do Guix.\n" -#: guix/scripts/pull.scm:100 +#: guix/scripts/pull.scm:101 msgid "" "\n" " --url=URL download from the Git repository at URL" @@ -1199,7 +1260,7 @@ msgstr "" "\n" " --url=URL baixa do repositório Git na URL" -#: guix/scripts/pull.scm:102 +#: guix/scripts/pull.scm:103 msgid "" "\n" " --commit=COMMIT download the specified COMMIT" @@ -1207,7 +1268,7 @@ msgstr "" "\n" " --commit=COMMIT baixa o COMMIT especificado" -#: guix/scripts/pull.scm:104 +#: guix/scripts/pull.scm:105 msgid "" "\n" " --branch=BRANCH download the tip of the specified BRANCH" @@ -1215,7 +1276,7 @@ msgstr "" "\n" " --branch=RAMO baixa a dica do RAMO especificado" -#: guix/scripts/pull.scm:106 +#: guix/scripts/pull.scm:107 msgid "" "\n" " --bootstrap use the bootstrap Guile to build the new Guix" @@ -1223,46 +1284,46 @@ msgstr "" "\n" " --bootstrap usa inicialização do Guile para compilar o novo Guix" -#: guix/scripts/pull.scm:192 +#: guix/scripts/pull.scm:193 msgid "Guix already up to date\n" msgstr "Guix já está atualizado\n" -#: guix/scripts/pull.scm:197 +#: guix/scripts/pull.scm:198 #, scheme-format msgid "updated ~a successfully deployed under `~a'~%" msgstr "~a atualizado foi implantado com sucesso sob \"~a\"~%" -#: guix/scripts/pull.scm:200 +#: guix/scripts/pull.scm:201 #, scheme-format msgid "failed to update Guix, check the build log~%" msgstr "falha ao atualizar Guix; verifique o log de compilação~%" -#: guix/scripts/pull.scm:216 +#: guix/scripts/pull.scm:217 #, scheme-format msgid "cannot enforce use of the Let's Encrypt certificates~%" msgstr "não foi possível forçar o uso de certificados Let's Encrypt~%" -#: guix/scripts/pull.scm:218 +#: guix/scripts/pull.scm:219 #, scheme-format msgid "please upgrade Guile-Git~%" msgstr "por favor, atualize o Guile-Git~%" -#: guix/scripts/pull.scm:226 +#: guix/scripts/pull.scm:227 #, scheme-format msgid "Git error ~a~%" msgstr "erro no Git ~a~%" -#: guix/scripts/pull.scm:228 +#: guix/scripts/pull.scm:229 #, scheme-format msgid "Git error: ~a~%" msgstr "erro no Git: ~a~%" -#: guix/scripts/pull.scm:262 +#: guix/scripts/pull.scm:263 #, scheme-format msgid "Updating from Git repository at '~a'...~%" msgstr "Atualizando a partir do repositório Git \"~a\"...~%" -#: guix/scripts/pull.scm:271 +#: guix/scripts/pull.scm:272 #, scheme-format msgid "Building from Git commit ~a...~%" msgstr "Compilando a partir do commit Git ~a...~%" @@ -1287,92 +1348,92 @@ msgstr "enquanto obtinha ~a: servidor está um pouco lento~%" msgid "try `--no-substitutes' if the problem persists~%" msgstr "tente \"--no-substitutes\" se o problema persistir~%" -#: guix/scripts/substitute.scm:233 +#: guix/scripts/substitute.scm:225 #, scheme-format msgid "unsupported substitute URI scheme: ~a~%" msgstr "sem suporte ao esquema de URI de substituto: ~a~%" -#: guix/scripts/substitute.scm:268 +#: guix/scripts/substitute.scm:260 #, scheme-format msgid "while fetching '~a': ~a (~s)~%" msgstr "enquanto obtinha \"~a\": ~a (~s)~%" -#: guix/scripts/substitute.scm:273 +#: guix/scripts/substitute.scm:265 #, scheme-format msgid "ignoring substitute server at '~s'~%" msgstr "ignorando servidor substituto em \"~s\"~%" -#: guix/scripts/substitute.scm:323 +#: guix/scripts/substitute.scm:315 #, scheme-format msgid "signature version must be a number: ~s~%" msgstr "a versão de assinatura deve ser um número: ~s~%" -#: guix/scripts/substitute.scm:327 +#: guix/scripts/substitute.scm:319 #, scheme-format msgid "unsupported signature version: ~a~%" msgstr "sem suporte à versão da assinatura: ~a~%" -#: guix/scripts/substitute.scm:335 +#: guix/scripts/substitute.scm:327 #, scheme-format msgid "signature is not a valid s-expression: ~s~%" msgstr "a assinatura não é uma expressão-s válida: ~s~%" -#: guix/scripts/substitute.scm:339 +#: guix/scripts/substitute.scm:331 #, scheme-format msgid "invalid format of the signature field: ~a~%" msgstr "formato inválido do campo de assinatura: ~a~%" -#: guix/scripts/substitute.scm:374 +#: guix/scripts/substitute.scm:366 #, scheme-format msgid "invalid signature for '~a'~%" msgstr "assinatura inválida para \"~a\"~%" -#: guix/scripts/substitute.scm:376 +#: guix/scripts/substitute.scm:368 #, scheme-format msgid "hash mismatch for '~a'~%" msgstr "hash incompatível para \"~a\"~%" -#: guix/scripts/substitute.scm:378 +#: guix/scripts/substitute.scm:370 #, scheme-format msgid "'~a' is signed with an unauthorized key~%" msgstr "\"~a\" está assinado com uma chave não autorizada~%" -#: guix/scripts/substitute.scm:380 +#: guix/scripts/substitute.scm:372 #, scheme-format msgid "signature on '~a' is corrupt~%" msgstr "a assinatura em \"~a\" está corrompida~%" -#: guix/scripts/substitute.scm:465 +#: guix/scripts/substitute.scm:457 #, scheme-format msgid "'~a' does not name a store item~%" msgstr "\"~a\" não é o nome de um item do armazenamento~%" -#: guix/scripts/substitute.scm:629 +#: guix/scripts/substitute.scm:619 #, scheme-format msgid "updating list of substitutes from '~a'... ~5,1f%" msgstr "atualizando a lista de substitutos de \"~a\"... ~5,1f%" -#: guix/scripts/substitute.scm:693 +#: guix/scripts/substitute.scm:683 #, scheme-format msgid "~s: unsupported server URI scheme~%" msgstr "~s: sem suporte ao esquema de URI de servidor~%" -#: guix/scripts/substitute.scm:703 +#: guix/scripts/substitute.scm:693 #, scheme-format msgid "'~a' uses different store '~a'; ignoring it~%" msgstr "\"~a\" usa um armazenamento diferente \"~a\"; ignorando-o~%" -#: guix/scripts/substitute.scm:863 +#: guix/scripts/substitute.scm:853 #, scheme-format msgid "host name lookup error: ~a~%" msgstr "erro na busca pelo nome da máquina: ~a~%" -#: guix/scripts/substitute.scm:868 +#: guix/scripts/substitute.scm:858 #, scheme-format msgid "TLS error in procedure '~a': ~a~%" msgstr "erro TLS no procedimento \"~a\": ~a~%" -#: guix/scripts/substitute.scm:879 +#: guix/scripts/substitute.scm:869 msgid "" "Usage: guix substitute [OPTION]...\n" "Internal tool to substitute a pre-built binary to a local build.\n" @@ -1381,7 +1442,7 @@ msgstr "" "Ferramenta interna para substituir um binário pré-compilado para\n" "uma compilação local.\n" -#: guix/scripts/substitute.scm:881 +#: guix/scripts/substitute.scm:871 msgid "" "\n" " --query report on the availability of substitutes for the\n" @@ -1392,7 +1453,7 @@ msgstr "" " nomes de arquivos de armazenamento passados na\n" " entrada padrão" -#: guix/scripts/substitute.scm:884 +#: guix/scripts/substitute.scm:874 msgid "" "\n" " --substitute STORE-FILE DESTINATION\n" @@ -1404,26 +1465,26 @@ msgstr "" " baixa ARQUIVO-ARMAZENAMENTO e armazena-o como um\n" " Nar no arquivo DESTINO" -#: guix/scripts/substitute.scm:949 +#: guix/scripts/substitute.scm:939 #, scheme-format msgid "no valid substitute for '~a'~%" msgstr "nenhum substituto válido para \"~a\"~%" -#: guix/scripts/substitute.scm:956 +#: guix/scripts/substitute.scm:946 #, scheme-format msgid "Downloading ~a...~%" msgstr "Baixando ~a...~%" -#: guix/scripts/substitute.scm:1012 +#: guix/scripts/substitute.scm:1002 msgid "ACL for archive imports seems to be uninitialized, substitutes may be unavailable\n" msgstr "ACL para importações de pacote parece não estar inicializado, substitutos podem estar indisponíveis\n" -#: guix/scripts/substitute.scm:1066 +#: guix/scripts/substitute.scm:1056 #, scheme-format msgid "~a: invalid URI~%" msgstr "~a: URI inválido~%" -#: guix/scripts/substitute.scm:1126 +#: guix/scripts/substitute.scm:1116 #, scheme-format msgid "~a: unrecognized options~%" msgstr "~a: opções desconhecidas~%" @@ -1462,152 +1523,172 @@ msgstr "" msgid "wrong arguments" msgstr "argumentos errados" -#: guix/scripts/system.scm:135 +#: guix/scripts/system.scm:141 #, scheme-format msgid "failed to register '~a' under '~a'~%" msgstr "falha ao registrar \"~a\" sob \"~a\"~%" -#: guix/scripts/system.scm:174 +#: guix/scripts/system.scm:152 +#, scheme-format +msgid "copying to '~a'..." +msgstr "copiando para \"~a\"..." + +#: guix/scripts/system.scm:187 #, scheme-format msgid "failed to install bootloader ~a~%" msgstr "falha ao instalar carregador de inicialização ~a~%" -#: guix/scripts/system.scm:194 +#: guix/scripts/system.scm:207 #, scheme-format msgid "initializing the current root file system~%" msgstr "inicialização do sistema de arquivos raiz atual~%" -#: guix/scripts/system.scm:208 +#: guix/scripts/system.scm:221 #, scheme-format msgid "not running as 'root', so the ownership of '~a' may be incorrect!~%" msgstr "execução como não \"root\", então o dono de \"~a\" pode estar incorreto!~%" -#: guix/scripts/system.scm:253 +#: guix/scripts/system.scm:266 #, scheme-format msgid "while talking to shepherd: ~a~%" msgstr "enquanto falava com o shepherd: ~a~%" -#: guix/scripts/system.scm:260 +#: guix/scripts/system.scm:273 #, scheme-format msgid "service '~a' could not be found~%" msgstr "o serviço \"~a\" não pôde ser localizado~%" -#: guix/scripts/system.scm:263 +#: guix/scripts/system.scm:276 #, scheme-format msgid "service '~a' does not have an action '~a'~%" msgstr "o serviço \"~a\" não possui uma ação \"~a\"~%" -#: guix/scripts/system.scm:267 +#: guix/scripts/system.scm:280 #, scheme-format msgid "exception caught while executing '~a' on service '~a':~%" msgstr "exceção encontrada ao executar \"~a\" no serviço \"~a\":~%" -#: guix/scripts/system.scm:275 +#: guix/scripts/system.scm:288 #, scheme-format msgid "something went wrong: ~s~%" msgstr "algo deu errado: ~s~%" -#: guix/scripts/system.scm:278 +#: guix/scripts/system.scm:291 #, scheme-format msgid "shepherd error~%" msgstr "erro do shepherd~%" -#: guix/scripts/system.scm:295 +#: guix/scripts/system.scm:308 #, scheme-format msgid "failed to obtain list of shepherd services~%" msgstr "falha ao obter lista de serviços do shepherd~%" -#: guix/scripts/system.scm:315 +#: guix/scripts/system.scm:328 #, scheme-format msgid "unloading service '~a'...~%" msgstr "descarregando serviço \"~a\"...~%" -#: guix/scripts/system.scm:323 +#: guix/scripts/system.scm:336 #, scheme-format msgid "loading new services:~{ ~a~}...~%" msgstr "carregando novos serviços:~{ ~a~}...~%" -#: guix/scripts/system.scm:347 +#: guix/scripts/system.scm:362 #, scheme-format msgid "activating system...~%" msgstr "ativando sistema...~%" # geração, criação? -#: guix/scripts/system.scm:423 +#: guix/scripts/system.scm:438 #, scheme-format msgid "cannot switch to system generation '~a'~%" msgstr "não foi possível alternar para a geração do sistema \"~a\"~%" -#: guix/scripts/system.scm:494 +#: guix/scripts/system.scm:509 msgid "the DAG of services" msgstr "o DAG de serviços" -#: guix/scripts/system.scm:507 +#: guix/scripts/system.scm:522 msgid "the dependency graph of shepherd services" msgstr "o gráfico de dependência de serviços do shepherd" -#: guix/scripts/system.scm:531 +#: guix/scripts/system.scm:546 #, scheme-format msgid " file name: ~a~%" msgstr " nome de arquivo: ~a~%" -#: guix/scripts/system.scm:532 +#: guix/scripts/system.scm:547 #, scheme-format msgid " canonical file name: ~a~%" msgstr " nome de arquivo canônico: ~a~%" #. TRANSLATORS: Please preserve the two-space indentation. -#: guix/scripts/system.scm:534 +#: guix/scripts/system.scm:549 #, scheme-format msgid " label: ~a~%" msgstr " rótulo: ~a~%" -#: guix/scripts/system.scm:535 +#: guix/scripts/system.scm:550 #, scheme-format msgid " bootloader: ~a~%" msgstr " carregador de inicialização: ~a~%" -#: guix/scripts/system.scm:536 +#: guix/scripts/system.scm:551 #, scheme-format msgid " root device: ~a~%" msgstr " dispositivo raiz: ~a~%" -#: guix/scripts/system.scm:540 +#: guix/scripts/system.scm:555 #, scheme-format msgid " kernel: ~a~%" msgstr " kernel: ~a~%" -#: guix/scripts/system.scm:600 +#: guix/scripts/system.scm:626 +#, scheme-format +msgid "~a: error: device '~a' not found: ~a~%" +msgstr "~a: erro: dispositivo \"~a\" não localizado: ~a~%" + +#: guix/scripts/system.scm:630 +#, scheme-format +msgid "" +"If '~a' is a file system\n" +"label, you need to add @code{(title 'label)} to your @code{file-system}\n" +"definition." +msgstr "" +"Se \"~a\" for um rótulo de sistema de arquivos,\n" +"você precisa adicionar @code{(title 'label)} à sua definição @code{file-system}" + +#: guix/scripts/system.scm:637 #, scheme-format msgid "~a: error: file system with label '~a' not found~%" msgstr "~a: erro: sistema de arquivos com rótulo \"~a\" não localizado~%" -#: guix/scripts/system.scm:606 +#: guix/scripts/system.scm:643 #, scheme-format msgid "~a: error: file system with UUID '~a' not found~%" msgstr "~a: erro: sistema de arquivos com UUID \"~a\" não localizado~%" -#: guix/scripts/system.scm:658 +#: guix/scripts/system.scm:741 #, scheme-format msgid "~a not found: 'guix pull' was never run~%" msgstr "~a não localizado: \"guix pull\" nunca foi executado~%" -#: guix/scripts/system.scm:659 +#: guix/scripts/system.scm:742 #, scheme-format msgid "Consider running 'guix pull' before 'reconfigure'.~%" msgstr "Considere executar \"guix pull\" antes de \"reconfigure\".~%" -#: guix/scripts/system.scm:660 +#: guix/scripts/system.scm:743 #, scheme-format msgid "Failing to do that may downgrade your system!~%" msgstr "Falhar em fazer isso pode fazer um downgrade de seu sistema!~%" -#: guix/scripts/system.scm:767 +#: guix/scripts/system.scm:860 #, scheme-format msgid "initializing operating system under '~a'...~%" msgstr "inicializando sistema operacional sob \"~a\"...~%" -#: guix/scripts/system.scm:812 +#: guix/scripts/system.scm:905 msgid "" "Usage: guix system [OPTION ...] ACTION [ARG ...] [FILE]\n" "Build the operating system declared in FILE according to ACTION.\n" @@ -1617,67 +1698,71 @@ msgstr "" "Compilação do sistema operacional declarado em ARQUIVO de acordo com AÇÃO.\n" "Algumas AÇÕES fornecem suporte adicional a ARGUMENTOS.\n" -#: guix/scripts/system.scm:816 guix/scripts/container.scm:28 +#: guix/scripts/system.scm:909 guix/scripts/container.scm:28 msgid "The valid values for ACTION are:\n" msgstr "Os valores válidos para AÇÃO são:\n" -#: guix/scripts/system.scm:818 +#: guix/scripts/system.scm:911 msgid " search search for existing service types\n" msgstr " search pesquisa por tipos de serviços existentes\n" -#: guix/scripts/system.scm:820 +#: guix/scripts/system.scm:913 msgid " reconfigure switch to a new operating system configuration\n" msgstr " reconfigure alterna para configuração de um novo sistema operacional\n" -#: guix/scripts/system.scm:822 +#: guix/scripts/system.scm:915 msgid " roll-back switch to the previous operating system configuration\n" msgstr " roll-back alterna para a configuração de sistema operacional anterior\n" -#: guix/scripts/system.scm:824 +#: guix/scripts/system.scm:917 msgid " switch-generation switch to an existing operating system configuration\n" msgstr " switch-generation alterna para uma configuração de sistema operacional existente\n" -#: guix/scripts/system.scm:826 +#: guix/scripts/system.scm:919 msgid " list-generations list the system generations\n" msgstr " list-generations lista as gerações do sistema\n" -#: guix/scripts/system.scm:828 +#: guix/scripts/system.scm:921 msgid " build build the operating system without installing anything\n" msgstr " build compila o sistema operacional sem instalador nada\n" -#: guix/scripts/system.scm:830 +#: guix/scripts/system.scm:923 msgid " container build a container that shares the host's store\n" msgstr "" " container compila um contêiner que compartilha o armazenamento\n" " da máquina\n" -#: guix/scripts/system.scm:832 +#: guix/scripts/system.scm:925 msgid " vm build a virtual machine image that shares the host's store\n" msgstr "" " vm compila uma imagem de máquina virtual que compartilha\n" " o armazenamento da máquina\n" -#: guix/scripts/system.scm:834 +#: guix/scripts/system.scm:927 msgid " vm-image build a freestanding virtual machine image\n" msgstr " vm-image compila uma imagem de máquina virtual independente\n" -#: guix/scripts/system.scm:836 +#: guix/scripts/system.scm:929 msgid " disk-image build a disk image, suitable for a USB stick\n" msgstr " disk-image compila uma imagem de disco, adequada para pendrive USB\n" -#: guix/scripts/system.scm:838 +#: guix/scripts/system.scm:931 +msgid " docker-image build a Docker image\n" +msgstr " docker-image compila uma imagem de Docker\n" + +#: guix/scripts/system.scm:933 msgid " init initialize a root file system to run GNU\n" msgstr " init inicializa um sistema de arquivos raiz para executar GNU\n" -#: guix/scripts/system.scm:840 +#: guix/scripts/system.scm:935 msgid " extension-graph emit the service extension graph in Dot format\n" msgstr " extension-graph emite o gráfico da extensão de serviço no formato Dot\n" -#: guix/scripts/system.scm:842 +#: guix/scripts/system.scm:937 msgid " shepherd-graph emit the graph of shepherd services in Dot format\n" msgstr " shepherd-graph emite o gráfico de serviços do shepherd no formato Dot\n" -#: guix/scripts/system.scm:846 +#: guix/scripts/system.scm:941 msgid "" "\n" " -d, --derivation return the derivation of the given system" @@ -1685,7 +1770,17 @@ msgstr "" "\n" " -d, --derivation retorna a derivação do sistema dado" -#: guix/scripts/system.scm:848 +#: guix/scripts/system.scm:943 +msgid "" +"\n" +" -e, --expression=EXPR consider the operating-system EXPR evaluates to\n" +" instead of reading FILE, when applicable" +msgstr "" +"\n" +" -e, --expression=EXPR considera operating-sistem para o qual EXPR avalia\n" +" em vez de ler ARQUIVO, quando aplicável" + +#: guix/scripts/system.scm:946 msgid "" "\n" " --on-error=STRATEGY\n" @@ -1695,7 +1790,7 @@ msgstr "" " --on-error=ESTRATÉGIA\n" " aplica ESTRATÉGIA ao ocorrer um erro ao ler ARQUIVO" -#: guix/scripts/system.scm:851 +#: guix/scripts/system.scm:949 msgid "" "\n" " --file-system-type=TYPE\n" @@ -1707,7 +1802,7 @@ msgstr "" " para \"disk-image\", produz um sistema de arquivos\n" " raiz do TIPO (um entre \"ext4\", \"iso9660\")" -#: guix/scripts/system.scm:855 +#: guix/scripts/system.scm:953 msgid "" "\n" " --image-size=SIZE for 'vm-image', produce an image of SIZE" @@ -1715,7 +1810,7 @@ msgstr "" "\n" " --image-size=TAM para \"vm-image\", produz uma imagem de TAM" -#: guix/scripts/system.scm:857 +#: guix/scripts/system.scm:955 msgid "" "\n" " --no-bootloader for 'init', do not install a bootloader" @@ -1723,7 +1818,7 @@ msgstr "" "\n" " --no-bootloader para \"init\", não instala um carregador de inic." -#: guix/scripts/system.scm:859 +#: guix/scripts/system.scm:957 msgid "" "\n" " --share=SPEC for 'vm', share host file system according to SPEC" @@ -1732,7 +1827,7 @@ msgstr "" " --share=ESPEC para \"vm\", compartilha o sistema de arquivos do\n" " hospedeiro de acordo com ESPEC" -#: guix/scripts/system.scm:861 +#: guix/scripts/system.scm:959 msgid "" "\n" " -r, --root=FILE for 'vm', 'vm-image', 'disk-image', 'container',\n" @@ -1745,7 +1840,7 @@ msgstr "" " o resultado e o registra, como um coletor de lixo\n" " central" -#: guix/scripts/system.scm:865 +#: guix/scripts/system.scm:963 msgid "" "\n" " --expose=SPEC for 'vm', expose host file system according to SPEC" @@ -1754,7 +1849,7 @@ msgstr "" " --expose=ESPEC para \"vm\", expõe o sistema de arquivos do\n" " hospedeiro de acordo com ESPEC" -#: guix/scripts/system.scm:867 +#: guix/scripts/system.scm:965 msgid "" "\n" " --full-boot for 'vm', make a full boot sequence" @@ -1763,49 +1858,63 @@ msgstr "" " --full-boot para \"vm\", faz uma sequência completa de\n" " inicialização" -#: guix/scripts/system.scm:959 +#: guix/scripts/system.scm:967 +msgid "" +"\n" +" --skip-checks skip file system and initrd module safety checks" +msgstr "" +"\n" +" --skip-checks ignora verificações de segurança do sistema de\n" +" arquivos e de módulo de initrd" + +#: guix/scripts/system.scm:1066 +#, scheme-format +msgid "both file and expression cannot be specified~%" +msgstr "não podem ser especificados arquivo e expressão~%" + +#: guix/scripts/system.scm:1073 #, scheme-format -msgid "no configuration file specified~%" -msgstr "nenhum arquivo de configuração especificado~%" +msgid "no configuration specified~%" +msgstr "nenhuma configuração especificada~%" -#: guix/scripts/system.scm:1057 +#: guix/scripts/system.scm:1173 #, scheme-format msgid "~a: unknown action~%" msgstr "~a: ação desconhecida~%" -#: guix/scripts/system.scm:1072 +#: guix/scripts/system.scm:1189 #, scheme-format msgid "wrong number of arguments for action '~a'~%" msgstr "número errado de argumentos para a ação \"~a\"~%" -#: guix/scripts/system.scm:1077 +#: guix/scripts/system.scm:1194 #, scheme-format msgid "guix system: missing command name~%" msgstr "guix system: faltando um nome de comando~%" -#: guix/scripts/system.scm:1079 +#: guix/scripts/system.scm:1196 #, scheme-format msgid "Try 'guix system --help' for more information.~%" msgstr "Tente \"guix system --help\" para mais informações.~%" -#: guix/scripts/system/search.scm:64 guix/ui.scm:1057 guix/ui.scm:1071 +#: guix/scripts/system/search.scm:64 guix/ui.scm:1112 guix/ui.scm:1126 msgid "unknown" msgstr "desconhecido" -#: guix/scripts/lint.scm:138 +#: guix/scripts/lint.scm:139 #, scheme-format msgid "Available checkers:~%" msgstr "Verificadores disponíveis:~%" -#: guix/scripts/lint.scm:162 +#: guix/scripts/lint.scm:163 msgid "description should not be empty" msgstr "a descrição deve não estar vazia" -#: guix/scripts/lint.scm:172 +#: guix/scripts/lint.scm:173 msgid "Texinfo markup in description is invalid" msgstr "a marcação Texinfo na descrição é inválida" -#: guix/scripts/lint.scm:182 +#: guix/scripts/lint.scm:183 #, scheme-format msgid "" "description should not contain ~\n" @@ -1816,15 +1925,15 @@ msgstr "" #. TRANSLATORS: '@code' is Texinfo markup and must be kept #. as is. -#: guix/scripts/lint.scm:195 +#: guix/scripts/lint.scm:196 msgid "use @code or similar ornament instead of quotes" msgstr "use @code ou ornamento similar em vez de aspas" -#: guix/scripts/lint.scm:202 +#: guix/scripts/lint.scm:203 msgid "description should start with an upper-case letter or digit" msgstr "a descrição deve iniciar com uma letra maiúscula ou dígito" -#: guix/scripts/lint.scm:218 +#: guix/scripts/lint.scm:219 #, scheme-format msgid "" "sentences in description should be followed ~\n" @@ -1833,256 +1942,261 @@ msgstr "" "sentenças nas descrição devem ser seguidas ~\n" "por dois espaços; possível infração~p em ~{~a~^, ~}" -#: guix/scripts/lint.scm:236 +#: guix/scripts/lint.scm:237 #, scheme-format msgid "invalid description: ~s" msgstr "a descrição inválida: ~s" -#: guix/scripts/lint.scm:281 +#: guix/scripts/lint.scm:282 #, scheme-format msgid "'~a' should probably be a native input" msgstr "\"~a\" provavelmente é uma entrada nativa" -#: guix/scripts/lint.scm:297 +#: guix/scripts/lint.scm:298 #, scheme-format msgid "'~a' should probably not be an input at all" msgstr "\"~a\" provavelmente deve não ser uma entrada" -#: guix/scripts/lint.scm:314 +#: guix/scripts/lint.scm:315 msgid "synopsis should not be empty" msgstr "a sinopse deve não estar vazia" -#: guix/scripts/lint.scm:322 +#: guix/scripts/lint.scm:323 msgid "no period allowed at the end of the synopsis" msgstr "nenhum ponto permitido ao final da sinopse" -#: guix/scripts/lint.scm:334 +#: guix/scripts/lint.scm:335 msgid "no article allowed at the beginning of the synopsis" msgstr "nenhum artigo permitido no início da sinopse" -#: guix/scripts/lint.scm:341 +#: guix/scripts/lint.scm:342 msgid "synopsis should be less than 80 characters long" msgstr "a sinopse deve ser menor que 80 caracteres" -#: guix/scripts/lint.scm:347 +#: guix/scripts/lint.scm:348 msgid "synopsis should start with an upper-case letter or digit" msgstr "a sinopse deve iniciar com uma letra maiúscula ou dígito" -#: guix/scripts/lint.scm:354 +#: guix/scripts/lint.scm:355 msgid "synopsis should not start with the package name" msgstr "a sinopse deve não iniciar com o nome do pacote" -#: guix/scripts/lint.scm:364 +#: guix/scripts/lint.scm:365 msgid "Texinfo markup in synopsis is invalid" msgstr "Marcação Texinfo na sinopse é inválida" -#: guix/scripts/lint.scm:383 +#: guix/scripts/lint.scm:384 #, scheme-format msgid "invalid synopsis: ~s" msgstr "sinopse inválida: ~s" -#: guix/scripts/lint.scm:502 +#: guix/scripts/lint.scm:503 #, scheme-format msgid "URI ~a returned suspiciously small file (~a bytes)" msgstr "a URI ~a retornou um arquivo suspeitosamente pequeno (~a bytes)" -#: guix/scripts/lint.scm:512 +#: guix/scripts/lint.scm:513 #, scheme-format msgid "permanent redirect from ~a to ~a" msgstr "redirecionamento permanente de ~a para ~a" -#: guix/scripts/lint.scm:519 +#: guix/scripts/lint.scm:520 #, scheme-format msgid "invalid permanent redirect from ~a" msgstr "redirecionamento permanente inválido de ~a" -#: guix/scripts/lint.scm:526 guix/scripts/lint.scm:538 +#: guix/scripts/lint.scm:527 guix/scripts/lint.scm:539 #, scheme-format msgid "URI ~a not reachable: ~a (~s)" msgstr "a URI ~a não é alcançável: ~a (~s)" -#: guix/scripts/lint.scm:545 +#: guix/scripts/lint.scm:546 #, scheme-format msgid "URI ~a domain not found: ~a" msgstr "o domínio da URI ~a não foi localizado: ~a" -#: guix/scripts/lint.scm:553 +#: guix/scripts/lint.scm:554 #, scheme-format msgid "URI ~a unreachable: ~a" msgstr "URI ~a inalcançável: ~a" -#: guix/scripts/lint.scm:562 +#: guix/scripts/lint.scm:563 #, scheme-format msgid "TLS certificate error: ~a" msgstr "erro de certificado TLS: ~a" -#: guix/scripts/lint.scm:583 +#: guix/scripts/lint.scm:584 msgid "invalid value for home page" msgstr "valor inválido para página inicial" -#: guix/scripts/lint.scm:586 +#: guix/scripts/lint.scm:587 #, scheme-format msgid "invalid home page URL: ~s" msgstr "URL de página inicial inválida: ~s" -#: guix/scripts/lint.scm:606 +#: guix/scripts/lint.scm:613 msgid "file names of patches should start with the package name" msgstr "nomes de arquivos de patches devem iniciar com o nome do pacote" -#: guix/scripts/lint.scm:644 +#: guix/scripts/lint.scm:629 +#, scheme-format +msgid "~a: file name is too long" +msgstr "~a: o nome de arquivo é longo demais" + +#: guix/scripts/lint.scm:670 #, scheme-format msgid "~a: ~a: proposed synopsis: ~s~%" msgstr "~a: ~a: sinopse proposta: ~s~%" -#: guix/scripts/lint.scm:657 +#: guix/scripts/lint.scm:683 #, scheme-format msgid "~a: ~a: proposed description:~% \"~a\"~%" msgstr "~a: ~a: descrição proposta:~% \"~a\"~%" -#: guix/scripts/lint.scm:699 +#: guix/scripts/lint.scm:725 msgid "all the source URIs are unreachable:" msgstr "todas as URIs fontes estão inalcançáveis:" -#: guix/scripts/lint.scm:721 +#: guix/scripts/lint.scm:747 msgid "the source file name should contain the package name" msgstr "o nome de arquivo fonte deve conter o nome do pacote" -#: guix/scripts/lint.scm:737 +#: guix/scripts/lint.scm:763 #, scheme-format msgid "URL should be 'mirror://~a/~a'" msgstr "a URL deve ser \"mirror://~a/~a\"" -#: guix/scripts/lint.scm:755 guix/scripts/lint.scm:759 +#: guix/scripts/lint.scm:781 guix/scripts/lint.scm:785 #, scheme-format msgid "failed to create derivation: ~a" msgstr "falha ao criar a derivação: ~a" -#: guix/scripts/lint.scm:773 +#: guix/scripts/lint.scm:799 #, scheme-format msgid "failed to create derivation: ~s~%" msgstr "falha ao criar a derivação: ~s~%" -#: guix/scripts/lint.scm:783 +#: guix/scripts/lint.scm:809 msgid "invalid license field" msgstr "campo de licença inválido" -#: guix/scripts/lint.scm:799 +#: guix/scripts/lint.scm:825 #, scheme-format msgid "~a: HTTP GET error for ~a: ~a (~s)~%" msgstr "~a: erro HTTP GET para ~a: ~a (~s)~%" -#: guix/scripts/lint.scm:809 +#: guix/scripts/lint.scm:835 #, scheme-format msgid "~a: host lookup failure: ~a~%" msgstr "~a: falha ao procurar o host: ~a~%" -#: guix/scripts/lint.scm:814 +#: guix/scripts/lint.scm:840 #, scheme-format msgid "~a: TLS certificate error: ~a" msgstr "~a: erro de certificado TLS: ~a" -#: guix/scripts/lint.scm:829 +#: guix/scripts/lint.scm:855 msgid "while retrieving CVE vulnerabilities" msgstr "ao obter vulnerabilidades CVE" -#: guix/scripts/lint.scm:866 +#: guix/scripts/lint.scm:898 #, scheme-format msgid "probably vulnerable to ~a" msgstr "provavelmente vulnerável a ~a" -#: guix/scripts/lint.scm:873 +#: guix/scripts/lint.scm:905 #, scheme-format msgid "while retrieving upstream info for '~a'" msgstr "ao obter informações do upstream para \"~a\"" -#: guix/scripts/lint.scm:881 +#: guix/scripts/lint.scm:913 #, scheme-format msgid "can be upgraded to ~a" msgstr "pode ser atualizado para ~a" -#: guix/scripts/lint.scm:896 +#: guix/scripts/lint.scm:928 #, scheme-format msgid "tabulation on line ~a, column ~a" msgstr "tabulação na linha ~a, coluna ~a" -#: guix/scripts/lint.scm:905 +#: guix/scripts/lint.scm:937 #, scheme-format msgid "trailing white space on line ~a" msgstr "espaço ao final da linha ~a" -#: guix/scripts/lint.scm:915 +#: guix/scripts/lint.scm:947 #, scheme-format msgid "line ~a is way too long (~a characters)" msgstr "a linha ~a está grande demais (~a caracteres)" -#: guix/scripts/lint.scm:926 +#: guix/scripts/lint.scm:958 #, scheme-format msgid "line ~a: parentheses feel lonely, move to the previous or next line" msgstr "linha ~a: parênteses está solitário, mova-o para a linha anterior ou a seguinte" -#: guix/scripts/lint.scm:996 +#: guix/scripts/lint.scm:1028 msgid "Validate package descriptions" msgstr "Valida descrições dos pacotes" -#: guix/scripts/lint.scm:1000 +#: guix/scripts/lint.scm:1032 msgid "Validate synopsis & description of GNU packages" msgstr "Valida sinopse & descrição de pacotes GNU" -#: guix/scripts/lint.scm:1004 +#: guix/scripts/lint.scm:1036 msgid "Identify inputs that should be native inputs" msgstr "Identifica entradas que devem ser nativas" -#: guix/scripts/lint.scm:1008 +#: guix/scripts/lint.scm:1040 msgid "Identify inputs that should be inputs at all" msgstr "Identifica entradas que devem ser entradas" -#: guix/scripts/lint.scm:1012 +#: guix/scripts/lint.scm:1044 msgid "Validate file names and availability of patches" msgstr "Valida nomes de arquivos e disponibilidade de patches" -#: guix/scripts/lint.scm:1016 +#: guix/scripts/lint.scm:1048 msgid "Validate home-page URLs" msgstr "Valida URLs de site" #. TRANSLATORS: <license> is the name of a data type and must not be #. translated. -#: guix/scripts/lint.scm:1022 +#: guix/scripts/lint.scm:1054 msgid "Make sure the 'license' field is a <license> or a list thereof" msgstr "Certifica que o campo \"license\" é um <license> ou uma lista disto" -#: guix/scripts/lint.scm:1027 +#: guix/scripts/lint.scm:1059 msgid "Validate source URLs" msgstr "Valida URLs fonte" -#: guix/scripts/lint.scm:1031 +#: guix/scripts/lint.scm:1063 msgid "Suggest 'mirror://' URLs" msgstr "Sugere URLs \"mirror://\"" -#: guix/scripts/lint.scm:1035 +#: guix/scripts/lint.scm:1067 msgid "Validate file names of sources" msgstr "Valida nomes de arquivos dos fontes" -#: guix/scripts/lint.scm:1039 +#: guix/scripts/lint.scm:1071 msgid "Report failure to compile a package to a derivation" msgstr "Relata falha ao compilar um pacote para uma derivação" -#: guix/scripts/lint.scm:1043 +#: guix/scripts/lint.scm:1075 msgid "Validate package synopses" msgstr "Valida sinopses do pacotes" -#: guix/scripts/lint.scm:1047 +#: guix/scripts/lint.scm:1079 msgid "Check the Common Vulnerabilities and Exposures (CVE) database" msgstr "Verifica o banco de dados de Vulnerabilidades e Exposições Comuns (CVE)" -#: guix/scripts/lint.scm:1052 +#: guix/scripts/lint.scm:1084 msgid "Check the package for new upstream releases" msgstr "Verifica o pacote por novos lançamentos do upstream" -#: guix/scripts/lint.scm:1056 +#: guix/scripts/lint.scm:1088 msgid "Look for formatting issues in the source" msgstr "Procura por problemas de formatação no fonte" -#: guix/scripts/lint.scm:1084 +#: guix/scripts/lint.scm:1116 msgid "" "Usage: guix lint [OPTION]... [PACKAGE]...\n" "Run a set of checkers on the specified package; if none is specified,\n" @@ -2092,7 +2206,7 @@ msgstr "" "Executa uma série de verificadores no pacote especificado; se nenhum\n" "for especificado, executa-os em todos pacote.\n" -#: guix/scripts/lint.scm:1087 +#: guix/scripts/lint.scm:1119 msgid "" "\n" " -c, --checkers=CHECKER1,CHECKER2...\n" @@ -2102,7 +2216,7 @@ msgstr "" " -c, --checkers=CHECKER1,CHECKER2...\n" " executa apenas os verificadores especificados" -#: guix/scripts/lint.scm:1092 +#: guix/scripts/lint.scm:1124 msgid "" "\n" " -l, --list-checkers display the list of available lint checkers" @@ -2110,7 +2224,7 @@ msgstr "" "\n" " -l, --list-checkers exibe a lista de verificações lint disponíveis" -#: guix/scripts/lint.scm:1112 +#: guix/scripts/lint.scm:1144 #, scheme-format msgid "~a: invalid checker~%" msgstr "~a: verificador inválido~%" @@ -2235,17 +2349,17 @@ msgstr "suporte a zlib está faltando; compressão desabilitada~%" msgid "~a: invalid duration~%" msgstr "~a: duração inválida~%" -#: guix/scripts/publish.scm:832 +#: guix/scripts/publish.scm:869 #, scheme-format msgid "user '~a' not found: ~a~%" msgstr "usuário \"~a\" não localizado: ~a~%" -#: guix/scripts/publish.scm:873 +#: guix/scripts/publish.scm:910 #, scheme-format msgid "server running as root; consider using the '--user' option!~%" msgstr "servidor executado como root; considere usar a opção \"--user\"!~%" -#: guix/scripts/publish.scm:878 +#: guix/scripts/publish.scm:915 #, scheme-format msgid "publishing ~a on ~a, port ~d~%" msgstr "publicando ~a em ~a, porta ~d~%" @@ -2344,77 +2458,81 @@ msgstr "~a: chave de ordenação inválida~%" msgid "missing store item argument\n" msgstr "faltando argumento de item do armazenamento\n" -#: guix/scripts/graph.scm:84 +#: guix/scripts/graph.scm:87 #, scheme-format msgid "~a: invalid argument (package name expected)" msgstr "~a: argumento inválido (esperava-se nome de pacote)" -#: guix/scripts/graph.scm:95 +#: guix/scripts/graph.scm:98 msgid "the DAG of packages, excluding implicit inputs" msgstr "o DAG dos pacotes, excluindo entradas implícitas" -#: guix/scripts/graph.scm:121 +#: guix/scripts/graph.scm:124 msgid "the reverse DAG of packages" msgstr "o DAG reverso de pacotes" -#: guix/scripts/graph.scm:171 +#: guix/scripts/graph.scm:174 msgid "the DAG of packages, including implicit inputs" msgstr "o DAG dos pacotes, incluindo entradas implícitas" -#: guix/scripts/graph.scm:181 +#: guix/scripts/graph.scm:184 msgid "the DAG of packages and origins, including implicit inputs" msgstr "o DAG dos pacotes e origens, incluindo entradas implícitas" -#: guix/scripts/graph.scm:211 +#: guix/scripts/graph.scm:214 msgid "same as 'bag', but without the bootstrap nodes" msgstr "mesmo que \"bag\", mas sem o nós de inicialização" -#: guix/scripts/graph.scm:253 +#: guix/scripts/graph.scm:256 msgid "the DAG of derivations" msgstr "o DAG de derivações" -#: guix/scripts/graph.scm:265 +#: guix/scripts/graph.scm:268 msgid "unsupported argument for derivation graph" msgstr "sem suporte ao argumento para gráfico de derivação" -#: guix/scripts/graph.scm:291 +#: guix/scripts/graph.scm:294 msgid "unsupported argument for this type of graph" msgstr "sem suporte ao argumento para esse tipo de gráfico" -#: guix/scripts/graph.scm:304 +#: guix/scripts/graph.scm:307 #, scheme-format msgid "references for '~a' are not known~%" msgstr "referências para \"~a\" não são conhecidas~%" -#: guix/scripts/graph.scm:311 +#: guix/scripts/graph.scm:314 msgid "the DAG of run-time dependencies (store references)" msgstr "o DAG de dependências de tempo real (referências de armazenamento)" -#: guix/scripts/graph.scm:327 +#: guix/scripts/graph.scm:330 msgid "the DAG of referrers in the store" msgstr "o DAG de referências no armazenamento" -#: guix/scripts/graph.scm:354 +#: guix/scripts/graph.scm:360 +msgid "the graph of package modules" +msgstr "o gráfico dos módulos de pacote" + +#: guix/scripts/graph.scm:388 #, scheme-format msgid "~a: unknown node type~%" msgstr "~a: tipo de nó desconhecido~%" -#: guix/scripts/graph.scm:361 +#: guix/scripts/graph.scm:395 #, scheme-format msgid "~a: unknown backend~%" msgstr "~a: backend desconhecido~%" -#: guix/scripts/graph.scm:365 +#: guix/scripts/graph.scm:399 msgid "The available node types are:\n" msgstr "Os tipos de nós disponíveis são:\n" -#: guix/scripts/graph.scm:375 +#: guix/scripts/graph.scm:409 msgid "The available backend types are:\n" msgstr "Os tipos de backends disponíveis são:\n" #. TRANSLATORS: Here 'dot' is the name of a program; it must not be #. translated. -#: guix/scripts/graph.scm:419 +#: guix/scripts/graph.scm:453 msgid "" "Usage: guix graph PACKAGE...\n" "Emit a representation of the dependency graph of PACKAGE...\n" @@ -2422,7 +2540,7 @@ msgstr "" "Uso: guix graph PACOTE...\n" "Emite uma representação do gráfico de dependências do PACOTE...\n" -#: guix/scripts/graph.scm:421 +#: guix/scripts/graph.scm:455 msgid "" "\n" " -b, --backend=TYPE produce a graph with the given backend TYPE" @@ -2430,7 +2548,7 @@ msgstr "" "\n" " -b, --backend=TIPO produz um grafo com backend do TIPO" -#: guix/scripts/graph.scm:423 +#: guix/scripts/graph.scm:457 msgid "" "\n" " --list-backends list the available graph backends" @@ -2438,7 +2556,7 @@ msgstr "" "\n" " --list-backends lista os backends de gráficos disponíveis" -#: guix/scripts/graph.scm:425 +#: guix/scripts/graph.scm:459 msgid "" "\n" " -t, --type=TYPE represent nodes of the given TYPE" @@ -2446,7 +2564,7 @@ msgstr "" "\n" " -t, --type=TIPO representa nós do TIPO dado" -#: guix/scripts/graph.scm:427 +#: guix/scripts/graph.scm:461 msgid "" "\n" " --list-types list the available graph types" @@ -2454,7 +2572,7 @@ msgstr "" "\n" " --list-types lista os tipos de gráficos disponíveis" -#: guix/scripts/graph.scm:429 guix/scripts/pack.scm:336 +#: guix/scripts/graph.scm:463 guix/scripts/pack.scm:355 msgid "" "\n" " -e, --expression=EXPR consider the package EXPR evaluates to" @@ -2573,22 +2691,22 @@ msgstr "" "\n" " --from=MÁQUINA recebe ITENS da MÁQUINA" -#: guix/scripts/copy.scm:168 +#: guix/scripts/copy.scm:169 #, scheme-format msgid "use '--to' or '--from'~%" msgstr "use \"--to\" ou \"--from\"~%" -#: guix/scripts/pack.scm:76 +#: guix/scripts/pack.scm:85 #, scheme-format msgid "~a: compressor not found~%" msgstr "~a: compressor não encontrado~%" -#: guix/scripts/pack.scm:318 +#: guix/scripts/pack.scm:334 #, scheme-format msgid "~a: invalid symlink specification~%" msgstr "~a: especificação de link simbólico inválida~%" -#: guix/scripts/pack.scm:328 +#: guix/scripts/pack.scm:347 msgid "" "Usage: guix pack [OPTION]... PACKAGE...\n" "Create a bundle of PACKAGE.\n" @@ -2596,7 +2714,7 @@ msgstr "" "Uso: guix pack [OPÇÃO]... PACOTE...\n" "Cria um pacote de PACOTE.\n" -#: guix/scripts/pack.scm:334 +#: guix/scripts/pack.scm:353 msgid "" "\n" " -f, --format=FORMAT build a pack in the given FORMAT" @@ -2604,7 +2722,7 @@ msgstr "" "\n" " -f, --format=FORMATO compila um pacote no FORMATO dado" -#: guix/scripts/pack.scm:342 +#: guix/scripts/pack.scm:361 msgid "" "\n" " -C, --compression=TOOL compress using TOOL--e.g., \"lzip\"" @@ -2613,7 +2731,7 @@ msgstr "" " -C, --compression=FERRAMENTA\n" " comprime usando FERRAMENTA--ex. \"lzip\"" -#: guix/scripts/pack.scm:344 +#: guix/scripts/pack.scm:363 msgid "" "\n" " -S, --symlink=SPEC create symlinks to the profile according to SPEC" @@ -2621,7 +2739,15 @@ msgstr "" "\n" " -S, --symlink=ESPEC cria link simbólicos para o perfil conforme ESPEC" -#: guix/scripts/pack.scm:346 +#: guix/scripts/pack.scm:365 +msgid "" +"\n" +" -m, --manifest=FILE create a pack with the manifest from FILE" +msgstr "" +"\n" +" -m, --manifest=ARQUIVO cria um pacote com o manifesto do ARQUIVO" + +#: guix/scripts/pack.scm:367 msgid "" "\n" " --localstatedir include /var/guix in the resulting pack" @@ -2629,49 +2755,100 @@ msgstr "" "\n" " --localstatedir inclui /var/guix no pacote resultante" -#: guix/scripts/pack.scm:390 +#: guix/scripts/pack.scm:369 +msgid "" +"\n" +" --bootstrap use the bootstrap binaries to build the pack" +msgstr "" +"\n" +" --bootstrap usa os executáveis de inicialização para compilar\n" +" o pacote" + +#: guix/scripts/pack.scm:405 +#, scheme-format +msgid "both a manifest and a package list were given~%" +msgstr "foram especificados um manifesto e uma lista de pacote~%" + +#: guix/scripts/pack.scm:429 #, scheme-format msgid "~a: unknown pack format" msgstr "~a: formato de pacote desconhecido" -#: guix/scripts/weather.scm:74 +#: guix/scripts/weather.scm:72 msgid "computing ~h package derivations for ~a...~%" msgstr "computando ~h derivações de pacote para ~a...~%" -#: guix/scripts/weather.scm:110 +#: guix/scripts/weather.scm:161 msgid "looking for ~h store items on ~a...~%" msgstr "procurando por ~h itens de armazenamento em ~a…~%" -#: guix/scripts/weather.scm:120 +#: guix/scripts/weather.scm:173 msgid " ~2,1f% substitutes available (~h out of ~h)~%" msgstr " ~2,1f% substitutos disponíveis (~h de ~h)~%" -#: guix/scripts/weather.scm:126 +#: guix/scripts/weather.scm:179 #, scheme-format msgid " unknown substitute sizes~%" msgstr " tamanhos de substituto desconhecido~%" -#: guix/scripts/weather.scm:129 +#: guix/scripts/weather.scm:182 msgid " ~,1h MiB of nars (compressed)~%" msgstr " ~,1h MiB de nars (comprimidos)~%" -#: guix/scripts/weather.scm:130 +#: guix/scripts/weather.scm:183 msgid " at least ~,1h MiB of nars (compressed)~%" msgstr " pelo menos ~,1h MiB de nars (comprimidos)~%" -#: guix/scripts/weather.scm:132 +#: guix/scripts/weather.scm:185 msgid " ~,1h MiB on disk (uncompressed)~%" msgstr " ~,1h MiB no disco (comprimidos)~%" -#: guix/scripts/weather.scm:134 +#: guix/scripts/weather.scm:187 msgid " ~,3h seconds per request (~,1h seconds in total)~%" msgstr " ~,3h segundos por requisição (~,1h segundos no total)~%" -#: guix/scripts/weather.scm:136 +#: guix/scripts/weather.scm:189 msgid " ~,1h requests per second~%" msgstr " ~,1h requisições por segundo~%" -#: guix/scripts/weather.scm:145 +#: guix/scripts/weather.scm:195 +#, scheme-format +msgid " (continuous integration information unavailable)~%" +msgstr " (informações de integração contínua indisponíveis)~%" + +#: guix/scripts/weather.scm:198 +#, scheme-format +msgid " '~a' returned ~a (~s)~%" +msgstr " \"~a\" retornou ~a (~s)~%" + +#: guix/scripts/weather.scm:215 +msgid " ~,1f% (~h out of ~h) of the missing items are queued~%" +msgstr " ~,1f% (~h de ~h) dos itens faltando estão enfileirados~%" + +#: guix/scripts/weather.scm:221 +msgid " at least ~h queued builds~%" +msgstr " pelo menos ~h compilações enfileiradas~%" + +#: guix/scripts/weather.scm:222 +msgid " ~h queued builds~%" +msgstr " ~h compilações enfileiradas~%" + +#: guix/scripts/weather.scm:225 +#, scheme-format +msgid " ~a: ~a (~0,1f%)~%" +msgstr " ~a: ~a (~0,1f%)~%" + +#: guix/scripts/weather.scm:231 +#, scheme-format +msgid " build rate: ~1,2f builds per hour~%" +msgstr " taxa de compilação: ~1,2f compilações por hora~%" + +#: guix/scripts/weather.scm:235 +#, scheme-format +msgid " ~a: ~,2f builds per hour~%" +msgstr " ~a: ~,2f compilações por hora~%" + +#: guix/scripts/weather.scm:247 msgid "" "Usage: guix weather [OPTIONS]\n" "Report the availability of substitutes.\n" @@ -2679,7 +2856,7 @@ msgstr "" "Uso: guix weather [OPÇÕES]\n" "Relata a disponibilidade de substitutos.\n" -#: guix/scripts/weather.scm:147 +#: guix/scripts/weather.scm:249 msgid "" "\n" " --substitute-urls=URLS\n" @@ -2689,7 +2866,7 @@ msgstr "" " --substitute-urls=URLS\n" " verifica por substitutos disponíveis nas URLS" -#: guix/scripts/weather.scm:150 +#: guix/scripts/weather.scm:252 msgid "" "\n" " -m, --manifest=MANIFEST\n" @@ -2700,7 +2877,7 @@ msgstr "" " procura substitutos para os pacotes especificados\n" " no MANIFESTO" -#: guix/scripts/weather.scm:153 +#: guix/scripts/weather.scm:255 msgid "" "\n" " -s, --system=SYSTEM consider substitutes for SYSTEM--e.g., \"i686-linux\"" @@ -2708,28 +2885,28 @@ msgstr "" "\n" " -s, --system=SISTEMA considera substitutos para SISTEMA--ex.: \"i686-linux\"" -#: guix/scripts/weather.scm:177 +#: guix/scripts/weather.scm:279 #, scheme-format msgid "~a: invalid URL~%" msgstr "~a: URL inválido~%" -#: guix/gnu-maintenance.scm:567 +#: guix/gnu-maintenance.scm:570 msgid "Updater for GNU packages" msgstr "Atualizador para pacotes GNU" -#: guix/gnu-maintenance.scm:576 +#: guix/gnu-maintenance.scm:579 msgid "Updater for GNU packages only available via FTP" msgstr "Atualizador para pacotes GNU só disponíveis via FTP" -#: guix/gnu-maintenance.scm:585 +#: guix/gnu-maintenance.scm:588 msgid "Updater for KDE packages" msgstr "Atualizador para pacotes KDE" -#: guix/gnu-maintenance.scm:592 +#: guix/gnu-maintenance.scm:595 msgid "Updater for X.org packages" msgstr "Atualizador para pacotes X.org" -#: guix/gnu-maintenance.scm:599 +#: guix/gnu-maintenance.scm:602 msgid "Updater for packages hosted on kernel.org" msgstr "Atualizador para pacotes hospedados no kernel.org" @@ -2788,85 +2965,85 @@ msgstr "processo inexistente ~d~%" msgid "exec failed with status ~d~%" msgstr "execução falhou com status ~d~%" -#: guix/upstream.scm:249 +#: guix/upstream.scm:250 #, scheme-format msgid "signature verification failed for `~a'~%" msgstr "verificação de assinatura falhou para \"~a\"~%" -#: guix/upstream.scm:251 +#: guix/upstream.scm:252 #, scheme-format msgid "(could be because the public key is not in your keyring)~%" msgstr "(pode ser porque a chave pública não está no seu chaveiro)~%" -#: guix/upstream.scm:330 +#: guix/upstream.scm:337 #, scheme-format msgid "~a: could not locate source file" msgstr "~a: não foi possível localizar um arquivo fonte" -#: guix/upstream.scm:335 +#: guix/upstream.scm:342 #, scheme-format msgid "~a: ~a: no `version' field in source; skipping~%" msgstr "~a: ~a: sem o campo \"version\" no fonte; ignorando~%" -#: guix/ui.scm:159 +#: guix/ui.scm:161 #, scheme-format msgid "~a: unbound variable" msgstr "~a: variável não vinculada" -#: guix/ui.scm:235 +#: guix/ui.scm:253 msgid "entering debugger; type ',bt' for a backtrace\n" msgstr "entrando no depurador; digite \",bt\" para o \"backtrace\"\n" -#: guix/ui.scm:284 +#: guix/ui.scm:302 #, scheme-format msgid "hint: ~a~%" msgstr "dica: ~a~%" -#: guix/ui.scm:294 guix/ui.scm:342 guix/ui.scm:349 +#: guix/ui.scm:314 guix/ui.scm:362 guix/ui.scm:369 #, scheme-format msgid "failed to load '~a': ~a~%" msgstr "falha ao carregar \"~a\": ~a~%" -#: guix/ui.scm:301 +#: guix/ui.scm:321 #, scheme-format msgid "~amissing closing parenthesis~%" msgstr "~afaltando parêntese de fechamento~%" -#: guix/ui.scm:306 guix/ui.scm:322 guix/ui.scm:596 +#: guix/ui.scm:326 guix/ui.scm:342 guix/ui.scm:642 #, scheme-format msgid "~a: error: ~a~%" msgstr "~a: erro: ~a~%" -#: guix/ui.scm:314 +#: guix/ui.scm:334 msgid "Did you forget a @code{use-modules} form?" msgstr "Você se esqueceu de uma forma @code{use-modules}?" -#: guix/ui.scm:316 +#: guix/ui.scm:336 #, scheme-format -msgid "Try adding @code{(use-modules ~a)}." -msgstr "Tente adicionar @code{(use-modules ~a)}." +msgid "Did you forget @code{(use-modules ~a)}?" +msgstr "Você se esqueceu de @code{(use-modules ~a)}?" -#: guix/ui.scm:329 guix/ui.scm:657 +#: guix/ui.scm:349 guix/ui.scm:712 #, scheme-format msgid "exception thrown: ~s~%" msgstr "excepção lançada: ~s~%" -#: guix/ui.scm:333 guix/ui.scm:355 +#: guix/ui.scm:353 guix/ui.scm:375 #, scheme-format msgid "failed to load '~a':~%" msgstr "falha ao carregar \"~a\":~%" -#: guix/ui.scm:345 +#: guix/ui.scm:365 #, scheme-format msgid "~a: warning: ~a~%" msgstr "~a: aviso: ~a~%" -#: guix/ui.scm:352 +#: guix/ui.scm:372 #, scheme-format msgid "failed to load '~a': exception thrown: ~s~%" msgstr "falha ao carregar \"~a\": exceção lançada: ~s~%" -#: guix/ui.scm:364 +#: guix/ui.scm:384 #, scheme-format msgid "failed to install locale: ~a~%" msgstr "falha ao instalar localidade: ~a~%" @@ -2874,15 +3051,15 @@ msgstr "falha ao instalar localidade: ~a~%" #. TRANSLATORS: Translate "(C)" to the copyright symbol #. (C-in-a-circle), if this symbol is available in the user's #. locale. Otherwise, do not translate "(C)"; leave it as-is. */ -#: guix/ui.scm:394 +#: guix/ui.scm:414 msgid "(C)" msgstr "(C)" -#: guix/ui.scm:395 +#: guix/ui.scm:415 msgid "the Guix authors\n" msgstr "os autores do Guix\n" -#: guix/ui.scm:396 +#: guix/ui.scm:416 msgid "" "License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>\n" "This is free software: you are free to change and redistribute it.\n" @@ -2896,7 +3073,7 @@ msgstr "" #. package. Please add another line saying "Report translation bugs to #. ...\n" with the address for translation bugs (typically your translation #. team's web or email address). -#: guix/ui.scm:408 +#: guix/ui.scm:428 #, scheme-format msgid "" "\n" @@ -2906,7 +3083,7 @@ msgstr "" "Relate erros para: ~a.\n" "Relate erros de tradução para: ldpbr-translation@lists.sourceforge.net." -#: guix/ui.scm:410 +#: guix/ui.scm:430 #, scheme-format msgid "" "\n" @@ -2915,7 +3092,7 @@ msgstr "" "\n" "Site do ~a: <~a>" -#: guix/ui.scm:412 +#: guix/ui.scm:432 msgid "" "\n" "General help using GNU software: <http://www.gnu.org/gethelp/>" @@ -2923,131 +3100,149 @@ msgstr "" "\n" "Ajuda em geral usando softwares GNU: <http://www.gnu.org/gethelp/>" -#: guix/ui.scm:457 +#: guix/ui.scm:477 #, scheme-format msgid "'~a' is not a valid regular expression: ~a~%" msgstr "\"~a\" não é uma expressão regular válida: ~a~%" -#: guix/ui.scm:463 +#: guix/ui.scm:483 #, scheme-format msgid "~a: invalid number~%" msgstr "~a: número inválido~%" -#: guix/ui.scm:480 +#: guix/ui.scm:500 #, scheme-format msgid "invalid number: ~a~%" msgstr "número inválido: ~a~%" -#: guix/ui.scm:503 +#: guix/ui.scm:523 #, scheme-format msgid "unknown unit: ~a~%" msgstr "unidade desconhecida: ~a~%" -#: guix/ui.scm:520 +#: guix/ui.scm:538 +#, scheme-format +msgid "" +"You cannot have two different versions\n" +"or variants of @code{~a} in the same profile." +msgstr "" +"Você não pode ter duas versões diferentes\n" +"ou variantes de @code{~a} no mesmo perfil." + +#: guix/ui.scm:541 +#, scheme-format +msgid "" +"Try upgrading both @code{~a} and @code{~a},\n" +"or remove one of them from the profile." +msgstr "" +"Tente atualizar ambos @code{~a} e @code{~a},\n" +"ou remover um deles do perfil." + +#: guix/ui.scm:560 #, scheme-format msgid "~a:~a:~a: package `~a' has an invalid input: ~s~%" msgstr "~a:~a:~a: o pacote \"~a\" tem uma entrada inválida: ~s~%" -#: guix/ui.scm:527 +#: guix/ui.scm:567 #, scheme-format msgid "~a: ~a: build system `~a' does not support cross builds~%" msgstr "~a: ~a: o sistema de compilação de \"~a\" não oferece suporte a compilações cruzadas~%" -#: guix/ui.scm:533 +#: guix/ui.scm:573 #, scheme-format msgid "~s: invalid G-expression input~%" msgstr "~s: entrada de expressão G inválida~%" -#: guix/ui.scm:536 +#: guix/ui.scm:576 #, scheme-format msgid "profile '~a' does not exist~%" msgstr "o perfil \"~a\" não existe~%" -#: guix/ui.scm:539 +#: guix/ui.scm:579 #, scheme-format msgid "generation ~a of profile '~a' does not exist~%" msgstr "a geração ~a do perfil \"~a\" não existe~%" -#: guix/ui.scm:548 +#: guix/ui.scm:588 #, scheme-format msgid " ... propagated from ~a@~a~%" msgstr " ... propagado de ~a@~a~%" -#: guix/ui.scm:553 +#: guix/ui.scm:598 #, scheme-format -msgid "profile contains conflicting entries for ~a:~a~%" -msgstr "o perfil contém entradas conflitantes para ~a:~a~%" +msgid "profile contains conflicting entries for ~a~a~%" +msgstr "o perfil contém entradas conflitantes para ~a~a~%" -#: guix/ui.scm:556 +#: guix/ui.scm:601 #, scheme-format -msgid " first entry: ~a@~a:~a ~a~%" -msgstr " primeira entrada: ~a@~a:~a ~a~%" +msgid " first entry: ~a@~a~a ~a~%" +msgstr " primeira entrada: ~a@~a~a ~a~%" -#: guix/ui.scm:562 +#: guix/ui.scm:607 #, scheme-format -msgid " second entry: ~a@~a:~a ~a~%" -msgstr " segunda entrada: ~a@~a:~a ~a~%" +msgid " second entry: ~a@~a~a ~a~%" +msgstr " segunda entrada: ~a@~a~a ~a~%" -#: guix/ui.scm:573 +#: guix/ui.scm:619 #, scheme-format msgid "corrupt input while restoring '~a' from ~s~%" msgstr "entrada corrompida ao restaurar \"~a\" de ~s~%" -#: guix/ui.scm:575 +#: guix/ui.scm:621 #, scheme-format msgid "corrupt input while restoring archive from ~s~%" msgstr "entrada corrompida ao restaurar um pacote de ~s~%" -#: guix/ui.scm:578 +#: guix/ui.scm:624 #, scheme-format msgid "failed to connect to `~a': ~a~%" msgstr "falha ao conectar em \"~a\": ~a~%" -#: guix/ui.scm:583 +#: guix/ui.scm:629 #, scheme-format msgid "build failed: ~a~%" msgstr "compilação falhou: ~a~%" -#: guix/ui.scm:586 +#: guix/ui.scm:632 #, scheme-format msgid "reference to invalid output '~a' of derivation '~a'~%" msgstr "referência a uma saída inválida \"~a\" da derivação \"~a\"~%" -#: guix/ui.scm:590 +#: guix/ui.scm:636 #, scheme-format msgid "file '~a' could not be found in these directories:~{ ~a~}~%" msgstr "o arquivo \"~a\" não pôde ser localizado nesses diretórios:~{ ~a~}~%" -#: guix/ui.scm:607 +#: guix/ui.scm:662 #, scheme-format msgid "~a: ~a~%" msgstr "~a: ~a~%" -#: guix/ui.scm:642 +#: guix/ui.scm:697 #, scheme-format msgid "failed to read expression ~s: ~s~%" msgstr "falha ao ler a expressão ~s: ~s~%" -#: guix/ui.scm:648 +#: guix/ui.scm:703 #, scheme-format msgid "failed to evaluate expression '~a':~%" msgstr "falha ao avaliar a expressão \"~a\":~%" -#: guix/ui.scm:651 +#: guix/ui.scm:706 #, scheme-format msgid "syntax error: ~a~%" msgstr "erro de sintaxe: ~a~%" -#: guix/ui.scm:669 +#: guix/ui.scm:724 #, scheme-format msgid "expression ~s does not evaluate to a package~%" msgstr "a expressão ~s não corresponde a um pacote~%" -#: guix/ui.scm:688 +#: guix/ui.scm:743 msgid "at least ~,1h MB needed but only ~,1h MB available in ~a~%" msgstr "pelo menos ~,1h MB necessário, mas apenas ~,1h MB disponível em ~a~%" -#: guix/ui.scm:756 +#: guix/ui.scm:811 #, scheme-format msgid "~:[The following derivation would be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations would be built:~%~{ ~a~%~}~;~]" @@ -3056,18 +3251,18 @@ msgstr[1] "~:[As seguintes derivações seriam compiladas:~%~{ ~a~%~}~;~]" #. TRANSLATORS: "MB" is for "megabyte"; it should be #. translated to the corresponding abbreviation. -#: guix/ui.scm:764 +#: guix/ui.scm:819 msgid "~:[~,1h MB would be downloaded:~%~{ ~a~%~}~;~]" msgstr "~:[~,1h MB seria baixado:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:769 +#: guix/ui.scm:824 #, scheme-format msgid "~:[The following file would be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files would be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[O seguinte arquivo seria baixado:~%~{ ~a~%~}~;~]" msgstr[1] "~:[Os seguintes arquivos seriam baixados:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:776 +#: guix/ui.scm:831 #, scheme-format msgid "~:[The following derivation will be built:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following derivations will be built:~%~{ ~a~%~}~;~]" @@ -3076,78 +3271,78 @@ msgstr[1] "~:[As seguintes derivações serão compiladas:~%~{ ~a~%~}~;~]" #. TRANSLATORS: "MB" is for "megabyte"; it should be #. translated to the corresponding abbreviation. -#: guix/ui.scm:784 +#: guix/ui.scm:839 msgid "~:[~,1h MB will be downloaded:~%~{ ~a~%~}~;~]" msgstr "~:[~,1h MB será baixado:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:789 +#: guix/ui.scm:844 #, scheme-format msgid "~:[The following file will be downloaded:~%~{ ~a~%~}~;~]" msgid_plural "~:[The following files will be downloaded:~%~{ ~a~%~}~;~]" msgstr[0] "~:[O seguinte arquivo será baixado:~%~{ ~a~%~}~;~]" msgstr[1] "~:[Os seguintes arquivos serão baixados:~%~{ ~a~%~}~;~]" -#: guix/ui.scm:849 +#: guix/ui.scm:904 #, scheme-format msgid "The following package would be removed:~%~{~a~%~}~%" msgid_plural "The following packages would be removed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote seria removido:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes seriam removidos:~%~{~a~%~}~%" -#: guix/ui.scm:854 +#: guix/ui.scm:909 #, scheme-format msgid "The following package will be removed:~%~{~a~%~}~%" msgid_plural "The following packages will be removed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote será removido:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes serão removidos:~%~{~a~%~}~%" -#: guix/ui.scm:867 +#: guix/ui.scm:922 #, scheme-format msgid "The following package would be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be downgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote sofreria um downgrade:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes sofreriam um downgrade:~%~{~a~%~}~%" -#: guix/ui.scm:872 +#: guix/ui.scm:927 #, scheme-format msgid "The following package will be downgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be downgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote sofrerá um downgrade:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes sofrerão um downgrade:~%~{~a~%~}~%" -#: guix/ui.scm:885 +#: guix/ui.scm:940 #, scheme-format msgid "The following package would be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages would be upgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote seria atualizado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes seriam atualizados:~%~{~a~%~}~%" -#: guix/ui.scm:890 +#: guix/ui.scm:945 #, scheme-format msgid "The following package will be upgraded:~%~{~a~%~}~%" msgid_plural "The following packages will be upgraded:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote será atualizado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes serão atualizados:~%~{~a~%~}~%" -#: guix/ui.scm:901 +#: guix/ui.scm:956 #, scheme-format msgid "The following package would be installed:~%~{~a~%~}~%" msgid_plural "The following packages would be installed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote seria instalado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes seriam instalados:~%~{~a~%~}~%" -#: guix/ui.scm:906 +#: guix/ui.scm:961 #, scheme-format msgid "The following package will be installed:~%~{~a~%~}~%" msgid_plural "The following packages will be installed:~%~{~a~%~}~%" msgstr[0] "O seguinte pacote será instalado:~%~{~a~%~}~%" msgstr[1] "Os seguintes pacotes serão instalados:~%~{~a~%~}~%" -#: guix/ui.scm:923 +#: guix/ui.scm:978 msgid "<unknown location>" msgstr "<local desconhecido>" -#: guix/ui.scm:1285 +#: guix/ui.scm:1340 #, scheme-format msgid "Generation ~a\t~a" msgstr "Geração ~a\t~a" @@ -3155,28 +3350,28 @@ msgstr "Geração ~a\t~a" #. TRANSLATORS: The word "current" here is an adjective for #. "Generation", as in "current generation". Use the appropriate #. gender where applicable. -#: guix/ui.scm:1295 +#: guix/ui.scm:1350 #, scheme-format msgid "~a\t(current)~%" msgstr "~a\t(atual)~%" # geração, criação? -#: guix/ui.scm:1338 +#: guix/ui.scm:1393 #, scheme-format msgid "switched from generation ~a to ~a~%" msgstr "trocado da geração ~a para ~a~%" -#: guix/ui.scm:1354 +#: guix/ui.scm:1409 #, scheme-format msgid "deleting ~a~%" msgstr "excluindo ~a~%" -#: guix/ui.scm:1385 +#: guix/ui.scm:1440 #, scheme-format msgid "Try `guix --help' for more information.~%" msgstr "Tente \"guix --help\" para mais informações.~%" -#: guix/ui.scm:1413 +#: guix/ui.scm:1468 msgid "" "Usage: guix COMMAND ARGS...\n" "Run COMMAND with ARGS.\n" @@ -3184,31 +3379,31 @@ msgstr "" "Uso: guix COMANDO ARGUMENTOS...\n" "Executa COMANDO com ARGUMENTOS.\n" -#: guix/ui.scm:1416 +#: guix/ui.scm:1471 msgid "COMMAND must be one of the sub-commands listed below:\n" msgstr "COMANDO deve ser um dos subcomandos listados abaixo:\n" -#: guix/ui.scm:1436 +#: guix/ui.scm:1491 #, scheme-format msgid "guix: ~a: command not found~%" msgstr "guix: ~a: comando não encontrado~%" -#: guix/ui.scm:1466 +#: guix/ui.scm:1521 #, scheme-format msgid "guix: missing command name~%" msgstr "guix: faltando um nome de comando~%" -#: guix/ui.scm:1474 +#: guix/ui.scm:1529 #, scheme-format msgid "guix: unrecognized option '~a'~%" msgstr "guix: opção \"~a\" desconhecida~%" -#: guix/http-client.scm:269 +#: guix/http-client.scm:117 #, scheme-format msgid "following redirection to `~a'...~%" msgstr "seguindo redirecionamento para \"~a\"...~%" -#: guix/http-client.scm:281 +#: guix/http-client.scm:129 #, scheme-format msgid "~a: HTTP download failed: ~a (~s)" msgstr "~a: download HTTP falhou: ~a (~s)" @@ -3263,118 +3458,125 @@ msgstr "guix-daemon -- realiza compilações de derivação e acessos a armazena msgid "This program is a daemon meant to run in the background. It serves requests sent over a Unix-domain socket. It accesses the store, and builds derivations on behalf of its clients." msgstr "Esse programa é um daemon feito para executar em segundo plano. Ele atende a requisições enviadas por um soquete. Ele acessa o armazenamento e compila derivações em nome de seus clientes." -#: nix/nix-daemon/guix-daemon.cc:94 +#: nix/nix-daemon/guix-daemon.cc:95 msgid "SYSTEM" msgstr "SISTEMA" -#: nix/nix-daemon/guix-daemon.cc:95 +#: nix/nix-daemon/guix-daemon.cc:96 msgid "assume SYSTEM as the current system type" msgstr "presume SISTEMA como o tipo de sistema atual" -#: nix/nix-daemon/guix-daemon.cc:96 nix/nix-daemon/guix-daemon.cc:99 +#: nix/nix-daemon/guix-daemon.cc:97 nix/nix-daemon/guix-daemon.cc:100 msgid "N" msgstr "N" -#: nix/nix-daemon/guix-daemon.cc:97 +#: nix/nix-daemon/guix-daemon.cc:98 msgid "use N CPU cores to build each derivation; 0 means as many as available" msgstr "usa N núcleos de CPU para compilar cada derivação; 0 significa todos disponíveis" -#: nix/nix-daemon/guix-daemon.cc:100 +#: nix/nix-daemon/guix-daemon.cc:101 msgid "allow at most N build jobs" msgstr "permite no máximo N trabalhos de compilação" -#: nix/nix-daemon/guix-daemon.cc:101 nix/nix-daemon/guix-daemon.cc:103 +#: nix/nix-daemon/guix-daemon.cc:102 nix/nix-daemon/guix-daemon.cc:104 msgid "SECONDS" msgstr "SEGUNDOS" -#: nix/nix-daemon/guix-daemon.cc:102 +#: nix/nix-daemon/guix-daemon.cc:103 msgid "mark builds as failed after SECONDS of activity" msgstr "marca compilações como falha após SEGUNDOS de atividade" -#: nix/nix-daemon/guix-daemon.cc:104 +#: nix/nix-daemon/guix-daemon.cc:105 msgid "mark builds as failed after SECONDS of silence" msgstr "marca compilações como falha após SEGUNDOS de silêncio" -#: nix/nix-daemon/guix-daemon.cc:106 +#: nix/nix-daemon/guix-daemon.cc:107 msgid "disable chroot builds" msgstr "desabilita compilações em chroot" -#: nix/nix-daemon/guix-daemon.cc:107 +#: nix/nix-daemon/guix-daemon.cc:108 msgid "DIR" msgstr "DIR" -#: nix/nix-daemon/guix-daemon.cc:108 +#: nix/nix-daemon/guix-daemon.cc:109 msgid "add DIR to the build chroot" msgstr "adiciona DIR ao chroot de compilação" -#: nix/nix-daemon/guix-daemon.cc:109 +#: nix/nix-daemon/guix-daemon.cc:110 msgid "GROUP" msgstr "GRUPO" -#: nix/nix-daemon/guix-daemon.cc:110 +#: nix/nix-daemon/guix-daemon.cc:111 msgid "perform builds as a user of GROUP" msgstr "realiza compilações como um usuário de GRUPO" -#: nix/nix-daemon/guix-daemon.cc:112 +#: nix/nix-daemon/guix-daemon.cc:113 msgid "do not use substitutes" msgstr "não usa substitutos" -#: nix/nix-daemon/guix-daemon.cc:113 +#: nix/nix-daemon/guix-daemon.cc:114 msgid "URLS" msgstr "URLS" -#: nix/nix-daemon/guix-daemon.cc:114 +#: nix/nix-daemon/guix-daemon.cc:115 msgid "use URLS as the default list of substitute providers" msgstr "usa URLS como lista padrão de fornecedores de substituto" -#: nix/nix-daemon/guix-daemon.cc:116 +#: nix/nix-daemon/guix-daemon.cc:117 msgid "do not use the 'build hook'" msgstr "não usa o \"hook de compilação\"" -#: nix/nix-daemon/guix-daemon.cc:118 +#: nix/nix-daemon/guix-daemon.cc:119 msgid "cache build failures" msgstr "armazena em cache as falhas de compilação" -#: nix/nix-daemon/guix-daemon.cc:120 +#: nix/nix-daemon/guix-daemon.cc:121 msgid "build each derivation N times in a row" msgstr "compila cada derivação N vezes de uma vez" -#: nix/nix-daemon/guix-daemon.cc:122 +#: nix/nix-daemon/guix-daemon.cc:123 msgid "do not keep build logs" msgstr "não mantém logs de compilação" -#: nix/nix-daemon/guix-daemon.cc:124 +#: nix/nix-daemon/guix-daemon.cc:126 msgid "disable compression of the build logs" msgstr "desabilita compressão de logs de compilação" -#: nix/nix-daemon/guix-daemon.cc:129 +#: nix/nix-daemon/guix-daemon.cc:128 +msgid "use the specified compression type for build logs" +msgstr "usa o tipo de compressão especificado para logs de compilação" + +#: nix/nix-daemon/guix-daemon.cc:133 msgid "disable automatic file \"deduplication\" in the store" msgstr "desabilita \"deduplicação\" automática de arquivo no armazenamento" -#: nix/nix-daemon/guix-daemon.cc:139 +#: nix/nix-daemon/guix-daemon.cc:143 msgid "impersonate Linux 2.6" msgstr "personifica Linux 2.6" -#: nix/nix-daemon/guix-daemon.cc:143 +#: nix/nix-daemon/guix-daemon.cc:147 msgid "tell whether the GC must keep outputs of live derivations" msgstr "diz se o GC deve manter as saídas das derivações vivas" -#: nix/nix-daemon/guix-daemon.cc:146 +#: nix/nix-daemon/guix-daemon.cc:150 msgid "tell whether the GC must keep derivations corresponding to live outputs" msgstr "diz se o GC deve manter as derivações correspondentes às saídas vivas" -#: nix/nix-daemon/guix-daemon.cc:149 +#: nix/nix-daemon/guix-daemon.cc:153 msgid "SOCKET" msgstr "SOQUETE" -#: nix/nix-daemon/guix-daemon.cc:150 +#: nix/nix-daemon/guix-daemon.cc:154 msgid "listen for connections on SOCKET" msgstr "ouve conexões no SOQUETE" -#: nix/nix-daemon/guix-daemon.cc:152 +#: nix/nix-daemon/guix-daemon.cc:156 msgid "produce debugging output" msgstr "produz saída de depuração" +#~ msgid "Try adding @code{(use-modules ~a)}." +#~ msgstr "Tente adicionar @code{(use-modules ~a)}." + #~ msgid "deprecated NAME-VERSION syntax; use NAME@VERSION instead~%" #~ msgstr "sintaxe NOME-VERSÃO obsoleta; em vez disso, use NOME@VERSÃO~%" @@ -3387,9 +3589,6 @@ msgstr "produz saída de depuração" #~ msgid "tarball did not produce a single source directory" #~ msgstr "tarball não produziu um diretório fonte" -#~ msgid "unpacking '~a'...~%" -#~ msgstr "desempacotando \"~a\"...~%" - #~ msgid "failed to unpack source code" #~ msgstr "falha ao desempacotar o código fonte" diff --git a/tests/gexp.scm b/tests/gexp.scm index 3c8b4624da..a560adfc5c 100644 --- a/tests/gexp.scm +++ b/tests/gexp.scm @@ -23,6 +23,7 @@ #:use-module (guix grafts) #:use-module (guix derivations) #:use-module (guix packages) + #:use-module (guix build-system trivial) #:use-module (guix tests) #:use-module ((guix build utils) #:select (with-directory-excursion)) #:use-module ((guix utils) #:select (call-with-temporary-directory)) @@ -66,6 +67,27 @@ (run-with-store %store exp #:guile-for-build (%guile-for-build)))) +(define %extension-package + ;; Example of a package to use when testing 'with-extensions'. + (dummy-package "extension" + (build-system trivial-build-system) + (arguments + `(#:guile ,%bootstrap-guile + #:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (string-append (assoc-ref %outputs "out") + "/share/guile/site/" + (effective-version)))) + (mkdir-p out) + (call-with-output-file (string-append out "/hg2g.scm") + (lambda (port) + (write '(define-module (hg2g) + #:export (the-answer)) + port) + (write '(define the-answer 42) port))))))))) + (test-begin "gexp") @@ -739,6 +761,54 @@ (built-derivations (list drv)) (return (= 42 (call-with-input-file out read)))))) +(test-equal "gexp-extensions & ungexp" + (list sed grep) + ((@@ (guix gexp) gexp-extensions) + #~(foo #$(with-extensions (list grep) #~+) + #+(with-extensions (list sed) #~-)))) + +(test-equal "gexp-extensions & ungexp-splicing" + (list grep sed) + ((@@ (guix gexp) gexp-extensions) + #~(foo #$@(list (with-extensions (list grep) #~+) + (with-imported-modules '((foo)) + (with-extensions (list sed) #~-)))))) + +(test-equal "gexp-extensions and literal Scheme object" + '() + ((@@ (guix gexp) gexp-extensions) #t)) + +(test-assertm "gexp->derivation & with-extensions" + ;; Create a fake Guile extension and make sure it is accessible both to the + ;; imported modules and to the derivation build script. + (mlet* %store-monad + ((extension -> %extension-package) + (module -> (scheme-file "x" #~( ;; splice! + (define-module (foo) + #:use-module (hg2g) + #:export (multiply)) + + (define (multiply x) + (* the-answer x))) + #:splice? #t)) + (build -> (with-extensions (list extension) + (with-imported-modules `((guix build utils) + ((foo) => ,module)) + #~(begin + (use-modules (guix build utils) + (hg2g) (foo)) + (call-with-output-file #$output + (lambda (port) + (write (list the-answer (multiply 2)) + port))))))) + (drv (gexp->derivation "thingie" build + ;; %BOOTSTRAP-GUILE is 2.0. + #:effective-version "2.0")) + (out -> (derivation->output-path drv))) + (mbegin %store-monad + (built-derivations (list drv)) + (return (equal? '(42 84) (call-with-input-file out read)))))) + (test-assertm "gexp->derivation #:references-graphs" (mlet* %store-monad ((one (text-file "one" (random-text))) @@ -948,6 +1018,22 @@ (return (and (zero? (close-pipe pipe)) (string=? text str)))))))))) +(test-assertm "program-file & with-extensions" + (let* ((exp (with-extensions (list %extension-package) + (gexp (begin + (use-modules (hg2g)) + (display the-answer))))) + (file (program-file "program" exp + #:guile %bootstrap-guile))) + (mlet* %store-monad ((drv (lower-object file)) + (out -> (derivation->output-path drv))) + (mbegin %store-monad + (built-derivations (list drv)) + (let* ((pipe (open-input-pipe out)) + (str (get-string-all pipe))) + (return (and (zero? (close-pipe pipe)) + (= 42 (string->number str))))))))) + (test-assertm "scheme-file" (let* ((text (plain-file "foo" "Hello, world!")) (scheme (scheme-file "bar" #~(list "foo" #$text)))) diff --git a/tests/graph.scm b/tests/graph.scm index 5faa19298a..4799d3bd0c 100644 --- a/tests/graph.scm +++ b/tests/graph.scm @@ -134,7 +134,7 @@ edges." (map (lambda (destination) (list "p-0.drv" (string-append - (package-full-name destination) + (package-full-name destination "-") ".drv"))) implicit))))))) @@ -293,7 +293,7 @@ edges." (run-with-store %store (let ((packages (fold-packages cons '()))) (mlet %store-monad ((edges (node-edges %package-node-type packages))) - (return (and (null? (edges sed)) + (return (and (null? (edges hello)) (lset= eq? (edges guile-2.0) (match (package-direct-inputs guile-2.0) diff --git a/tests/guix-build.sh b/tests/guix-build.sh index b84723fa43..92e7299321 100644 --- a/tests/guix-build.sh +++ b/tests/guix-build.sh @@ -1,5 +1,5 @@ # GNU Guix --- Functional package management for GNU -# Copyright © 2012, 2013, 2014, 2016, 2017 Ludovic Courtès <ludo@gnu.org> +# Copyright © 2012, 2013, 2014, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> # # This file is part of GNU Guix. # @@ -138,6 +138,25 @@ test `guix build -d --sources=transitive foo \ | grep -e 'foo\.tar\.gz' -e 'bar\.tar\.gz' -e 'bar\.dat' \ | wc -l` -eq 3 + +# Unbound variables. +cat > "$module_dir/foo.scm"<<EOF +(define-module (foo) + #:use-module (guix tests) + #:use-module (guix build-system trivial)) + +(define-public foo + (dummy-package "package-with-something-wrong" + (build-system trivial-build-system) + (inputs (quasiquote (("sed" ,sed)))))) ;unbound variable +EOF + +if guix build package-with-something-wrong -n; then false; else true; fi +guix build package-with-something-wrong -n 2> "$module_dir/err" || true +grep "unbound" "$module_dir/err" # actual error +grep "forget.*(gnu packages base)" "$module_dir/err" # hint +rm -f "$module_dir"/* + # Should all return valid log files. drv="`guix build -d -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'`" out="`guix build -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'`" diff --git a/tests/guix-pack.sh b/tests/guix-pack.sh index 1b63b957be..917d52451c 100644 --- a/tests/guix-pack.sh +++ b/tests/guix-pack.sh @@ -35,18 +35,23 @@ export GUIX_BUILD_OPTIONS # Build a tarball with no compression. guix pack --compression=none --bootstrap guile-bootstrap -# Build a tarball (with compression). -guix pack --bootstrap guile-bootstrap +# Build a tarball (with compression). Check that '-e' works as well. +out1="`guix pack --bootstrap guile-bootstrap`" +out2="`guix pack --bootstrap -e '(@ (gnu packages bootstrap) %bootstrap-guile)'`" +test -n "$out1" +test "$out1" = "$out2" # Build a tarball with a symlink. the_pack="`guix pack --bootstrap -S /opt/gnu/bin=bin guile-bootstrap`" -# Try to extract it. +# Try to extract it. Note: we cannot test whether /opt/gnu/bin/guile itself +# exists because /opt/gnu/bin may be an absolute symlink to a store item that +# has been GC'd. test_directory="`mktemp -d`" trap 'rm -rf "$test_directory"' EXIT cd "$test_directory" tar -xf "$the_pack" -test -x opt/gnu/bin/guile +test -L opt/gnu/bin is_available () { # Use the "type" shell builtin to see if the program is on PATH. @@ -81,3 +86,14 @@ guix pack --dry-run --bootstrap -f docker -S /opt/gnu=/ guile-bootstrap # Build a tarball pack of cross-compiled software. Use coreutils because # guile-bootstrap is not intended to be cross-compiled. guix pack --dry-run --bootstrap --target=arm-unknown-linux-gnueabihf coreutils + +# Likewise, 'guix pack -R' requires a full-blown toolchain (because +# 'glibc-bootstrap' lacks 'libc.a'), hence '--dry-run'. +guix pack -R --dry-run --bootstrap -S /mybin=bin guile-bootstrap + +# Make sure package transformation options are honored. +mkdir -p "$test_directory" +drv1="`guix pack -n guile 2>&1 | grep pack.*\.drv`" +drv2="`guix pack -n --with-source=guile=$test_directory guile 2>&1 | grep pack.*\.drv`" +test -n "$drv1" +test "$drv1" != "$drv2" diff --git a/tests/guix-package.sh b/tests/guix-package.sh index aa5eaa66e7..3b3fa35cd8 100644 --- a/tests/guix-package.sh +++ b/tests/guix-package.sh @@ -60,12 +60,12 @@ test -L "$profile" && test -L "$profile-1-link" ! test -f "$profile-2-link" test -f "$profile/bin/guile" -# Collisions are properly flagged (in this case, 'python-wrapper' propagates -# python@3, which conflicts with python@2.) -if guix package --bootstrap -n -p "$profile" -i python@2 python-wrapper +# Collisions are properly flagged (in this case, 'g-wrap' propagates +# guile@2.2, which conflicts with guile@2.0.) +if guix package --bootstrap -n -p "$profile" -i g-wrap guile@2.0 then false; else true; fi -guix package --bootstrap -n -p "$profile" -i python@2 python-wrapper \ +guix package --bootstrap -n -p "$profile" -i g-wrap guile@2.0 \ --allow-collisions # No search path env. var. here. diff --git a/tests/guix-system.sh b/tests/guix-system.sh index 211c26f43d..36ba5fbd5f 100644 --- a/tests/guix-system.sh +++ b/tests/guix-system.sh @@ -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 © 2017 Tobias Geerinckx-Rice <me@tobias.gr> # Copyright © 2018 Chris Marusich <cmmarusich@gmail.com> # @@ -111,8 +111,7 @@ cat > "$tmpfile" <<EOF (bootloader (GRUB-config (device "/dev/sdX"))) ; 9 (file-systems (cons (file-system - (device "root") - (title 'label) + (device (file-system-label "root")) (mount-point "/") (type "ext4")) %base-file-systems))) @@ -125,9 +124,9 @@ else then # FIXME: With Guile 2.2.0 the error is reported on line 4. # See <http://bugs.gnu.org/26107>. - grep "$tmpfile:[49]:[0-9]\+: GRUB-config.*[Uu]nbound variable" "$errorfile" + grep "$tmpfile:[49]:[0-9]\+:.*GRUB-config.*[Uu]nbound variable" "$errorfile" else - grep "$tmpfile:9:[0-9]\+: GRUB-config.*[Uu]nbound variable" "$errorfile" + grep "$tmpfile:9:[0-9]\+:.*GRUB-config.*[Uu]nbound variable" "$errorfile" fi fi @@ -140,8 +139,7 @@ OS_BASE=' (bootloader grub-bootloader) (device "/dev/sdX"))) (file-systems (cons (file-system - (device "root") - (title (string->symbol "label")) + (device (file-system-label "root")) (mount-point "/") (type "ext4")) %base-file-systems)) @@ -213,8 +211,7 @@ make_user_config () (bootloader grub-bootloader) (device "/dev/sdX"))) (file-systems (cons (file-system - (device "root") - (title 'label) + (device (file-system-label "root")) (mount-point "/") (type "ext4")) %base-file-systems)) @@ -267,6 +264,7 @@ guix system build "$tmpdir/config.scm" -n # Searching. guix system search tor | grep "^name: tor" +guix system search tor | grep "^shepherdnames: tor" guix system search anonym network | grep "^name: tor" # Below, use -n (--dry-run) for the tests because if we actually tried to diff --git a/tests/pack.scm b/tests/pack.scm index 3bce715075..d4596f863a 100644 --- a/tests/pack.scm +++ b/tests/pack.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,20 +62,20 @@ #:symlinks '(("/bin/Guile" -> "bin/guile")) #:compressor %gzip-compressor - #:tar %tar-bootstrap)) + #:archiver %tar-bootstrap)) (check (gexp->derivation "check-tarball" - #~(let ((guile (string-append "." #$profile "/bin"))) + #~(let ((bin (string-append "." #$profile "/bin"))) (setenv "PATH" (string-append #$%tar-bootstrap "/bin")) (system* "tar" "xvf" #$tarball) (mkdir #$output) (exit - (and (file-exists? (string-append guile "/guile")) + (and (file-exists? (string-append bin "/guile")) (string=? (string-append #$%bootstrap-guile "/bin") - (readlink guile)) - (string=? (string-append (string-drop guile 1) - "/guile") + (readlink bin)) + (string=? (string-append ".." #$profile + "/bin/guile") (readlink "bin/Guile")))))))) (built-derivations (list check)))) diff --git a/tests/profiles.scm b/tests/profiles.scm index eba79d4e31..3a59a0cc4f 100644 --- a/tests/profiles.scm +++ b/tests/profiles.scm @@ -223,6 +223,52 @@ (string=? (dirname (readlink bindir)) (derivation->output-path guile)))))) +(test-assertm "profile-derivation relative symlinks, one entry" + (mlet* %store-monad + ((entry -> (package->manifest-entry %bootstrap-guile)) + (guile (package->derivation %bootstrap-guile)) + (drv (profile-derivation (manifest (list entry)) + #:relative-symlinks? #t + #:hooks '() + #:locales? #f)) + (profile -> (derivation->output-path drv)) + (bindir -> (string-append profile "/bin")) + (_ (built-derivations (list drv)))) + (return (and (file-exists? (string-append bindir "/guile")) + (string=? (readlink bindir) + (string-append "../" + (basename + (derivation->output-path guile)) + "/bin")))))) + +(unless (network-reachable?) (test-skip 1)) +(test-assertm "profile-derivation relative symlinks, two entries" + (mlet* %store-monad + ((gnu-make-boot0 -> (@@ (gnu packages commencement) gnu-make-boot0)) + (manifest -> (packages->manifest + (list %bootstrap-guile gnu-make-boot0))) + (guile (package->derivation %bootstrap-guile)) + (make (package->derivation gnu-make-boot0)) + (drv (profile-derivation manifest + #:relative-symlinks? #t + #:hooks '() + #:locales? #f)) + (profile -> (derivation->output-path drv)) + (bindir -> (string-append profile "/bin")) + (_ (built-derivations (list drv)))) + (return (and (file-exists? (string-append bindir "/guile")) + (file-exists? (string-append bindir "/make")) + (string=? (readlink (string-append bindir "/guile")) + (string-append "../../" + (basename + (derivation->output-path guile)) + "/bin/guile")) + (string=? (readlink (string-append bindir "/make")) + (string-append "../../" + (basename + (derivation->output-path make)) + "/bin/make")))))) + (test-assertm "profile-derivation, inputs" (mlet* %store-monad ((entry -> (package->manifest-entry packages:glibc "debug")) @@ -242,8 +288,8 @@ #:hooks '() #:locales? #t #:target target))) - (define (find-input name) - (let ((name (string-append name ".drv"))) + (define (find-input package) + (let ((name (string-append (package-full-name package "-") ".drv"))) (any (lambda (input) (let ((input (derivation-input-path input))) (and (string-suffix? name input) input))) @@ -252,12 +298,11 @@ ;; The inputs for grep and sed should be cross-build derivations, but that ;; for the glibc-utf8-locales should be a native build. (return (and (string=? (derivation-system drv) (%current-system)) - (string=? (find-input (package-full-name packages:grep)) + (string=? (find-input packages:grep) (derivation-file-name grep)) - (string=? (find-input (package-full-name packages:sed)) + (string=? (find-input packages:sed) (derivation-file-name sed)) - (string=? (find-input - (package-full-name packages:glibc-utf8-locales)) + (string=? (find-input packages:glibc-utf8-locales) (derivation-file-name locales)))))) (test-assert "package->manifest-entry defaults to \"out\"" diff --git a/tests/records.scm b/tests/records.scm index d6d27bb96a..80e08a9a5f 100644 --- a/tests/records.scm +++ b/tests/records.scm @@ -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. ;;; @@ -288,6 +288,34 @@ (and (string-match "extra.*initializer.*baz" message) (eq? proc 'foo))))) +(test-assert "ABI checks" + (let ((module (test-module))) + (eval '(begin + (define-record-type* <foo> foo make-foo + foo? + (bar foo-bar (default 42))) + + (define (make-me-a-record) (foo))) + module) + (unless (eval '(foo? (make-me-a-record)) module) + (error "what?" (eval '(make-me-a-record) module))) + + ;; Redefine <foo> with an additional field. + (eval '(define-record-type* <foo> foo make-foo + foo? + (baz foo-baz) + (bar foo-bar (default 42))) + module) + + ;; Now 'make-me-a-record' is out of sync because it does an + ;; 'allocate-struct' that corresponds to the previous definition of <foo>. + (catch 'record-abi-mismatch-error + (lambda () + (eval '(foo? (make-me-a-record)) module) + #f) + (lambda (key rtd . _) + (eq? rtd (eval '<foo> module)))))) + (test-equal "recutils->alist" '((("Name" . "foo") ("Version" . "0.1") diff --git a/tests/store-database.scm b/tests/store-database.scm new file mode 100644 index 0000000000..1348a75c26 --- /dev/null +++ b/tests/store-database.scm @@ -0,0 +1,54 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (test-store-database) + #:use-module (guix tests) + #:use-module ((guix store) #:hide (register-path)) + #:use-module (guix store database) + #:use-module (srfi srfi-26) + #:use-module (srfi srfi-64)) + +;; Test the (guix store database) module. + +(define %store + (open-connection-for-tests)) + + +(test-begin "store-database") + +(test-assert "register-path" + (let ((file (string-append (%store-prefix) "/" (make-string 32 #\f) + "-fake"))) + (when (valid-path? %store file) + (delete-paths %store (list file))) + (false-if-exception (delete-file file)) + + (let ((ref (add-text-to-store %store "ref-of-fake" (random-text))) + (drv (string-append file ".drv"))) + (call-with-output-file file + (cut display "This is a fake store item.\n" <>)) + (register-path file + #:references (list ref) + #:deriver drv) + + (and (valid-path? %store file) + (equal? (references %store file) (list ref)) + (null? (valid-derivers %store file)) + (null? (referrers %store file)))))) + +(test-end "store-database") diff --git a/tests/store-deduplication.scm b/tests/store-deduplication.scm new file mode 100644 index 0000000000..04817a193a --- /dev/null +++ b/tests/store-deduplication.scm @@ -0,0 +1,64 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (test-store-deduplication) + #:use-module (guix tests) + #:use-module (guix store deduplication) + #:use-module (guix hash) + #:use-module ((guix utils) #:select (call-with-temporary-directory)) + #:use-module (guix build utils) + #:use-module (rnrs bytevectors) + #:use-module (ice-9 binary-ports) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-64)) + +(test-begin "store-deduplication") + +(test-equal "deduplicate" + (cons* #t #f ;inode comparisons + 2 (make-list 5 6)) ;'nlink' values + + (call-with-temporary-directory + (lambda (store) + (let ((data (string->utf8 "Hello, world!")) + (identical (map (lambda (n) + (string-append store "/" (number->string n))) + (iota 5))) + (unique (string-append store "/unique"))) + (for-each (lambda (file) + (call-with-output-file file + (lambda (port) + (put-bytevector port data)))) + identical) + (call-with-output-file unique + (lambda (port) + (put-bytevector port (string->utf8 "This is unique.")))) + + (for-each (lambda (file) + (deduplicate file (sha256 data) #:store store)) + identical) + (deduplicate unique (nar-sha256 unique) #:store store) + + ;; (system (string-append "ls -lRia " store)) + (cons* (apply = (map (compose stat:ino stat) identical)) + (= (stat:ino (stat unique)) + (stat:ino (stat (car identical)))) + (stat:nlink (stat unique)) + (map (compose stat:nlink stat) identical)))))) + +(test-end "store-deduplication") diff --git a/tests/system.scm b/tests/system.scm index 6a7f45c59c..7d55da7174 100644 --- a/tests/system.scm +++ b/tests/system.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2016, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. @@ -27,8 +27,7 @@ (define %root-fs (file-system - (device "my-root") - (title 'label) + (device (file-system-label "my-root")) (mount-point "/") (type "ext4"))) @@ -114,7 +113,6 @@ (inherit %os-with-mapped-device) (file-systems (cons (file-system (device "/dev/mapper/my-luks-device") - (title 'device) (mount-point "/") (type "ext4")) %base-file-systems))))) diff --git a/tests/union.scm b/tests/union.scm index aa95cae001..5a6a4033fc 100644 --- a/tests/union.scm +++ b/tests/union.scm @@ -184,4 +184,22 @@ (file-is-directory? "bin") (eq? 'symlink (stat:type (lstat "bin/guile")))))))) +(letrec-syntax ((test-relative-file-name + (syntax-rules (=>) + ((_ (reference file => expected) rest ...) + (begin + (test-equal (string-append "relative-file-name " + reference " " file) + expected + (relative-file-name reference file)) + (test-relative-file-name rest ...))) + ((_) + #t)))) + (test-relative-file-name + ("/a/b" "/a/c/d" => "../c/d") + ("/a/b" "/a/b" => "") + ("/a/b" "/a" => "..") + ("/a/b" "/a/b/c/d" => "c/d") + ("/a/b/c" "/a/d/e/f" => "../../d/e/f"))) + (test-end) diff --git a/tests/utils.scm b/tests/utils.scm index 035886dd16..3015b21b23 100644 --- a/tests/utils.scm +++ b/tests/utils.scm @@ -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 © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> ;;; @@ -72,6 +72,12 @@ (test-assert "guile-version>? 10.5" (not (guile-version>? "10.5"))) +(test-assert "version-prefix?" + (and (version-prefix? "4.1" "4.1.2") + (version-prefix? "4.1" "4.1") + (not (version-prefix? "4.1" "4.16.2")) + (not (version-prefix? "4.1" "4")))) + (test-equal "string-tokenize*" '(("foo") ("foo" "bar" "baz") diff --git a/tests/uuid.scm b/tests/uuid.scm index 91a3482490..260614f079 100644 --- a/tests/uuid.scm +++ b/tests/uuid.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015, 2017 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -57,6 +57,13 @@ "1234-ABCD" (uuid->string (uuid "1234-abcd" 'fat32))) +(test-assert "uuid, dynamic value" + (let* ((good "4dab5feb-d176-45de-b287-9b0a6e4c01cb") + (bad (string-drop good 3))) + (and (uuid? (uuid good)) + (string=? good (uuid->string (uuid good))) + (not (uuid bad))))) + (test-assert "uuid=?" (and (uuid=? (uuid-bytevector (uuid "1234-abcd" 'fat32)) (uuid "1234-abcd" 'fat32)) |