mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2025-01-11 21:59:08 -05:00
Merge branch 'master' into staging
This commit is contained in:
commit
998e6cdcd2
78 changed files with 3991 additions and 4914 deletions
|
@ -269,7 +269,7 @@ online}, together with
|
|||
@uref{https://ocw.mit.edu/courses/electrical-engineering-and-computer-science/6-001-structure-and-interpretation-of-computer-programs-spring-2005/video-lectures/,
|
||||
videos of the lectures by the authors}. The book is available in Texinfo
|
||||
format as the @code{sicp} Guix package. Go ahead, run @code{guix install
|
||||
sicp} and start reading with @code{info sicp} (or with the Emacs Info reader).
|
||||
sicp} and start reading with @code{info sicp} (@pxref{,,, sicp, Structure and Interpretation of Computer Programs}).
|
||||
An @uref{https://sarabander.github.io/sicp/, unofficial ebook is also
|
||||
available}.
|
||||
|
||||
|
@ -331,6 +331,7 @@ It does not assume much knowledge of the Guix system nor of the Lisp language.
|
|||
The reader is only expected to be familiar with the command line and to have some
|
||||
basic programming knowledge.
|
||||
|
||||
@node A "Hello World" package
|
||||
@subsection A "Hello World" package
|
||||
|
||||
The “Defining Packages” section of the manual introduces the basics of Guix
|
||||
|
@ -521,8 +522,785 @@ We've gone as far as we could without any knowledge of Scheme. Before moving
|
|||
on to more complex packages, now is the right time to brush up on your Scheme
|
||||
knowledge. @pxref{A Scheme Crash Course} to get up to speed.
|
||||
|
||||
@c TODO: Continue the tutorial
|
||||
@node Setup
|
||||
@subsection Setup
|
||||
|
||||
In the rest of this chapter we will rely on some basic Scheme
|
||||
programming knowledge. Now let's detail the different possible setups
|
||||
for working on Guix packages.
|
||||
|
||||
There are several ways to set up a Guix packaging environment.
|
||||
|
||||
We recommend you work directly on the Guix source checkout since it makes it
|
||||
easier for everyone to contribute to the project.
|
||||
|
||||
But first, let's look at other possibilities.
|
||||
|
||||
@node Local file
|
||||
@subsubsection Local file
|
||||
|
||||
This is what we previously did with @samp{my-hello}. With the Scheme basics we've
|
||||
covered, we are now able to explain the leading chunks. As stated in @code{guix
|
||||
package --help}:
|
||||
|
||||
@example
|
||||
-f, --install-from-file=FILE
|
||||
install the package that the code within FILE
|
||||
evaluates to
|
||||
@end example
|
||||
|
||||
Thus the last expression @emph{must} return a package, which is the case in our
|
||||
earlier example.
|
||||
|
||||
The @code{use-modules} expression tells which of the modules we need in the file.
|
||||
Modules are a collection of values and procedures. They are commonly called
|
||||
"libraries" or "packages" in other programming languages.
|
||||
|
||||
@node @samp{GUIX_PACKAGE_PATH}
|
||||
@subsubsection @samp{GUIX_PACKAGE_PATH}
|
||||
|
||||
@emph{Note: Starting from Guix 0.16, the more flexible Guix "channels" are the
|
||||
preferred way and supersede @samp{GUIX_PACKAGE_PATH}. See next section.}
|
||||
|
||||
It can be tedious to specify the file from the command line instead of simply
|
||||
calling @code{guix package --install my-hello} as you would do with the official
|
||||
packages.
|
||||
|
||||
Guix makes it possible to streamline the process by adding as many "package
|
||||
declaration paths" as you want.
|
||||
|
||||
Create a directory, say @samp{~./guix-packages} and add it to the @samp{GUIX_PACKAGE_PATH}
|
||||
environment variable:
|
||||
|
||||
@example
|
||||
$ mkdir ~/guix-packages
|
||||
$ export GUIX_PACKAGE_PATH=~/guix-packages
|
||||
@end example
|
||||
|
||||
To add several directories, separate them with a colon (@code{:}).
|
||||
|
||||
Our previous @samp{my-hello} needs some adjustments though:
|
||||
|
||||
@example
|
||||
(define-module (my-hello)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix download))
|
||||
|
||||
(define-public my-hello
|
||||
(package
|
||||
(name "my-hello")
|
||||
(version "2.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/hello/hello-" version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i"))))
|
||||
(build-system gnu-build-system)
|
||||
(synopsis "Hello, Guix world: An example custom Guix package")
|
||||
(description
|
||||
"GNU Hello prints the message \"Hello, world!\" and then exits. It
|
||||
serves as an example of standard GNU coding practices. As such, it supports
|
||||
command-line arguments, multiple languages, and so on.")
|
||||
(home-page "https://www.gnu.org/software/hello/")
|
||||
(license gpl3+)))
|
||||
@end example
|
||||
|
||||
Note that we have assigned the package value to an exported variable name with
|
||||
@code{define-public}. This is effectively assigning the package to the @code{my-hello}
|
||||
variable so that it can be referenced, among other as dependency of other
|
||||
packages.
|
||||
|
||||
If you use @code{guix package --install-from-file=my-hello.scm} on the above file, it
|
||||
will fail because the last expression, @code{define-public}, does not return a
|
||||
package. If you want to use @code{define-public} in this use-case nonetheless, make
|
||||
sure the file ends with an evaluation of @code{my-hello}:
|
||||
|
||||
@example
|
||||
; ...
|
||||
(define-public my-hello
|
||||
; ...
|
||||
)
|
||||
|
||||
my-hello
|
||||
@end example
|
||||
|
||||
This last example is not very typical.
|
||||
|
||||
Now @samp{my-hello} should be part of the package collection like all other official
|
||||
packages. You can verify this with:
|
||||
|
||||
@example
|
||||
$ guix package --show=my-hello
|
||||
@end example
|
||||
|
||||
@node Guix channels
|
||||
@subsubsection Guix channels
|
||||
|
||||
Guix 0.16 features channels, which is very similar to @samp{GUIX_PACKAGE_PATH} but
|
||||
provides better integration and provenance tracking. Channels are not
|
||||
necessarily local, they can be maintained as a public Git repository for
|
||||
instance. Of course, several channels can be used at the same time.
|
||||
|
||||
@xref{Channels,,, guix, GNU Guix Reference Manual} for setup details.
|
||||
|
||||
@node Direct checkout hacking
|
||||
@subsubsection Direct checkout hacking
|
||||
|
||||
Working directly on the Guix project is recommended: it reduces the friction
|
||||
when the time comes to submit your changes upstream to let the community benefit
|
||||
from your hard work!
|
||||
|
||||
Unlike most software distributions, the Guix repository holds in one place both
|
||||
the tooling (including the package manager) and the package definitions. This
|
||||
choice was made so that it would give developers the flexibility to modify the
|
||||
API without breakage by updating all packages at the same time. This reduces
|
||||
development inertia.
|
||||
|
||||
Check out the official @uref{https://git-scm.com/, Git} repository:
|
||||
|
||||
@example
|
||||
$ git clone https://git.savannah.gnu.org/git/guix.git
|
||||
@end example
|
||||
|
||||
In the rest of this article, we use @samp{$GUIX_CHECKOUT} to refer to the location of
|
||||
the checkout.
|
||||
|
||||
|
||||
Follow the instruction in the manual (@pxref{Contributing,,, guix, GNU Guix
|
||||
Reference Manual}) to set up the repository environment.
|
||||
|
||||
Once ready, you should be able to use the package definitions from the
|
||||
repository environment.
|
||||
|
||||
Feel free to edit package definitions found in @samp{$GUIX_CHECKOUT/gnu/packages}.
|
||||
|
||||
The @samp{$GUIX_CHECKOUT/pre-inst-env} script lets you use @samp{guix} over the package
|
||||
collection of the repository.
|
||||
|
||||
@itemize
|
||||
@item
|
||||
Search packages, such as Ruby:
|
||||
|
||||
@example
|
||||
$ cd $GUIX_CHECKOUT
|
||||
$ ./pre-inst-env guix package --list-available=ruby
|
||||
ruby 1.8.7-p374 out gnu/packages/ruby.scm:119:2
|
||||
ruby 2.1.6 out gnu/packages/ruby.scm:91:2
|
||||
ruby 2.2.2 out gnu/packages/ruby.scm:39:2
|
||||
@end example
|
||||
|
||||
@item
|
||||
Build a package, here Ruby version 2.1:
|
||||
|
||||
@example
|
||||
$ ./pre-inst-env guix build --keep-failed ruby@@2.1
|
||||
/gnu/store/c13v73jxmj2nir2xjqaz5259zywsa9zi-ruby-2.1.6
|
||||
@end example
|
||||
|
||||
@item
|
||||
Install it to your user profile:
|
||||
|
||||
@example
|
||||
$ ./pre-inst-env guix package --install ruby@@2.1
|
||||
@end example
|
||||
|
||||
@item
|
||||
Check for common mistakes:
|
||||
|
||||
@example
|
||||
$ ./pre-inst-env guix lint ruby@@2.1
|
||||
@end example
|
||||
@end itemize
|
||||
|
||||
Guix strives at maintaining a high packaging standard; when contributing to the
|
||||
Guix project, remember to
|
||||
|
||||
@itemize
|
||||
@item
|
||||
follow the coding style (@pxref{Coding Style,,, guix, GNU Guix Reference Manual}),
|
||||
@item
|
||||
and review the check list from the manual (@pxref{Submitting Patches,,, guix, GNU Guix Reference Manual}).
|
||||
@end itemize
|
||||
|
||||
Once you are happy with the result, you are welcome to send your contribution to
|
||||
make it part of Guix. This process is also detailed in the manual. (@pxref{Contributing,,, guix, GNU Guix Reference Manual})
|
||||
|
||||
|
||||
It's a community effort so the more join in, the better Guix becomes!
|
||||
|
||||
@node Extended example
|
||||
@subsection Extended example
|
||||
|
||||
The above "Hello World" example is as simple as it goes. Packages can be more
|
||||
complex than that and Guix can handle more advanced scenarios. Let's look at
|
||||
another, more sophisticated package (slightly modified from the source):
|
||||
|
||||
@example
|
||||
(define-module (gnu packages version-control)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (gnu packages ssh)
|
||||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages tls))
|
||||
|
||||
(define-public my-libgit2
|
||||
(let ((commit "e98d0a37c93574d2c6107bf7f31140b548c6a7bf")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "my-libgit2")
|
||||
(version (git-version "0.26.6" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/libgit2/libgit2/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"17pjvprmdrx4h6bb1hhc98w9qi6ki7yl57f090n9kbhswxqfs7s3"))
|
||||
(patches (search-patches "libgit2-mtime-0.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; Remove bundled software.
|
||||
(delete-file-recursively "deps")
|
||||
#t))))
|
||||
(build-system cmake-build-system)
|
||||
(outputs '("out" "debug"))
|
||||
(arguments
|
||||
`(#:tests? #t ; Run the test suite (this is the default)
|
||||
#:configure-flags '("-DUSE_SHA1DC=ON") ; SHA-1 collision detection
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-hardcoded-paths
|
||||
(lambda _
|
||||
(substitute* "tests/repo/init.c"
|
||||
(("#!/bin/sh") (string-append "#!" (which "sh"))))
|
||||
(substitute* "tests/clar/fs.h"
|
||||
(("/bin/cp") (which "cp"))
|
||||
(("/bin/rm") (which "rm")))
|
||||
#t))
|
||||
;; Run checks more verbosely.
|
||||
(replace 'check
|
||||
(lambda _ (invoke "./libgit2_clar" "-v" "-Q")))
|
||||
(add-after 'unpack 'make-files-writable-for-tests
|
||||
(lambda _ (for-each make-file-writable (find-files "." ".*")))))))
|
||||
(inputs
|
||||
`(("libssh2" ,libssh2)
|
||||
("http-parser" ,http-parser)
|
||||
("python" ,python-wrapper)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(propagated-inputs
|
||||
;; These two libraries are in 'Requires.private' in libgit2.pc.
|
||||
`(("openssl" ,openssl)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "https://libgit2.github.com/")
|
||||
(synopsis "Library providing Git core methods")
|
||||
(description
|
||||
"Libgit2 is a portable, pure C implementation of the Git core methods
|
||||
provided as a re-entrant linkable library with a solid API, allowing you to
|
||||
write native speed custom Git applications in any language with bindings.")
|
||||
;; GPLv2 with linking exception
|
||||
(license license:gpl2))))
|
||||
@end example
|
||||
|
||||
(In those cases were you only want to tweak a few fields from a package
|
||||
definition, you should rely on inheritance instead of copy-pasting everything.
|
||||
See below.)
|
||||
|
||||
Let's discuss those fields in depth.
|
||||
|
||||
@subsubsection @code{git-fetch} method
|
||||
|
||||
Unlike the @code{url-fetch} method, @code{git-fetch} expects a @code{git-reference} which takes
|
||||
a Git repository and a commit. The commit can be any Git reference such as
|
||||
tags, so if the @code{version} is tagged, then it can be used directly. Sometimes
|
||||
the tag is prefixed with a @code{v}, in which case you'd use @code{(commit (string-append
|
||||
"v" version))}.
|
||||
|
||||
To ensure that the source code from the Git repository is stored in a unique
|
||||
directory with a readable name we use @code{(file-name (git-file-name name
|
||||
version))}.
|
||||
|
||||
Note that there is also a @code{git-version} procedure that can be used to derive the
|
||||
version when packaging programs for a specific commit.
|
||||
|
||||
@subsubsection Snippets
|
||||
|
||||
Snippets are quoted (i.e. non-evaluated) Scheme code that are a means of patching
|
||||
the source. They are a Guix-y alternative to the traditional @samp{.patch} files.
|
||||
Because of the quote, the code in only evaluated when passed to the Guix daemon
|
||||
for building.
|
||||
|
||||
There can be as many snippet as needed.
|
||||
|
||||
Snippets might need additional Guile modules which can be imported from the
|
||||
@code{modules} field.
|
||||
|
||||
@subsubsection Inputs
|
||||
|
||||
First, a syntactic comment: See the quasi-quote / comma syntax?
|
||||
|
||||
@example
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
@end example
|
||||
|
||||
is equivalent to
|
||||
|
||||
@example
|
||||
(native-inputs
|
||||
(list (list "pkg-config" pkg-config)))
|
||||
@end example
|
||||
|
||||
You'll mostly see the former because it's shorter.
|
||||
|
||||
There are 3 different input types. In short:
|
||||
|
||||
@table @asis
|
||||
@item native-inputs
|
||||
Required for building but not runtime -- installing a package
|
||||
through a substitute won't install these inputs.
|
||||
@item inputs
|
||||
Installed in the store but not in the profile, as well as being
|
||||
present at build time.
|
||||
@item propagated-inputs
|
||||
Installed in the store and in the profile, as well as
|
||||
being present at build time.
|
||||
@end table
|
||||
|
||||
@xref{Package Reference,,, guix, GNU Guix Reference Manual} for more details.
|
||||
|
||||
The distinction between the various inputs is important: if a dependency can be
|
||||
handled as an @emph{input} instead of a @emph{propagated input}, it should be done so, or
|
||||
else it "pollutes" the user profile for no good reason.
|
||||
|
||||
For instance, a user installing a graphical program that depends on a
|
||||
command line tool might only be interested in the graphical part, so there is no
|
||||
need to force the command line tool into the user profile. The dependency is a
|
||||
concern to the package, not to the user. @emph{Inputs} make it possible to handle
|
||||
dependencies without bugging the user by adding undesired executable files (or
|
||||
libraries) to their profile.
|
||||
|
||||
Same goes for @emph{native-inputs}: once the program is installed, build-time
|
||||
dependencies can be safely garbage-collected.
|
||||
It also matters when a substitute is available, in which case only the @emph{inputs}
|
||||
and @emph{propagated inputs} will be fetched: the @emph{native inputs} are not required to
|
||||
install a package from a substitute.
|
||||
|
||||
@subsubsection Outputs
|
||||
|
||||
Just like how a package can have multiple inputs, it can also produce multiple
|
||||
outputs.
|
||||
|
||||
Each output corresponds to a separate directory in the store.
|
||||
|
||||
The user can choose which output to install; this is useful to save space or
|
||||
to avoid polluting the user profile with unwanted executables or libraries.
|
||||
|
||||
Output separation is optional. When the @code{outputs} field is left out, the
|
||||
default and only output (the complete package) is referred to as @code{"out"}.
|
||||
|
||||
Typical separate output names include @code{debug} and @code{doc}.
|
||||
|
||||
It's advised to separate outputs only when you've shown it's worth it: if the
|
||||
output size is significant (compare with @code{guix size}) or in case the package is
|
||||
modular.
|
||||
|
||||
@subsubsection Build system arguments
|
||||
|
||||
The @code{arguments} is a keyword-value list used to configure the build process.
|
||||
|
||||
The simplest argument @code{#:tests?} can be used to disable the test suite when
|
||||
building the package. This is mostly useful when the package does not feature
|
||||
any test suite. It's strongly recommended to keep the test suite on if there is
|
||||
one.
|
||||
|
||||
Another common argument is @code{:make-flags}, which specifies a list of flags to
|
||||
append when running make, as you would from the command line. For instance, the
|
||||
following flags
|
||||
|
||||
@example
|
||||
#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out"))
|
||||
"CC=gcc")
|
||||
@end example
|
||||
|
||||
translate into
|
||||
|
||||
@example
|
||||
$ make CC=gcc prefix=/gnu/store/...-<out>
|
||||
@end example
|
||||
|
||||
This sets the C compiler to @code{gcc} and the @code{prefix} variable (the installation
|
||||
directory in Make parlance) to @code{(assoc-ref %outputs "out")}, which is a build-stage
|
||||
global variable pointing to the destination directory in the store (something like
|
||||
@samp{/gnu/store/...-my-libgit2-20180408}).
|
||||
|
||||
Similarly, it's possible to set the "configure" flags.
|
||||
|
||||
@example
|
||||
#:configure-flags '("-DUSE_SHA1DC=ON")
|
||||
@end example
|
||||
|
||||
The @code{%build-inputs} variable is also generated in scope. It's an association
|
||||
table that maps the input names to their store directories.
|
||||
|
||||
The @code{phases} keyword lists the sequential steps of the build system. Typically
|
||||
phases include @code{unpack}, @code{configure}, @code{build}, @code{install} and @code{check}. To know
|
||||
more about those phases, you need to work out the appropriate build system
|
||||
definition in @samp{$GUIX_CHECKOUT/guix/build/gnu-build-system.scm}:
|
||||
|
||||
@example
|
||||
(define %standard-phases
|
||||
;; Standard build phases, as a list of symbol/procedure pairs.
|
||||
(let-syntax ((phases (syntax-rules ()
|
||||
((_ p ...) `((p . ,p) ...)))))
|
||||
(phases set-SOURCE-DATE-EPOCH set-paths install-locale unpack
|
||||
bootstrap
|
||||
patch-usr-bin-file
|
||||
patch-source-shebangs configure patch-generated-file-shebangs
|
||||
build check install
|
||||
patch-shebangs strip
|
||||
validate-runpath
|
||||
validate-documentation-location
|
||||
delete-info-dir-file
|
||||
patch-dot-desktop-files
|
||||
install-license-files
|
||||
reset-gzip-timestamps
|
||||
compress-documentation)))
|
||||
@end example
|
||||
|
||||
Or from the REPL:
|
||||
|
||||
@example
|
||||
> (add-to-load-path "/path/to/guix/checkout")
|
||||
> ,module (guix build gnu-build-system)
|
||||
> (map first %standard-phases)
|
||||
(set-SOURCE-DATE-EPOCH set-paths install-locale unpack bootstrap patch-usr-bin-file patch-source-shebangs configure patch-generated-file-shebangs build check install patch-shebangs strip validate-runpath validate-documentation-location delete-info-dir-file patch-dot-desktop-files install-license-files reset-gzip-timestamps compress-documentation)
|
||||
@end example
|
||||
|
||||
If you want to know more about what happens during those phases, consult the
|
||||
associated procedures.
|
||||
|
||||
For instance, as of this writing the definition of @code{unpack} for the GNU build
|
||||
system is
|
||||
|
||||
@example
|
||||
(define* (unpack #:key source #:allow-other-keys)
|
||||
"Unpack SOURCE in the working directory, and change directory within the
|
||||
source. When SOURCE is a directory, copy it in a sub-directory of the current
|
||||
working directory."
|
||||
(if (file-is-directory? source)
|
||||
(begin
|
||||
(mkdir "source")
|
||||
(chdir "source")
|
||||
|
||||
;; Preserve timestamps (set to the Epoch) on the copied tree so that
|
||||
;; things work deterministically.
|
||||
(copy-recursively source "."
|
||||
#:keep-mtime? #t))
|
||||
(begin
|
||||
(if (string-suffix? ".zip" source)
|
||||
(invoke "unzip" source)
|
||||
(invoke "tar" "xvf" source))
|
||||
(chdir (first-subdirectory "."))))
|
||||
#t)
|
||||
@end example
|
||||
|
||||
Note the @code{chdir} call: it changes the working directory to where the source was
|
||||
unpacked.
|
||||
Thus every phase following the @code{unpack} will use the source as a working
|
||||
directory, which is why we can directly work on the source files.
|
||||
That is to say, unless a later phase changes the working directory to something
|
||||
else.
|
||||
|
||||
We modify the list of @code{%standard-phases} of the build system with the
|
||||
@code{modify-phases} macro as per the list of specified modifications, which may have
|
||||
the following forms:
|
||||
|
||||
@itemize
|
||||
@item
|
||||
@code{(add-before PHASE NEW-PHASE PROCEDURE)}: Run @code{PROCEDURE} named @code{NEW-PHASE} before @code{PHASE}.
|
||||
@item
|
||||
@code{(add-after PHASE NEW-PHASE PROCEDURE)}: Same, but afterwards.
|
||||
@item
|
||||
@code{(replace PHASE PROCEDURE)}.
|
||||
@item
|
||||
@code{(delete PHASE)}.
|
||||
@end itemize
|
||||
|
||||
The @code{PROCEDURE} supports the keyword arguments @code{inputs} and @code{outputs}. Each
|
||||
input (whether @emph{native}, @emph{propagated} or not) and output directory is referenced
|
||||
by their name in those variables. Thus @code{(assoc-ref outputs "out")} is the store
|
||||
directory of the main output of the package. A phase procedure may look like
|
||||
this:
|
||||
|
||||
@example
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let (((bash-directory (assoc-ref inputs "bash"))
|
||||
(output-directory (assoc-ref outputs "out"))
|
||||
(doc-directory (assoc-ref outputs "doc"))
|
||||
; ...
|
||||
#t)
|
||||
@end example
|
||||
|
||||
The procedure must return @code{#t} on success. It's brittle to rely on the return
|
||||
value of the last expression used to tweak the phase because there is no
|
||||
guarantee it would be a @code{#t}. Hence the trailing @code{#t} to ensure the right value
|
||||
is returned on success.
|
||||
|
||||
@subsubsection Code staging
|
||||
|
||||
The astute reader may have noticed the quasi-quote and comma syntax in the
|
||||
argument field. Indeed, the build code in the package declaration should not be
|
||||
evaluated on the client side, but only when passed to the Guix daemon. This
|
||||
mechanism of passing code around two running processes is called @uref{https://arxiv.org/abs/1709.00833, code staging}.
|
||||
|
||||
@subsubsection "Utils" functions
|
||||
|
||||
When customizing @code{phases}, we often need to write code that mimics the
|
||||
equivalent system invocations (@code{make}, @code{mkdir}, @code{cp}, etc.) commonly used during
|
||||
regular "Unix-style" installations.
|
||||
|
||||
Some like @code{chmod} are native to Guile.
|
||||
@xref{,,, guile, Guile reference manual} for a complete list.
|
||||
|
||||
Guix provides additional helper functions which prove especially handy in the
|
||||
context of package management.
|
||||
|
||||
Some of those functions can be found in
|
||||
@samp{$GUIX_CHECKOUT/guix/guix/build/utils.scm}. Most of them mirror the behaviour
|
||||
of the traditional Unix system commands:
|
||||
|
||||
@table @asis
|
||||
@item which
|
||||
Like the @samp{which} system command.
|
||||
@item find-files
|
||||
Akin to the @samp{find} system command.
|
||||
@item mkdir-p
|
||||
Like @samp{mkdir -p}, which creates all parents as needed.
|
||||
@item install-file
|
||||
Similar to @samp{install} when installing a file to a (possibly
|
||||
non-existing) directory. Guile has @code{copy-file} which works
|
||||
like @samp{cp}.
|
||||
@item copy-recursively
|
||||
Like @samp{cp -r}.
|
||||
@item delete-file-recursively
|
||||
Like @samp{rm -rf}.
|
||||
@item invoke
|
||||
Run an executable. This should be used instead of @code{system*}.
|
||||
@item with-directory-excursion
|
||||
Run the body in a different working directory,
|
||||
then restore the previous working directory.
|
||||
@item substitute*
|
||||
A "sed-like" function.
|
||||
@end table
|
||||
|
||||
@subsubsection Module prefix
|
||||
|
||||
The license in our last example needs a prefix: this is because of how the
|
||||
@code{license} module was imported in the package, as @code{#:use-module ((guix licenses)
|
||||
#:prefix license:)}. The Guile module import mechanism
|
||||
(@pxref{Using Guile Modules,,, guile, Guile reference manual})
|
||||
gives the user full control over namespacing: this is needed to avoid
|
||||
clashes between, say, the
|
||||
@samp{zlib} variable from @samp{licenses.scm} (a @emph{license} value) and the @samp{zlib} variable
|
||||
from @samp{compression.scm} (a @emph{package} value).
|
||||
|
||||
@node Other build systems
|
||||
@subsection Other build systems
|
||||
|
||||
What we've seen so far covers the majority of packages using a build system
|
||||
other than the @code{trivial-build-system}. The latter does not automate anything
|
||||
and leaves you to build everything manually. This can be more demanding and we
|
||||
won't cover it here for now, but thankfully it is rarely necessary to fall back
|
||||
on this system.
|
||||
|
||||
For the other build systems, such as ASDF, Emacs, Perl, Ruby and many more, the
|
||||
process is very similar to the GNU build system except for a few specialized
|
||||
arguments.
|
||||
|
||||
Learn more about build systems in
|
||||
@itemize
|
||||
@item
|
||||
@uref{https://www.gnu.org/software/guix/manual/en/html_node/Build-Systems.html#Build-Systems, the manual, section 4.2 Build systems},
|
||||
@item
|
||||
the source code in the @samp{$GUIX_CHECKOUT/guix/build} and
|
||||
@samp{$GUIX_CHECKOUT/guix/build-system} directories.
|
||||
@end itemize
|
||||
|
||||
@node Programmable and automated package definition
|
||||
@subsection Programmable and automated package definition
|
||||
|
||||
We can't repeat it enough: having a full-fledged programming language at hand
|
||||
empowers us in ways that reach far beyond traditional package management.
|
||||
|
||||
Let's illustrate this with some awesome features of Guix!
|
||||
|
||||
@node Recursive importers
|
||||
@subsubsection Recursive importers
|
||||
|
||||
You might find some build systems good enough that there is little to do at all
|
||||
to write a package, to the point that it becomes repetitive and tedious after a
|
||||
while. A @emph{raison d'être} of computers is to replace human beings at those
|
||||
boring tasks. So let's tell Guix to do this for us and create the package
|
||||
definition of an R package from CRAN (the output is trimmed for conciseness):
|
||||
|
||||
@example
|
||||
$ guix import cran --recursive walrus
|
||||
|
||||
(define-public r-mc2d
|
||||
; ...
|
||||
(license gpl2+)))
|
||||
|
||||
(define-public r-jmvcore
|
||||
; ...
|
||||
(license gpl2+)))
|
||||
|
||||
(define-public r-wrs2
|
||||
; ...
|
||||
(license gpl3)))
|
||||
|
||||
(define-public r-walrus
|
||||
(package
|
||||
(name "r-walrus")
|
||||
(version "1.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "walrus" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nk2glcvy4hyksl5ipq2mz8jy4fss90hx6cq98m3w96kzjni6jjj"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ggplot2" ,r-ggplot2)
|
||||
("r-jmvcore" ,r-jmvcore)
|
||||
("r-r6" ,r-r6)
|
||||
("r-wrs2" ,r-wrs2)))
|
||||
(home-page "https://github.com/jamovi/walrus")
|
||||
(synopsis "Robust Statistical Methods")
|
||||
(description
|
||||
"This package provides a toolbox of common robust statistical
|
||||
tests, including robust descriptives, robust t-tests, and robust ANOVA.
|
||||
It is also available as a module for 'jamovi' (see
|
||||
<https://www.jamovi.org> for more information). Walrus is based on the
|
||||
WRS2 package by Patrick Mair, which is in turn based on the scripts and
|
||||
work of Rand Wilcox. These analyses are described in depth in the book
|
||||
'Introduction to Robust Estimation & Hypothesis Testing'.")
|
||||
(license gpl3)))
|
||||
@end example
|
||||
|
||||
The recursive importer won't import packages for which Guix already has package
|
||||
definitions, except for the very first.
|
||||
|
||||
Not all applications can be packaged this way, only those relying on a select
|
||||
number of supported systems. Read about the full list of importers in
|
||||
the guix import section of the manual
|
||||
(@pxref{Invoking guix import,,, guix, GNU Guix Reference Manual}).
|
||||
|
||||
@node Automatic update
|
||||
@subsubsection Automatic update
|
||||
|
||||
Guix can be smart enough to check for updates on systems it knows. It can
|
||||
report outdated package definitions with
|
||||
|
||||
@example
|
||||
$ guix refresh hello
|
||||
@end example
|
||||
|
||||
In most cases, updating a package to a newer version requires little more than
|
||||
changing the version number and the checksum. Guix can do that automatically as
|
||||
well:
|
||||
|
||||
@example
|
||||
$ guix refresh hello --update
|
||||
@end example
|
||||
|
||||
@node Inheritance
|
||||
@subsubsection Inheritance
|
||||
|
||||
If you've started browsing the existing package definitions, you might have
|
||||
noticed that a significant number of them have a @code{inherit} field:
|
||||
|
||||
@example
|
||||
(define-public adwaita-icon-theme
|
||||
(package (inherit gnome-icon-theme)
|
||||
(name "adwaita-icon-theme")
|
||||
(version "3.26.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"17fpahgh5dyckgz7rwqvzgnhx53cx9kr2xw0szprc6bnqy977fi8"))))
|
||||
(native-inputs
|
||||
`(("gtk-encode-symbolic-svg" ,gtk+ "bin")))))
|
||||
@end example
|
||||
|
||||
All unspecified fields are inherited from the parent package. This is very
|
||||
convenient to create alternative packages, for instance with different source,
|
||||
version or compilation options.
|
||||
|
||||
@node Getting help
|
||||
@subsection Getting help
|
||||
|
||||
Sadly, some applications can be tough to package. Sometimes they need a patch to
|
||||
work with the non-standard filesystem hierarchy enforced by the store.
|
||||
Sometimes the tests won't run properly. (They can be skipped but this is not
|
||||
recommended.) Other times the resulting package won't be reproducible.
|
||||
|
||||
Should you be stuck, unable to figure out how to fix any sort of packaging
|
||||
issue, don't hesitate to ask the community for help.
|
||||
|
||||
See the @uref{https://www.gnu.org/software/guix/contact/, Guix homepage} for information on the mailing lists, IRC, etc.
|
||||
|
||||
@node Conclusion
|
||||
@subsection Conclusion
|
||||
|
||||
This tutorial was a showcase of the sophisticated package management that Guix
|
||||
boasts. At this point we have mostly restricted this introduction to the
|
||||
@code{gnu-build-system} which is a core abstraction layer on which more advanced
|
||||
abstractions are based.
|
||||
|
||||
Where do we go from here? Next we ought to dissect the innards of the build
|
||||
system by removing all abstractions, using the @code{trivial-build-system}: this
|
||||
should give us a thorough understanding of the process before investigating some
|
||||
more advanced packaging techniques and edge cases.
|
||||
|
||||
Other features worth exploring are the interactive editing and debugging
|
||||
capabilities of Guix provided by the Guile REPL@.
|
||||
|
||||
Those fancy features are completely optional and can wait; now is a good time
|
||||
to take a well-deserved break. With what we've introduced here you should be
|
||||
well armed to package lots of programs. You can get started right away and
|
||||
hopefully we will see your contributions soon!
|
||||
|
||||
@node References
|
||||
@subsection References
|
||||
|
||||
@itemize
|
||||
@item
|
||||
The @uref{https://www.gnu.org/software/guix/manual/en/html_node/Defining-Packages.html, package reference in the manual}
|
||||
|
||||
@item
|
||||
@uref{https://gitlab.com/pjotrp/guix-notes/blob/master/HACKING.org, Pjotr’s hacking guide to GNU Guix}
|
||||
|
||||
@item
|
||||
@uref{https://www.gnu.org/software/guix/guix-ghm-andreas-20130823.pdf, "GNU Guix: Package without a scheme!"}, by Andreas Enge
|
||||
@end itemize
|
||||
|
||||
@c *********************************************************************
|
||||
@node System Configuration
|
||||
|
@ -801,7 +1579,7 @@ reference.
|
|||
|
||||
Guix provides a very useful feature that may be quite foreign to newcomers:
|
||||
@emph{profiles}. They are a way to group package installations together and all users
|
||||
on a same system are free to use as many profiles as they want.
|
||||
on the same system are free to use as many profiles as they want.
|
||||
|
||||
Whether you're a developer or not, you may find that multiple profiles bring you
|
||||
great power and flexibility. While they shift the paradigm somewhat compared to
|
||||
|
@ -830,7 +1608,7 @@ shells, each of them running different profiles.
|
|||
|
||||
@item
|
||||
Isolation: Programs from one profile will not use programs from the other, and
|
||||
they user can even install different versions of the same programs to the two
|
||||
the user can even install different versions of the same programs to the two
|
||||
profiles without conflict.
|
||||
|
||||
@item
|
||||
|
@ -840,8 +1618,10 @@ This makes multiple profiles storage-efficient.
|
|||
@item
|
||||
Reproducible: when used with declarative manifests, a profile can be fully
|
||||
specified by the Guix commit that was active when it was set up. This means
|
||||
that the exact same profile can be @uref{https://guix.gnu.org/blog/2018/multi-dimensional-transactions-and-rollbacks-oh-my/, set up anywhere, anytime}, with just the
|
||||
commit information. See the section on @ref{Reproducible profiles}.
|
||||
that the exact same profile can be
|
||||
@uref{https://guix.gnu.org/blog/2018/multi-dimensional-transactions-and-rollbacks-oh-my/,
|
||||
set up anywhere and anytime}, with just the commit information. See the
|
||||
section on @ref{Reproducible profiles}.
|
||||
|
||||
@item
|
||||
Easier upgrades and maintenance: Multiple profiles make it easy to keep
|
||||
|
@ -994,6 +1774,14 @@ You can roll-back to any generation of a given profile:
|
|||
guix package -p "$GUIX_EXTRA_PROFILES"/my-project/my-project --switch-generations=17
|
||||
@end example
|
||||
|
||||
Finally, if you want to switch to a profile without inheriting from the
|
||||
current environment, you can activate it from an empty shell:
|
||||
|
||||
@example
|
||||
env -i $(which bash) --login --noprofile --norc
|
||||
. my-project/etc/profile
|
||||
@end example
|
||||
|
||||
@node Required packages
|
||||
@subsection Required packages
|
||||
|
||||
|
@ -1012,7 +1800,7 @@ the profile is loaded, you've got two options:
|
|||
@item
|
||||
Either export the variable manually, e.g.
|
||||
@example
|
||||
export MANPATH=/path/to/profile$@{MANPATH:+:@}$MANPATH"
|
||||
export MANPATH=/path/to/profile$@{MANPATH:+:@}$MANPATH
|
||||
@end example
|
||||
|
||||
@item
|
||||
|
|
|
@ -3666,6 +3666,21 @@ descriptions, and deploys it. Source code is downloaded from a
|
|||
@uref{https://git-scm.com, Git} repository, by default the official
|
||||
GNU@tie{}Guix repository, though this can be customized.
|
||||
|
||||
Specifically, @command{guix pull} downloads code from the @dfn{channels}
|
||||
(@pxref{Channels}) specified by one of the followings, in this order:
|
||||
|
||||
@enumerate
|
||||
@item
|
||||
the @option{--channels} option;
|
||||
@item
|
||||
the user's @file{~/.config/guix/channels.scm} file;
|
||||
@item
|
||||
the system-wide @file{/etc/guix/channels.scm} file;
|
||||
@item
|
||||
the built-in default channels specified in the @code{%default-channels}
|
||||
variable.
|
||||
@end enumerate
|
||||
|
||||
On completion, @command{guix package} will use packages and package
|
||||
versions from this just-retrieved copy of Guix. Not only that, but all
|
||||
the Guix commands and Scheme modules will also be taken from that latest
|
||||
|
@ -3763,7 +3778,8 @@ configuration in the @file{~/.config/guix/channels.scm} file or using the
|
|||
@item --channels=@var{file}
|
||||
@itemx -C @var{file}
|
||||
Read the list of channels from @var{file} instead of
|
||||
@file{~/.config/guix/channels.scm}. @var{file} must contain Scheme code that
|
||||
@file{~/.config/guix/channels.scm} or @file{/etc/guix/channels.scm}.
|
||||
@var{file} must contain Scheme code that
|
||||
evaluates to a list of channel objects. @xref{Channels}, for more
|
||||
information.
|
||||
|
||||
|
@ -22378,9 +22394,69 @@ The port to run mpd on.
|
|||
The address that mpd will bind to. To use a Unix domain socket,
|
||||
an absolute path can be specified here.
|
||||
|
||||
@item @code{outputs} (default: @code{"(list (mpd-output))"})
|
||||
The audio outputs that MPD can use. By default this is a single output using pulseaudio.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@deftp {Data Type} mpd-output
|
||||
Data type representing an @command{mpd} audio output.
|
||||
|
||||
@table @asis
|
||||
@item @code{name} (default: @code{"MPD"})
|
||||
The name of the audio output.
|
||||
|
||||
@item @code{type} (default: @code{"pulse"})
|
||||
The type of audio output.
|
||||
|
||||
@item @code{enabled?} (default: @code{#t})
|
||||
Specifies whether this audio output is enabled when MPD is started. By
|
||||
default, all audio outputs are enabled. This is just the default
|
||||
setting when there is no state file; with a state file, the previous
|
||||
state is restored.
|
||||
|
||||
@item @code{tags?} (default: @code{#t})
|
||||
If set to @code{#f}, then MPD will not send tags to this output. This
|
||||
is only useful for output plugins that can receive tags, for example the
|
||||
@code{httpd} output plugin.
|
||||
|
||||
@item @code{always-on?} (default: @code{#f})
|
||||
If set to @code{#t}, then MPD attempts to keep this audio output always
|
||||
open. This may be useful for streaming servers, when you don’t want to
|
||||
disconnect all listeners even when playback is accidentally stopped.
|
||||
|
||||
@item @code{mixer-type}
|
||||
This field accepts a symbol that specifies which mixer should be used
|
||||
for this audio output: the @code{hardware} mixer, the @code{software}
|
||||
mixer, the @code{null} mixer (allows setting the volume, but with no
|
||||
effect; this can be used as a trick to implement an external mixer
|
||||
External Mixer) or no mixer (@code{none}).
|
||||
|
||||
@item @code{extra-options} (default: @code{'()"})
|
||||
An association list of option symbols to string values to be appended to
|
||||
the audio output configuration.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
The following example shows a configuration of @code{mpd} that provides
|
||||
an HTTP audio streaming output.
|
||||
|
||||
@lisp
|
||||
(service mpd-service-type
|
||||
(mpd-configuration
|
||||
(outputs
|
||||
(list (mpd-output
|
||||
(name "streaming")
|
||||
(type "httpd")
|
||||
(mixer-type 'null)
|
||||
(extra-options
|
||||
`((encoder . "vorbis")
|
||||
(port . "8080"))))))))
|
||||
@end lisp
|
||||
|
||||
|
||||
@node Virtualization Services
|
||||
@subsection Virtualization services
|
||||
|
||||
|
|
16
etc/news.scm
16
etc/news.scm
|
@ -9,6 +9,22 @@
|
|||
(channel-news
|
||||
(version 0)
|
||||
|
||||
(entry (commit "49af34cfac89d384c46269bfd9388b2c73b1220a")
|
||||
(title (en "@command{guix pull} now honors
|
||||
@file{/etc/guix/channels.scm}")
|
||||
(fr "@command{guix pull} lit maintenant
|
||||
@file{/etc/guix/channels.scm}"))
|
||||
(body
|
||||
(en "The @command{guix pull} command will now read the
|
||||
@file{/etc/guix/channels.scm} file if it exists and if the per-user
|
||||
@file{~/.config/guix/channels.scm} is not present. This allows administrators
|
||||
of multi-user systems to define site-wide defaults.")
|
||||
(fr "La commande @command{guix pull} lira maintenant le fichier
|
||||
@file{/etc/guix/channels.scm} s'il existe et si le fichier
|
||||
@file{~/.config/guix/channels.scm} par utilisateur·rice n'est pas présent.
|
||||
Cela permet aux personnes administrant des systèmes multi-utilisateurs de
|
||||
définir les canaux par défaut.")))
|
||||
|
||||
(entry (commit "81c580c8664bfeeb767e2c47ea343004e88223c7")
|
||||
(title (en "Insecure @file{/var/guix/profiles/per-user} permissions (CVE-2019-18192)")
|
||||
(de "Sicherheitslücke in @file{/var/guix/profiles/per-user}-Berechtigungen (CVE-2019-18192)")
|
||||
|
|
|
@ -974,9 +974,8 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
|
||||
%D%/packages/patches/hplip-remove-imageprocessor.patch \
|
||||
%D%/packages/patches/hydra-disable-darcs-test.patch \
|
||||
%D%/packages/patches/icecat-gnuzilla-fixes.patch \
|
||||
%D%/packages/patches/icecat-makeicecat.patch \
|
||||
%D%/packages/patches/icecat-default-search-ddg.patch \
|
||||
%D%/packages/patches/icecat-disable-sync.patch \
|
||||
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
|
||||
%D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \
|
||||
%D%/packages/patches/icecat-use-system-media-libs.patch \
|
||||
|
@ -1066,7 +1065,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/libmpeg2-global-symbol-test.patch \
|
||||
%D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \
|
||||
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
|
||||
%D%/packages/patches/libreoffice-boost.patch \
|
||||
%D%/packages/patches/libreoffice-icu.patch \
|
||||
%D%/packages/patches/libreoffice-glm.patch \
|
||||
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
|
||||
|
@ -1448,9 +1446,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/xfce4-panel-plugins.patch \
|
||||
%D%/packages/patches/xfce4-settings-defaults.patch \
|
||||
%D%/packages/patches/xinetd-fix-fd-leak.patch \
|
||||
%D%/packages/patches/xinetd-CVE-2013-4342.patch \
|
||||
%D%/packages/patches/xorriso-no-partition-table-in-inner-efi.patch \
|
||||
%D%/packages/patches/xorriso-no-mbr-in-inner-efi.patch
|
||||
%D%/packages/patches/xinetd-CVE-2013-4342.patch
|
||||
|
||||
MISC_DISTRO_FILES = \
|
||||
%D%/packages/ld-wrapper.in
|
||||
|
|
|
@ -1128,7 +1128,7 @@ (define-public rottlog
|
|||
(define-public sudo
|
||||
(package
|
||||
(name "sudo")
|
||||
(version "1.8.28p1")
|
||||
(version "1.8.29")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
|
@ -1138,7 +1138,7 @@ (define-public sudo
|
|||
version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"09xhx2k7j6wlqs9bl7snamd4k6lkyv9ycjwdspgbbqrimy25mfi3"))
|
||||
"0z4wyadh9cks17gdpfgx4kvbrlnyb6nai2sd6chk7qh4jsngylyf"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -1184,6 +1184,12 @@ (define-public sudo
|
|||
(("\\$\\(DESTDIR\\)\\$\\(vardir\\)")
|
||||
;; Don't try to create /var/db/sudo.
|
||||
"$(TMPDIR)/dummy"))
|
||||
|
||||
;; ‘Checking existing [/etc/]sudoers file for syntax errors’ is
|
||||
;; not the task of the build system, and fails.
|
||||
(substitute* "plugins/sudoers/Makefile.in"
|
||||
(("^pre-install:" match)
|
||||
(string-append match "\ndisabled-" match)))
|
||||
#t)))
|
||||
|
||||
;; XXX: The 'testsudoers' test series expects user 'root' to exist, but
|
||||
|
|
|
@ -483,7 +483,7 @@ (define-public flint
|
|||
(define-public arb
|
||||
(package
|
||||
(name "arb")
|
||||
(version "2.16.0")
|
||||
(version "2.17.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -492,7 +492,7 @@ (define-public arb
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0478671wfwy3gl26sbxh1jq1ih36z4k72waa8y2y2lvn649gb7cd"))))
|
||||
"05lpy3hkl5f8ik19aw40cqydrb932xaf2n8hbq9ib5dnk7f010p1"))))
|
||||
(build-system gnu-build-system)
|
||||
(propagated-inputs
|
||||
`(("flint" ,flint))) ; flint.h is included by arf.h
|
||||
|
@ -508,8 +508,8 @@ (define-public arb
|
|||
(flint (assoc-ref inputs "flint"))
|
||||
(gmp (assoc-ref inputs "gmp"))
|
||||
(mpfr (assoc-ref inputs "mpfr")))
|
||||
;; do not pass "--enable-fast-install", which makes the
|
||||
;; homebrew configure process fail
|
||||
;; Do not pass "--enable-fast-install", which makes the
|
||||
;; homebrew configure process fail.
|
||||
(invoke "./configure"
|
||||
(string-append "--prefix=" out)
|
||||
(string-append "--with-flint=" flint)
|
||||
|
@ -522,7 +522,7 @@ (define-public arb
|
|||
polynomials, power series, matrices and special functions over the
|
||||
real and complex numbers, with automatic, rigorous error control.")
|
||||
(license license:lgpl2.1+)
|
||||
(home-page "http://fredrikj.net/arb/")))
|
||||
(home-page "http://arblib.org")))
|
||||
|
||||
(define-public python-flint
|
||||
(package
|
||||
|
|
|
@ -1107,7 +1107,7 @@ (define-public g2reverb
|
|||
(define-public fluidsynth
|
||||
(package
|
||||
(name "fluidsynth")
|
||||
(version "2.0.7")
|
||||
(version "2.0.8")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -1116,7 +1116,7 @@ (define-public fluidsynth
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1h1dj3wmjwzny2hgr41k3p67w4kxvzn365kkqwyfd6yk0v3rahic"))))
|
||||
"1s32c0jxjica2agy0mp36vgvpgj2vl5i5zvacd6igmbam0x4gs7c"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
|
|
|
@ -416,7 +416,7 @@ (define-public libtorrent-rasterbar
|
|||
(define-public qbittorrent
|
||||
(package
|
||||
(name "qbittorrent")
|
||||
(version "4.1.8")
|
||||
(version "4.1.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -425,7 +425,7 @@ (define-public qbittorrent
|
|||
(commit (string-append "release-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1mx59mazfmd5yaqdgb6cm8hr5sbp2xgzz3y3yipq1fwq85dj3r5w"))))
|
||||
(base32 "044r3y3vvm2rqagmwlqlhvb4kkyqpkmpnlhv68hzkl3w5bvf8zl8"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
|
|
@ -33,6 +33,7 @@ (define-module (gnu packages bootstrap)
|
|||
#:use-module ((guix derivations)
|
||||
#:select (derivation derivation-input derivation->output-path))
|
||||
#:use-module ((guix utils) #:select (gnu-triplet->nix-system))
|
||||
#:use-module ((guix gexp) #:select (lower-object))
|
||||
#:use-module (guix memoization)
|
||||
#:use-module (guix i18n)
|
||||
#:use-module (srfi srfi-1)
|
||||
|
@ -167,19 +168,22 @@ (define %bootstrap-patch-inputs
|
|||
("patch" ,%bootstrap-coreutils&co)))
|
||||
|
||||
(let ((orig-method (origin-method source)))
|
||||
(origin (inherit source)
|
||||
(method (cond ((eq? orig-method url-fetch)
|
||||
(boot url-fetch))
|
||||
(else orig-method)))
|
||||
(patch-guile %bootstrap-guile)
|
||||
(patch-inputs %bootstrap-patch-inputs)
|
||||
(if (or (not (null? (origin-patches source)))
|
||||
(origin-snippet source))
|
||||
(origin (inherit source)
|
||||
(method (if (eq? orig-method url-fetch)
|
||||
(boot url-fetch)
|
||||
orig-method))
|
||||
(patch-guile %bootstrap-guile)
|
||||
(patch-inputs %bootstrap-patch-inputs)
|
||||
|
||||
;; Patches can be origins as well, so process them.
|
||||
(patches (map (match-lambda
|
||||
((? origin? patch)
|
||||
(bootstrap-origin patch))
|
||||
(patch patch))
|
||||
(origin-patches source))))))
|
||||
;; Patches can be origins as well, so process them.
|
||||
(patches (map (match-lambda
|
||||
((? origin? patch)
|
||||
(bootstrap-origin patch))
|
||||
(patch patch))
|
||||
(origin-patches source))))
|
||||
source)))
|
||||
|
||||
(define* (package-from-tarball name source program-to-test description
|
||||
#:key snippet)
|
||||
|
@ -345,8 +349,8 @@ (define* (raw-build store name inputs
|
|||
#:allow-other-keys)
|
||||
(define (->store file)
|
||||
(run-with-store store
|
||||
(origin->derivation (bootstrap-executable file system)
|
||||
system)))
|
||||
(lower-object (bootstrap-executable file system)
|
||||
system)))
|
||||
|
||||
(let* ((tar (->store "tar"))
|
||||
(xz (->store "xz"))
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
|
||||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
|
||||
|
@ -155,17 +155,14 @@ (define-public libcdio-paranoia
|
|||
(define-public xorriso
|
||||
(package
|
||||
(name "xorriso")
|
||||
(version "1.5.0")
|
||||
(version "1.5.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/xorriso/xorriso-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0aq6lvlwlkxz56l5sbvgycr6j5c82ch2bv6zrnc2345ibfpafgx9"))
|
||||
(patches
|
||||
(search-patches "xorriso-no-partition-table-in-inner-efi.patch"
|
||||
"xorriso-no-mbr-in-inner-efi.patch"))))
|
||||
"1rqpzj95f70jfwpn4lamasfgqpizjsipz12aprdhri777b4zas9v"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
@ -815,14 +812,14 @@ (define-public libburn
|
|||
(define-public libisofs
|
||||
(package
|
||||
(name "libisofs")
|
||||
(version "1.5.0")
|
||||
(version "1.5.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://files.libburnia-project.org/releases/"
|
||||
"libisofs-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"001l3akf3wb6msl9man776w560iqyvsbwwzs7d7y7msx13irspys"))))
|
||||
"002mcyqwg625a8hqvsrmgm26mhhfwj0j7rahfhsqirmk02b16npg"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("zlib" ,zlib)
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2016, 2017 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -47,8 +47,8 @@ (define-module (gnu packages ci)
|
|||
#:use-module (guix build-system gnu))
|
||||
|
||||
(define-public cuirass
|
||||
(let ((commit "80b6e89a7b2e9a6f9dee26dcf22277970930039f")
|
||||
(revision "25"))
|
||||
(let ((commit "e20ff86d97f7dd92dad140b5919e3cbdf2fb1ce6")
|
||||
(revision "26"))
|
||||
(package
|
||||
(name "cuirass")
|
||||
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
|
||||
|
@ -60,7 +60,7 @@ (define-public cuirass
|
|||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0m7g7wqa1l8gab8pcyi43a6w6rxhaqbpsrwlnadwsds1b95x9bka"))))
|
||||
"1c3rcfmx7vm13x3nid9xbl18rrqljh5vb71qxps4yqid75br4hrb"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils)
|
||||
|
|
|
@ -9556,14 +9556,13 @@ (define-public r-colorramps
|
|||
(define-public r-tidytree
|
||||
(package
|
||||
(name "r-tidytree")
|
||||
(version "0.2.8")
|
||||
(version "0.2.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "tidytree" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hkddl8kj1g01dy7xiracx81f6b405b3ga2qp4wlrl552b9xxpby"))))
|
||||
(base32 "1l9rk71dzlwg8736l0g4rdlq3pghxkfzmlxyln8y4bxx7ym51i6g"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ape" ,r-ape)
|
||||
|
@ -10879,14 +10878,13 @@ (define-public r-dotcall64
|
|||
(define-public r-spam
|
||||
(package
|
||||
(name "r-spam")
|
||||
(version "2.3-0.1")
|
||||
(version "2.3-0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "spam" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mas2ra7d5f9ccwxwsvxls3dz53prpf59hi2a0rvc347wbm6540b"))))
|
||||
(base32 "0czmzwhvcs0shm1asvphhz366df3n7vrlls4cfpq5b3i19fak3w4"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-dotcall64" ,r-dotcall64)))
|
||||
|
@ -11262,14 +11260,13 @@ (define-public r-ppls
|
|||
(define-public r-huge
|
||||
(package
|
||||
(name "r-huge")
|
||||
(version "1.3.3")
|
||||
(version "1.3.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "huge" version))
|
||||
(sha256
|
||||
(base32
|
||||
"18f8w4hdp9fdi2k5ip6fnrn5z47w4ybgxs2m6a7jdvd2v4wfdr69"))))
|
||||
(base32 "07n3j1va2z4v30rj22cww72khgzbz2xsp0yc0qswlrwyxi4my5i3"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-igraph" ,r-igraph)
|
||||
|
@ -15547,13 +15544,13 @@ (define-public r-parameters
|
|||
(define-public r-rgdal
|
||||
(package
|
||||
(name "r-rgdal")
|
||||
(version "1.4-6")
|
||||
(version "1.4-7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "rgdal" version))
|
||||
(sha256
|
||||
(base32 "0lj1dax56dxxsj1hindxcvgz169p9dxd0y4wjypbyr01nja8rz4d"))))
|
||||
(base32 "05rvqy8lr2c3phaylmc4g5761208b0xrmgwn9c4a60x7p251dzjs"))))
|
||||
(properties `((upstream-name . "rgdal")))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -3028,7 +3028,7 @@ (define-public mongo-tools
|
|||
(native-inputs
|
||||
`(("go-github.com-howeyc-gopass" ,go-github.com-howeyc-gopass)
|
||||
("go-github.com-jessevdk-go-flags" ,go-github.com-jessevdk-go-flags)
|
||||
("go-golang.org-x-crypto-ssh-terminal" ,go-golang.org-x-crypto-ssh-terminal)
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
|
||||
("go-gopkg.in-mgo.v2" ,go-gopkg.in-mgo.v2)
|
||||
("go-gopkg.in-tomb.v2" ,go-gopkg.in-tomb.v2)
|
||||
("go-github.com-nsf-termbox-go" ,go-github.com-nsf-termbox-go)
|
||||
|
|
|
@ -67,7 +67,7 @@ (define-module (gnu packages diffoscope)
|
|||
#:use-module (ice-9 match))
|
||||
|
||||
(define-public diffoscope
|
||||
(let ((version "126"))
|
||||
(let ((version "129"))
|
||||
(package
|
||||
(name "diffoscope")
|
||||
(version version)
|
||||
|
@ -79,7 +79,7 @@ (define-public diffoscope
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0lmn2116g5l05nns8qd2kwsnnd144zrqhs53fsr88inzf0mkqwhj"))))
|
||||
"1r8hq93gga9n4jv4fyf1divc9cwvvjadkzl47lazzrfy3nn1qjwr"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
|
@ -153,6 +153,8 @@ (define-public diffoscope
|
|||
(native-inputs `(("python-pytest" ,python-pytest)
|
||||
("python-chardet" ,python-chardet)
|
||||
("python-binwalk" ,python-binwalk)
|
||||
("python-pypdf2" ,python-pypdf2)
|
||||
("python-progressbar33" ,python-progressbar33)
|
||||
;; test suite skips tests when tool is missing
|
||||
,@(match (%current-system)
|
||||
;; ghc is only available on x86 currently.
|
||||
|
|
|
@ -612,7 +612,7 @@ (define-public volume-key
|
|||
(define-public ndctl
|
||||
(package
|
||||
(name "ndctl")
|
||||
(version "65")
|
||||
(version "67")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -621,7 +621,7 @@ (define-public ndctl
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0d8hzfvyxs2q8kgkwgdizlml41kin4mhx3vpdsjk34pfi7mqy69y"))))
|
||||
"076jgw1g2aafqgnq705in0wnabysqk46dq5yxdv1qzgjmyhka39n"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("asciidoc" ,asciidoc)
|
||||
|
|
|
@ -273,21 +273,33 @@ (define-public dnscrypt-wrapper
|
|||
(define-public libasr
|
||||
(package
|
||||
(name "libasr")
|
||||
(version "201602131606")
|
||||
(version "1.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.opensmtpd.org/archives/"
|
||||
name "-" version ".tar.gz"))
|
||||
"libasr-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"18kdmbjsxrfai16d66qslp48b1zf7gr8him2jj5dcqgbsl44ls75"))))
|
||||
(base32 "13fn4sr4vlcx1xijpl26nmnxawyls4lr5q3mi11jdm76f80qxn4w"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'bootstrap
|
||||
;; ‘GNU build system bootstrapping not needed’, the default lies.
|
||||
(lambda _
|
||||
(invoke "sh" "./bootstrap")))
|
||||
(add-after 'install 'install-documentation
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(install-file "src/asr_run.3"
|
||||
(string-append out "/share/man/man3"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("pkg-config" ,pkg-config)
|
||||
("groff" ,groff)))
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://www.opensmtpd.org")
|
||||
(synopsis "Asynchronous resolver library by the OpenBSD project")
|
||||
(description
|
||||
|
@ -373,14 +385,14 @@ (define-public nsd
|
|||
(define-public unbound
|
||||
(package
|
||||
(name "unbound")
|
||||
(version "1.9.3")
|
||||
(version "1.9.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.unbound.net/downloads/unbound-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1ykdy62sgzv33ggkmzwx2h0ifm7hyyxyfkb4zckv7gz4f28xsm8v"))))
|
||||
(base32 "1c2bjm13x8bkw0ds1mhn9ivd2gzmfrb0x5y76bkz09a04bxjagix"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "python"))
|
||||
(native-inputs
|
||||
|
|
|
@ -291,9 +291,9 @@ (define-public docker-libnetwork-cmd-proxy
|
|||
("logrus" ,go-github-com-sirupsen-logrus)
|
||||
("go-netlink" ,go-netlink)
|
||||
("go-netns" ,go-netns)
|
||||
("go-golang-org-x-crypto-ssh-terminal"
|
||||
,go-golang-org-x-crypto-ssh-terminal)
|
||||
("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
("go-golang-org-x-crypto"
|
||||
,go-golang-org-x-crypto)
|
||||
("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(synopsis "Docker user-space proxy")
|
||||
(description "A proxy running in the user space. It is used by the
|
||||
built-in registry server of Docker.")
|
||||
|
|
|
@ -33,7 +33,7 @@ (define-module (gnu packages dunst)
|
|||
(define-public dunst
|
||||
(package
|
||||
(name "dunst")
|
||||
(version "1.3.2")
|
||||
(version "1.4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -42,7 +42,7 @@ (define-public dunst
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12nj8qw3y3nl8sm24wizy2a7k06v1p88bnz1xr9l39h527xyidma"))))
|
||||
"1zmx30qp2s9ca4q70j9ny4aq97pp442j9vfvsyihfcxgks6gwqqm"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
|
|
|
@ -6955,29 +6955,33 @@ (define-public emacs-helm-ag
|
|||
as well as features for editing search results.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
;; There hasn't been a tag or release since 2016, so we take the latest
|
||||
;; commit.
|
||||
(define-public emacs-helm-projectile
|
||||
(package
|
||||
(name "emacs-helm-projectile")
|
||||
(version "0.14.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/bbatsov/helm-projectile.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0lph38p112fridighqcizpsyzjbv7qr3d8prbfj6w6q6gfl6cna4"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-dash" ,emacs-dash)
|
||||
("emacs-helm" ,emacs-helm)
|
||||
("emacs-projectile" ,emacs-projectile)))
|
||||
(home-page "https://github.com/bbatsov/helm-projectile")
|
||||
(synopsis "Helm integration for Projectile")
|
||||
(description
|
||||
"This Emacs library provides a Helm interface for Projectile.")
|
||||
(license license:gpl3+)))
|
||||
(let ((commit "5328b74dddcee8d1913803ca8167868831a07463")
|
||||
(version "0.14.0")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-helm-projectile")
|
||||
(version (git-version version revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/bbatsov/helm-projectile.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0a811cblrvc8llpv771b8dppgxs6bwjyvjy3qn2xns4nigvn93s0"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-helm" ,emacs-helm)
|
||||
("emacs-projectile" ,emacs-projectile)))
|
||||
(home-page "https://github.com/bbatsov/helm-projectile")
|
||||
(synopsis "Helm integration for Projectile")
|
||||
(description
|
||||
"This Emacs library provides a Helm interface for Projectile.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-taskrunner
|
||||
(let ((commit "3afd4a546d42339543d3d4e51b175fc3e82b3358")
|
||||
|
@ -7417,10 +7421,15 @@ (define-public emacs-evil
|
|||
(sha256
|
||||
(base32
|
||||
"1833w397xhac5g3pp25szr2gyvclxy91aw27azvbmsx94pyk2a3q"))))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'fix-test-helpers
|
||||
(lambda _
|
||||
(substitute* "evil-test-helpers.el"
|
||||
(("\\(undo-tree-mode 1\\)") ""))
|
||||
#t)))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-undo-tree" ,emacs-undo-tree)
|
||||
("emacs-goto-chg" ,emacs-goto-chg)))
|
||||
(home-page "https://github.com/emacs-evil/evil")
|
||||
(synopsis "Extensible Vi layer for Emacs")
|
||||
(description
|
||||
|
@ -10823,14 +10832,14 @@ (define-public emacs-easy-kill
|
|||
(define-public emacs-csv-mode
|
||||
(package
|
||||
(name "emacs-csv-mode")
|
||||
(version "1.9")
|
||||
(version "1.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/csv-mode-"
|
||||
version ".el"))
|
||||
(sha256
|
||||
(base32 "0sdnyi9in904k49yy5imapypnmk75lv14k9c1yyjhjpalvvh6br1"))))
|
||||
(base32 "0q7j2cmj7vs6hz8cnf7j7lmlcjmig3jn2p6az345z96agl8a5xsq"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://elpa.gnu.org/packages/csv-mode.html")
|
||||
(synopsis "Major mode for editing comma/char separated values")
|
||||
|
|
|
@ -1053,7 +1053,7 @@ (define-public nestopia-ue
|
|||
(define-public retroarch
|
||||
(package
|
||||
(name "retroarch")
|
||||
(version "1.7.9.2")
|
||||
(version "1.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1062,7 +1062,7 @@ (define-public retroarch
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "14kay5g9rnm79mly7b4x5jwkidjaki8qqkpf21hnj1r2z1q7bp5b"))))
|
||||
(base32 "1mgszd8gb5nk08kfykap9b1l5rl4qfy39dbba8crjj0zkc4z1jga"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
|
|
|
@ -87,7 +87,7 @@ (define-module (gnu packages finance)
|
|||
(define-public bitcoin-core
|
||||
(package
|
||||
(name "bitcoin-core")
|
||||
(version "0.18.0")
|
||||
(version "0.18.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
|
@ -95,15 +95,15 @@ (define-public bitcoin-core
|
|||
version "/bitcoin-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ps0vw9iknz1b1sx74rabd1yhlxvwbd0aimjzn9hlqkvw286hkjy"))))
|
||||
"15mz0gmm058gmq2gdpffbw25jpv7mksyhyfws6i7mqvrapqr6zaw"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("python" ,python) ; for the tests
|
||||
("util-linux" ,util-linux) ; provides the hexdump command for tests
|
||||
("python" ,python) ; for the tests
|
||||
("util-linux" ,util-linux) ; provides the hexdump command for tests
|
||||
("qttools" ,qttools)))
|
||||
(inputs
|
||||
`(("bdb" ,bdb-4.8) ; Bitcoin Core requires bdb 4.8 for compatibility
|
||||
`(("bdb" ,bdb-4.8) ; 4.8 required for compatibility
|
||||
("boost" ,boost)
|
||||
("libevent" ,libevent)
|
||||
("miniupnpc" ,miniupnpc)
|
||||
|
@ -134,7 +134,7 @@ (define-public bitcoin-core
|
|||
#t))
|
||||
(add-before 'check 'set-home
|
||||
(lambda _
|
||||
(setenv "HOME" (getenv "TMPDIR")) ; Tests write to $HOME.
|
||||
(setenv "HOME" (getenv "TMPDIR")) ; tests write to $HOME
|
||||
#t))
|
||||
(add-after 'check 'check-functional
|
||||
(lambda _
|
||||
|
|
|
@ -1101,14 +1101,15 @@ (define-public telepathy-idle
|
|||
(define-public telepathy-mission-control
|
||||
(package
|
||||
(name "telepathy-mission-control")
|
||||
(version "5.16.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://telepathy.freedesktop.org/releases/"
|
||||
name "/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jz6wwgsfxixha6ys2hbzbk5faqnj9kh2m5qdlgx5anqgandsscp"))))
|
||||
(version "5.16.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://telepathy.freedesktop.org/releases/"
|
||||
"telepathy-mission-control/"
|
||||
"telepathy-mission-control-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "00xxv38cfdirnfvgyd56m60j0nkmsv5fz6p2ydyzsychicxl6ssc"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
;;; Copyright © 2017, 2019 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 Comrade Yuri <yuri@nijino>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -622,14 +623,14 @@ (define-public physfs
|
|||
(define-public love
|
||||
(package
|
||||
(name "love")
|
||||
(version "11.1")
|
||||
(version "11.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://bitbucket.org/rude/love/downloads/"
|
||||
"love-" version "-linux-src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pkwiszmjs0xrwk0wqbc5cp9108b1y8gwsid0gqk1s0x09q9lpmw"))))
|
||||
"0m8lvlabmcchskx4qpzkdlsm44360f3j0q3vvvj2388cfnvhv7v4"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -971,6 +972,329 @@ (define-public python-pygame
|
|||
(define-public python2-pygame
|
||||
(package-with-python2 python-pygame))
|
||||
|
||||
(define-public python2-pygame-sdl2
|
||||
(let ((real-version "2.1.0")
|
||||
(renpy-version "7.3.5"))
|
||||
(package
|
||||
(inherit python2-pygame)
|
||||
(name "python2-pygame-sdl2")
|
||||
(version (string-append real-version "-for-renpy-" renpy-version))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.renpy.org/dl/" renpy-version
|
||||
"/pygame_sdl2-" version ".tar.gz"))
|
||||
(sha256 (base32 "1bmr7j9mlsc4czpgw70ld15ymyp4wxrk9hdsqad40wjwdxvvg2dr"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; tests require pygame to be installed first
|
||||
#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'set-paths 'set-sdl-vars
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "PYGAME_SDL2_CFLAGS"
|
||||
(string-append "-I"
|
||||
(assoc-ref inputs "sdl-union")
|
||||
"/include/SDL2 -D_REENTRANT"))
|
||||
(setenv "PYGAME_SDL2_LDFLAGS"
|
||||
(string-append "-L"
|
||||
(assoc-ref inputs "sdl-union")
|
||||
"/lib -Wl,-rpath,"
|
||||
(assoc-ref inputs "sdl-union")
|
||||
"/lib -Wl,--enable-new-dtags -lSDL2"))
|
||||
#t))
|
||||
(add-before 'build 'drop-generated-files
|
||||
(lambda args
|
||||
(delete-file-recursively "gen")
|
||||
(delete-file-recursively "gen3")
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("sdl-union"
|
||||
,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))))
|
||||
(native-inputs
|
||||
`(("python2-cython" ,python2-cython)))
|
||||
(home-page "http://www.renpy.org/")
|
||||
(synopsis "Reimplementation of the Pygame API using SDL2")
|
||||
(description "Pygame_SDL2 reimplements the Pygame API using SDL2,
|
||||
staying close to the original, but also adding some SDL2-specific features.
|
||||
While it aims to be used as a drop-in replacement, it appears to be
|
||||
developed mainly for Ren'py.")
|
||||
(license (list license:lgpl2.1 license:zlib)))))
|
||||
|
||||
(define-public python2-renpy
|
||||
(package
|
||||
(name "python2-renpy")
|
||||
(version "7.3.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.renpy.org/dl/" version
|
||||
"/renpy-" version "-source.tar.bz2"))
|
||||
(sha256 (base32 "1anr5cfbvbsbik4v4rvrkdkciwhg700k4lydfbs4n85raimz9mw4"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; Ren'py doesn't seem to package tests
|
||||
#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-commands
|
||||
(lambda _
|
||||
(substitute* "renpy/editor.py"
|
||||
(("xdg-open")
|
||||
(which "xdg-open")))
|
||||
#t))
|
||||
(add-after 'set-paths 'set-build-vars
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "RENPY_CYTHON"
|
||||
(string-append (assoc-ref inputs "python2-cython")
|
||||
"/bin/cython"))
|
||||
(setenv "RENPY_DEPS_INSTALL" (string-join (map cdr inputs) ":"))
|
||||
#t))
|
||||
(replace 'build
|
||||
(lambda args
|
||||
(apply
|
||||
(lambda* (build-root #:key inputs outputs #:allow-other-keys)
|
||||
;; The "module" subdirectory contains a python (really cython)
|
||||
;; project, which is built using a script, that is thankfully
|
||||
;; named "setup.py".
|
||||
(chdir "module")
|
||||
(apply (assoc-ref %standard-phases 'build) args)
|
||||
;; the above causes renpy.__init__ to be compiled but does not
|
||||
;; compile anything else, hence we do that here
|
||||
(chdir build-root)
|
||||
(delete-file "renpy/__init__.pyc")
|
||||
(invoke "python" "-m" "compileall" "renpy"))
|
||||
(getcwd) args)
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda args
|
||||
(apply
|
||||
(lambda* (build-root #:key inputs outputs #:allow-other-keys)
|
||||
;; Again, we have to wrap the module installation.
|
||||
;; Additionally, we want to install the python code
|
||||
;; (both source and compiled) in the same directory.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(site (string-append "/lib/python"
|
||||
,(version-major+minor
|
||||
(package-version python-2))
|
||||
"/site-packages")))
|
||||
(chdir "module")
|
||||
(apply (assoc-ref %standard-phases 'install) args)
|
||||
(chdir build-root)
|
||||
(copy-recursively "renpy"
|
||||
(string-append out site "/renpy"))))
|
||||
(getcwd) args)
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("ffmpeg" ,ffmpeg)
|
||||
("freetype" ,freetype)
|
||||
("glew" ,glew)
|
||||
("libpng" ,libpng)
|
||||
("python2-pygame" ,python2-pygame-sdl2)
|
||||
("sdl-union"
|
||||
,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))))
|
||||
(native-inputs
|
||||
`(("python2-cython" ,python2-cython)
|
||||
("xdg-utils" ,xdg-utils)))
|
||||
(home-page "http://www.renpy.org/")
|
||||
(synopsis "Ren'py python module")
|
||||
(description "This package contains the shared libraries and Python
|
||||
modules of Ren'py.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public renpy
|
||||
(package
|
||||
(inherit python2-renpy)
|
||||
(name "renpy")
|
||||
(version "7.3.5")
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; see python2-renpy
|
||||
#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-commands
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "launcher/game/choose_directory.rpy"
|
||||
(("/usr/bin/python") (which "python2")))
|
||||
(substitute* "launcher/game/front_page.rpy"
|
||||
(("xdg-open")
|
||||
(which "xdg-open")))
|
||||
(substitute* "launcher/game/project.rpy"
|
||||
(("cmd = \\[ executable, \"-EO\", sys.argv\\[0\\] \\]")
|
||||
(string-append "cmd = [ \"" (assoc-ref outputs "out")
|
||||
"/bin/renpy\" ]"))
|
||||
;; Projects are still created in the usual style, so we need
|
||||
;; to adjust the path.
|
||||
(("cmd.append\\(self.path\\)")
|
||||
"cmd.append(self.path + \"/game\")"))
|
||||
#t))
|
||||
(add-after 'unpack 'drop-game-from-paths
|
||||
(lambda _
|
||||
(substitute* (list "launcher/game/gui7.rpy"
|
||||
"launcher/game/gui7/images.py")
|
||||
((", \"game\",") ","))
|
||||
#t))
|
||||
(add-before 'build 'start-xserver
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((xorg-server (assoc-ref inputs "xorg-server")))
|
||||
(setenv "HOME" (getcwd))
|
||||
(system (format #f "~a/bin/Xvfb :1 &" xorg-server))
|
||||
(setenv "DISPLAY" ":1")
|
||||
#t)))
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(invoke "python" "renpy.py" "launcher" "quit")
|
||||
(invoke "python" "renpy.py" "the_question" "quit")
|
||||
(invoke "python" "renpy.py" "tutorial" "quit")
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Here we install our custom renpy program.
|
||||
;; After finishing this step, "out" will have the following:
|
||||
;; |-- bin/renpy
|
||||
;; `-- share/renpy ; i.e. path_to_renpy_base()
|
||||
;; `-- common
|
||||
;;
|
||||
;; Note that common is also a de facto unused directory in
|
||||
;; python2-renpy. On other systems, renpy_base would point to
|
||||
;; site-packages or even somewhere in /opt.
|
||||
;; The former approach is not as straightforward as it seems
|
||||
;; -- it causes renpy to load files twice for some weird reason --
|
||||
;; and the latter is impossible on Guix. Hence the detour through
|
||||
;; share/renpy and the custom renpy program.
|
||||
;;
|
||||
;; As a convention, other games should be installed as
|
||||
;; subdirectories of share/renpy in their respective outputs as
|
||||
;; well. This differs from the traditional layout, which is
|
||||
;; roughly the following:
|
||||
;; `-- Super Awesome Game
|
||||
;; |-- game ; <- the folder we actually want
|
||||
;; |-- lib ; compiled renpy module and dependencies
|
||||
;; |-- renpy ; Ren'py python code (source + compiled)
|
||||
;; |-- Super Awesome Game.py
|
||||
;; `-- Super Awesome Game.sh
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin/renpy (string-append out "/bin/renpy")))
|
||||
(mkdir-p (string-append out "/bin"))
|
||||
(copy-recursively "renpy/common"
|
||||
(string-append out "/share/renpy/common"))
|
||||
(copy-recursively "gui"
|
||||
(string-append out "/share/renpy/gui"))
|
||||
|
||||
(call-with-output-file bin/renpy
|
||||
(lambda (port)
|
||||
(format port "#!~a~%" (which "python2"))
|
||||
(format port "
|
||||
from __future__ import print_function
|
||||
|
||||
import os
|
||||
import sys
|
||||
import warnings
|
||||
|
||||
def path_to_common(renpy_base):
|
||||
return renpy_base + \"/common\"
|
||||
|
||||
def path_to_saves(gamedir, save_directory=None):
|
||||
import renpy # @UnresolvedImport
|
||||
|
||||
if save_directory is None:
|
||||
save_directory = renpy.config.save_directory
|
||||
save_directory = renpy.exports.fsencode(save_directory)
|
||||
|
||||
if not save_directory:
|
||||
return gamedir + \"/saves\"
|
||||
|
||||
return os.path.expanduser(\"~~/.renpy/\" + save_directory)
|
||||
|
||||
def path_to_renpy_base():
|
||||
return \"~a\"
|
||||
|
||||
def main():
|
||||
renpy_base = path_to_renpy_base()
|
||||
try:
|
||||
import renpy.bootstrap
|
||||
import renpy.arguments
|
||||
except ImportError:
|
||||
print(\"\"\"Could not import renpy.bootstrap.
|
||||
Please ensure you decompressed Ren'Py correctly, preserving the directory
|
||||
structure.\"\"\", file=sys.stderr)
|
||||
raise
|
||||
|
||||
args = renpy.arguments.bootstrap()
|
||||
if not args.basedir:
|
||||
print(\"\"\"This Ren'py requires a basedir to launch.
|
||||
The basedir is the directory, in which .rpy files live -- usually the 'game'
|
||||
subdirectory of a game packaged by Ren'py.
|
||||
|
||||
If you want the Ren'py launcher, use renpy-launcher instead.\"\"\",
|
||||
file=sys.stderr)
|
||||
sys.exit()
|
||||
|
||||
renpy.bootstrap.bootstrap(renpy_base)
|
||||
|
||||
if __name__ == \"__main__\":
|
||||
main()
|
||||
"
|
||||
(string-append out "/share/renpy"))))
|
||||
(chmod bin/renpy #o755)
|
||||
#t)))
|
||||
|
||||
(add-after 'install 'install-games
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(define renpy (assoc-ref outputs "out"))
|
||||
;; TODO: We should offer a renpy-build-system to make the
|
||||
;; installation of Ren'py games easier.
|
||||
(define* (install-renpy-game #:key output game name (renpy renpy)
|
||||
#:allow-other-keys)
|
||||
(let* ((name (or name (basename game)))
|
||||
(launcher (string-append output "/bin/renpy-" name))
|
||||
(share (string-append output "/share/renpy/" name)))
|
||||
(copy-recursively (string-append game "/game") share)
|
||||
(mkdir-p (string-append output "/bin"))
|
||||
(with-output-to-file launcher
|
||||
(lambda ()
|
||||
(format #t
|
||||
"#!~a~%~a ~a \"$@\""
|
||||
(which "bash")
|
||||
(string-append renpy "/bin/renpy")
|
||||
share)))
|
||||
(chmod launcher #o755)))
|
||||
|
||||
(install-renpy-game #:output (assoc-ref outputs "out")
|
||||
#:game "launcher")
|
||||
|
||||
(install-renpy-game #:output (assoc-ref outputs "the-question")
|
||||
#:game "the_question"
|
||||
#:name "the-question")
|
||||
|
||||
(install-renpy-game #:output (assoc-ref outputs "tutorial")
|
||||
#:game "tutorial")
|
||||
#t))
|
||||
(replace 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(wrap-program (string-append (assoc-ref outputs "out")
|
||||
"/bin/renpy")
|
||||
`("PYTHONPATH" = (,(getenv "PYTHONPATH"))))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("python2-tkinter" ,python-2 "tk")
|
||||
("python2-pygame" ,python2-pygame-sdl2)
|
||||
("python2-renpy" ,python2-renpy)
|
||||
("xorg-server" ,xorg-server)))
|
||||
(outputs
|
||||
(list "out" "tutorial" "the-question"))
|
||||
(home-page "http://www.renpy.org/")
|
||||
(synopsis "Visual Novel Engine")
|
||||
(description "Ren'Py is a visual novel engine that helps you use words,
|
||||
images, and sounds to tell interactive stories that run on computers and
|
||||
mobile devices. These can be both visual novels and life simulation games.
|
||||
The easy to learn script language allows anyone to efficiently write large
|
||||
visual novels, while its Python scripting is enough for complex simulation
|
||||
games.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public grafx2
|
||||
(package
|
||||
(name "grafx2")
|
||||
|
|
|
@ -44,6 +44,7 @@
|
|||
;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl>
|
||||
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
|
||||
;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
|
||||
;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -2594,24 +2595,14 @@ (define-public manaplus
|
|||
(define openttd-engine
|
||||
(package
|
||||
(name "openttd-engine")
|
||||
(version "1.8.0")
|
||||
(version "1.9.3")
|
||||
(source
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append "http://binaries.openttd.org/releases/"
|
||||
(uri (string-append "https://proxy.binaries.openttd.org/openttd-releases/"
|
||||
version "/openttd-" version "-source.tar.xz"))
|
||||
(patches
|
||||
(list
|
||||
(origin (method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/OpenTTD/OpenTTD/commit/"
|
||||
"19076c24c1f3baf2a22d1fa832d5688216cf54a3.patch"))
|
||||
(file-name "openttd-fix-compilation-with-ICU-61.patch")
|
||||
(sha256
|
||||
(base32
|
||||
"02d1xmb75yv4x6rfnvxk3vvq4l3lvvwr2pfsdzn7lzalic51ziqh")))))
|
||||
(sha256
|
||||
(base32
|
||||
"0zq8xdg0k92p3s4j9x76591zaqz7k9ra69q008m209vdfffjvly2"))
|
||||
"0ijq72kgx997ggw40i5f4a3nf7y2g72z37l47i18yjvgbdzy320r"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; The DOS port contains proprietary software.
|
||||
|
@ -2656,7 +2647,7 @@ (define openttd-engine
|
|||
internationalization support, conditional orders and the ability to clone,
|
||||
autoreplace and autoupdate vehicles. This package only includes the game
|
||||
engine. When you start it you will be prompted to download a graphics set.")
|
||||
(home-page "http://openttd.org/")
|
||||
(home-page "https://www.openttd.org/")
|
||||
;; This package is GPLv2, except for a few files located in
|
||||
;; "src/3rdparty/" which are under the 3-clause BSD, LGPLv2.1+ and Zlib
|
||||
;; licenses. In addition, this software contains an in-game downloader
|
||||
|
@ -2667,7 +2658,7 @@ (define openttd-engine
|
|||
(define openttd-opengfx
|
||||
(package
|
||||
(name "openttd-opengfx")
|
||||
(version "0.5.2")
|
||||
(version "0.5.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2675,7 +2666,7 @@ (define openttd-opengfx
|
|||
version "/opengfx-" version "-source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0iz66q7p1mf00njfjbc4vibh3jaybki7armkl18iz7p6x4chp9zv"))))
|
||||
"009fa1bdin1bk0ynzhzc30hzkmmwzmwkk6j591ax3f6w75l28n49"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:make-flags (list "CC=gcc"
|
||||
|
@ -2910,7 +2901,7 @@ (define openrct2-objects
|
|||
(define-public openrct2
|
||||
(package
|
||||
(name "openrct2")
|
||||
(version "0.2.3")
|
||||
(version "0.2.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -2919,7 +2910,7 @@ (define-public openrct2
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "01mj6jlbl2cn3wpk6sy34ldzdl0qykpn7fncznjykklj2nqzr4ig"))))
|
||||
(base32 "1rlw3w20llg36sj3bk50g661qw766ng8ma3p42sdkj8br9dw800h"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "-DDOWNLOAD_OBJECTS=OFF"
|
||||
|
|
|
@ -38,7 +38,7 @@ (define-module (gnu packages genealogy)
|
|||
(define-public gramps
|
||||
(package
|
||||
(name "gramps")
|
||||
(version "5.0.2")
|
||||
(version "5.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -48,13 +48,14 @@ (define-public gramps
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wg743q8ixy5dmwricgkl4zck4109vq5ppmkyi18qjmna9m0aq7r"))))
|
||||
"1zrvr543zzsiapda75vdd2669fgijmx4cv7nfj5d1jsyz4qnif7b"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("intltool" ,intltool)))
|
||||
(inputs
|
||||
`(("font-gnu-freefont-ttf" ,font-gnu-freefont-ttf)
|
||||
`(("cairo" ,cairo)
|
||||
("font-gnu-freefont-ttf" ,font-gnu-freefont-ttf)
|
||||
("geocode-glib" ,geocode-glib)
|
||||
("gexiv2" ,gexiv2)
|
||||
("ghostscript" ,ghostscript)
|
||||
|
|
|
@ -634,14 +634,14 @@ (define-public python-gdal
|
|||
(define-public postgis
|
||||
(package
|
||||
(name "postgis")
|
||||
(version "2.4.4")
|
||||
(version "2.4.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.osgeo.org/postgis/source/postgis-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hm8migjb53cymp4qvg1h20yqllmy9f7x0awv5450391i6syyqq6"))))
|
||||
"0nanza15xzfhbpbq49p1xqz96dgbsam5332y9zj6snmz2mq685ll"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
|
|
|
@ -708,6 +708,33 @@ (define-public python2-pygobject
|
|||
("pkg-config" ,pkg-config)
|
||||
("python-pytest" ,python2-pytest)))))
|
||||
|
||||
;; Newer version of this core-updates package, for Lollypop.
|
||||
(define-public python-pygobject-3.34
|
||||
(package/inherit
|
||||
python-pygobject
|
||||
(version "3.34.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/pygobject/"
|
||||
(version-major+minor version)
|
||||
"/pygobject-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "06i7ynnbvgpz0gw09zsjbvhgcp5qz4yzdifw27qjwdazg2mckql7"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'delete-broken-tests
|
||||
(lambda _
|
||||
(with-directory-excursion "tests"
|
||||
(for-each
|
||||
delete-file
|
||||
;; FIXME: these tests require Gdk and/or Gtk 4.
|
||||
'("test_atoms.py"
|
||||
"test_overrides_gtk.py")))
|
||||
#t)))))))
|
||||
|
||||
(define-public perl-glib
|
||||
(package
|
||||
(name "perl-glib")
|
||||
|
|
|
@ -772,7 +772,7 @@ (define-public gnome-keyring
|
|||
(define-public evince
|
||||
(package
|
||||
(name "evince")
|
||||
(version "3.30.2")
|
||||
(version "3.34.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
|
@ -780,7 +780,7 @@ (define-public evince
|
|||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0k7jln6dpg4bpv61niicjzkzyq6fhb3yfld7pc8ck71c8pmvsnx9"))))
|
||||
"1pr6fvbaam1mzxjwyqd53hcxzdjzf73idn10j4j7n54nwg6hgr45"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--disable-nautilus")
|
||||
|
@ -2062,17 +2062,17 @@ (define-public libwnck-2
|
|||
(define-public goffice
|
||||
(package
|
||||
(name "goffice")
|
||||
(version "0.10.44")
|
||||
(version "0.10.45")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(uri (string-append "mirror://gnome/sources/goffice/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
"goffice-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1fd7cm6j0g0mqgpqs4y22b4gd2ll4mcyvg4d0q22d5ndjapl4q3d"))))
|
||||
(base32 "0iqrygv2bh8kiw98kjx6ay6qdd288v91q5m8n7cvs2zcx5ksaavh"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
"doc")) ;4.0 MiB of gtk-doc
|
||||
"doc")) ; 4.0 MiB of gtk-doc
|
||||
(arguments
|
||||
'(#:configure-flags (list (string-append "--with-html-dir="
|
||||
(assoc-ref %outputs "doc")
|
||||
|
@ -7784,16 +7784,15 @@ (define-public gnome-planner
|
|||
(define-public lollypop
|
||||
(package
|
||||
(name "lollypop")
|
||||
(version "1.1.3.1")
|
||||
(version "1.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gitlab.gnome.org/World/lollypop/uploads/"
|
||||
"5a7cd7c72b6d83ae08d0c54c4691f9df/"
|
||||
name "-" version ".tar.xz"))
|
||||
"aa4fbd92bf338296c28e54710271ccab/"
|
||||
"lollypop-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1r5wn0bja9psz6nr1rcaysdkkwz84rbyzpdfw66cxa6wiy52pkjm"))))
|
||||
(base32 "1wz5fna24qr3v7h29ijwhdxza85r9srz9xsqz4f4df3p5f8rfyql"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:imported-modules ((guix build python-build-system)
|
||||
|
@ -7831,7 +7830,7 @@ (define-public lollypop
|
|||
("python-gst" ,python-gst)
|
||||
("python-pil" ,python-pillow)
|
||||
("python-pycairo" ,python-pycairo)
|
||||
("python-pygobject" ,python-pygobject)
|
||||
("python-pygobject" ,python-pygobject-3.34)
|
||||
("python-pylast" ,python-pylast)
|
||||
("totem-pl-parser" ,totem-pl-parser)
|
||||
("webkitgtk" ,webkitgtk)))
|
||||
|
|
|
@ -147,14 +147,14 @@ (define-public libextractor
|
|||
(define-public libmicrohttpd
|
||||
(package
|
||||
(name "libmicrohttpd")
|
||||
(version "0.9.66")
|
||||
(version "0.9.68")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"06xblz77bnn29y7sl43avxbcrjbw486x3416plpr3x3l2pdx8rjf"))))
|
||||
"0q8bc4hrxn6llml7w2vam6n833x8injs39wgdkhwkawr50m6wwf5"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("curl" ,curl)
|
||||
|
|
|
@ -550,7 +550,8 @@ (define* (computed-origin-method gexp-promise hash-algo hash
|
|||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
|
||||
(define %icecat-version "68.2.0-guix0-preview1")
|
||||
(define %icecat-version "68.2.0-guix0-preview2")
|
||||
(define %icecat-build-id "20191028000000") ;must be of the form YYYYMMDDhhmmss
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
|
@ -576,7 +577,7 @@ (define icecat-source
|
|||
|
||||
(upstream-icecat-base-version "68.1.0") ; maybe older than base-version
|
||||
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
|
||||
(gnuzilla-commit "395cc0798600cde44a30abaa3f5d08ce8b68f782")
|
||||
(gnuzilla-commit "aa7ab9483a64c43e77736917dd83841ccc437300")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -586,8 +587,10 @@ (define icecat-source
|
|||
(file-name (git-file-name "gnuzilla" upstream-icecat-base-version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ll3j2kpsfp1f9dxy67fay1cidsng02l8a3a23wdjqkxgrg1cf4g"))))
|
||||
"03jygq1zna621y0ba6370cff4v2g9l57g3015y3vxbahnmzn9msa"))))
|
||||
|
||||
(gnuzilla-fixes-patch
|
||||
(local-file (search-patch "icecat-gnuzilla-fixes.patch")))
|
||||
(makeicecat-patch
|
||||
(local-file (search-patch "icecat-makeicecat.patch"))))
|
||||
|
||||
|
@ -633,6 +636,8 @@ (define icecat-source
|
|||
|
||||
(with-directory-excursion "/tmp/gnuzilla"
|
||||
(make-file-writable "makeicecat")
|
||||
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
||||
"-p1" "--input" #+gnuzilla-fixes-patch)
|
||||
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
||||
"-p1" "--input" #+makeicecat-patch)
|
||||
(patch-shebang "makeicecat")
|
||||
|
@ -772,10 +777,6 @@ (define-public icecat
|
|||
;; ,(search-patch "icecat-use-system-graphite2+harfbuzz.patch"))
|
||||
;; ("icecat-use-system-media-libs.patch"
|
||||
;; ,(search-patch "icecat-use-system-media-libs.patch"))
|
||||
("icecat-default-search-ddg.patch"
|
||||
,(search-patch "icecat-default-search-ddg.patch"))
|
||||
("icecat-disable-sync.patch"
|
||||
,(search-patch "icecat-disable-sync.patch"))
|
||||
|
||||
("patch" ,(canonical-package patch))
|
||||
|
||||
|
@ -1008,6 +1009,7 @@ (define-public icecat
|
|||
(setenv "CONFIG_SHELL" bash)
|
||||
(setenv "AUTOCONF" (which "autoconf")) ; must be autoconf-2.13
|
||||
(setenv "CC" "gcc") ; apparently needed when Stylo is enabled
|
||||
(setenv "MOZ_BUILD_DATE" ,%icecat-build-id) ; avoid timestamp
|
||||
(mkdir "../build")
|
||||
(chdir "../build")
|
||||
(format #t "build directory: ~s~%" (getcwd))
|
||||
|
@ -1071,8 +1073,7 @@ (define-public icecat
|
|||
(pulseaudio-lib (string-append pulseaudio "/lib")))
|
||||
(wrap-program (car (find-files lib "^icecat$"))
|
||||
`("XDG_DATA_DIRS" prefix (,gtk-share))
|
||||
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib))
|
||||
`("MOZ_LEGACY_PROFILES" = ("1")))
|
||||
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib)))
|
||||
#t))))))
|
||||
(home-page "https://www.gnu.org/software/gnuzilla/")
|
||||
(synopsis "Entirely free browser derived from Mozilla Firefox")
|
||||
|
|
|
@ -216,192 +216,11 @@ (define-public go-1.4
|
|||
(supported-systems '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux"))
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-1.11
|
||||
(package
|
||||
(inherit go-1.4)
|
||||
(name "go")
|
||||
(version "1.11.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://storage.googleapis.com/golang/"
|
||||
name version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09k9zmq7hhgg0bf1y7rwa0kn7q1vkkr94cmg2iv9lq3najh5nykd"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-1.4)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(replace 'prebuild
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib"))
|
||||
(ld (string-append (assoc-ref inputs "libc") "/lib"))
|
||||
(loader (car (find-files ld "^ld-linux.+")))
|
||||
(net-base (assoc-ref inputs "net-base"))
|
||||
(tzdata-path
|
||||
(string-append (assoc-ref inputs "tzdata") "/share/zoneinfo"))
|
||||
(output (assoc-ref outputs "out")))
|
||||
|
||||
(for-each delete-file
|
||||
;; Removing net/ tests, which fail when attempting to access
|
||||
;; network resources not present in the build container.
|
||||
'("net/listen_test.go"
|
||||
"net/parse_test.go"
|
||||
"net/cgo_unix_test.go"
|
||||
;; A side effect of these test scripts is testing
|
||||
;; cgo. Attempts at using cgo flags and
|
||||
;; directives with these scripts as specified
|
||||
;; here (https://golang.org/cmd/cgo/) have not
|
||||
;; worked. The tests continue to state that they
|
||||
;; can not find crt1.o despite being present.
|
||||
"cmd/go/testdata/script/list_compiled_imports.txt"
|
||||
"cmd/go/testdata/script/mod_case_cgo.txt"
|
||||
;; https://github.com/golang/go/issues/24884
|
||||
"os/user/user_test.go"))
|
||||
|
||||
(substitute* "os/os_test.go"
|
||||
(("/usr/bin") (getcwd))
|
||||
(("/bin/pwd") (which "pwd"))
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
(substitute* "cmd/vendor/golang.org/x/sys/unix/syscall_unix_test.go"
|
||||
(("/usr/bin") "/tmp"))
|
||||
|
||||
;; Add libgcc to runpath
|
||||
(substitute* "cmd/link/internal/ld/lib.go"
|
||||
(("!rpath.set") "true"))
|
||||
(substitute* "cmd/go/internal/work/gccgo.go"
|
||||
(("cgoldflags := \\[\\]string\\{\\}")
|
||||
(string-append "cgoldflags := []string{"
|
||||
"\"-rpath=" gcclib "\""
|
||||
"}"))
|
||||
(("\"-lgcc_s\", ")
|
||||
(string-append
|
||||
"\"-Wl,-rpath=" gcclib "\", \"-lgcc_s\", ")))
|
||||
(substitute* "cmd/go/internal/work/gc.go"
|
||||
(("ldflags = setextld\\(ldflags, compiler\\)")
|
||||
(string-append
|
||||
"ldflags = setextld(ldflags, compiler)\n"
|
||||
"ldflags = append(ldflags, \"-r\")\n"
|
||||
"ldflags = append(ldflags, \"" gcclib "\")\n")))
|
||||
|
||||
;; Disable failing tests: these tests attempt to access
|
||||
;; commands or network resources which are neither available
|
||||
;; nor necessary for the build to succeed.
|
||||
(for-each
|
||||
(match-lambda
|
||||
((file regex)
|
||||
(substitute* file
|
||||
((regex all before test_name)
|
||||
(string-append before "Disabled" test_name)))))
|
||||
'(("net/net_test.go" "(.+)(TestShutdownUnix.+)")
|
||||
("net/dial_test.go" "(.+)(TestDialTimeout.+)")
|
||||
("os/os_test.go" "(.+)(TestHostname.+)")
|
||||
("time/format_test.go" "(.+)(TestParseInSydney.+)")
|
||||
("time/format_test.go" "(.+)(TestParseInLocation.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestEcho.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestCommandRelativeName.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestCatStdin.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestCatGoodAndBadFile.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExitStatus.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestPipes.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestStdinClose.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestIgnorePipeErrorOnSuccess.+)")
|
||||
("syscall/syscall_unix_test.go" "(.+)(TestPassFD\\(.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExtraFiles/areturn.+)")
|
||||
("cmd/go/go_test.go" "(.+)(TestCoverageWithCgo.+)")
|
||||
("cmd/go/go_test.go" "(.+)(TestTwoPkgConfigs.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestOutputStderrCapture.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExtraFiles.+)")
|
||||
("os/exec/exec_test.go" "(.+)(TestExtraFilesRace.+)")
|
||||
("net/lookup_test.go" "(.+)(TestLookupPort.+)")
|
||||
("syscall/exec_linux_test.go"
|
||||
"(.+)(TestCloneNEWUSERAndRemapNoRootDisableSetgroups.+)")))
|
||||
|
||||
;; fix shebang for testar script
|
||||
;; note the target script is generated at build time.
|
||||
(substitute* "../misc/cgo/testcarchive/carchive_test.go"
|
||||
(("#!/usr/bin/env") (string-append "#!" (which "env"))))
|
||||
|
||||
(substitute* "net/lookup_unix.go"
|
||||
(("/etc/protocols") (string-append net-base "/etc/protocols")))
|
||||
(substitute* "net/port_unix.go"
|
||||
(("/etc/services") (string-append net-base "/etc/services")))
|
||||
(substitute* "time/zoneinfo_unix.go"
|
||||
(("/usr/share/zoneinfo/") tzdata-path))
|
||||
(substitute* (find-files "cmd" "\\.go")
|
||||
(("/lib(64)?/ld-linux.*\\.so\\.[0-9]") loader))
|
||||
#t)))
|
||||
(add-before 'build 'set-bootstrap-variables
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
;; Tell the build system where to find the bootstrap Go.
|
||||
(let ((go (assoc-ref inputs "go")))
|
||||
(setenv "GOROOT_BOOTSTRAP" go)
|
||||
(setenv "GOGC" "400")
|
||||
#t)))
|
||||
(replace 'build
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; FIXME: Some of the .a files are not bit-reproducible.
|
||||
(let* ((output (assoc-ref outputs "out")))
|
||||
(setenv "CC" (which "gcc"))
|
||||
(setenv "GOOS" "linux")
|
||||
(setenv "GOROOT" (dirname (getcwd)))
|
||||
(setenv "GOROOT_FINAL" output)
|
||||
(setenv "CGO_ENABLED" "1")
|
||||
(invoke "sh" "all.bash"))))
|
||||
|
||||
(replace 'install
|
||||
;; TODO: Most of this could be factorized with Go 1.4.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((output (assoc-ref outputs "out"))
|
||||
(doc_out (assoc-ref outputs "doc"))
|
||||
(docs (string-append doc_out "/share/doc/" ,name "-" ,version))
|
||||
(src (string-append
|
||||
(assoc-ref outputs "tests") "/share/" ,name "-" ,version)))
|
||||
(delete-file-recursively "../pkg/bootstrap")
|
||||
;; Prevent installation of the build cache, which contains
|
||||
;; store references to most of the tools used to build Go and
|
||||
;; would unnecessarily increase the size of Go's closure if it
|
||||
;; was installed.
|
||||
(delete-file-recursively "../pkg/obj")
|
||||
|
||||
(mkdir-p src)
|
||||
(copy-recursively "../test" (string-append src "/test"))
|
||||
(delete-file-recursively "../test")
|
||||
(mkdir-p docs)
|
||||
(copy-recursively "../api" (string-append docs "/api"))
|
||||
(delete-file-recursively "../api")
|
||||
(copy-recursively "../doc" (string-append docs "/doc"))
|
||||
(delete-file-recursively "../doc")
|
||||
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(let* ((filein (string-append "../" file))
|
||||
(fileout (string-append docs "/" file)))
|
||||
(copy-file filein fileout)
|
||||
(delete-file filein)))
|
||||
;; Note the slightly different file names compared to 1.4.
|
||||
'("README.md" "CONTRIBUTORS" "AUTHORS" "PATENTS"
|
||||
"LICENSE" "VERSION" "CONTRIBUTING.md" "robots.txt"))
|
||||
|
||||
(copy-recursively "../" output)
|
||||
#t)))))))
|
||||
(native-inputs
|
||||
`(("go" ,go-1.4)
|
||||
,@(match (%current-system)
|
||||
((or "armhf-linux" "aarch64-linux")
|
||||
`(("gold" ,binutils-gold)))
|
||||
(_ `()))
|
||||
,@(package-native-inputs go-1.4)))
|
||||
(supported-systems %supported-systems)))
|
||||
|
||||
|
||||
(define-public go-1.12
|
||||
(package
|
||||
(inherit go-1.4)
|
||||
(name "go")
|
||||
(version "1.12.7")
|
||||
(version "1.12.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -409,7 +228,7 @@ (define-public go-1.12
|
|||
name version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"04rvwj69gmw3bz8pw5pf10r21ar0pgpnswp15nkddf04dxyl9s4m"))))
|
||||
"0m1rvawvpdl7kd0asw10m50xbxlhykix6dng9p4x6ih6x3y4hvpm"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-1.4)
|
||||
((#:phases phases)
|
||||
|
@ -841,182 +660,18 @@ (define-public go-golang-org-x-crypto
|
|||
".*\\.gz$"))
|
||||
#t)))))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-cpu" ,go-golang-org-x-sys-cpu)))
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(synopsis "Supplementary cryptographic libraries in Go")
|
||||
(description "This package provides supplementary cryptographic libraries
|
||||
for the Go language.")
|
||||
(home-page "https://go.googlesource.com/crypto/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-crypto-bcrypt
|
||||
(let ((commit "b7391e95e576cacdcdd422573063bc057239113d")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-crypto-bcrypt")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/crypto")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-crypto-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jqfh81mhgwcc6b9l0bs6rb0707s01qpvn7896i5bsmig46lc7zm"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/bcrypt"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Bcrypt in Go")
|
||||
(description "This package provides a Go implementation of the bcrypt
|
||||
password hashing function.")
|
||||
(home-page "https://go.googlesource.com/crypto/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-crypto-blowfish
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-blowfish")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/blowfish"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Blowfish in Go")
|
||||
(description "This package provides a Go implementation of the Blowfish
|
||||
symmetric-key block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-pbkdf2
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-pbkdf2")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/pbkdf2"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "PBKDF2 in Go")
|
||||
(description "This package provides a Go implementation of the PBKDF2 key
|
||||
derivation function.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-tea
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-tea")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/tea"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Tiny Encryption Algorithm (TEA) in Go")
|
||||
(description "This package provides a Go implementation of the Tiny Encryption
|
||||
Algorithm (TEA) block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-salsa20
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-salsa20")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/salsa20"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Salsa20 in Go")
|
||||
(description "This package provides a Go implementation of the Salsa20
|
||||
stream cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-cast5
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-cast5")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/cast5"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Cast5 in Go")
|
||||
(description "This package provides a Go implementation of the Cast5
|
||||
symmetric-key block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-twofish
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-twofish")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/twofish"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Twofish in Go")
|
||||
(description "This package provides a Go implementation of the Twofish
|
||||
symmetric-key block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-xtea
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-xtea")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/xtea"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "eXtended Tiny Encryption Algorithm (XTEA) in Go")
|
||||
(description "This package provides a Go implementation of the eXtended
|
||||
Tiny Encryption Algorithm (XTEA) block cipher.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-ed25519
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-ed25519")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/ed25519"
|
||||
#:unpack-path "golang.org/x/crypto"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(map (lambda (file)
|
||||
(make-file-writable file))
|
||||
(find-files
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/src/golang.org/x/crypto/ed25519/testdata")
|
||||
".*\\.gz$"))
|
||||
#t)))))
|
||||
(synopsis "ED25519 in Go")
|
||||
(description "This package provides a Go implementation of the ED25519
|
||||
signature algorithm.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-ripemd160
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-ripemd160")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt)
|
||||
((#:import-path _)
|
||||
"golang.org/x/crypto/ripemd160")))
|
||||
(synopsis "RIPEMD-160 in Go")
|
||||
(description "This package provides a Go implementation of the RIPEMD-160
|
||||
hash algorithm.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-blake2s
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-blake2s")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt)
|
||||
((#:import-path _)
|
||||
"golang.org/x/crypto/blake2s")))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-cpu" ,go-golang-org-x-sys-cpu)))
|
||||
(synopsis "BLAKE2s in Go")
|
||||
(description "This package provides a Go implementation of the BLAKE2s
|
||||
hash algorithm.")))
|
||||
|
||||
(define-public go-golang-org-x-crypto-sha3
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-sha3")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt)
|
||||
((#:import-path _)
|
||||
"golang.org/x/crypto/sha3")))
|
||||
(synopsis "SHA-3 in Go")
|
||||
(description "This package provides a Go implementation of the SHA-3
|
||||
fixed-output-length hash functions and the SHAKE variable-output-length hash
|
||||
functions defined by FIPS-202.")))
|
||||
|
||||
(define-public go-golang-org-x-net-ipv4
|
||||
(define-public go-golang-org-x-net
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-ipv4")
|
||||
(name "go-golang-org-x-net")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -1029,208 +684,22 @@ (define-public go-golang-org-x-net-ipv4
|
|||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/ipv4"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "Go IPv4 support")
|
||||
(description "This package provides @code{ipv4}, which implements IP-level
|
||||
socket options for the Internet Protocol version 4.")
|
||||
`(#:import-path "golang.org/x/net"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Go supplemental networking libraries")
|
||||
(description "This package provides supplemental Go networking libraries.")
|
||||
(home-page "https://go.googlesource.com/net")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-bpf
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-bpf")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/bpf"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "Berkeley Packet Filters (BPF) in Go")
|
||||
(description "This package provides a Go implementation of the Berkeley
|
||||
Packet Filter (BPF) virtual machine.")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-context
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-context")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/context"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(synopsis "Golang Context type")
|
||||
(description "This package provides @code{context}, which defines the
|
||||
Context type, which carries deadlines, cancellation signals, and other
|
||||
request-scoped values across API boundaries and between processes.")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-internal-socks
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-internal-socks")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/internal/socks"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(synopsis "")
|
||||
(description "")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-internal-socket
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-internal-socket")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/internal/socket"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "")
|
||||
(description "")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-internal-iana
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-internal-iana")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/internal/iana"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(synopsis "Go support for assigned numbers (IANA)")
|
||||
(description "This package provides @code{iana}, which provides protocol
|
||||
number resources managed by the Internet Assigned Numbers Authority (IANA).")
|
||||
(home-page "https://go.googlesource.com/net/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-ipv6
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-ipv6")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/ipv6"
|
||||
#:unpack-path "golang.org/x/net"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(synopsis "Go IPv6 support")
|
||||
(description "This package provides @code{ipv6}, which implements
|
||||
IP-level socket options for the Internet Protocol version 6.")
|
||||
(home-page "https://go.googlesource.com/net")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-net-proxy
|
||||
(let ((commit "d28f0bde5980168871434b95cfc858db9f2a7a99")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "go-golang-org-x-net-proxy")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/net")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go.googlesource.com-net-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xj31h70m7xxb7gc86n9i21w6d7djbjz67zfaljm4jqskz6hxkf"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/net/proxy"
|
||||
#:unpack-path "golang.org/x/net/"))
|
||||
(synopsis "Go support for network proxies")
|
||||
(description "This package provides @code{proxy}, which provides support
|
||||
for a variety of protocols to proxy network data.")
|
||||
(home-page "https://go.googlesource.com/net")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-sys-unix
|
||||
(define-public go-golang-org-x-sys
|
||||
(let ((commit "04f50cda93cbb67f2afa353c52f342100e80e625")
|
||||
(revision "4"))
|
||||
(package
|
||||
(name "go-golang-org-x-sys-unix")
|
||||
(name "go-golang-org-x-sys")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -1243,28 +712,21 @@ (define-public go-golang-org-x-sys-unix
|
|||
"0hmfsz9y1ingwsn482hlzzmzs7kr3cklm0ana0mbdk70isw2bxnw"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/sys/unix"
|
||||
#:unpack-path "golang.org/x/sys"))
|
||||
`(#:import-path "golang.org/x/sys"
|
||||
;; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Go support for low-level system interaction")
|
||||
(description "This package provides @code{unix}, which offers Go support
|
||||
for low-level interaction with the operating system.")
|
||||
(description "This package provides supplemental libraries offering Go
|
||||
support for low-level interaction with the operating system.")
|
||||
(home-page "https://go.googlesource.com/sys")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-sys-cpu
|
||||
(define-public go-golang-org-x-text
|
||||
(package
|
||||
(inherit go-golang-org-x-sys-unix)
|
||||
(name "go-golang-org-x-sys-cpu")
|
||||
(arguments
|
||||
'(#:import-path "golang.org/x/sys/cpu"
|
||||
#:unpack-path "golang.org/x/sys"))
|
||||
(synopsis "CPU feature detection")
|
||||
(description "Thi spackage provides @code{cpu}, which offers tools for CPU
|
||||
feature detection in Go.")))
|
||||
|
||||
(define-public go-golang-org-x-text-encoding
|
||||
(package
|
||||
(name "go-golang-org-x-text-encoding")
|
||||
(name "go-golang-org-x-text")
|
||||
(version "0.3.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -1278,45 +740,23 @@ (define-public go-golang-org-x-text-encoding
|
|||
"0flv9idw0jm5nm8lx25xqanbkqgfiym6619w575p7nrdh0riqwqh"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/text/encoding"
|
||||
#:unpack-path "golang.org/x/text"))
|
||||
(synopsis "Interface for character encodings for conversion to and from
|
||||
UTF-8")
|
||||
(description "This package defines an interface for character encodings.
|
||||
Specific implementations of encoding for CJK text as well as simple character
|
||||
encodings are provided in subpackages.")
|
||||
`(#:import-path "golang.org/x/text"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Supplemental Go text processing libraries")
|
||||
(description "This package provides supplemental Go libraries for text
|
||||
processing.")
|
||||
(home-page "https://go.googlesource.com/text")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-golang-org-x-text-transform
|
||||
(package
|
||||
(inherit go-golang-org-x-text-encoding)
|
||||
(name "go-golang-org-x-text-transform")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/text/transform"
|
||||
#:unpack-path "golang.org/x/text"))
|
||||
(synopsis "Go text transformation")
|
||||
(description "This package provides @code{transform}, which provides
|
||||
reader and writer wrappers that transform the bytes passing through. Example
|
||||
transformations provided by other packages include normalization and conversion
|
||||
between character sets.")))
|
||||
|
||||
(define-public go-golang-org-x-text-unicode-norm
|
||||
(package
|
||||
(inherit go-golang-org-x-text-encoding)
|
||||
(name "go-golang-org-x-text-unicode-norm")
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/text/unicode/norm"
|
||||
#:unpack-path "golang.org/x/text"))
|
||||
(synopsis "Unicode normalization in Go")
|
||||
(description "This package provides @code{norm}, which contains types and
|
||||
functions for normalizing Unicode strings.")))
|
||||
|
||||
(define-public go-golang-org-x-time-rate
|
||||
(define-public go-golang-org-x-time
|
||||
(let ((commit "6dc17368e09b0e8634d71cac8168d853e869a0c7")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "go-golang-org-x-time-rate")
|
||||
(name "go-golang-org-x-time")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -1329,29 +769,20 @@ (define-public go-golang-org-x-time-rate
|
|||
"1fx4cf5fpdz00g3c7vxzy92hdcg0vh4yqw00qp5s52j72qixynbk"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/time/rate"
|
||||
#:unpack-path "golang.org/x/time"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-net-context" ,go-golang-org-x-net-context)))
|
||||
(synopsis "Rate limiting in Go")
|
||||
(description "This package provides @{rate}, which implements rate
|
||||
limiting in Go.")
|
||||
`(#:import-path "golang.org/x/time"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
; (propagated-inputs
|
||||
; `(("go-golang-org-x-net" ,go-golang-org-x-net)))
|
||||
(synopsis "Supplemental Go time libraries")
|
||||
(description "This package provides supplemental Go libraries related to
|
||||
time.")
|
||||
(home-page "https://godoc.org/golang.org/x/time/rate")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-golang-org-x-crypto-ssh-terminal
|
||||
(package
|
||||
(inherit go-golang-org-x-crypto-bcrypt)
|
||||
(name "go-golang-org-x-crypto-ssh-terminal")
|
||||
(inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
(arguments
|
||||
`(#:import-path "golang.org/x/crypto/ssh/terminal"
|
||||
#:unpack-path "golang.org/x/crypto"))
|
||||
(synopsis "Terminal functions for Go")
|
||||
(description "This package provides @{terminal}, which implements support
|
||||
functions for dealing with terminals, as commonly found on UNIX systems.")))
|
||||
|
||||
(define-public go-github-com-burntsushi-toml
|
||||
(package
|
||||
(name "go-github-com-burntsushi-toml")
|
||||
|
@ -1740,12 +1171,11 @@ (define-public go-github-com-sirupsen-logrus
|
|||
"0g5z7al7kky11ai2dhac6gkp3b5pxsvx72yj3xg4wg3265gbn7yz"))))
|
||||
(build-system go-build-system)
|
||||
(native-inputs
|
||||
`(("go-golang-org-x-crypto-ssh-terminal"
|
||||
,go-golang-org-x-crypto-ssh-terminal)
|
||||
`(("go-golang-org-x-crypto"
|
||||
,go-golang-org-x-crypto)
|
||||
("go-github-com-stretchr-testify"
|
||||
,go-github-com-stretchr-testify)
|
||||
("go-golang-org-x-sys-unix"
|
||||
,go-golang-org-x-sys-unix)))
|
||||
("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(arguments
|
||||
'(#:tests? #f ;FIXME missing dependencies
|
||||
#:import-path "github.com/sirupsen/logrus"))
|
||||
|
@ -1834,12 +1264,11 @@ (define-public go-github-com-docker-distribution
|
|||
"1yg2zrikn3vkvkx5mn51p6bfjk840qdkn7ahhhvvcsc8mpigrjc6"))))
|
||||
(build-system go-build-system)
|
||||
(native-inputs
|
||||
`(("go-golang-org-x-sys-unix"
|
||||
,go-golang-org-x-sys-unix)
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)
|
||||
("go-github-com-sirupsen-logrus"
|
||||
,go-github-com-sirupsen-logrus)
|
||||
("go-golang-org-x-crypto-ssh-terminal"
|
||||
,go-golang-org-x-crypto-ssh-terminal)))
|
||||
("go-golang-org-x-crypto"
|
||||
,go-golang-org-x-crypto)))
|
||||
(arguments
|
||||
'(#:import-path "github.com/docker/distribution"
|
||||
#:phases
|
||||
|
@ -2011,7 +1440,7 @@ (define-public go-github-com-mattn-go-isatty
|
|||
"1i77aq4gf9as03m8fpfh8fq49n4z9j7548blrcsidm1xhslzk5xd"))))
|
||||
(build-system go-build-system)
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(arguments
|
||||
'(#:import-path "github.com/mattn/go-isatty"))
|
||||
(home-page "https://github.com/mattn/go-isatty")
|
||||
|
@ -2350,7 +1779,7 @@ (define-public go-github-com-wtolson-go-taglib
|
|||
("taglib" ,taglib)))
|
||||
(arguments
|
||||
`(#:import-path "github.com/wtolson/go-taglib"
|
||||
;; Tests don't pass "vet" on go-1.11. See
|
||||
;; Tests don't pass "vet" on Go since 1.11. See
|
||||
;; https://github.com/wtolson/go-taglib/issues/12.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
|
@ -2379,8 +1808,12 @@ (define-public go-github-com-gogo-protobuf
|
|||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/gogo/protobuf/proto"
|
||||
#:unpack-path "github.com/gogo/protobuf"))
|
||||
`(#:import-path "github.com/gogo/protobuf"
|
||||
; Source-only package
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'build))))
|
||||
(synopsis "Protocol Buffers for Go with Gadgets")
|
||||
(description "Gogoprotobuf is a fork of golang/protobuf with extra code
|
||||
generation features. This code generation is used to achieve:
|
||||
|
@ -2395,86 +1828,6 @@ (define-public go-github-com-gogo-protobuf
|
|||
(home-page "https://github.com/gogo/protobuf")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-gogo-protobuf-protoc-gen-gogo
|
||||
(package
|
||||
(name "go-github-com-gogo-protobuf-protoc-gen-gogo")
|
||||
(version "1.2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gogo/protobuf")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/gogo/protobuf/protoc-gen-gogo"
|
||||
#:unpack-path "github.com/gogo/protobuf"
|
||||
#:tests? #f)) ; Requires the unpackaged 'protoc-min-version'
|
||||
(synopsis "Protocol Buffers for Go with Gadgets")
|
||||
(description "Gogoprotobuf is a fork of golang/protobuf with extra code
|
||||
generation features. This code generation is used to achieve:
|
||||
@itemize
|
||||
@item fast marshalling and unmarshalling
|
||||
@item more canonical Go structures
|
||||
@item goprotobuf compatibility
|
||||
@item less typing by optionally generating extra helper code
|
||||
@item peace of mind by optionally generating test and benchmark code
|
||||
@item other serialization formats
|
||||
@end itemize")
|
||||
(home-page "https://github.com/gogo/protobuf")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-gogo-protobuf-gogoproto
|
||||
(package
|
||||
(name "go-github-com-gogo-protobuf-gogoproto")
|
||||
(version "1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gogo/protobuf.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:unpack-path "github.com/gogo/protobuf"
|
||||
#:import-path "github.com/gogo/protobuf/gogoproto"))
|
||||
(home-page "https://github.com/gogo/protobuf")
|
||||
(synopsis "Extensions to protocol buffers")
|
||||
(description "This package provides extensions to the Gogo protocol buffers
|
||||
implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-gogo-protobuf-proto
|
||||
(package
|
||||
(name "go-github-com-gogo-protobuf-proto")
|
||||
(version "1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gogo/protobuf.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"06yqa6h0kw3gr5pc3qmas7f7435a96zf7iw7p0l00r2hqf6fqq6m"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:unpack-path "github.com/gogo/protobuf"
|
||||
#:import-path "github.com/gogo/protobuf/proto"))
|
||||
(home-page "https://github.com/gogo/protobuf")
|
||||
(synopsis "Protocol buffers component")
|
||||
(description "This is a component of the Gogo protocol buffers
|
||||
implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public go-github-com-libp2p-go-flow-metrics
|
||||
(let ((commit "7e5a55af485341567f98d6847a373eb5ddcdcd43")
|
||||
(revision "0"))
|
||||
|
@ -2663,9 +2016,9 @@ (define-public go-github-com-libp2p-go-libp2p-crypto
|
|||
(arguments
|
||||
'(#:import-path "github.com/libp2p/go-libp2p-crypto"))
|
||||
(native-inputs
|
||||
`(("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
`(("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)))
|
||||
(home-page
|
||||
"https://github.com/libp2p/go-libp2p-crypto")
|
||||
|
@ -2811,8 +2164,7 @@ (define-public go-github-com-multiformats-go-multihash
|
|||
("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/multiformats/go-multihash")
|
||||
(synopsis "Multihash implementation in Go")
|
||||
(description "Multihash implementation in Go.")
|
||||
|
@ -2839,7 +2191,7 @@ (define-public go-github-com-libp2p-go-libp2p-peer
|
|||
'(#:import-path "github.com/libp2p/go-libp2p-peer"))
|
||||
(native-inputs
|
||||
`(("go-github-com-libp2p-go-libp2p-crypto" ,go-github-com-libp2p-go-libp2p-crypto)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
|
@ -2847,9 +2199,7 @@ (define-public go-github-com-libp2p-go-libp2p-peer
|
|||
("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash)
|
||||
("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)
|
||||
("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/libp2p/go-libp2p-peer")
|
||||
(synopsis "PKI based identities for use in go-libp2p")
|
||||
(description "PKI based identities for use in @command{go-libp2p}.")
|
||||
|
@ -2907,14 +2257,12 @@ (define-public go-github-com-libp2p-go-libp2p-metrics
|
|||
("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
|
||||
("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg)
|
||||
("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)
|
||||
("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/libp2p/go-libp2p-metrics")
|
||||
(synopsis "Connection wrapper for go-libp2p that provides bandwidth metrics")
|
||||
(description "A connection wrapper for @command{go-libp2p} that provides bandwidth
|
||||
|
@ -2987,8 +2335,7 @@ (define-public go-github-com-multiformats-go-multiaddr
|
|||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/multiformats/go-multiaddr")
|
||||
(synopsis "Composable and future-proof network addresses")
|
||||
(description "Multiaddr is a standard way to represent addresses that
|
||||
|
@ -3032,8 +2379,7 @@ (define-public go-github-com-multiformats-go-multiaddr-net
|
|||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/multiformats/go-multiaddr-net")
|
||||
(synopsis "Multiaddress net tools")
|
||||
(description "This package provides Multiaddr specific versions of
|
||||
|
@ -3388,8 +2734,7 @@ (define-public go-github-com-gdamore-encoding
|
|||
(arguments
|
||||
'(#:import-path "github.com/gdamore/encoding"))
|
||||
(inputs
|
||||
`(("go-golang-org-x-text-encoding" ,go-golang-org-x-text-encoding)
|
||||
("go-golang-org-x-text-transform" ,go-golang-org-x-text-transform)))
|
||||
`(("go-golang-org-x-text" ,go-golang-org-x-text)))
|
||||
(home-page "https://github.com/gdamore/encoding")
|
||||
(synopsis "Provide encodings missing from Go")
|
||||
(description "This package provides useful encodings not included in the
|
||||
|
@ -3430,8 +2775,7 @@ (define-public go-github-com-gdamore-tcell
|
|||
(inputs
|
||||
`(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth)
|
||||
("go-golang-org-colorful" ,go-golang-org-colorful)
|
||||
("go-golang-org-x-text-encoding" ,go-golang-org-x-text-encoding)
|
||||
("go-golang-org-x-text-transform" ,go-golang-org-x-text-transform)
|
||||
("go-golang-org-x-text" ,go-golang-org-x-text)
|
||||
("go-github-com-gdamore-encoding" ,go-github-com-gdamore-encoding)))
|
||||
(home-page "https://github.com/gdamore/tcell")
|
||||
(synopsis "Provide a cell-based view for text terminals")
|
||||
|
|
|
@ -171,7 +171,7 @@ (define-public gama
|
|||
(define-public gpxsee
|
||||
(package
|
||||
(name "gpxsee")
|
||||
(version "7.12")
|
||||
(version "7.16")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -180,7 +180,7 @@ (define-public gpxsee
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0c3axs3mm6xzabwbvy9vgq1sryjpi4h91nwzy9iyv9zjxz7phgzc"))))
|
||||
"1mkfhb2c9qafjpva600nyn6yik49l4q1k6id1xvrci37wsn6ijav"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
|
|
@ -1085,7 +1085,7 @@ (define-public atkmm
|
|||
(define-public gtkmm
|
||||
(package
|
||||
(name "gtkmm")
|
||||
(version "3.24.1")
|
||||
(version "3.24.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
|
@ -1093,7 +1093,7 @@ (define-public gtkmm
|
|||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zfj89spr8ianib5y10wcw63ybdmyjy58a15vqs0m8jq4knl5znx"))))
|
||||
"1hxdnhavjyvbcpxhd5z17l9fj4182028s66lc0s16qqqrldhjwbd"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
("glib" ,glib "bin") ;for 'glib-compile-resources'
|
||||
|
|
|
@ -41,6 +41,7 @@
|
|||
(define-module (gnu packages guile-xyz)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages aspell)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
|
@ -2608,3 +2609,47 @@ (define-public guile-cv
|
|||
enriched with pure Guile Scheme algorithms, all accessible through a nice,
|
||||
clean and easy to use high level API.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public guile-ffi-fftw
|
||||
(let ((commit "95d7ffb55860f3163c5283ecec1ef43bc3d174dd")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "guile-ffi-fftw")
|
||||
(version (git-version "0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/lloda/guile-ffi-fftw.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "guile-ffi-fftw" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0v9vk9cr4x9gn36lihi9gfkxyiqak0i598v5li6qw8bg95004p49"))))
|
||||
(build-system guile-build-system)
|
||||
(arguments
|
||||
`(#:source-directory "mod"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'prepare-build
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "mod/ffi/fftw.scm"
|
||||
(("\\(getenv \"GUILE_FFI_FFTW_LIBFFTW3_PATH\"\\)")
|
||||
(format #f "\"~a/lib\"" (assoc-ref inputs "fftw"))))
|
||||
#t))
|
||||
(add-after 'build 'check
|
||||
(lambda _
|
||||
(invoke "guile" "-L" "mod"
|
||||
"-s" "test/test-ffi-fftw.scm"))))))
|
||||
(inputs
|
||||
`(("fftw" ,fftw)
|
||||
("guile" ,guile-2.2)))
|
||||
(home-page "https://github.com/lloda/guile-ffi-fftw/")
|
||||
(synopsis "Access FFTW through Guile's FFI")
|
||||
(description "This is a minimal set of Guile FFI bindings for the FFTW
|
||||
library's ‘guru interface’. It provides two functions: @code{fftw-dft! rank
|
||||
sign in out} and @code{fftw-dft rank sign in}. These bindings being minimal,
|
||||
there is no support for computing & reusing plans, or split r/i transforms, or
|
||||
anything other than straight complex DFTs.")
|
||||
;; TODO: This might actually be LGPLv3+
|
||||
;; See https://github.com/lloda/guile-ffi-fftw/issues/1
|
||||
(license license:gpl3+))))
|
||||
|
|
|
@ -11,6 +11,8 @@
|
|||
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
|
||||
;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
|
||||
;;; Copyright © 2015 John Soo <jsoo1@asu.edu>
|
||||
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -256,7 +258,7 @@ (define-public git-annex
|
|||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
'("--flags=-Android -Assistant -Pairing -S3 -Webapp -WebDAV")
|
||||
'("--flags=-Android -Assistant -Pairing -Webapp -WebDAV")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-shell-for-tests
|
||||
|
@ -317,6 +319,7 @@ (define-public git-annex
|
|||
`(("curl" ,curl)
|
||||
("ghc-aeson" ,ghc-aeson)
|
||||
("ghc-async" ,ghc-async)
|
||||
("ghc-aws" ,ghc-aws)
|
||||
("ghc-bloomfilter" ,ghc-bloomfilter)
|
||||
("ghc-byteable" ,ghc-byteable)
|
||||
("ghc-case-insensitive" ,ghc-case-insensitive)
|
||||
|
@ -496,6 +499,64 @@ (define-public hscolour
|
|||
and mIRC chat codes.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public kmonad
|
||||
(package
|
||||
(name "kmonad")
|
||||
(version "0.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/david-janssen/kmonad.git")
|
||||
(commit "06d7b8c709efa695be35df9bde91275cbb2ba099")))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1rjr4h5yq63x3kad6yn4p8v26389sd9dgr5n2w73s1chafapzwwd"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'haddock) ; Haddock fails to generate docs
|
||||
(add-after 'install 'install-udev-rules
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(rules (string-append out "/lib/udev/rules.d")))
|
||||
(mkdir-p rules)
|
||||
(call-with-output-file (string-append rules "/70-kmonad.rules")
|
||||
(lambda (port)
|
||||
(display
|
||||
(string-append
|
||||
"KERNEL==\"uinput\", MODE=\"0660\", "
|
||||
"GROUP=\"input\", OPTIONS+=\"static_node=uinput\"\n")
|
||||
port)))
|
||||
#t)))
|
||||
(add-after 'install-udev-rules 'install-documentation
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(doc (string-append out "/share/doc/kmonad-" ,version)))
|
||||
(install-file "README.md" doc)
|
||||
(copy-recursively "doc" doc)
|
||||
(copy-recursively "example" (string-append doc "/example"))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("ghc-cereal" ,ghc-cereal)
|
||||
("ghc-exceptions" ,ghc-exceptions)
|
||||
("ghc-hashable" ,ghc-hashable)
|
||||
("ghc-lens" ,ghc-lens)
|
||||
("ghc-megaparsec" ,ghc-megaparsec-7)
|
||||
("ghc-optparse-applicative" ,ghc-optparse-applicative)
|
||||
("ghc-unagi-chan" ,ghc-unagi-chan)
|
||||
("ghc-unliftio" ,ghc-unliftio)
|
||||
("ghc-unordered-containers" ,ghc-unordered-containers)))
|
||||
(home-page "https://github.com/david-janssen/kmonad")
|
||||
(synopsis "Advanced keyboard manager")
|
||||
(description "KMonad is a keyboard remapping utility that supports
|
||||
advanced functionality, such as custom keymap layers and modifiers, macros,
|
||||
and conditional mappings that send a different keycode when tapped or held.
|
||||
By operating at a lower level than most similar tools, it supports X11,
|
||||
Wayland, and Linux console environments alike.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public raincat
|
||||
(package
|
||||
(name "raincat")
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com>
|
||||
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
|
||||
;;; Copyright © 2019 Kyle Meyer <kyle@kyleam.com>
|
||||
;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -381,6 +382,28 @@ (define-public ghc-async
|
|||
will eventually deliver a value of type @code{a}.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-atomic-primops
|
||||
(package
|
||||
(name "ghc-atomic-primops")
|
||||
(version "0.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/atomic-primops"
|
||||
"/atomic-primops-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cyr2x6xqz6s233znrz9rnrfj56m9bmnawwnka0lsqqy1hp8gy37"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs `(("ghc-primitive" ,ghc-primitive)))
|
||||
(home-page "https://github.com/rrnewton/haskell-lockfree/wiki")
|
||||
(synopsis "Safe approach to CAS and other atomic ops")
|
||||
(description
|
||||
"GHC 7.4 introduced a new @code{casMutVar} PrimOp which is difficult to
|
||||
use safely, because pointer equality is a highly unstable property in Haskell.
|
||||
This library provides a safer method based on the concept of @code{Ticket}s.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-atomic-write
|
||||
(package
|
||||
(name "ghc-atomic-write")
|
||||
|
@ -10605,6 +10628,37 @@ (define-public ghc-typed-process
|
|||
upon it.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-unagi-chan
|
||||
(package
|
||||
(name "ghc-unagi-chan")
|
||||
(version "0.4.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/unagi-chan"
|
||||
"/unagi-chan-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1lnl5n4jnjmm4chp461glcwkrrw63rjz3fvprwxcy3lkpbkrqvgn"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-atomic-primops" ,ghc-atomic-primops)
|
||||
("ghc-primitive" ,ghc-primitive)))
|
||||
(arguments
|
||||
`(#:tests? #f ; FIXME: Tests expect primitive 0.7
|
||||
#:cabal-revision
|
||||
("1"
|
||||
"09pqi867wskwgc5lpn197f895mbn1174ydgllvcppcsmrz2b6yr6")))
|
||||
(home-page "http://hackage.haskell.org/package/unagi-chan")
|
||||
(synopsis "Fast concurrent queues with a Chan-like API, and more")
|
||||
(description
|
||||
"This library provides implementations of concurrent FIFO queues (for
|
||||
both general boxed and primitive unboxed values) that are fast, perform well
|
||||
under contention, and offer a Chan-like interface. The library may be of
|
||||
limited usefulness outside of x86 architectures where the fetch-and-add
|
||||
instruction is not available.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-unbounded-delays
|
||||
(package
|
||||
(name "ghc-unbounded-delays")
|
||||
|
|
|
@ -86,14 +86,12 @@ (define-public go-github-com-ipfs-go-ipfs-api
|
|||
("go-github-com-multiformats-go-multiaddr" ,go-github-com-multiformats-go-multiaddr)
|
||||
("go-github-com-multiformats-go-multiaddr-net" ,go-github-com-multiformats-go-multiaddr-net)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-minio-blake2b-simd" ,go-github-com-minio-blake2b-simd)
|
||||
("go-github-com-minio-sha256-simd" ,go-github-com-minio-sha256-simd)
|
||||
("go-github-com-mr-tron-base58" ,go-github-com-mr-tron-base58)
|
||||
("go-github-com-multiformats-go-multihash" ,go-github-com-multiformats-go-multihash)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)
|
||||
("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
|
||||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-github-com-gxed-hashland-keccakpg" ,go-github-com-gxed-hashland-keccakpg)
|
||||
("go-github-com-whyrusleeping-tar-utils" ,go-github-com-whyrusleeping-tar-utils)
|
||||
|
@ -140,15 +138,13 @@ (define-public gx
|
|||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-github-com-whyrusleeping-tar-utils" ,go-github-com-whyrusleeping-tar-utils)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-sabhiram-go-gitignore" ,go-github-com-sabhiram-go-gitignore)
|
||||
("go-github-com-urfave-cli" ,go-github-com-urfave-cli)
|
||||
("go-github-com-whyrusleeping-json-filter" ,go-github-com-whyrusleeping-json-filter)
|
||||
("go-github-com-whyrusleeping-progmeter" ,go-github-com-whyrusleeping-progmeter)
|
||||
("go-github-com-whyrusleeping-stump" ,go-github-com-whyrusleeping-stump)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)
|
||||
("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/whyrusleeping/gx")
|
||||
(synopsis "Package management tool using IPFS")
|
||||
(description "@command{gx} is a packaging tool built around the
|
||||
|
@ -202,14 +198,12 @@ (define-public gx-go
|
|||
("go-github-com-spaolacci-murmur3" ,go-github-com-spaolacci-murmur3)
|
||||
("go-github-com-whyrusleeping-tar-utils" ,go-github-com-whyrusleeping-tar-utils)
|
||||
("go-github-com-btcsuite-btcd-btcec" ,go-github-com-btcsuite-btcd-btcec)
|
||||
("go-github-com-gogo-protobuf-proto" ,go-github-com-gogo-protobuf-proto)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-sabhiram-go-gitignore" ,go-github-com-sabhiram-go-gitignore)
|
||||
("go-github-com-urfave-cli" ,go-github-com-urfave-cli)
|
||||
("go-github-com-whyrusleeping-progmeter" ,go-github-com-whyrusleeping-progmeter)
|
||||
("go-github-com-whyrusleeping-stump" ,go-github-com-whyrusleeping-stump)
|
||||
("go-golang-org-x-crypto-blake2s" ,go-golang-org-x-crypto-blake2s)
|
||||
("go-golang-org-x-crypto-ed25519" ,go-golang-org-x-crypto-ed25519)
|
||||
("go-golang-org-x-crypto-sha3" ,go-golang-org-x-crypto-sha3)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/whyrusleeping/gx-go")
|
||||
(synopsis "Golang subtool for the @command{gx} package manager")
|
||||
(description "A subtool for the @command{gx} package manager for packages
|
||||
|
|
|
@ -29,14 +29,14 @@ (define-module (gnu packages libedit)
|
|||
(define-public libedit
|
||||
(package
|
||||
(name "libedit")
|
||||
(version "20190324-3.1")
|
||||
(version "20191025-3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://thrysoee.dk/editline"
|
||||
(uri (string-append "https://thrysoee.dk/editline"
|
||||
"/libedit-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1bhvp8xkkgrg89k4ci1k8vjl3nhb6szd4ghy9lp4jrfgq58hz3xc"))))
|
||||
(base32 "0fdznw6fklis39xqk30ihw8dl8kdw9fzq1z42jmbyy6lc1k07zvd"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("ncurses" ,ncurses)))
|
||||
|
|
|
@ -929,7 +929,7 @@ (define-public libqxp
|
|||
(define-public libreoffice
|
||||
(package
|
||||
(name "libreoffice")
|
||||
(version "6.1.5.2")
|
||||
(version "6.2.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -939,36 +939,9 @@ (define-public libreoffice
|
|||
(version-prefix version 3) "/libreoffice-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wh8qhqkmb89nmfcb0w6iwpdzxwqr7c5kzxgpk4gy60xin6gwjgb"))
|
||||
(patches
|
||||
(append (list (origin
|
||||
;; Support newer versions of Orcus and MDDS. These patches
|
||||
;; are taken from upstream, but we use the patches from Arch
|
||||
;; because they are adapted for the release tarball.
|
||||
;; Note: remove the related substitutions below when these
|
||||
;; are no longer needed.
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://git.archlinux.org/svntogit"
|
||||
"/packages.git/plain/trunk/"
|
||||
"0001-Update-orcus-to-0.14.0.patch?&id="
|
||||
"4002fa927f2a143bd2ec008a0c400b2ce9f2c8a7"))
|
||||
(file-name "libreoffice-orcus.patch")
|
||||
(sha256
|
||||
(base32
|
||||
"0v1knblrmfzkb4g9pm5mdnrmjib59bznvca1ygbwlap2ln1h4mk0")))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://git.archlinux.org/svntogit"
|
||||
"/packages.git/plain/trunk/"
|
||||
"0001-Update-mdds-to-1.4.1.patch?&id="
|
||||
"4002fa927f2a143bd2ec008a0c400b2ce9f2c8a7"))
|
||||
(file-name "libreoffice-mdds.patch")
|
||||
(sha256
|
||||
(base32
|
||||
"0apbmammmp4pk473xiv5vk50r4c5gjvqzf9jkficksvz58q6114f"))))
|
||||
(search-patches "libreoffice-boost.patch"
|
||||
"libreoffice-icu.patch"
|
||||
"libreoffice-glm.patch")))
|
||||
"1npxyj0hklls3jnaxx9kj3r6bgydgrbz6nacy05n0zhq8i6zb5ir"))
|
||||
(patches (search-patches "libreoffice-icu.patch"
|
||||
"libreoffice-glm.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -992,6 +965,7 @@ (define-public libreoffice
|
|||
("cups" ,cups)
|
||||
("dbus-glib" ,dbus-glib)
|
||||
("fontconfig" ,fontconfig)
|
||||
("fontforge" ,fontforge)
|
||||
("gconf" ,gconf)
|
||||
("glew" ,glew)
|
||||
("glm" ,glm)
|
||||
|
@ -1031,6 +1005,7 @@ (define-public libreoffice
|
|||
("libxt" ,libxt)
|
||||
("libzmf" ,libzmf)
|
||||
("lpsolve" ,lpsolve)
|
||||
("mariadb" ,mariadb)
|
||||
("mdds" ,mdds)
|
||||
("mythes" ,mythes)
|
||||
("neon" ,neon)
|
||||
|
@ -1066,13 +1041,6 @@ (define-public libreoffice
|
|||
"solenv/gbuild/platform/unxgcc.mk")
|
||||
(("/bin/sh") (which "sh")))
|
||||
|
||||
;; XXX: Adjust the checks for MDDS and liborcus to avoid having
|
||||
;; to re-bootstrap the whole thing. Remove this with the related
|
||||
;; patches above.
|
||||
(substitute* "configure"
|
||||
(("mdds-1.2 >= 1.2.3") "mdds-1.4 >= 1.4.1")
|
||||
(("liborcus-0.13 >= 0.13.3") "liborcus-0.14 >= 0.14.0"))
|
||||
|
||||
;; GPGME++ headers are installed in a gpgme++ subdirectory, but
|
||||
;; files in "xmlsecurity/source/gpg/" and elsewhere expect to
|
||||
;; find them on the include path without a prefix.
|
||||
|
@ -1161,16 +1129,15 @@ (define (install-appdata app)
|
|||
;; With java, the build fails since sac.jar is missing.
|
||||
"--without-java"
|
||||
;; FIXME: Enable once the corresponding inputs are packaged.
|
||||
"--without-system-npapi-headers"
|
||||
"--disable-coinmp"
|
||||
"--disable-firebird-sdbc" ; embedded firebird
|
||||
"--disable-gltf"
|
||||
;; XXX: PDFium support requires fetching an external tarball and
|
||||
;; patching the build scripts to work with GCC5. Try enabling this
|
||||
;; when our default compiler is >=GCC 6.
|
||||
"--disable-pdfium"
|
||||
"--disable-gtk" ; disable use of GTK+ 2
|
||||
"--without-doxygen")))
|
||||
"--without-doxygen"
|
||||
"--enable-build-opensymbol")))
|
||||
(home-page "https://www.libreoffice.org/")
|
||||
(synopsis "Office suite")
|
||||
(description "LibreOffice is a comprehensive office suite. It contains
|
||||
|
|
|
@ -351,42 +351,42 @@ (define (%upstream-linux-source version hash)
|
|||
"linux-" version ".tar.xz"))
|
||||
(sha256 hash)))
|
||||
|
||||
(define-public linux-libre-5.3-version "5.3.7")
|
||||
(define-public linux-libre-5.3-version "5.3.8")
|
||||
(define-public linux-libre-5.3-pristine-source
|
||||
(let ((version linux-libre-5.3-version)
|
||||
(hash (base32 "00j8sdrmmppqf38vl50a4zas5gy7yv37n43b61f8472k45773jf6")))
|
||||
(hash (base32 "0jb6yya9yx4z52p5m32dqj0kgc6aaz9df8mvq0hzy40bqb3czwvq")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.3)))
|
||||
|
||||
(define-public linux-libre-4.19-version "4.19.80")
|
||||
(define-public linux-libre-4.19-version "4.19.81")
|
||||
(define-public linux-libre-4.19-pristine-source
|
||||
(let ((version linux-libre-4.19-version)
|
||||
(hash (base32 "1v776s6q5wxn8ci86dwa8s8y41b94g09fnpgvzysg2h89rvbmac0")))
|
||||
(hash (base32 "17g2wiaa7l7mxi72k79drxij2zqk3nsj8wi17bl4nfvb1ypc2gi9")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.19)))
|
||||
|
||||
(define-public linux-libre-4.14-version "4.14.150")
|
||||
(define-public linux-libre-4.14-version "4.14.151")
|
||||
(define-public linux-libre-4.14-pristine-source
|
||||
(let ((version linux-libre-4.14-version)
|
||||
(hash (base32 "1c2pxfvv31af0mzcqnbfjk8pc0wrhg4yhspl8a3ab2w5dfwa9ib5")))
|
||||
(hash (base32 "1bizb1wwni5r4m5i0mrsqbc5qw73lwrfrdadm09vbfz9ir19qlgz")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.14)))
|
||||
|
||||
(define-public linux-libre-4.9-version "4.9.197")
|
||||
(define-public linux-libre-4.9-version "4.9.198")
|
||||
(define-public linux-libre-4.9-pristine-source
|
||||
(let ((version linux-libre-4.9-version)
|
||||
(hash (base32 "032as6g4xvqjarqhvx7mr14yhn6idak4g0ps1skmsl4dfav6hdam")))
|
||||
(hash (base32 "1b05jra6q695s1d4rzdr39i6m8xsi5xjrdn73sgwzvx0dgxfnwlm")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.9)))
|
||||
|
||||
(define-public linux-libre-4.4-version "4.4.197")
|
||||
(define-public linux-libre-4.4-version "4.4.198")
|
||||
(define-public linux-libre-4.4-pristine-source
|
||||
(let ((version linux-libre-4.4-version)
|
||||
(hash (base32 "0ypfl1q1bdbk81hk0bm8a0grqzz4z5rp7z7asa3191ji3r8q9x4w")))
|
||||
(hash (base32 "04pkryy1lc75c88vq5wcjjcxs43i7bb8hhplbfi6s204ipc0iy7c")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.4)))
|
||||
|
@ -2076,14 +2076,14 @@ (define-public iw
|
|||
(define-public powertop
|
||||
(package
|
||||
(name "powertop")
|
||||
(version "2.10")
|
||||
(version "2.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://01.org/sites/default/files/downloads/"
|
||||
"powertop-v" version ".tar.gz"))
|
||||
"powertop-v" version "-1-g7ef7f79.tar_0.gz"))
|
||||
(sha256
|
||||
(base32 "0xaazqccyd42v2q532dxx40nqhb9sfsa6cyx8641rl57mfg4bdyk"))))
|
||||
(base32 "0kynypj5cydfbma0ssblq1k4m1arixc1s2vf0ybv8y2gg09wjs5f"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
@ -3901,7 +3901,7 @@ (define-public gpm
|
|||
(define-public btrfs-progs
|
||||
(package
|
||||
(name "btrfs-progs")
|
||||
(version "5.3")
|
||||
(version "5.3.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://kernel.org/linux/kernel/"
|
||||
|
@ -3909,7 +3909,7 @@ (define-public btrfs-progs
|
|||
"btrfs-progs-v" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"13ivb1b627qkiiqxh2y7zawynarkmgxrnwwpqhx6cci621yyqqqp"))))
|
||||
"0f6s1iwiqbncrvxp74k50s88x6zqf85sjxg04kyni82l1vk1m8xz"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out"
|
||||
"static")) ; static versions of the binaries in "out"
|
||||
|
@ -5855,7 +5855,7 @@ (define-public go-netlink
|
|||
(arguments
|
||||
`(#:import-path "github.com/vishvananda/netlink"))
|
||||
(native-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)
|
||||
("go-netns" ,go-netns)))
|
||||
(home-page "https://github.com/vishvananda/netlink")
|
||||
(synopsis "Simple netlink library for Go")
|
||||
|
|
|
@ -320,21 +320,30 @@ (define-public nullmailer
|
|||
(define-public fetchmail
|
||||
(package
|
||||
(name "fetchmail")
|
||||
(version "6.3.26")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/fetchmail/branch_6.3/fetchmail-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0l78ayvi9dm8hd190gl139cs2xqsrf7r9ncilslw20mgvd6cbd3r"))))
|
||||
(version "6.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/fetchmail/branch_"
|
||||
(version-major+minor version) "/"
|
||||
"fetchmail-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1859wvfc9fq72mwp4njdiy0x89hnddlfr3nix71qqglcs0fz2crz"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("openssl" ,openssl)))
|
||||
(arguments
|
||||
`(#:configure-flags (list (string-append "--with-ssl="
|
||||
(assoc-ref %build-inputs "openssl")))))
|
||||
(home-page "http://www.fetchmail.info/")
|
||||
`(#:configure-flags
|
||||
(list (string-append "--with-ssl="
|
||||
(assoc-ref %build-inputs "openssl")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'create-test-environment
|
||||
(lambda _
|
||||
;; Fix ‘Cannot find absolute path for user's home directory’.
|
||||
(setenv "HOME" "/tmp")
|
||||
#t)))))
|
||||
(home-page "https://www.fetchmail.info/")
|
||||
(synopsis "Remote-mail retrieval and forwarding utility")
|
||||
(description
|
||||
"Fetchmail is a full-featured, robust, well-documented remote-mail
|
||||
|
|
|
@ -251,15 +251,11 @@ (define-public scdoc
|
|||
"00zc3rzj97gscby31djlqyczvqpyhrl66i44czwzmmn7rc5j03m1"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags '("CC=gcc")
|
||||
`(#:make-flags
|
||||
(list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-before 'install 'hardcode-paths
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "Makefile"
|
||||
(("/usr/local") (assoc-ref outputs "out")))
|
||||
#t)))))
|
||||
(delete 'configure))))
|
||||
(home-page "https://git.sr.ht/~sircmpwn/scdoc")
|
||||
(synopsis "Simple man page generator")
|
||||
(description "scdoc is a simple man page generator written for POSIX systems
|
||||
|
|
|
@ -1627,6 +1627,14 @@ (define-public profanity
|
|||
(base32
|
||||
"0nxh81j8ky0fzv47pip1jb7rs5rrin3jx0f3h632bvpjiya45r1z"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
(list "--enable-c-plugins"
|
||||
"--enable-otr"
|
||||
"--enable-omemo"
|
||||
"--enable-pgp"
|
||||
"--enable-icons"
|
||||
"--enable-notifications")))
|
||||
(inputs
|
||||
`(("curl" ,curl)
|
||||
("expat" ,expat)
|
||||
|
@ -1642,12 +1650,15 @@ (define-public profanity
|
|||
("autoconf-archive" ,autoconf-archive)
|
||||
("automake" ,automake)
|
||||
("cmocka" ,cmocka)
|
||||
("gtk+" ,gtk+-2)
|
||||
("libnotify" ,libnotify)
|
||||
("libtool" ,libtool)
|
||||
("libsignal-protocol-c" ,libsignal-protocol-c)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(synopsis "Console-based XMPP client")
|
||||
(description "Profanity is a console based XMPP client written in C
|
||||
using ncurses and libmesode, inspired by Irssi.")
|
||||
(home-page "http://www.profanity.im")
|
||||
(home-page "https://profanity-im.github.io")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libircclient
|
||||
|
|
|
@ -306,7 +306,7 @@ (define-public mp3splt
|
|||
(define-public mpg123
|
||||
(package
|
||||
(name "mpg123")
|
||||
(version "1.25.12")
|
||||
(version "1.25.13")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (list (string-append "mirror://sourceforge/mpg123/mpg123/"
|
||||
|
@ -316,7 +316,7 @@ (define-public mpg123
|
|||
version ".tar.bz2")))
|
||||
(sha256
|
||||
(base32
|
||||
"1l9iwwgqzw6yg5zk9pqmlbfyq6d8dqysbmj0j3m8dyrxd34wgzhz"))))
|
||||
"02l915jq0ymndb082g6w89bpf66z04ifa1lr7ga3yycw6m46hc4h"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments '(#:configure-flags '("--with-default-audio=pulse")))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -2383,52 +2383,46 @@ (define-public qtractor
|
|||
(license license:gpl2+)))
|
||||
|
||||
(define-public ams-lv2
|
||||
;; Version 1.2.1 built with Python 3.7 raises an error in the waf-script.
|
||||
;; Therefore, we take two more commmits than 1.2.1 that introduce an updated
|
||||
;; waf-script and fix one error.
|
||||
(let ((commit "377d166db54a787b48979171c5652d2eb4f1bbb5")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "ams-lv2")
|
||||
(version (git-version "1.2.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/blablack/ams-lv2.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ndgxcxjxwidg7436k0nb5clxkyi878k1j999sbbd1gk2fm0kcqm"))))
|
||||
(build-system waf-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-sse-flags
|
||||
(lambda* (#:key system #:allow-other-keys)
|
||||
(unless (or (string-prefix? "x86_64" system)
|
||||
(string-prefix? "i686" system))
|
||||
(substitute* "wscript"
|
||||
(("'-msse', '-mfpmath=sse', ") "")))
|
||||
#t)))
|
||||
#:tests? #f)) ; no tests
|
||||
(inputs
|
||||
`(("lv2" ,lv2)
|
||||
("lvtk" ,lvtk)
|
||||
("gtkmm" ,gtkmm-2)
|
||||
("gtk" ,gtk+-2)
|
||||
("cairo" ,cairo)
|
||||
("fftw" ,fftw)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "https://objectivewave.wordpress.com/ams-lv2/")
|
||||
(synopsis "Port of Alsa Modular Synth internal modules into LV2")
|
||||
(description "This set of LV2 plugins is a port of the internal modules
|
||||
(package
|
||||
(name "ams-lv2")
|
||||
(version "1.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/blablack/ams-lv2.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1lz2mvk4gqsyf92yxd3aaldx0d0qi28h4rnnvsaz4ls0ccqm80nk"))))
|
||||
(build-system waf-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-sse-flags
|
||||
(lambda* (#:key system #:allow-other-keys)
|
||||
(unless (or (string-prefix? "x86_64" system)
|
||||
(string-prefix? "i686" system))
|
||||
(substitute* "wscript"
|
||||
(("'-msse', '-mfpmath=sse', ") "")))
|
||||
#t)))
|
||||
#:tests? #f)) ; no tests
|
||||
(inputs
|
||||
`(("cairo" ,cairo)
|
||||
("fftw" ,fftw)
|
||||
("gtk" ,gtk+-2)
|
||||
("gtkmm" ,gtkmm-2)
|
||||
("lv2" ,lv2)
|
||||
("lvtk" ,lvtk)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/blablack/ams-lv2")
|
||||
(synopsis "Port of Alsa Modular Synth internal modules into LV2")
|
||||
(description "This set of LV2 plugins is a port of the internal modules
|
||||
found in Alsa Modular Synth. These plugins are used to create modular
|
||||
synthesizers and contain: VCO, VCF, VCA, LFO, slew limiter, envelopes, sample
|
||||
and hold, etc.")
|
||||
(license license:gpl2))))
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public gxtuner
|
||||
(package
|
||||
|
|
|
@ -595,14 +595,14 @@ (define-public whois
|
|||
(define-public wireshark
|
||||
(package
|
||||
(name "wireshark")
|
||||
(version "3.0.5")
|
||||
(version "3.0.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.wireshark.org/download/src/wireshark-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "087qv7nd7zlbckvcs37fkkg7v0mw0hjd5yfbghqym764fpjgqlf5"))))
|
||||
(base32 "0gp3qg0280ysrsaa97yfazka8xcyrspsrw8bfgqxnpf1l0i40zx8"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -115,7 +115,7 @@ (define-public keepassxc
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/keepassxreboot/" name
|
||||
(uri (string-append "https://github.com/keepassxreboot/keepassxc"
|
||||
"/releases/download/" version "/keepassxc-"
|
||||
version "-src.tar.xz"))
|
||||
(sha256
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -1,9 +0,0 @@
|
|||
--- a/browser/app/profile/icecat.js.orig 1980-01-01 18:59:51.000000000 -0500
|
||||
+++ b/browser/app/profile/icecat.js 2019-10-25 06:24:03.065989309 -0400
|
||||
@@ -2275,3 +2275,6 @@
|
||||
pref("general.buildID.override", "Gecko/20100101");
|
||||
pref("general.oscpu.override", "Windows NT 6.1");
|
||||
pref("general.platform.override", "Win32");
|
||||
+
|
||||
+// Disable Firefox Accounts and Sign in to Sync.
|
||||
+pref("identity.fxaccounts.enabled", false);
|
241
gnu/packages/patches/icecat-gnuzilla-fixes.patch
Normal file
241
gnu/packages/patches/icecat-gnuzilla-fixes.patch
Normal file
|
@ -0,0 +1,241 @@
|
|||
From 2676d4e1eb64e18d2e4722c0ea0babdc1f716fa4 Mon Sep 17 00:00:00 2001
|
||||
From: Mark H Weaver <mhw@netris.org>
|
||||
Date: Mon, 28 Oct 2019 01:54:19 -0400
|
||||
Subject: [PATCH 1/4] Update to 68.2.0-gnu1.
|
||||
|
||||
* makeicecat: Update to FFMINOR to 2, and update the expected
|
||||
sha256sum of the firefox source tarball.
|
||||
---
|
||||
makeicecat | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/makeicecat b/makeicecat
|
||||
index 97ee473..1bcf465 100644
|
||||
--- a/makeicecat
|
||||
+++ b/makeicecat
|
||||
@@ -21,7 +21,7 @@
|
||||
set -euxo pipefail
|
||||
|
||||
FFMAJOR=68
|
||||
-FFMINOR=1
|
||||
+FFMINOR=2
|
||||
FFSUB=0
|
||||
GNUVERSION=1
|
||||
FFVERSION=$FFMAJOR.$FFMINOR.$FFSUB
|
||||
@@ -43,7 +43,7 @@ wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr
|
||||
wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353
|
||||
gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
-echo -n f56f5fa5a4744be0b9acf259cb991254d708a50b9a0a12d1d846ffa5a6c409ac firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
|
||||
+echo -n 85f1c2eaf68ebedcbc0b78a342f6d16ef0865dedd426a1bba94b75c85f716f38 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
|
||||
|
||||
echo Extracting Firefox tarball
|
||||
tar -xf firefox-${FFVERSION}esr.source.tar.xz
|
||||
--
|
||||
2.23.0
|
||||
|
||||
From c3a7b761f11c75d3764779e731a7c7e86b072d2f Mon Sep 17 00:00:00 2001
|
||||
From: Mark H Weaver <mhw@netris.org>
|
||||
Date: Mon, 28 Oct 2019 04:18:26 -0400
|
||||
Subject: [PATCH 2/4] Disable MOZ_SERVICES_HEALTHREPORT and MOZ_DATA_REPORTING.
|
||||
|
||||
* data/patches/fix-data-reporting-check.patch: New file.
|
||||
* data/patches/legacy-profiles.patch: Rename to ...
|
||||
* data/patches/moz-configure-changes.patch: ... this,
|
||||
and set MOZ_SERVICES_HEALTHREPORT to False.
|
||||
---
|
||||
data/patches/fix-data-reporting-check.patch | 22 +++++++++++++++++++++
|
||||
data/patches/legacy-profiles.patch | 11 -----------
|
||||
data/patches/moz-configure-changes.patch | 14 +++++++++++++
|
||||
3 files changed, 36 insertions(+), 11 deletions(-)
|
||||
create mode 100644 data/patches/fix-data-reporting-check.patch
|
||||
delete mode 100644 data/patches/legacy-profiles.patch
|
||||
create mode 100644 data/patches/moz-configure-changes.patch
|
||||
|
||||
diff --git a/data/patches/fix-data-reporting-check.patch b/data/patches/fix-data-reporting-check.patch
|
||||
new file mode 100644
|
||||
index 0000000..d586dc5
|
||||
--- /dev/null
|
||||
+++ b/data/patches/fix-data-reporting-check.patch
|
||||
@@ -0,0 +1,22 @@
|
||||
+--- a/old-configure.in.orig 1980-01-01 18:59:51.000000000 -0500
|
||||
++++ b/old-configure.in 2019-10-28 04:13:17.343606008 -0400
|
||||
+@@ -3116,7 +3116,7 @@
|
||||
+ dnl If we have any service that uploads data (and requires data submission
|
||||
+ dnl policy alert), set MOZ_DATA_REPORTING.
|
||||
+ dnl We need SUBST for build system and DEFINE for xul preprocessor.
|
||||
+-if test -n "$MOZ_TELEMETRY_REPORTING" || test -n "$MOZ_SERVICES_HEALTHREPORT" || test -n "$MOZ_CRASHREPORTER"; then
|
||||
++if test "$MOZ_TELEMETRY_REPORTING" = 1 || test "$MOZ_SERVICES_HEALTHREPORT" = 1 || test "$MOZ_CRASHREPORTER" = 1; then
|
||||
+ MOZ_DATA_REPORTING=1
|
||||
+ AC_DEFINE(MOZ_DATA_REPORTING)
|
||||
+ AC_SUBST(MOZ_DATA_REPORTING)
|
||||
+--- a/old-configure.orig 1980-01-01 18:59:51.000000000 -0500
|
||||
++++ b/old-configure 2019-10-28 04:15:41.772322191 -0400
|
||||
+@@ -12150,7 +12150,7 @@
|
||||
+
|
||||
+
|
||||
+
|
||||
+-if test -n "$MOZ_TELEMETRY_REPORTING" || test -n "$MOZ_SERVICES_HEALTHREPORT" || test -n "$MOZ_CRASHREPORTER"; then
|
||||
++if test "$MOZ_TELEMETRY_REPORTING" = 1 || test "$MOZ_SERVICES_HEALTHREPORT" = 1 || test "$MOZ_CRASHREPORTER" = 1; then
|
||||
+ MOZ_DATA_REPORTING=1
|
||||
+ cat >> confdefs.pytmp <<\EOF
|
||||
+ (''' MOZ_DATA_REPORTING ''', ' 1 ')
|
||||
diff --git a/data/patches/legacy-profiles.patch b/data/patches/legacy-profiles.patch
|
||||
deleted file mode 100644
|
||||
index 33e9e99..0000000
|
||||
--- a/data/patches/legacy-profiles.patch
|
||||
+++ /dev/null
|
||||
@@ -1,11 +0,0 @@
|
||||
---- a/browser/moz.configure.orig 1980-01-01 18:59:51.000000000 -0500
|
||||
-+++ b/browser/moz.configure 2019-10-26 21:58:37.719617701 -0400
|
||||
-@@ -7,7 +7,7 @@
|
||||
- imply_option('MOZ_PLACES', True)
|
||||
- imply_option('MOZ_SERVICES_HEALTHREPORT', True)
|
||||
- imply_option('MOZ_SERVICES_SYNC', True)
|
||||
--imply_option('MOZ_DEDICATED_PROFILES', True)
|
||||
-+imply_option('MOZ_DEDICATED_PROFILES', False)
|
||||
- imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', True)
|
||||
-
|
||||
- with only_when(target_is_linux & compile_environment):
|
||||
diff --git a/data/patches/moz-configure-changes.patch b/data/patches/moz-configure-changes.patch
|
||||
new file mode 100644
|
||||
index 0000000..aa6f1a5
|
||||
--- /dev/null
|
||||
+++ b/data/patches/moz-configure-changes.patch
|
||||
@@ -0,0 +1,14 @@
|
||||
+--- a/browser/moz.configure.orig 1980-01-01 18:59:51.000000000 -0500
|
||||
++++ b/browser/moz.configure 2019-10-28 01:36:13.132873871 -0400
|
||||
+@@ -5,9 +5,9 @@
|
||||
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
+
|
||||
+ imply_option('MOZ_PLACES', True)
|
||||
+-imply_option('MOZ_SERVICES_HEALTHREPORT', True)
|
||||
++imply_option('MOZ_SERVICES_HEALTHREPORT', False)
|
||||
+ imply_option('MOZ_SERVICES_SYNC', True)
|
||||
+-imply_option('MOZ_DEDICATED_PROFILES', True)
|
||||
++imply_option('MOZ_DEDICATED_PROFILES', False)
|
||||
+ imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', True)
|
||||
+
|
||||
+ with only_when(target_is_linux & compile_environment):
|
||||
--
|
||||
2.23.0
|
||||
|
||||
From 62f50f15abc91483c6aa7a2ac7ebb972e6f9affd Mon Sep 17 00:00:00 2001
|
||||
From: Mark H Weaver <mhw@netris.org>
|
||||
Date: Mon, 28 Oct 2019 13:05:28 -0400
|
||||
Subject: [PATCH 3/4] Disable MOZ_BLOCK_PROFILE_DOWNGRADE.
|
||||
|
||||
It would be desirable to prevent downgrades from one major version of
|
||||
IceCat to another. However, as MOZ_BLOCK_PROFILE_DOWNGRADE is
|
||||
currently implemented, it prevents downgrades from one build of
|
||||
IceCat-68.2 to an earlier build of IceCat-68.2. Until we can find a
|
||||
satisfactory solution, we disable this functionality entirely.
|
||||
|
||||
* data/patches/moz-configure-changes.patch: Set
|
||||
MOZ_BLOCK_PROFILE_DOWNGRADE to 'False'.
|
||||
---
|
||||
data/patches/moz-configure-changes.patch | 8 +++++---
|
||||
1 file changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/data/patches/moz-configure-changes.patch b/data/patches/moz-configure-changes.patch
|
||||
index aa6f1a5..53091a4 100644
|
||||
--- a/data/patches/moz-configure-changes.patch
|
||||
+++ b/data/patches/moz-configure-changes.patch
|
||||
@@ -1,6 +1,6 @@
|
||||
--- a/browser/moz.configure.orig 1980-01-01 18:59:51.000000000 -0500
|
||||
-+++ b/browser/moz.configure 2019-10-28 01:36:13.132873871 -0400
|
||||
-@@ -5,9 +5,9 @@
|
||||
++++ b/browser/moz.configure 2019-10-28 13:04:11.469562089 -0400
|
||||
+@@ -5,10 +5,10 @@
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
imply_option('MOZ_PLACES', True)
|
||||
@@ -8,7 +8,9 @@
|
||||
+imply_option('MOZ_SERVICES_HEALTHREPORT', False)
|
||||
imply_option('MOZ_SERVICES_SYNC', True)
|
||||
-imply_option('MOZ_DEDICATED_PROFILES', True)
|
||||
+-imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', True)
|
||||
+imply_option('MOZ_DEDICATED_PROFILES', False)
|
||||
- imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', True)
|
||||
++imply_option('MOZ_BLOCK_PROFILE_DOWNGRADE', False)
|
||||
|
||||
with only_when(target_is_linux & compile_environment):
|
||||
+ option(env='MOZ_NO_PIE_COMPAT',
|
||||
--
|
||||
2.23.0
|
||||
|
||||
From 036f74092d223976054f9eafd8caa056f5975c54 Mon Sep 17 00:00:00 2001
|
||||
From: Mark H Weaver <mhw@netris.org>
|
||||
Date: Mon, 28 Oct 2019 19:57:37 -0400
|
||||
Subject: [PATCH 4/4] Improve branding for version 68 ESR.
|
||||
|
||||
* data/branding/icecat/locales/en-US/brand.dtd: Add brandProductName.
|
||||
* data/branding/icecat/locales/en-US/brand.ftl: Add
|
||||
brand-shorter-name, brand-full-name, brand-product-name,
|
||||
vendor-short-name, and trademarkInfo.
|
||||
* data/branding/icecat/locales/en-US/brand.properties: Add
|
||||
brandProductName.
|
||||
* makeicecat: Limit replacement of trademarkInfo.part1 of brand.dtd
|
||||
files to only be done within l10n directory. Replace trademarkInfo of
|
||||
brand.ftl files within l10n directory.
|
||||
---
|
||||
data/branding/icecat/locales/en-US/brand.dtd | 1 +
|
||||
data/branding/icecat/locales/en-US/brand.ftl | 5 +++++
|
||||
data/branding/icecat/locales/en-US/brand.properties | 1 +
|
||||
makeicecat | 3 ++-
|
||||
4 files changed, 9 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/data/branding/icecat/locales/en-US/brand.dtd b/data/branding/icecat/locales/en-US/brand.dtd
|
||||
index 3788266..475ce7d 100644
|
||||
--- a/data/branding/icecat/locales/en-US/brand.dtd
|
||||
+++ b/data/branding/icecat/locales/en-US/brand.dtd
|
||||
@@ -5,5 +5,6 @@
|
||||
<!ENTITY brandShorterName "IceCat">
|
||||
<!ENTITY brandShortName "IceCat">
|
||||
<!ENTITY brandFullName "GNU IceCat">
|
||||
+<!ENTITY brandProductName "IceCat">
|
||||
<!ENTITY vendorShortName "GNU">
|
||||
<!ENTITY trademarkInfo.part1 "The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version.">
|
||||
diff --git a/data/branding/icecat/locales/en-US/brand.ftl b/data/branding/icecat/locales/en-US/brand.ftl
|
||||
index bd7fbe0..7c9fcc8 100644
|
||||
--- a/data/branding/icecat/locales/en-US/brand.ftl
|
||||
+++ b/data/branding/icecat/locales/en-US/brand.ftl
|
||||
@@ -2,4 +2,9 @@
|
||||
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
||||
|
||||
+-brand-shorter-name = IceCat
|
||||
-brand-short-name = IceCat
|
||||
+-brand-full-name = GNU IceCat
|
||||
+-brand-product-name = IceCat
|
||||
+-vendor-short-name = GNU
|
||||
+trademarkInfo = The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version.
|
||||
diff --git a/data/branding/icecat/locales/en-US/brand.properties b/data/branding/icecat/locales/en-US/brand.properties
|
||||
index 85e2894..9b9cf97 100644
|
||||
--- a/data/branding/icecat/locales/en-US/brand.properties
|
||||
+++ b/data/branding/icecat/locales/en-US/brand.properties
|
||||
@@ -5,6 +5,7 @@
|
||||
brandShorterName=IceCat
|
||||
brandShortName=IceCat
|
||||
brandFullName=IceCat
|
||||
+brandProductName=IceCat
|
||||
vendorShortName=GNU
|
||||
|
||||
syncBrandShortName=Sync
|
||||
diff --git a/makeicecat b/makeicecat
|
||||
index 1bcf465..3ff2ead 100644
|
||||
--- a/makeicecat
|
||||
+++ b/makeicecat
|
||||
@@ -226,7 +226,8 @@ cp $DATA/bookmarks.html.in browser/locales/generic/profile/bookmarks.html.in
|
||||
|
||||
# Custom legal about pages
|
||||
|
||||
-find -wholename '*/brand.dtd' |xargs /bin/sed 's/trademarkInfo.part1.*/trademarkInfo.part1 "">/' -i
|
||||
+find l10n -wholename '*/brand.dtd' |xargs /bin/sed 's/trademarkInfo.part1.*/trademarkInfo.part1 "">/' -i
|
||||
+find l10n -wholename '*/brand.ftl' |xargs /bin/sed 's/^trademarkInfo = .*/trademarkInfo = The IceCat logo is Copyright 2008-2015 Free Software Foundation, released under the terms of the GNU Lesser General Public License, version 3 or any later version./' -i
|
||||
|
||||
for STRING in rights.intro-point3-unbranded rights.intro-point4a-unbranded rights.intro-point4b-unbranded rights.intro-point4c-unbranded
|
||||
do
|
||||
--
|
||||
2.23.0
|
||||
|
|
@ -25,7 +25,7 @@ index b04c731..06d1f3f 100644
|
|||
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
-gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353
|
||||
-gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
-echo -n f56f5fa5a4744be0b9acf259cb991254d708a50b9a0a12d1d846ffa5a6c409ac firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
|
||||
-echo -n 85f1c2eaf68ebedcbc0b78a342f6d16ef0865dedd426a1bba94b75c85f716f38 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
|
||||
-
|
||||
-echo Extracting Firefox tarball
|
||||
-tar -xf firefox-${FFVERSION}esr.source.tar.xz
|
||||
|
@ -37,7 +37,7 @@ index b04c731..06d1f3f 100644
|
|||
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
+# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353
|
||||
+# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
+# echo -n f56f5fa5a4744be0b9acf259cb991254d708a50b9a0a12d1d846ffa5a6c409ac firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
|
||||
+# echo -n 85f1c2eaf68ebedcbc0b78a342f6d16ef0865dedd426a1bba94b75c85f716f38 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c -
|
||||
+#
|
||||
+# echo Extracting Firefox tarball
|
||||
+# tar -xf firefox-${FFVERSION}esr.source.tar.xz
|
||||
|
@ -96,24 +96,9 @@ index b04c731..06d1f3f 100644
|
|||
-cd $SOURCEDIR
|
||||
+# cd $SOURCEDIR
|
||||
|
||||
#for patch in $DATA/patches/*; do
|
||||
# echo Patching with file: $patch
|
||||
@@ -226,10 +226,10 @@ cp $DATA/bookmarks.html.in browser/locales/generic/profile/bookmarks.html.in
|
||||
|
||||
find -wholename '*/brand.dtd' |xargs /bin/sed 's/trademarkInfo.part1.*/trademarkInfo.part1 "">/' -i
|
||||
|
||||
-for STRING in rights.intro-point3-unbranded rights.intro-point4a-unbranded rights.intro-point4b-unbranded rights.intro-point4c-unbranded
|
||||
-do
|
||||
- find -name aboutRights.dtd | xargs sed -i "s/ENTITY $STRING.*/ENTITY $STRING \"\">/"
|
||||
-done
|
||||
+# for STRING in rights.intro-point3-unbranded rights.intro-point4a-unbranded rights.intro-point4b-unbranded rights.intro-point4c-unbranded
|
||||
+# do
|
||||
+# find -name aboutRights.dtd | xargs sed -i "s/ENTITY $STRING.*/ENTITY $STRING \"\">/"
|
||||
+# done
|
||||
|
||||
for STRING in rights-intro-point-2 rights-intro-point-3 rights-intro-point-4 rights-intro-point-5 rights-intro-point-6 rights-webservices rights-safebrowsing
|
||||
do
|
||||
@@ -595,6 +595,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in
|
||||
shopt -s nullglob
|
||||
for patch in $DATA/patches/*.patch; do
|
||||
@@ -598,6 +598,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in
|
||||
# Fix CVE-2012-3386
|
||||
/bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true
|
||||
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
Fix compatibility with newer Boost.
|
||||
|
||||
Extracted from this upstream commit:
|
||||
https://cgit.freedesktop.org/libreoffice/core/commit/?id=23a8d5ffbbe58761b89f590f0735abccd69a3681
|
||||
|
||||
diff --git a/sfx2/source/appl/shutdownicon.cxx b/sfx2/source/appl/shutdownicon.cxx
|
||||
--- a/sfx2/source/appl/shutdownicon.cxx
|
||||
+++ b/sfx2/source/appl/shutdownicon.cxx
|
||||
@@ -144,7 +144,7 @@ bool LoadModule()
|
||||
#endif // ENABLE_QUICKSTART_APPLET
|
||||
}
|
||||
assert(!boost::logic::indeterminate(loaded));
|
||||
- return loaded;
|
||||
+ return bool(loaded);
|
||||
}
|
||||
|
||||
}
|
|
@ -1,3 +1,8 @@
|
|||
Make weasyprint load dynamic libraries from hard-coded path.
|
||||
|
||||
From NixOS
|
||||
pkgs/development/python-modules/weasyprint/library-paths.patch
|
||||
|
||||
diff --git a/weasyprint/fonts.py b/weasyprint/fonts.py
|
||||
index 377716c1..2016e01c 100644
|
||||
--- a/weasyprint/fonts.py
|
||||
|
|
|
@ -1,47 +0,0 @@
|
|||
https://dev.lovelyhq.com/libburnia/libisoburn/commit/1eb51f44dadb8b6c5f87533ca357186cdc1ac625
|
||||
diff --git a/frontend/grub-mkrescue-sed.sh b/frontend/grub-mkrescue-sed.sh
|
||||
index b3948c99..dcd9d696 100755
|
||||
--- a/frontend/grub-mkrescue-sed.sh
|
||||
+++ b/frontend/grub-mkrescue-sed.sh
|
||||
@@ -120,6 +120,7 @@ fi
|
||||
# "yes" overwrites the MBR partition table area in the EFI boot image by zeros.
|
||||
# Some EFI implementations get stuck when seeing in the EFI partition a
|
||||
# partition table entry which begins at LBA 0.
|
||||
+# "extra" not only zeros the partition table but also the MBR signature.
|
||||
efi_zero_inner_pt=no
|
||||
if test -n "$MKRESCUE_SED_IN_EFI_NO_PT"
|
||||
then
|
||||
@@ -192,24 +193,31 @@ then
|
||||
find "$dir"
|
||||
fi
|
||||
|
||||
-if test "$efi_zero_inner_pt" = yes
|
||||
+if test "$efi_zero_inner_pt" = yes -o "$efi_zero_inner_pt" = extra
|
||||
then
|
||||
did_dd=0
|
||||
if test -e "$dir"/efi.img
|
||||
then
|
||||
+ # Look for 0x55 0xAA in bytes 510 and 511
|
||||
magic=$(dd bs=1 skip=510 count=2 if="$dir"/efi.img 2>/dev/null | \
|
||||
od -c | head -1 | awk '{print $2 " " $3}')
|
||||
if test "$magic" = "U 252"
|
||||
then
|
||||
+ echo "Performing actions for MKRESCUE_SED_IN_EFI_NO_PT=$efi_zero_inner_pt" >&2
|
||||
dd if=/dev/zero bs=1 seek=446 count=64 conv=notrunc of="$dir"/efi.img
|
||||
did_dd=1
|
||||
+ if test "$efi_zero_inner_pt" = extra
|
||||
+ then
|
||||
+ dd if=/dev/zero bs=1 seek=510 count=2 conv=notrunc of="$dir"/efi.img
|
||||
+ fi
|
||||
+ echo >&2
|
||||
fi
|
||||
fi
|
||||
if test "$did_dd" = 0
|
||||
then
|
||||
echo >&2
|
||||
echo "$0 : NOTE : No EFI image found or no MBR signature in it." >&2
|
||||
- echo "$0 : NOTE : Will not obey MKRESCUE_SED_IN_EFI_NO_PT=yes" >&2
|
||||
+ echo "$0 : NOTE : Will not obey MKRESCUE_SED_IN_EFI_NO_PT=$efi_zero_inner_pt" >&2
|
||||
echo >&2
|
||||
fi
|
||||
fi
|
|
@ -1,107 +0,0 @@
|
|||
https://dev.lovelyhq.com/libburnia/libisoburn/commit/3a2a3ba737a06162c22ace0ae09d33ba97aa2673
|
||||
diff --git a/frontend/grub-mkrescue-sed.sh b/frontend/grub-mkrescue-sed.sh
|
||||
index d772ff22..b3948c99 100755
|
||||
--- a/frontend/grub-mkrescue-sed.sh
|
||||
+++ b/frontend/grub-mkrescue-sed.sh
|
||||
@@ -1,6 +1,6 @@
|
||||
#!/bin/sh
|
||||
|
||||
-# Copyright (C) 2015 - 2016
|
||||
+# Copyright (C) 2015 - 2019
|
||||
# Thomas Schmitt <scdbackup@gmx.net>, libburnia-project.org
|
||||
# Provided under BSD license: Use, modify, and distribute as you like.
|
||||
|
||||
@@ -117,6 +117,15 @@ fi
|
||||
# command line.)
|
||||
# Each argument must be a single word. No whitespace. No quotation marks.
|
||||
|
||||
+# "yes" overwrites the MBR partition table area in the EFI boot image by zeros.
|
||||
+# Some EFI implementations get stuck when seeing in the EFI partition a
|
||||
+# partition table entry which begins at LBA 0.
|
||||
+efi_zero_inner_pt=no
|
||||
+if test -n "$MKRESCUE_SED_IN_EFI_NO_PT"
|
||||
+then
|
||||
+ efi_zero_inner_pt="$MKRESCUE_SED_IN_EFI_NO_PT"
|
||||
+fi
|
||||
+
|
||||
|
||||
#
|
||||
# Do the work
|
||||
@@ -183,12 +192,48 @@ then
|
||||
find "$dir"
|
||||
fi
|
||||
|
||||
+if test "$efi_zero_inner_pt" = yes
|
||||
+then
|
||||
+ did_dd=0
|
||||
+ if test -e "$dir"/efi.img
|
||||
+ then
|
||||
+ magic=$(dd bs=1 skip=510 count=2 if="$dir"/efi.img 2>/dev/null | \
|
||||
+ od -c | head -1 | awk '{print $2 " " $3}')
|
||||
+ if test "$magic" = "U 252"
|
||||
+ then
|
||||
+ dd if=/dev/zero bs=1 seek=446 count=64 conv=notrunc of="$dir"/efi.img
|
||||
+ did_dd=1
|
||||
+ fi
|
||||
+ fi
|
||||
+ if test "$did_dd" = 0
|
||||
+ then
|
||||
+ echo >&2
|
||||
+ echo "$0 : NOTE : No EFI image found or no MBR signature in it." >&2
|
||||
+ echo "$0 : NOTE : Will not obey MKRESCUE_SED_IN_EFI_NO_PT=yes" >&2
|
||||
+ echo >&2
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
efi_tmp_name=
|
||||
+if test x"$mode" = xmjg \
|
||||
+ -o x"$mode" = xmbr_only \
|
||||
+ -o x"$mode" = xgpt_appended \
|
||||
+ -o x"$mode" = xmbr_hfs
|
||||
+then
|
||||
+ # Move EFI partition image file out of the "$dir" tree, i.e. out of the ISO
|
||||
+ efi_tmp_name=grub-mkrescue-sed-efi-img.$$
|
||||
+ if test -e "$dir"/efi.img
|
||||
+ then
|
||||
+ mv "$dir"/efi.img /tmp/$efi_tmp_name
|
||||
+ elif test -e /tmp/$efi_tmp_name
|
||||
+ then
|
||||
+ rm /tmp/$efi_tmp_name
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
if test x"$mode" = xmjg
|
||||
then
|
||||
# Exchange arguments for the experimental GRUB2 mjg layout
|
||||
- efi_tmp_name=grub-mkrescue-sed-efi-img.$$
|
||||
- mv "$dir"/efi.img /tmp/$efi_tmp_name
|
||||
x=$(echo " $*" | sed \
|
||||
-e "s/-efi-boot-part --efi-boot-image/-no-pad -append_partition $partno 0xef \/tmp\/$efi_tmp_name/" \
|
||||
-e "s/--efi-boot efi\.img/-eltorito-alt-boot -e --interval:appended_partition_${partno}:all:: -no-emul-boot -isohybrid-gpt-basdat/" \
|
||||
@@ -207,8 +252,6 @@ then
|
||||
elif test x"$mode" = xmbr_only
|
||||
then
|
||||
# Exchange arguments for no-HFS MBR-only layout
|
||||
- efi_tmp_name=grub-mkrescue-sed-efi-img.$$
|
||||
- mv "$dir"/efi.img /tmp/$efi_tmp_name
|
||||
x=$(echo " $*" | sed \
|
||||
-e "s/-efi-boot-part --efi-boot-image/$iso_mbr_part_type -no-pad -append_partition 2 0xef \/tmp\/$efi_tmp_name/" \
|
||||
-e "s/--efi-boot efi\.img/-eltorito-alt-boot -e --interval:appended_partition_2:all:: -no-emul-boot/" \
|
||||
@@ -228,8 +271,6 @@ then
|
||||
elif test x"$mode" = xmbr_hfs
|
||||
then
|
||||
# Exchange arguments for MBR and HFS+ layout
|
||||
- efi_tmp_name=grub-mkrescue-sed-efi-img.$$
|
||||
- mv "$dir"/efi.img /tmp/$efi_tmp_name
|
||||
x=$(echo " $*" | sed \
|
||||
-e "s/-efi-boot-part --efi-boot-image/$iso_mbr_part_type -no-pad -append_partition 2 0xef \/tmp\/$efi_tmp_name/" \
|
||||
-e "s/--efi-boot efi\.img/-eltorito-alt-boot -e --interval:appended_partition_2:all:: -no-emul-boot/" \
|
||||
@@ -247,8 +288,6 @@ then
|
||||
elif test x"$mode" = xgpt_appended
|
||||
then
|
||||
# Exchange arguments for no-HFS MBR-only layout
|
||||
- efi_tmp_name=grub-mkrescue-sed-efi-img.$$
|
||||
- mv "$dir"/efi.img /tmp/$efi_tmp_name
|
||||
x=$(echo " $*" | sed \
|
||||
-e "s/-efi-boot-part --efi-boot-image/-no-pad -append_partition 2 0xef \/tmp\/$efi_tmp_name -appended_part_as_gpt -partition_offset 16/" \
|
||||
-e "s/--efi-boot efi\.img/-eltorito-alt-boot -e --interval:appended_partition_2:all:: -no-emul-boot/" \
|
|
@ -265,11 +265,17 @@ (define-public meld
|
|||
(inputs
|
||||
`(("python-cairo" ,python-pycairo)
|
||||
("python-gobject" ,python-pygobject)
|
||||
("gtksourceview" ,gtksourceview)))
|
||||
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||
("gtksourceview" ,gtksourceview-3)))
|
||||
(propagated-inputs
|
||||
`(("dconf" ,dconf)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(#:imported-modules ((guix build glib-or-gtk-build-system)
|
||||
,@%python-build-system-modules)
|
||||
#:modules ((guix build python-build-system)
|
||||
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; This setup.py script does not support one of the Python build
|
||||
;; system's default flags, "--single-version-externally-managed".
|
||||
|
@ -292,7 +298,16 @@ (define-public meld
|
|||
(setenv "HOME" "/tmp")
|
||||
(invoke "py.test" "-v" "-k"
|
||||
;; TODO: Those tests fail, why?
|
||||
"not test_classify_change_actions"))))))
|
||||
"not test_classify_change_actions")))
|
||||
(add-after 'wrap 'glib-or-gtk-wrap
|
||||
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
|
||||
(add-after 'wrap 'wrap-typelib
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(wrap-program (string-append out "/bin/meld")
|
||||
`("GI_TYPELIB_PATH" prefix
|
||||
,(search-path-as-string->list (getenv "GI_TYPELIB_PATH"))))
|
||||
#t))))))
|
||||
(home-page "https://meldmerge.org/")
|
||||
(synopsis "Compare files, directories and working copies")
|
||||
(description "Meld is a visual diff and merge tool targeted at
|
||||
|
|
|
@ -1120,48 +1120,29 @@ (define-public pdfpc
|
|||
(license license:gpl2+)))
|
||||
|
||||
(define-public paps
|
||||
(let ((commit "37e6ca1cd96d751bbbff5539d795c90d657289a5")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "paps")
|
||||
;; The last release was in 2015, but since then there have been security
|
||||
;; bug fixes.
|
||||
(version (git-version "0.7.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dov/paps.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ilcyjqdynxsd2p8dnn8h4592dwf531x9pbkxa1w09hkcdn7hgwc"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'do-not-run-configure-script-during-bootstrap
|
||||
(lambda _
|
||||
(substitute* "autogen.sh"
|
||||
(("^./configure") "#"))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("pango" ,pango)))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("gettext" ,gettext-minimal)
|
||||
("glib" ,glib "bin")
|
||||
("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/dov/paps")
|
||||
(synopsis "Pango to PostScript converter")
|
||||
(description
|
||||
"Paps reads a UTF-8 encoded file and generates a PostScript language
|
||||
(package
|
||||
(name "paps")
|
||||
(version "0.7.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/dov/paps/releases/download/v"
|
||||
version "/paps-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1z1w1fg2bvb8p92n1jlpqp3n9mq42szb2mqhh4xqmmnmfcdkpi9s"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("pango" ,pango)))
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/dov/paps")
|
||||
(synopsis "Pango to PostScript converter")
|
||||
(description
|
||||
"Paps reads a UTF-8 encoded file and generates a PostScript language
|
||||
rendering of the file. The rendering is done by creating outline curves
|
||||
through the Pango @code{ft2} backend.")
|
||||
(license license:lgpl2.0+))))
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public stapler
|
||||
(package
|
||||
|
|
|
@ -1611,14 +1611,14 @@ (define-public perl-cpan-meta-check
|
|||
(define-public perl-cpanel-json-xs
|
||||
(package
|
||||
(name "perl-cpanel-json-xs")
|
||||
(version "4.12")
|
||||
(version "4.15")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/R/RU/RURBAN/"
|
||||
"Cpanel-JSON-XS-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0n66da8s88srr591i7gm1d611z9jbcz488fhqxy604diiw8pnha9"))))
|
||||
(base32 "1695408fj6jjx6dv5082hhxg5am480x1nz7s0f355npv0wm776wx"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-common-sense" ,perl-common-sense)))
|
||||
|
@ -4287,7 +4287,7 @@ (define-public perl-io-all
|
|||
(define-public perl-io-captureoutput
|
||||
(package
|
||||
(name "perl-io-captureoutput")
|
||||
(version "1.1104")
|
||||
(version "1.1105")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -4296,8 +4296,7 @@ (define-public perl-io-captureoutput
|
|||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0c437zvzpqi8f0h3nmblwdi2bvsb92b7g30fndr7my9qnky35izw"))))
|
||||
(base32 "11zlfbahac09q3jvwmpijmkwgihwxps85jwy2q7q0wqjragh16df"))))
|
||||
(build-system perl-build-system)
|
||||
(home-page "https://metacpan.org/release/IO-CaptureOutput")
|
||||
(synopsis "Capture STDOUT and STDERR from Perl code, subprocesses or XS")
|
||||
|
@ -5552,15 +5551,14 @@ (define-public perl-moo-2
|
|||
(package
|
||||
(inherit perl-moo)
|
||||
(name "perl-moo-2")
|
||||
(version "2.003004")
|
||||
(version "2.003006")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
|
||||
"Moo-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qciprcgb4661g2g4ks0fxkx5gbjvn7h9yfg0nzflqz9z0jvdfzq"))))
|
||||
(base32 "0wi4gyp5kn4lbags0hrax3c9jj9spxg4d11fbrdh0ican4m0kcmw"))))
|
||||
(propagated-inputs
|
||||
`(("perl-role-tiny" ,perl-role-tiny-2)
|
||||
("perl-sub-name" ,perl-sub-name)
|
||||
|
@ -6549,7 +6547,7 @@ (define-public perl-namespace-clean
|
|||
(define-public perl-net-dns-native
|
||||
(package
|
||||
(name "perl-net-dns-native")
|
||||
(version "0.21")
|
||||
(version "0.22")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -6557,7 +6555,7 @@ (define-public perl-net-dns-native
|
|||
"mirror://cpan/authors/id/O/OL/OLEG/Net-DNS-Native-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0jjcgzmgas7k5rwalirrmbnlj4ihdxyydajc18qviwg863qjannl"))))
|
||||
(base32 "1m9hbj83ikg52wvq7z8bjm78i50qvqk5alh11mmazzxrpbnrv38h"))))
|
||||
(build-system perl-build-system)
|
||||
(home-page "https://metacpan.org/release/Net-DNS-Native")
|
||||
(synopsis "Non-blocking system DNS resolver")
|
||||
|
@ -9632,15 +9630,14 @@ (define-public perl-parse-cpan-meta
|
|||
(define-public perl-scalar-list-utils
|
||||
(package
|
||||
(name "perl-scalar-list-utils")
|
||||
(version "1.50")
|
||||
(version "1.53")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/P/PE/PEVANS/"
|
||||
"Scalar-List-Utils-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0x9n0617gjjcqa4nk5biiwkxdi90xpdfg6z07gjr009qjg3bkah6"))))
|
||||
(base32 "16dfpnrcf5846j998rdd6gra16m9030rnz9fpsh1hfzvcsq8ch5x"))))
|
||||
(build-system perl-build-system)
|
||||
(home-page "https://metacpan.org/release/Scalar-List-Utils")
|
||||
(synopsis "Common Scalar and List utility subroutines")
|
||||
|
|
|
@ -2013,7 +2013,7 @@ (define-public python2-url
|
|||
(define-public python-cachecontrol
|
||||
(package
|
||||
(name "python-cachecontrol")
|
||||
(version "0.11.6")
|
||||
(version "0.12.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -2024,25 +2024,12 @@ (define-public python-cachecontrol
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pb16bzbkk99nh317xyfk8fxc2ngimsbz7lz9pxsw8c82n83d4dh"))))
|
||||
"03lgc65sl04n0cgzmmgg99bk83f9i6k8yrmcd4hpl46q1pymn0kz"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
;; Drop test that requires internet access.
|
||||
(delete-file "tests/test_regressions.py")
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append (getcwd) "/build/lib:"
|
||||
(getenv "PYTHONPATH")))
|
||||
(invoke "py.test" "-vv")
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)
|
||||
("python-redis" ,python-redis)
|
||||
("python-webtest" ,python-webtest)
|
||||
("python-mock" ,python-mock)))
|
||||
;; Versions > 0.11.6 depend on CherryPy for testing.
|
||||
;; It's too much work to package CherryPy for now.
|
||||
`(#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("python-requests" ,python-requests)
|
||||
("python-lockfile" ,python-lockfile)))
|
||||
|
|
|
@ -548,14 +548,13 @@ (define-public python2-sh
|
|||
(define-public python-cftime
|
||||
(package
|
||||
(name "python-cftime")
|
||||
(version "1.0.3.4")
|
||||
(version "1.0.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cftime" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0362dhxbzk593walyjz30dll6y2y79wialik647cbwdsf3ad0x6x"))))
|
||||
(base32 "0w0gi6jnch38hiygl62j4xkcirv4y3dcwrvxl9p7bsk6j27lzihs"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-numpy" ,python-numpy)))
|
||||
|
@ -934,14 +933,14 @@ (define-public python2-verboselogs
|
|||
(define-public python-coloredlogs
|
||||
(package
|
||||
(name "python-coloredlogs")
|
||||
(version "7.3")
|
||||
(version "10.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "coloredlogs" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1blcann6dyg5dhps9pg12rn0q0rjrlajpmmil0gy0j4cbvnl2il9"))))
|
||||
"0dkw6xp0r1dwgz4s2f58npx5nxfq51wf4l6qkm5ib27slgfs4sdq"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(;Tests require some updated modules
|
||||
|
@ -1158,13 +1157,13 @@ (define-public python2-schedule
|
|||
(define-public python-pandas
|
||||
(package
|
||||
(name "python-pandas")
|
||||
(version "0.24.2")
|
||||
(version "0.25.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pandas" version))
|
||||
(sha256
|
||||
(base32 "18imlm8xbhcbwy4wa957a1fkamrcb0z988z006jpfda3ki09z4ag"))))
|
||||
(base32 "1gp2pvzdiakvgjmykdzdlzrsfbg4vjm49jjdl9s0ha0a3yfs34fa"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils)
|
||||
|
@ -1227,10 +1226,22 @@ (define-public python-pandas
|
|||
multidimensional, potentially heterogeneous) and time series data both easy
|
||||
and intuitive. It aims to be the fundamental high-level building block for
|
||||
doing practical, real world data analysis in Python.")
|
||||
(properties `((python2-variant . ,(delay python2-pandas))))
|
||||
(license license:bsd-3)))
|
||||
|
||||
;; Pandas 0.24.x are the last versions that support Python 2.
|
||||
(define-public python2-pandas
|
||||
(package-with-python2 python-pandas))
|
||||
(let ((pandas (package-with-python2
|
||||
(strip-python2-variant python-pandas))))
|
||||
(package/inherit
|
||||
pandas
|
||||
(version "0.24.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pandas" version))
|
||||
(sha256
|
||||
(base32
|
||||
"18imlm8xbhcbwy4wa957a1fkamrcb0z988z006jpfda3ki09z4ag")))))))
|
||||
|
||||
(define-public python2-mechanize
|
||||
(package
|
||||
|
@ -3451,7 +3462,7 @@ (define-public python2-rpython
|
|||
(define-public python-numpy
|
||||
(package
|
||||
(name "python-numpy")
|
||||
(version "1.15.4")
|
||||
(version "1.17.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -3460,7 +3471,7 @@ (define-public python-numpy
|
|||
version "/numpy-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"102vcl2qq4pjbm7a3d67vkkvn4466ngia1d8wi5avqwqh8j0jvkn"))))
|
||||
"1ak9dmjja0q90a7fsxli51ypcwssh8c4pb6f8wkrsnf2xgdk6dy9"))))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
`(("openblas" ,openblas)
|
||||
|
@ -3525,10 +3536,24 @@ (define-public python-numpy
|
|||
object, sophisticated (broadcasting) functions, tools for integrating C/C++
|
||||
and Fortran code, useful linear algebra, Fourier transform, and random number
|
||||
capabilities.")
|
||||
(properties `((python2-variant . ,(delay python2-numpy))))
|
||||
(license license:bsd-3)))
|
||||
|
||||
;; Numpy 1.16.x are the last versions that support Python 2.
|
||||
(define-public python2-numpy
|
||||
(package-with-python2 python-numpy))
|
||||
(let ((numpy (package-with-python2
|
||||
(strip-python2-variant python-numpy))))
|
||||
(package/inherit
|
||||
numpy
|
||||
(version "1.16.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/numpy/numpy/releases/download/v"
|
||||
version "/numpy-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lg1cycxzi4rvvrd5zxinpdz0ni792fpx6xjd75z1923zcac8qrb")))))))
|
||||
|
||||
;; NOTE: NumPy 1.8 is packaged only for Python 2 because it is of
|
||||
;; interest only for legacy code going back to NumPy's predecessor
|
||||
|
@ -5218,13 +5243,13 @@ (define-public python-jaraco-packaging
|
|||
(define-public python-pathpy
|
||||
(package
|
||||
(name "python-pathpy")
|
||||
(version "11.5.0")
|
||||
(version "11.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "path.py" version))
|
||||
(sha256
|
||||
(base32 "1jxkf91syzxlpiwgm83fjfz1m5xh3jrvv4iyl5wjsnkk599pls5n"))))
|
||||
(base32 "0ir9j1haq2jbi7aip6k2fa9l7q1l03k4hp1awxhjhcwzsnwp3ll8"))))
|
||||
(outputs '("out" "doc"))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -5625,13 +5650,13 @@ (define-public python2-ipython
|
|||
(define-public python-ipython
|
||||
(package
|
||||
(name "python-ipython")
|
||||
(version "7.5.0")
|
||||
(version "7.9.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "ipython" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "09mbxq37mfn88xjnib7qfzaq9krr7gf1jxwy1p6mcjr254082h78"))))
|
||||
(base32 "103jkw18z7fnwdal1mdbijjxi1fndzn31g887lmj7ddpf2r07lyz"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-backcall" ,python-backcall)
|
||||
|
@ -5964,15 +5989,20 @@ (define-public python2-notify2
|
|||
(define-public python-lxml
|
||||
(package
|
||||
(name "python-lxml")
|
||||
(version "4.2.5")
|
||||
(version "4.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "lxml" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0zw0y9hs0nflxhl9cs6ipwwh53szi3w2x06wl0k9cylyqac0cwin"))))
|
||||
"14jnpfcpgqr9sx8ppd286jzcbk0b36hbqsvd8jkvffipzw5v8768"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "make" "test"))))))
|
||||
(inputs
|
||||
`(("libxml2" ,libxml2)
|
||||
("libxslt" ,libxslt)))
|
||||
|
@ -7243,21 +7273,23 @@ (define-public python2-wrapt
|
|||
(define-public python-xlrd
|
||||
(package
|
||||
(name "python-xlrd")
|
||||
(version "1.0.0")
|
||||
(version "1.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "xlrd" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0s8hjiz01vbhy85xalrz0qlsmd9ypf36zjqrf97hh984spapvy0g"))))
|
||||
"1ci93fda4n67qhdvfl16zasyxrpygzk53hs6m8z0rd4dxrnb6vjl"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Current test in setup.py does not work as of 1.0.0, so use nose to
|
||||
;; run tests instead for now.
|
||||
(replace 'check (lambda _ (invoke "nosetests"))))))
|
||||
(native-inputs `(("python-nose" ,python-nose)))
|
||||
;; Some tests depend on writing a temporary file to the user's home
|
||||
;; directory.
|
||||
(add-after 'unpack 'fix-tests
|
||||
(lambda _
|
||||
(delete-file "tests/test_open_workbook.py")
|
||||
#t)))))
|
||||
(home-page "http://www.python-excel.org/")
|
||||
(synopsis "Library for extracting data from Excel files")
|
||||
(description "This package provides a library to extract data from
|
||||
|
@ -9558,6 +9590,7 @@ (define-public python-whoosh
|
|||
(base32
|
||||
"10qsqdjpbc85fykc1vgcs8xwbgn4l2l52c8d83xf1q59pwyn79bw"))))
|
||||
(build-system python-build-system)
|
||||
(arguments '(#:tests? #f)) ; Test invocation is no longer supported by Python.
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(home-page "https://bitbucket.org/mchaput/whoosh")
|
||||
|
@ -10588,16 +10621,16 @@ (define-public python2-pylev
|
|||
(define-public python-cleo
|
||||
(package
|
||||
(name "python-cleo")
|
||||
(version "0.6.1")
|
||||
(version "0.6.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cleo" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0q1cf0szr0d54am4pypzwdnm74zpladdsinad94c2fz5i06fdpf7"))))
|
||||
"06zp695hq835rkaq6irr1ds1dp2qfzyf32v60vxpd8rcnxv319l5"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(;; For testing
|
||||
`( ;; For testing
|
||||
("python-mock" ,python-mock)
|
||||
("python-pytest-mock" ,python-pytest-mock)
|
||||
("python-pytest" ,python-pytest)))
|
||||
|
@ -10615,6 +10648,191 @@ (define-public python-cleo
|
|||
(define-public python2-cleo
|
||||
(package-with-python2 python-cleo))
|
||||
|
||||
(define-public python-tomlkit
|
||||
(package
|
||||
(name "python-tomlkit")
|
||||
(version "0.5.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "tomlkit" version))
|
||||
(sha256
|
||||
(base32
|
||||
"18820ga5z3if1w8dvykxrfm000akracq01ic402xrbljgbn5grn4"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(home-page
|
||||
"https://github.com/sdispater/tomlkit")
|
||||
(synopsis "Style preserving TOML library")
|
||||
(description
|
||||
"TOML Kit is a 0.5.0-compliant TOML library. It includes a parser that
|
||||
preserves all comments, indentations, whitespace and internal element ordering,
|
||||
and makes them accessible and editable via an intuitive API. It can also
|
||||
create new TOML documents from scratch using the provided helpers. Part of the
|
||||
implementation as been adapted, improved and fixed from Molten.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-shellingham
|
||||
(package
|
||||
(name "python-shellingham")
|
||||
(version "1.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "shellingham" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q7kws7w4x2hji3g7y0ni9ddk4sd676ylrb3db54gbpys6xj6nwq"))))
|
||||
(build-system python-build-system)
|
||||
(home-page
|
||||
"https://github.com/sarugaku/shellingham")
|
||||
(synopsis "Tool to detect surrounding shell")
|
||||
(description
|
||||
"Shellingham detects what shell the current Python executable is
|
||||
running in.")
|
||||
(license license:isc)))
|
||||
|
||||
(define-public python-memcached
|
||||
(package
|
||||
(name "python-memcached")
|
||||
(version "1.59")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "python-memcached" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kvyapavbirk2x3n1jx4yb9nyigrj1s3x15nm3qhpvhkpqvqdqm2"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs `(("python-six" ,python-six)))
|
||||
(home-page
|
||||
"https://github.com/linsomniac/python-memcached")
|
||||
(synopsis "Pure python memcached client")
|
||||
(description
|
||||
"This software is a pure Python interface to the memcached memory cache
|
||||
daemon. It is the client side software which allows storing values in one or
|
||||
more, possibly remote, memcached servers.")
|
||||
(license license:psfl)))
|
||||
|
||||
(define-public python-clikit
|
||||
(package
|
||||
(name "python-clikit")
|
||||
(version "0.2.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "clikit" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dc8czib5f4j9px1ivcpqnmivnx2zjpc0xb00ldrhsqylks7r06n"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-pastel" ,python-pastel)
|
||||
("python-pylev" ,python-pylev)))
|
||||
(home-page "https://github.com/sdispater/clikit")
|
||||
(synopsis "Group of utilities to build command line interfaces")
|
||||
(description
|
||||
"CliKit is a group of utilities to build testable command line
|
||||
interfaces.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-msgpack-python
|
||||
(package
|
||||
(name "python-msgpack-python")
|
||||
(version "0.5.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "msgpack-python" version))
|
||||
(sha256
|
||||
(base32
|
||||
"16wh8qgybmfh4pjp8vfv78mdlkxfmcasg78lzlnm6nslsfkci31p"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "http://msgpack.org/")
|
||||
(synopsis "Package to deserialize messages in MessagePack binary format")
|
||||
(description
|
||||
"MessagePack is an efficient binary serialization format. It lets you
|
||||
exchange data among multiple languages like JSON. But it's faster and
|
||||
smaller. Small integers are encoded into a single byte, and typical short
|
||||
strings require only one extra byte in addition to the strings themselves.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-cachy
|
||||
(package
|
||||
(name "python-cachy")
|
||||
(version "0.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cachy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0v6mjyhgx6j7ya20bk69cr3gdzdkdf6psay0h090rscclgji65dp"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-fakeredis" ,python-fakeredis)
|
||||
("python-flexmock" ,python-flexmock)
|
||||
("python-pytest" ,python-pytest)))
|
||||
(propagated-inputs
|
||||
`(("python-memcached" ,python-memcached)
|
||||
("python-msgpack-python" ,python-msgpack-python)
|
||||
("python-redis" ,python-redis)))
|
||||
(home-page "https://github.com/sdispater/cachy")
|
||||
(synopsis "Simple yet effective caching library")
|
||||
(description
|
||||
"Cachy provides a simple yet effective caching library. A simple but
|
||||
powerful API: thread-safety; decorator syntax; support for memcached, redis,
|
||||
database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public poetry
|
||||
(package
|
||||
(name "poetry")
|
||||
(version "0.12.17")
|
||||
;; Poetry can only be built from source with poetry.
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "poetry" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gxwcd65qjmzqzppf53x51sic1rbcd9py6cdzx3aprppipimslvf"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;; Pypi does not have tests.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'build
|
||||
(lambda _
|
||||
;; Bug in poetry https://github.com/sdispater/poetry/issues/866.
|
||||
(invoke "sed" "-i" "-e" "s/from distutils.core/from setuptools/"
|
||||
"setup.py")
|
||||
#t)))))
|
||||
(propagated-inputs
|
||||
`(("python-cachecontrol" ,python-cachecontrol)
|
||||
("python-cachy" ,python-cachy)
|
||||
("python-cleo" ,python-cleo)
|
||||
("python-glob2" ,python-glob2)
|
||||
("python-html5lib" ,python-html5lib)
|
||||
("python-jsonschema" ,python-jsonschema)
|
||||
("python-msgpack" ,python-msgpack)
|
||||
("python-pathlib2" ,python-pathlib2)
|
||||
("python-pkginfo" ,python-pkginfo)
|
||||
("python-pyparsing" ,python-pyparsing)
|
||||
("python-pyrsistent" ,python-pyrsistent)
|
||||
("python-requests" ,python-requests)
|
||||
("python-requests-toolbelt" ,python-requests-toolbelt)
|
||||
("python-shellingham" ,python-shellingham)
|
||||
("python-tomlkit" ,python-tomlkit)
|
||||
("python-virtualenv" ,python-virtualenv)))
|
||||
(home-page "https://poetry.eustace.io/")
|
||||
(synopsis "Python dependency management and packaging made easy")
|
||||
(description "Poetry is a tool for dependency management and packaging
|
||||
in Python. It allows you to declare the libraries your project depends on and
|
||||
it will manage (install/update) them for you.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-lazy-object-proxy
|
||||
(package
|
||||
(name "python-lazy-object-proxy")
|
||||
|
@ -14325,14 +14543,20 @@ (define-public python2-semver
|
|||
(define-public python-pyro4
|
||||
(package
|
||||
(name "python-pyro4")
|
||||
(version "4.75")
|
||||
(version "4.77")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Pyro4" version))
|
||||
(sha256
|
||||
(base32 "1dfpp36imddx19yv0kd28gk1l71ckhpqy6jd590wpm2680jw15rq"))))
|
||||
(base32 "0gsjg869y4gpy265s1gj1f2qy6jn5iz8r2bwwnq78r1r5yi15zib"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ;FIXME: Some tests require network access.
|
||||
(native-inputs
|
||||
`(("python-cloudpickle" ,python-cloudpickle)
|
||||
("python-dill" ,python-dill)
|
||||
("python-msgpack" ,python-msgpack)))
|
||||
(propagated-inputs
|
||||
`(("python-serpent" ,python-serpent)))
|
||||
(home-page "https://pyro4.readthedocs.io")
|
||||
|
|
|
@ -20,7 +20,8 @@ (define-module (gnu packages rust-cbindgen)
|
|||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system cargo))
|
||||
#:use-module (guix build-system cargo)
|
||||
#:use-module (gnu packages crates-io))
|
||||
|
||||
(define-public rust-cbindgen
|
||||
(package
|
||||
|
@ -50,7 +51,7 @@ (define-public rust-cbindgen
|
|||
(("ansi-term" ,rust-ansi-term-0.11)
|
||||
("atty" ,rust-atty-0.2)
|
||||
("autocfg" ,rust-autocfg-0.1)
|
||||
("bitflags" ,rust-bitflags-1.1)
|
||||
("bitflags" ,rust-bitflags-1)
|
||||
("cfg-if" ,rust-cfg-if-0.1)
|
||||
("cloudabi" ,rust-cloudabi-0.0)
|
||||
("fuchsia-cprng" ,rust-fuchsia-cprng-0.1)
|
||||
|
@ -84,936 +85,3 @@ (define-public rust-cbindgen
|
|||
(description
|
||||
"This package provides a tool for generating C/C++ bindings to Rust code.")
|
||||
(license license:mpl2.0)))
|
||||
|
||||
;;;
|
||||
;;;^L
|
||||
;;;
|
||||
|
||||
(define rust-ansi-term-0.11
|
||||
(package
|
||||
(name "rust-ansi-term")
|
||||
(version "0.11.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "ansi_term" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"16wpvrghvd0353584i1idnsgm0r3vchg8fyrm0x8ayv1rgvbljgf"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/ogham/rust-ansi-term")
|
||||
(synopsis "Library for ANSI terminal colours and styles")
|
||||
(description
|
||||
"This is a library for controlling colours and formatting, such as red bold
|
||||
text or blue underlined text, on ANSI terminals.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-atty-0.2
|
||||
(package
|
||||
(name "rust-atty")
|
||||
(version "0.2.13")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "atty" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"140sswp1bwqwc4zk80bxkbnfb3g936hgrb77g9g0k1zcld3wc0qq"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/softprops/atty")
|
||||
(synopsis "A simple interface for querying atty")
|
||||
(description
|
||||
"This package provides a simple interface for querying atty.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-autocfg-0.1
|
||||
(package
|
||||
(name "rust-autocfg")
|
||||
(version "0.1.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "autocfg" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1chwgimpx5z7xbag7krr9d8asxfqbh683qhgl9kn3hxk2l0djj8x"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/cuviper/autocfg")
|
||||
(synopsis "Automatic cfg for Rust compiler features")
|
||||
(description "Rust library for build scripts to automatically configure
|
||||
code based on compiler support. Code snippets are dynamically tested to see
|
||||
if the @code{rustc} will accept them, rather than hard-coding specific version
|
||||
support.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-bitflags-1.1
|
||||
(package
|
||||
(name "rust-bitflags")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "bitflags" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zc1qb1hwsnl2d8rhzicsv9kqd5b2hwbrscrcfw5as4sfr35659x"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/bitflags/bitflags")
|
||||
(synopsis "Macro to generate structures which behave like bitflags")
|
||||
(description "This package provides a macro to generate structures which
|
||||
behave like a set of bitflags.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-cfg-if-0.1
|
||||
(package
|
||||
(name "rust-cfg-if")
|
||||
(version "0.1.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "cfg-if" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"08h80ihs74jcyp24cd75wwabygbbdgl05k6p5dmq8akbr78vv1a7"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/alexcrichton/cfg-if")
|
||||
(synopsis "Define an item depending on parameters")
|
||||
(description "This package provides a macro to ergonomically define an item
|
||||
depending on a large number of #[cfg] parameters. Structured like an
|
||||
@code{if-else} chain, the first matching branch is the item that gets emitted.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-clap-2
|
||||
(package
|
||||
(name "rust-clap")
|
||||
(version "2.33.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "clap" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1nf6ld3bims1n5vfzhkvcb55pdzh04bbhzf8nil5vvw05nxzarsh"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://clap.rs/")
|
||||
(synopsis "Command Line Argument Parser")
|
||||
(description
|
||||
"This package provides a simple to use, efficient, and full-featured
|
||||
Command Line Argument Parser.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-cloudabi-0.0
|
||||
(package
|
||||
(name "rust-cloudabi")
|
||||
(version "0.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "cloudabi" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0kxcg83jlihy0phnd2g8c2c303px3l2p3pkjz357ll6llnd5pz6x"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://nuxi.nl/cloudabi/")
|
||||
(synopsis "Low level interface to CloudABI")
|
||||
(description
|
||||
"Low level interface to CloudABI. Contains all syscalls and related types.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define rust-fuchsia-cprng-0.1
|
||||
(package
|
||||
(name "rust-fuchsia-cprng")
|
||||
(version "0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "fuchsia-cprng" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1fnkqrbz7ixxzsb04bsz9p0zzazanma8znfdqjvh39n14vapfvx0"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://fuchsia.googlesource.com/fuchsia/+/master/garnet/public/rust/fuchsia-cprng")
|
||||
(synopsis "Fuchsia cryptographically secure pseudorandom number generator")
|
||||
(description "Thix package provides a rust crate for the Fuchsia
|
||||
cryptographically secure pseudorandom number generator.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define rust-itoa-0.4
|
||||
(package
|
||||
(name "rust-itoa")
|
||||
(version "0.4.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "itoa" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zvg2d9qv3avhf3d8ggglh6fdyw8kkwqg3r4622ly5yhxnvnc4jh"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/dtolnay/itoa")
|
||||
(synopsis "Fast functions for printing integer primitives")
|
||||
(description "This crate provides fast functions for printing integer
|
||||
primitives to an @code{io::Write}.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-libc-0.2
|
||||
(package
|
||||
(name "rust-libc")
|
||||
(version "0.2.65")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "libc" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1s14bjxnz6haw0gr1h3j4sr7s2s407hpgm8dxhwnl7yzgxia0c8s"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/rust-lang/libc")
|
||||
(synopsis "Raw FFI bindings to platform libraries like libc")
|
||||
(description
|
||||
"libc provides all of the definitions necessary to easily
|
||||
interoperate with C code (or \"C-like\" code) on each of the platforms
|
||||
that Rust supports. This includes type definitions (e.g., c_int),
|
||||
constants (e.g., EINVAL) as well as function headers (e.g., malloc).
|
||||
|
||||
This crate exports all underlying platform types, functions, and
|
||||
constants under the crate root, so all items are accessible as
|
||||
@samp{libc::foo}. The types and values of all the exported APIs match
|
||||
the platform that libc is compiled for.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat
|
||||
license:asl2.0))))
|
||||
|
||||
(define rust-log-0.4
|
||||
(package
|
||||
(name "rust-log")
|
||||
(version "0.4.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "log" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xz18ixccl5c6np4linv3ypc7hpmmgpc5zzd2ymp2ssfx0mhbdhl"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/rust-lang/log")
|
||||
(synopsis "Lightweight logging facade for Rust")
|
||||
(description
|
||||
"This package provides a lightweight logging facade for Rust.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-numtoa-0.1
|
||||
(package
|
||||
(name "rust-numtoa")
|
||||
(version "0.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "numtoa" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vs9rhggqbql1p26x8nkha1j06wawwgb2jp5fs88b5gi7prvvy5q"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://gitlab.com/mmstick/numtoa")
|
||||
(synopsis "Convert numbers into stack-allocated byte arrays")
|
||||
(description
|
||||
"This package can convert numbers into stack-allocated byte arrays.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-proc-macro2-1.0
|
||||
(package
|
||||
(name "rust-proc-macro2")
|
||||
(version "1.0.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "proc-macro2" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"09rgb5ab0jgw39kyad0lgqs4nb9yaf7mwcrgxqnsxbn4il54g7lw"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/alexcrichton/proc-macro2")
|
||||
(synopsis "Stable implementation of the upcoming new `proc_macro` API")
|
||||
(description "This package provides a stable implementation of the upcoming new
|
||||
`proc_macro` API. Comes with an option, off by default, to also reimplement itself
|
||||
in terms of the upstream unstable API.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-quote-1.0
|
||||
(package
|
||||
(name "rust-quote")
|
||||
(version "1.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "quote" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zkc46ryacf2jdkc6krsy2z615xbk1x8kp1830rcxz3irj5qqfh5"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/dtolnay/quote")
|
||||
(synopsis "Quasi-quoting macro quote!(...)")
|
||||
(description "Quasi-quoting macro quote!(...)")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-rand-0.6
|
||||
(package
|
||||
(name "rust-rand")
|
||||
(version "0.6.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jl4449jcl4wgmzld6ffwqj5gwxrp8zvx8w573g1z368qg6xlwbd"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand")
|
||||
(synopsis "Random number generators and other randomness functionality")
|
||||
(description
|
||||
"This package contains random number generators and other randomness
|
||||
functionality.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-chacha-0.1
|
||||
(package
|
||||
(name "rust-rand-chacha")
|
||||
(version "0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_chacha" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vxwyzs4fy1ffjc8l00fsyygpiss135irjf7nyxgq2v0lqf3lvam"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand_chacha")
|
||||
(synopsis "ChaCha random number generator")
|
||||
(description "ChaCha random number generator")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-core-0.4
|
||||
(package
|
||||
(name "rust-rand-core")
|
||||
(version "0.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_core" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1p09ynysrq1vcdlmcqnapq4qakl2yd1ng3kxh3qscpx09k2a6cww"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand_core")
|
||||
(synopsis
|
||||
"Core random number generator traits and tools for implementation.")
|
||||
(description
|
||||
"Core random number generator traits and tools for implementation.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-core-0.3
|
||||
(package
|
||||
(inherit rust-rand-core-0.4)
|
||||
(name "rust-rand-core")
|
||||
(version "0.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_core" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jzdgszfa4bliigiy4hi66k7fs3gfwi2qxn8vik84ph77fwdwvvs"))))
|
||||
;; This version is a 0.3 API wrapper around the 0.4 version.
|
||||
(arguments
|
||||
`(#:cargo-inputs (("rand-core" ,rust-rand-core-0.4))))))
|
||||
|
||||
(define rust-rand-hc-0.1
|
||||
(package
|
||||
(name "rust-rand-hc")
|
||||
(version "0.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_hc" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1i0vl8q5ddvvy0x8hf1zxny393miyzxkwqnw31ifg6p0gdy6fh3v"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand_hc")
|
||||
(synopsis "HC128 random number generator")
|
||||
(description "HC128 random number generator")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-isaac-0.1
|
||||
(package
|
||||
(name "rust-rand-isaac")
|
||||
(version "0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_isaac" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"027flpjr4znx2csxk7gxb7vrf9c7y5mydmvg5az2afgisp4rgnfy"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand_isaac")
|
||||
(synopsis "ISAAC random number generator")
|
||||
(description "ISAAC random number generator")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-jitter-0.1
|
||||
(package
|
||||
(name "rust-rand-jitter")
|
||||
(version "0.1.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_jitter" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"16z387y46bfz3csc42zxbjq89vcr1axqacncvv8qhyy93p4xarhi"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/rust-random/rand")
|
||||
(synopsis
|
||||
"Random number generator based on timing jitter")
|
||||
(description
|
||||
"Random number generator based on timing jitter")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-os-0.1
|
||||
(package
|
||||
(name "rust-rand-os")
|
||||
(version "0.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_os" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wahppm0s64gkr2vmhcgwc0lij37in1lgfxg5rbgqlz0l5vgcxbv"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand_os")
|
||||
(synopsis "OS backed Random Number Generator")
|
||||
(description "OS backed Random Number Generator")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-pcg-0.1
|
||||
(package
|
||||
(name "rust-rand-pcg")
|
||||
(version "0.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_pcg" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0i0bdla18a8x4jn1w0fxsbs3jg7ajllz6azmch1zw33r06dv1ydb"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand_pcg")
|
||||
(synopsis
|
||||
"Selected PCG random number generators")
|
||||
(description
|
||||
"Selected PCG random number generators")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rand-xorshift-0.1
|
||||
(package
|
||||
(name "rust-rand-xorshift")
|
||||
(version "0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rand_xorshift" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0p2x8nr00hricpi2m6ca5vysiha7ybnghz79yqhhx6sl4gkfkxyb"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://crates.io/crates/rand_xorshift")
|
||||
(synopsis "Xorshift random number generator")
|
||||
(description
|
||||
"Xorshift random number generator")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-rdrand-0.4
|
||||
(package
|
||||
(name "rust-rdrand")
|
||||
(version "0.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rdrand" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1cjq0kwx1bk7jx3kzyciiish5gqsj7620dm43dc52sr8fzmm9037"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/nagisa/rust_rdrand/")
|
||||
(synopsis "Random number generator")
|
||||
(description
|
||||
"This package is an implementation of random number generator based on
|
||||
@code{rdrand} and @cpde{rdseed} instructions")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:isc)))
|
||||
|
||||
(define rust-redox-syscall-0.1
|
||||
(package
|
||||
(name "rust-redox-syscall")
|
||||
(version "0.1.56")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "redox_syscall" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"110y7dyfm2vci4x5vk7gr0q551dvp31npl99fnsx2fb17wzwcf94"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://gitlab.redox-os.org/redox-os/syscall")
|
||||
(synopsis "Rust library to access raw Redox system calls")
|
||||
(description "This package provides a Rust library to access raw Redox
|
||||
system calls.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-redox-termios-0.1
|
||||
(package
|
||||
(name "rust-redox-termios")
|
||||
(version "0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "redox-termios" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xhgvdh62mymgdl3jqrngl8hr4i8xwpnbsxnldq0l47993z1r2by"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/redox-os/termios")
|
||||
(synopsis "Rust library to access Redox termios functions")
|
||||
(description
|
||||
"This package provides a Rust library to access Redox termios functions.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-remove-dir-all-0.5
|
||||
(package
|
||||
(name "rust-remove-dir-all")
|
||||
(version "0.5.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "remove-dir-all" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0bkrlyg26mgizpiy1yb2hhpgscxcag8r5fnckqsvk25608vzm0sa"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/XAMPPRocky/remove_dir_all.git")
|
||||
(synopsis "Implementation of remove_dir_all for Windows")
|
||||
(description
|
||||
"This package provides a safe, reliable implementation of remove_dir_all
|
||||
for Windows.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-ryu-1.0
|
||||
(package
|
||||
(name "rust-ryu")
|
||||
(version "1.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "ryu" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1j0h74f1xqf9hjkhanp8i20mqc1aw35kr1iq9i79q7713mn51a5z"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/dtolnay/ryu")
|
||||
(synopsis
|
||||
"Fast floating point to string conversion")
|
||||
(description
|
||||
"Fast floating point to string conversion")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0 license:boost1.0))))
|
||||
|
||||
(define rust-serde-1.0
|
||||
(package
|
||||
(name "rust-serde")
|
||||
(version "1.0.101")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "serde" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1p8r24hagcsrl92w5z32nfrg9040qkgqf8iwwnf7mzigpavwk5lp"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://serde.rs")
|
||||
(synopsis "Generic serialization/deserialization framework")
|
||||
(description
|
||||
"This package provides a generic serialization/deserialization framework.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-serde-derive-1.0
|
||||
(package
|
||||
(name "rust-serde-derive")
|
||||
(version "1.0.101")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "serde-derive" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0bn0wz3j48248187mfmypyqnh73mq734snxxhr05vmgcl51kl4sb"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://serde.rs")
|
||||
(synopsis
|
||||
"Macros 1.1 implementation of #[derive(Serialize, Deserialize)]")
|
||||
(description
|
||||
"Macros 1.1 implementation of #[derive(Serialize, Deserialize)]")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-serde-json-1.0
|
||||
(package
|
||||
(name "rust-serde-json")
|
||||
(version "1.0.41")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "serde-json" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hipk84x40454mf599752mi7l08wb8qakz8vd6d3zp57d0mfnwig"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/serde-rs/json")
|
||||
(synopsis "A JSON serialization file format")
|
||||
(description
|
||||
"This package provides a JSON serialization file format.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-strsim-0.8
|
||||
(package
|
||||
(name "rust-strsim")
|
||||
(version "0.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "strsim" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0sjsm7hrvjdifz661pjxq5w4hf190hx53fra8dfvamacvff139cf"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/dguo/strsim-rs")
|
||||
(synopsis "Rust implementations of string similarity metrics")
|
||||
(description "This crate includes implementations of string similarity
|
||||
metrics. It includes Hamming, Levenshtein, OSA, Damerau-Levenshtein, Jaro,
|
||||
and Jaro-Winkler.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-syn-1.0
|
||||
(package
|
||||
(name "rust-syn")
|
||||
(version "1.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "syn" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1gw03w7lzrlqmp2vislcybikgl5wkhrqi6sy70w93xss2abhx1b6"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/dtolnay/syn")
|
||||
(synopsis "Parser for Rust source code")
|
||||
(description "Parser for Rust source code")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-tempfile-3.0
|
||||
(package
|
||||
(name "rust-tempfile")
|
||||
(version "3.0.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "tempfile" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vqk7aq2l04my2r3jiyyxirnf8f90nzcvjasvrajivb85s7p7i3x"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "http://stebalien.com/projects/tempfile-rs")
|
||||
(synopsis "Library for managing temporary files and directories")
|
||||
(description
|
||||
"This package provides a library for managing temporary files and
|
||||
directories.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define rust-termion-1.5
|
||||
(package
|
||||
(name "rust-termion")
|
||||
(version "1.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "termion" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0c634rg520zjjfhwnxrc2jbfjz7db0rcpsjs1qici0nyghpv53va"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://gitlab.redox-os.org/redox-os/termion")
|
||||
(synopsis "Library for manipulating terminals")
|
||||
(description
|
||||
"This package provides a bindless library for manipulating terminals.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-textwrap-0.11
|
||||
(package
|
||||
(name "rust-textwrap")
|
||||
(version "0.11.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "textwrap" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0q5hky03ik3y50s9sz25r438bc4nwhqc6dqwynv4wylc807n29nk"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/mgeisler/textwrap")
|
||||
(synopsis "Library for word wrapping, indenting, and dedenting strings")
|
||||
(description
|
||||
"Textwrap is a small library for word wrapping, indenting, and dedenting
|
||||
strings. You can use it to format strings (such as help and error messages)
|
||||
for display in commandline applications. It is designed to be efficient and
|
||||
handle Unicode characters correctly.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license license:expat)))
|
||||
|
||||
(define rust-toml-0.5
|
||||
(package
|
||||
(name "rust-toml")
|
||||
(version "0.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "toml" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"093p48vpqm4bb8q3514xsij0dkljxlr3jp9ypxr4p48xjisvxan7"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/alexcrichton/toml-rs")
|
||||
(synopsis "Rust encoder and decoder of TOML-formatted files and streams")
|
||||
(description
|
||||
"This package provides a native Rust encoder and decoder of TOML-formatted
|
||||
files and streams. Provides implementations of the standard
|
||||
Serialize/Deserialize traits for TOML data to facilitate deserializing and
|
||||
serializing Rust structures.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-unicode-width-0.1
|
||||
(package
|
||||
(name "rust-unicode-width")
|
||||
(version "0.1.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "unicode-width" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"082f9hv1r3gcd1xl33whjhrm18p0w9i77zhhhkiccb5r47adn1vh"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/unicode-rs/unicode-width")
|
||||
(synopsis "Determine displayed width according to Unicode rules")
|
||||
(description "This crate allows you to determine displayed width of
|
||||
@code{char} and @code{str} types according to Unicode Standard Annex #11 rules.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-unicode-xid-0.2
|
||||
(package
|
||||
(name "rust-unicode-xid")
|
||||
(version "0.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "unicode-xid" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0z09fn515xm7zyr0mmdyxa9mx2f7azcpv74pqmg611iralwpcvl2"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/unicode-rs/unicode-xid")
|
||||
(synopsis "Determine Unicode XID related properties")
|
||||
(description "Determine whether characters have the XID_Start
|
||||
or XID_Continue properties according to Unicode Standard Annex #31.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0 license:expat))))
|
||||
|
||||
(define rust-vec-map-0.8
|
||||
(package
|
||||
(name "rust-vec-map")
|
||||
(version "0.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "vec_map" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"06n8hw4hlbcz328a3gbpvmy0ma46vg1lc0r5wf55900szf3qdiq5"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/contain-rs/vec-map")
|
||||
(synopsis "Simple map based on a vector for small integer keys")
|
||||
(description
|
||||
"This package provides a simple map based on a vector for small integer keys.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-winapi-0.3
|
||||
(package
|
||||
(name "rust-winapi")
|
||||
(version "0.3.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "winapi" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ii9j9lzrhwri0902652awifzx9fpayimbp6hfhhc296xcg0k4w0"))))
|
||||
(build-system cargo-build-system)
|
||||
;; This package depends unconditionally on these two crates.
|
||||
(arguments
|
||||
`(#:cargo-inputs
|
||||
(("winapi-i686-pc-windows-gnu" ,rust-winapi-i686-pc-windows-gnu-0.4)
|
||||
("winapi-x86-64-pc-windows-gnu" ,rust-winapi-x86-64-pc-windows-gnu-0.4))))
|
||||
(home-page "https://github.com/retep998/winapi-rs")
|
||||
(synopsis "Raw FFI bindings for all of Windows API")
|
||||
(description
|
||||
"This package contains raw FFI bindings for all of Windows API.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define-public rust-winapi-i686-pc-windows-gnu-0.4
|
||||
(package
|
||||
(name "rust-winapi-i686-pc-windows-gnu")
|
||||
(version "0.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "winapi-i686-pc-windows-gnu" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"1dmpa6mvcvzz16zg6d5vrfy4bxgg541wxrcip7cnshi06v38ffxc"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/retep998/winapi-rs")
|
||||
(synopsis "Import libraries for the i686-pc-windows-gnu target")
|
||||
(description "This crate provides import libraries for the
|
||||
i686-pc-windows-gnu target. Please don't use this crate directly, depend on
|
||||
@code{winapi} instead.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
||||
(define rust-winapi-x86-64-pc-windows-gnu-0.4
|
||||
(package
|
||||
(name "rust-winapi-x86-64-pc-windows-gnu")
|
||||
(version "0.4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "winapi-x86_64-pc-windows-gnu" version))
|
||||
(file-name (string-append name "-" version ".crate"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gqq64czqb64kskjryj8isp62m2sgvx25yyj3kpc2myh85w24bki"))))
|
||||
(build-system cargo-build-system)
|
||||
(home-page "https://github.com/retep998/winapi-rs")
|
||||
(synopsis "Import libraries for the x86_64-pc-windows-gnu target")
|
||||
(description "This package provides import libraries for the
|
||||
x86_64-pc-windows-gnu target. Please don't use this crate directly, depend on
|
||||
@code{winapi} instead.")
|
||||
(properties '((hidden? . #t)))
|
||||
(license (list license:asl2.0
|
||||
license:expat))))
|
||||
|
|
|
@ -499,6 +499,43 @@ (define-public libu2f-server
|
|||
verifying the cryptographic operations.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public pam-u2f
|
||||
(package
|
||||
(name "pam-u2f")
|
||||
(version "1.0.8")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri
|
||||
(git-reference
|
||||
(url "https://github.com/Yubico/pam-u2f.git")
|
||||
(commit (string-append "pam_u2f-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"04d9davyi33gqbvga1rvh9fijp6f16mx2xmnn4n61rnhcn2jac98"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--with-pam-dir="
|
||||
(assoc-ref %outputs "out") "/lib/security"))))
|
||||
(inputs
|
||||
`(("libu2f-host" ,libu2f-host)
|
||||
("libu2f-server" ,libu2f-server)
|
||||
("linux-pam" ,linux-pam)))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("asciidoc" ,asciidoc)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://developers.yubico.com/pam-u2f/")
|
||||
(synopsis "PAM module for U2F authentication")
|
||||
(description
|
||||
"This package provides a module implementing PAM over U2F, providing an
|
||||
easy way to integrate the YubiKey (or other U2F compliant authenticators) into
|
||||
your existing infrastructure.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public python-fido2
|
||||
(package
|
||||
(name "python-fido2")
|
||||
|
|
|
@ -53,14 +53,15 @@ (define-public cereal
|
|||
(package
|
||||
(name "cereal")
|
||||
(version "1.2.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/USCiLab/cereal/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0kj32h3j2128anig0g9gzw82kfyd5xqfkwq6vdyv900jx8i1qckx"))))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/USCiLab/cereal.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1vxkrsnxkiblzi1z61vfix167c184fy868sgwj2dxxgbgjcq2nrh"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(;; The only included tests are portability tests requiring
|
||||
|
|
|
@ -74,33 +74,18 @@ (define-public syncthing
|
|||
("go-github-com-syncthing-notify" ,go-github-com-syncthing-notify)
|
||||
("go-github-com-syndtr-goleveldb" ,go-github-com-syndtr-goleveldb)
|
||||
("go-github-com-thejerf-suture" ,go-github-com-thejerf-suture)
|
||||
("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate)
|
||||
("go-golang-org-x-time" ,go-golang-org-x-time)
|
||||
("go-gopkg.in-ldap.v2" ,go-gopkg.in-ldap.v2)
|
||||
("go-github-com-gogo-protobuf" ,go-github-com-gogo-protobuf)
|
||||
("go-github-com-gogo-protobuf-gogoproto"
|
||||
,go-github-com-gogo-protobuf-gogoproto)
|
||||
("go-github-com-gogo-protobuf-protoc-gen-gogo"
|
||||
,go-github-com-gogo-protobuf-protoc-gen-gogo)
|
||||
("go-github-com-prometheus-client-golang-prometheus"
|
||||
,go-github-com-prometheus-client-golang-prometheus)
|
||||
("go-github-com-shirou-gopsutil" ,go-github-com-shirou-gopsutil)
|
||||
("go-golang-org-x-net-bpf" ,go-golang-org-x-net-bpf)
|
||||
("go-golang-org-x-net-internal-iana" ,go-golang-org-x-net-internal-iana)
|
||||
("go-golang-org-x-net-internal-socket"
|
||||
,go-golang-org-x-net-internal-socket)
|
||||
("go-golang-org-x-net-internal-socks"
|
||||
,go-golang-org-x-net-internal-socks)
|
||||
("go-golang-org-x-net-ipv4" ,go-golang-org-x-net-ipv4)
|
||||
("go-golang-org-x-net-ipv6" ,go-golang-org-x-net-ipv6)
|
||||
("go-golang-org-x-net-proxy" ,go-golang-org-x-net-proxy)
|
||||
("go-golang-org-x-text-unicode-norm" ,go-golang-org-x-text-unicode-norm)
|
||||
("go-golang-org-x-text-transform" ,go-golang-org-x-text-transform)
|
||||
("go-github-com-prometheus-client-golang"
|
||||
,go-github-com-prometheus-client-golang)
|
||||
("go-golang-org-x-net" ,go-golang-org-x-net)
|
||||
("go-golang-org-x-text" ,go-golang-org-x-text)
|
||||
("go-github-com-audriusbutkevicius-recli"
|
||||
,go-github-com-audriusbutkevicius-recli)
|
||||
("go-github-com-urfave-cli" ,go-github-com-urfave-cli)
|
||||
("go-github-com-vitrun-qart-qr" ,go-github-com-vitrun-qart-qr)
|
||||
("go-github-com-vitrun-qart-coding" ,go-github-com-vitrun-qart-coding)
|
||||
("go-github-com-vitrun-qart-gf256" ,go-github-com-vitrun-qart-gf256)
|
||||
("go-github-com-vitrun-qart" ,go-github-com-vitrun-qart)
|
||||
("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty)
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
|
||||
("go-github-com-flynn-archive-go-shlex"
|
||||
|
@ -461,7 +446,7 @@ (define-public go-github-com-oschwald-geoip2-golang
|
|||
(propagated-inputs
|
||||
`(("go-github-com-oschwald-maxminddb-golang"
|
||||
,go-github-com-oschwald-maxminddb-golang)
|
||||
("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(arguments
|
||||
`(#:import-path "github.com/oschwald/geoip2-golang"
|
||||
#:tests? #f)) ; Requires some unpackaged software and test data
|
||||
|
@ -488,7 +473,7 @@ (define-public go-github-com-oschwald-maxminddb-golang
|
|||
"1i6d935f3cv9djpjvc2ibh8aps8jqvg454b9pkwg2h98al759ggk"))))
|
||||
(build-system go-build-system)
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(arguments
|
||||
`(#:import-path "github.com/oschwald/maxminddb-golang"
|
||||
#:tests? #f)) ; Requires some unpackaged software and test data
|
||||
|
@ -629,11 +614,11 @@ (define-public go-github-com-thejerf-suture
|
|||
(home-page "https://github.com/thejerf/suture")
|
||||
(license expat)))
|
||||
|
||||
(define-public go-github-com-vitrun-qart-coding
|
||||
(define-public go-github-com-vitrun-qart
|
||||
(let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "go-github-com-vitrun-qart-coding")
|
||||
(name "go-github-com-vitrun-qart")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -647,77 +632,16 @@ (define-public go-github-com-vitrun-qart-coding
|
|||
"1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/vitrun/qart/coding"
|
||||
#:unpack-path "github.com/vitrun/qart"))
|
||||
(synopsis "Low-level QR coding library")
|
||||
`(#:import-path "github.com/vitrun/qart"))
|
||||
(synopsis "Create QR codes with an embedded image")
|
||||
(description "This package provides a library for embedding
|
||||
human-meaningful graphics in QR codes. However, instead of scribbling on
|
||||
redundant pieces and relying on error correction to preserve the meaning,
|
||||
@code{qart} engineers the encoded values to create the picture in a code with no
|
||||
inherent errors. This @code{qart} component, @code{coding}, implements
|
||||
low-level QR coding details.")
|
||||
(home-page "https://github.com/vitrun/qart/")
|
||||
(license bsd-3))))
|
||||
|
||||
(define-public go-github-com-vitrun-qart-gf256
|
||||
(let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "go-github-com-vitrun-qart-gf256")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/vitrun/qart")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go-github-com-vitrun-qart-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/vitrun/qart/gf256"
|
||||
#:unpack-path "github.com/vitrun/qart"))
|
||||
(synopsis "Qart library for Galois Field GF(256) math")
|
||||
(description "This package, a component of @code{qart}, provides @code{gf256},
|
||||
implements arithmetic over the Galois Field GF(256).")
|
||||
inherent errors.")
|
||||
(home-page "https://github.com/vitrun/qart")
|
||||
(license bsd-3))))
|
||||
|
||||
(define-public go-github-com-vitrun-qart-qr
|
||||
(let ((commit "bf64b92db6b05651d6c25a3dabf2d543b360c0aa")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "go-github-com-vitrun-qart-qr")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/vitrun/qart")
|
||||
(commit commit)))
|
||||
(file-name (string-append "go-github-com-vitrun-qart-"
|
||||
version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xk7qki703xmay9ghi3kq2bjf1iw9dz8wik55739d6i7sn77vvkc"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/vitrun/qart/qr"
|
||||
#:unpack-path "github.com/vitrun/qart"))
|
||||
(synopsis "Qart component for generating QR codes")
|
||||
(description "This package provides a library for embedding
|
||||
human-meaningful graphics in QR codes. However, instead of scribbling on
|
||||
redundant pieces and relying on error correction to preserve the meaning,
|
||||
@code{qart} engineers the encoded values to create the picture in a code with no
|
||||
inherent errors. This @code{qart} component, @code{qr}, provides QR code
|
||||
generation.")
|
||||
(home-page "https://github.com/vitrun/qart")
|
||||
(license bsd-3))))
|
||||
|
||||
;; XXX Syncthing actually imports 'github.com/chmduquesne/rollinghash/adler32'.
|
||||
;; Normally we'd package this module indpendenctly but the adler32 module itself
|
||||
;; imports 'github.com/chmduquesne/rollinghash/', so this is the easy way out.
|
||||
(define-public go-github-com-chmduquesne-rollinghash
|
||||
(let ((commit "a60f8e7142b536ea61bb5d84014171189eeaaa81")
|
||||
(revision "0"))
|
||||
|
@ -811,7 +735,7 @@ (define-public go-github-com-syncthing-notify
|
|||
(arguments
|
||||
'(#:import-path "github.com/syncthing/notify"))
|
||||
(propagated-inputs
|
||||
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
|
||||
`(("go-golang-org-x-sys" ,go-golang-org-x-sys)))
|
||||
(synopsis "File system event notification library")
|
||||
(description "This package provides @code{notify}, a file system event
|
||||
notification library in Go.")
|
||||
|
@ -869,11 +793,11 @@ (define-public go-github-com-golang-protobuf-proto
|
|||
(home-page "https://github.com/golang/protobuf")
|
||||
(license bsd-3)))
|
||||
|
||||
(define-public go-github-com-prometheus-client-model-go
|
||||
(define-public go-github-com-prometheus-client-model
|
||||
(let ((commit "fd36f4220a901265f90734c3183c5f0c91daa0b8")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "go-github-com-prometheus-client-model-go")
|
||||
(name "go-github-com-prometheus-client-model")
|
||||
(version (git-version "0.0.2" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -886,8 +810,12 @@ (define-public go-github-com-prometheus-client-model-go
|
|||
"1bs5d72k361llflgl94c22n0w53j30rsfh84smgk8mbjbcmjsaa5"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "github.com/prometheus/client_model/go"
|
||||
#:unpack-path "github.com/prometheus/client_model"))
|
||||
'(#:import-path "github.com/prometheus/client_model"
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Source-only package
|
||||
(delete 'build))))
|
||||
(propagated-inputs
|
||||
`(("go-github-com-golang-protobuf-proto"
|
||||
,go-github-com-golang-protobuf-proto)))
|
||||
|
@ -927,9 +855,9 @@ (define-public go-github-com-matttproud-golang-protobuf-extensions-pbutil
|
|||
(home-page "https://github.com/matttproud/golang_protobuf_extensions")
|
||||
(license asl2.0))))
|
||||
|
||||
(define-public go-github-com-prometheus-common-expfmt
|
||||
(define-public go-github-com-prometheus-common
|
||||
(package
|
||||
(name "go-github-com-prometheus-common-expfmt")
|
||||
(name "go-github-com-prometheus-common")
|
||||
(version "0.4.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -942,8 +870,8 @@ (define-public go-github-com-prometheus-common-expfmt
|
|||
"0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "github.com/prometheus/common/expfmt"
|
||||
#:unpack-path "github.com/prometheus/common"
|
||||
'(#:import-path "github.com/prometheus/common"
|
||||
#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
|
||||
|
@ -955,49 +883,21 @@ (define-public go-github-com-prometheus-common-expfmt
|
|||
"/src/github.com/prometheus/common/expfmt/testdata/")
|
||||
".*\\.gz$"))
|
||||
#t))
|
||||
(replace 'check
|
||||
;; Tests don't pass "vet" on go-1.11. See
|
||||
;; https://github.com/syncthing/syncthing/issues/5311.
|
||||
(lambda* (#:key import-path #:allow-other-keys)
|
||||
(invoke "go" "test"
|
||||
"-vet=off"
|
||||
import-path))))))
|
||||
;; Source-only package
|
||||
(delete 'build))))
|
||||
(propagated-inputs
|
||||
`(("go-github-com-golang-protobuf-proto"
|
||||
,go-github-com-golang-protobuf-proto)
|
||||
("go-github-com-matttproud-golang-protobuf-extensions-pbutil"
|
||||
,go-github-com-matttproud-golang-protobuf-extensions-pbutil)
|
||||
("go-github-com-prometheus-client-model-go"
|
||||
,go-github-com-prometheus-client-model-go)))
|
||||
("go-github-com-prometheus-client-model"
|
||||
,go-github-com-prometheus-client-model)))
|
||||
(synopsis "Prometheus metrics")
|
||||
(description "This package provides tools for reading and writing
|
||||
Prometheus metrics.")
|
||||
(home-page "https://github.com/prometheus/common")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public go-github-com-prometheus-common-model
|
||||
(package
|
||||
(name "go-github-com-prometheus-common-model")
|
||||
(version "0.4.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/prometheus/common.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "github.com/prometheus/common/model"
|
||||
#:unpack-path "github.com/prometheus/common"))
|
||||
(synopsis "Prometheus component")
|
||||
(description "This package provides a component of the Go Prometheus
|
||||
implementation.")
|
||||
(home-page "https://github.com/prometheus/common")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public go-github-com-prometheus-procfs
|
||||
(package
|
||||
(name "go-github-com-prometheus-procfs")
|
||||
|
@ -1023,9 +923,9 @@ (define-public go-github-com-prometheus-procfs
|
|||
(home-page "https://github.com/prometheus/procfs")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public go-github-com-client-golang-prometheus-promhttp
|
||||
(define-public go-github-com-prometheus-client-golang
|
||||
(package
|
||||
(name "go-github-com-client-golang-prometheus-promhttp")
|
||||
(name "go-github-com-prometheus-client-golang")
|
||||
(version "0.9.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
|
@ -1038,22 +938,21 @@ (define-public go-github-com-client-golang-prometheus-promhttp
|
|||
"0s134fj4i7k6pxdmxwkdi7amb1882yq33spv15hg3pkpbd3h311p"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; The tests require internet access
|
||||
#:import-path "github.com/prometheus/client_golang/prometheus/promhttp"
|
||||
#:unpack-path "github.com/prometheus/client_golang"))
|
||||
'(#:tests? #f
|
||||
#:import-path "github.com/prometheus/client_golang"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Source-only package
|
||||
(delete 'build))))
|
||||
(propagated-inputs
|
||||
`(("go-github-com-beorn7-perks-quantile"
|
||||
,go-github-com-beorn7-perks-quantile)
|
||||
("go-github-com-golang-protobuf-proto"
|
||||
,go-github-com-golang-protobuf-proto)
|
||||
("go-github-com-prometheus-common-model"
|
||||
,go-github-com-prometheus-common-model)
|
||||
("go-github-com-prometheus-client-model-go"
|
||||
,go-github-com-prometheus-client-model-go)
|
||||
("go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg"
|
||||
,go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg)
|
||||
("go-github-com-prometheus-common-expfmt"
|
||||
,go-github-com-prometheus-common-expfmt)
|
||||
("go-github-com-prometheus-client-model"
|
||||
,go-github-com-prometheus-client-model)
|
||||
("go-github-com-prometheus-common"
|
||||
,go-github-com-prometheus-common)
|
||||
("go-github-com-prometheus-procfs" ,go-github-com-prometheus-procfs)))
|
||||
(synopsis "HTTP server and client tools for Prometheus")
|
||||
(description "This package @code{promhttp} provides HTTP client and
|
||||
|
@ -1061,43 +960,6 @@ (define-public go-github-com-client-golang-prometheus-promhttp
|
|||
(home-page "https://github.com/prometheus/client_golang")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public go-github-com-prometheus-client-golang-prometheus
|
||||
(package
|
||||
(name "go-github-com-prometheus-client-golang-prometheus")
|
||||
(version "0.9.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/prometheus/client_golang.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0s134fj4i7k6pxdmxwkdi7amb1882yq33spv15hg3pkpbd3h311p"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "github.com/prometheus/client_golang/prometheus"
|
||||
#:unpack-path "github.com/prometheus/client_golang"
|
||||
#:tests? #f)) ; 'TestHandler' test fails in this non-critical dependency
|
||||
(propagated-inputs
|
||||
`(("go-github-com-beorn7-perks-quantile"
|
||||
,go-github-com-beorn7-perks-quantile)
|
||||
("go-github-com-prometheus-common-model" ,go-github-com-prometheus-common-model)
|
||||
("go-github-com-prometheus-client-model-go"
|
||||
,go-github-com-prometheus-client-model-go)
|
||||
("go-github-com-prometheus-common-expfmt"
|
||||
,go-github-com-prometheus-common-expfmt)
|
||||
("go-github-com-prometheus-procfs" ,go-github-com-prometheus-procfs)
|
||||
("go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg"
|
||||
,go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg)))
|
||||
(synopsis "Prometheus instrumentation library for Go applications")
|
||||
(description "This package provides the Go client library for the
|
||||
Prometheus monitoring and alerting system. It has two separate parts, one for
|
||||
instrumenting application code, and one for creating clients that talk to the
|
||||
Prometheus HTTP API.")
|
||||
(home-page "https://github.com/prometheus/client_golang")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public go-gopkg.in-asn1-ber.v1
|
||||
(package
|
||||
(name "go-gopkg.in-asn1-ber.v1")
|
||||
|
@ -1114,7 +976,7 @@ (define-public go-gopkg.in-asn1-ber.v1
|
|||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "gopkg.in/asn1-ber.v1"
|
||||
;; Tests don't pass "vet" on go-1.11. See
|
||||
;; Tests don't pass "vet" on Go since 1.11. See
|
||||
;; https://github.com/go-asn1-ber/asn1-ber/issues/20.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
|
@ -1178,28 +1040,6 @@ (define-public go-github-com-flynn-archive-go-shlex
|
|||
(home-page "https://github.com/flynn-archive/go-shlex")
|
||||
(license asl2.0))))
|
||||
|
||||
(define-public go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg
|
||||
(package
|
||||
(name "go-github-com-prometheus-common-internal-bitbucket-org-ww-goautoneg")
|
||||
(version "0.4.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/prometheus/common.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0sf4sjdckblz1hqdfvripk3zyp8xq89w7q75kbsyg4c078af896s"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "github.com/prometheus/common/internal/bitbucket.org/ww/goautoneg"
|
||||
#:unpack-path "github.com/prometheus/common"))
|
||||
(synopsis "Internal Prometheus component")
|
||||
(description "This package is an internal component of Prometheus.")
|
||||
(home-page "https://github.com/prometheus/common")
|
||||
(license asl2.0)))
|
||||
|
||||
(define-public go-github-com-audriusbutkevicius-pfilter
|
||||
(let ((commit "c55ef6137fc6f075801eac099cc2687ede0f101d")
|
||||
(revision "3"))
|
||||
|
|
|
@ -721,42 +721,6 @@ (define-public go-github.com-nsf-termbox-go
|
|||
(home-page "https://github.com/nsf/termbox-go")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public go-golang.org-x-crypto-ssh-terminal
|
||||
(let ((commit "c78caca803c95773f48a844d3dcab04b9bc4d6dd")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "go-golang.org-x-crypto-ssh-terminal")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://go.googlesource.com/crypto")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0vxlfxr9y681yn2cfh6dbqmq35vvq4f45ay0mm31ffkny9cms0y4"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "golang.org/x/crypto/ssh/terminal"
|
||||
#:unpack-path "golang.org/x/crypto"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'reset-gzip-timestamps 'make-gzip-archive-writable
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(map (lambda (file)
|
||||
(make-file-writable file))
|
||||
(find-files
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/src/golang.org/x/crypto/ed25519/testdata")
|
||||
".*\\.gz$"))
|
||||
#t)))))
|
||||
(synopsis "Support functions for dealing with terminals in Go")
|
||||
(description "@code{terminal} provides support functions for dealing
|
||||
with terminals in Go.")
|
||||
(home-page "https://go.googlesource.com/crypto/")
|
||||
(license license:bsd-3))))
|
||||
|
||||
(define-public go-github-com-junegunn-fzf
|
||||
(package
|
||||
(name "go-github-com-junegunn-fzf")
|
||||
|
@ -779,7 +743,7 @@ (define-public go-github-com-junegunn-fzf
|
|||
("go-github-com-mattn-go-shellwords" ,go-github-com-mattn-go-shellwords)
|
||||
("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty)
|
||||
("go-github-com-gdamore-tcell" ,go-github-com-gdamore-tcell)
|
||||
("go-golang-org-x-crypto-ssh-terminal" ,go-golang-org-x-crypto-ssh-terminal)))
|
||||
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)))
|
||||
(home-page "https://github.com/junegunn/fzf")
|
||||
(synopsis "Command-line fuzzy-finder")
|
||||
(description "This package provides an interactive command-line filter
|
||||
|
@ -805,8 +769,8 @@ (define-public go-github.com-howeyc-gopass
|
|||
(arguments
|
||||
'(#:import-path "github.com/howeyc/gopass"))
|
||||
(propagated-inputs
|
||||
`(("go-golang.org-x-crypto-ssh-terminal"
|
||||
,go-golang.org-x-crypto-ssh-terminal)))
|
||||
`(("go-golang-org-x-crypto"
|
||||
,go-golang-org-x-crypto)))
|
||||
(synopsis "Retrieve password from a terminal or piped input in Go")
|
||||
(description
|
||||
"@code{gopass} is a Go package for retrieving a password from user
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -17,7 +18,10 @@
|
|||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages toys)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
|
@ -64,3 +68,91 @@ (define-public sl
|
|||
typing @command{sl} instead of @command{ls}.")
|
||||
(license (license:non-copyleft "file://LICENSE"
|
||||
"See LICENSE in the distribution."))))
|
||||
|
||||
(define-public filters
|
||||
(let ((version "2.55")
|
||||
(commit "c5c291916b52ed9e6418448a8eee30475fb9adcf"))
|
||||
(package
|
||||
(name "filters")
|
||||
(version "2.55")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.joeyh.name/filters")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1gaigpda1w9wxfh8an3sam1hpacc1bhxl696w4yj0vzhc6izqvxs"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; kenny is under nonfree Artistic License (Perl) 1.0.
|
||||
(delete-file "kenny")
|
||||
(substitute* "Makefile"
|
||||
(("kenny")
|
||||
""))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags
|
||||
(list "CC=gcc" (string-append "DESTDIR=" %output))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-after 'unpack 'fix-install-directories
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("/usr/games")
|
||||
"/bin/")
|
||||
(("/usr/share/")
|
||||
"/share/"))
|
||||
#t)))
|
||||
#:tests? #f)) ; no test suite
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
("flex" ,flex)))
|
||||
(inputs
|
||||
`(("perl" ,perl)))
|
||||
(home-page "https://joeyh.name/code/filters/")
|
||||
(synopsis "Various amusing text filters")
|
||||
(description
|
||||
"The filters collection harks back to the late 1980s, when various text
|
||||
filters were written to munge written language in amusing ways. The earliest
|
||||
and best known were legends such as the Swedish Chef filter and B1FF.
|
||||
|
||||
This package contains the following filter commands:
|
||||
@enumerate
|
||||
@item b1ff: a satire of a stereotypical Usenet newbie
|
||||
@item censor: comply with the @acronym{CDA, Communications Decency Act}
|
||||
@item chef: convert English to Mock Swedish
|
||||
@item cockney: Cockney English
|
||||
@item elee: k3wl hacker slang
|
||||
@item fanboy: a stereotypical fan (supports custom fandoms)
|
||||
@item fudd: Elmer Fudd
|
||||
@item jethro: hillbilly text filter
|
||||
@item jibberish: a random selection of these filters
|
||||
@item jive: Jive English
|
||||
@item ken: turn English into Cockney
|
||||
@item kraut: a bad German accent
|
||||
@item ky00te: a very cute accent
|
||||
@item LOLCAT: as seen in Internet GIFs everywhere
|
||||
@item nethackify: wiped-out text as found in nethack
|
||||
@item newspeak: à la 1984
|
||||
@item nyc: Brooklyn English
|
||||
@item pirate: talk like a pirate
|
||||
@item rasterman: straight from the keyboard of Carsten Haitzler
|
||||
@item scottish: fake Scottish (Dwarven) accent
|
||||
@item scramble: scramble the \"inner\" letters of each word
|
||||
@item spammer: turn honest text into something liable to be flagged as spam
|
||||
@item studly: studly caps.
|
||||
@item uniencode: use glorious Unicode to the fullest possible extent
|
||||
@item upside-down: flip the text upside down
|
||||
@end enumerate
|
||||
|
||||
The GNU project hosts a similar collection of filters, the GNU talkfilters.")
|
||||
(license ; see debian/copyright
|
||||
(list license:gpl2+ ; most of the filters
|
||||
license:gpl2 ; rasterman, ky00te.dir/* nethackify, pirate
|
||||
license:gpl3+ ; scramble, scottish
|
||||
license:public-domain ; jethro, kraut, ken, studly
|
||||
license:gpl1+ ; cockney, jive, nyc only say "gpl"
|
||||
license:expat))))) ; newspeak
|
||||
|
|
|
@ -508,7 +508,7 @@ (define-public mkvtoolnix
|
|||
(define-public x265
|
||||
(package
|
||||
(name "x265")
|
||||
(version "3.1.2")
|
||||
(version "3.2")
|
||||
(outputs '("out" "static"))
|
||||
(source
|
||||
(origin
|
||||
|
@ -518,8 +518,7 @@ (define-public x265
|
|||
(string-append "https://download.videolan.org/videolan/x265/"
|
||||
"x265_" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1ajr59gjj47gnczfb2qhmzclj746pdiq9a1d81b0mq22k8f5yy3g"))
|
||||
(base32 "0fqkhfhr22gzavxn60cpnj3agwdf5afivszxf3haj5k1sny7jk9n"))
|
||||
(patches (search-patches "x265-arm-flags.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
|
@ -1342,7 +1341,7 @@ (define-public mplayer
|
|||
(define-public mpv
|
||||
(package
|
||||
(name "mpv")
|
||||
(version "0.29.1")
|
||||
(version "0.30.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -1351,7 +1350,7 @@ (define-public mpv
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"138921kx8g6qprim558xin09xximjhsj9ss8b71ifg2m6kclym8m"))))
|
||||
"17mxjgcfljlv6h0ik3332xsqbs0ybvk6dkwflyl0cjh15vl1iv6f"))))
|
||||
(build-system waf-build-system)
|
||||
(native-inputs
|
||||
`(("perl" ,perl) ; for zsh completion file
|
||||
|
@ -1417,9 +1416,7 @@ (define-public mpv
|
|||
#t)))
|
||||
#:configure-flags (list "--enable-libmpv-shared"
|
||||
"--enable-cdda"
|
||||
"--enable-dvdread"
|
||||
"--enable-dvdnav"
|
||||
"--enable-zsh-comp"
|
||||
"--disable-build-date")
|
||||
;; No check function defined.
|
||||
#:tests? #f))
|
||||
|
@ -1494,7 +1491,7 @@ (define-public libvpx-1.7
|
|||
(define-public youtube-dl
|
||||
(package
|
||||
(name "youtube-dl")
|
||||
(version "2019.10.22")
|
||||
(version "2019.10.29")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/ytdl-org/youtube-dl/"
|
||||
|
@ -1502,7 +1499,7 @@ (define-public youtube-dl
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"06wg6wpyq0fawjxjrhd7zasfjr9b6w9wsk2amiqdl712zqlq2rwb"))))
|
||||
"1lq6ycjbx07831s24yx42q6m6svas4mf02vbszw0965dbbzs7vp4"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; The problem here is that the directory for the man page and completion
|
||||
|
@ -1928,7 +1925,7 @@ (define-public srt2vtt
|
|||
(define-public avidemux
|
||||
(package
|
||||
(name "avidemux")
|
||||
(version "2.7.3")
|
||||
(version "2.7.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -1936,7 +1933,7 @@ (define-public avidemux
|
|||
"avidemux_" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"17x2mnnr5h8pp764p55l1xcn2ljnzhbj8cykajlllvk4rc4qwxld"))
|
||||
"1acdb3m37vdzzbm8mwyibcn8msi7birb5v30qfi7jli5r00src3x"))
|
||||
(patches (search-patches "avidemux-install-to-lib.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
|
@ -1969,7 +1966,7 @@ (define-public avidemux
|
|||
#:phases
|
||||
;; Make sure files inside the included ffmpeg tarball are
|
||||
;; patch-shebanged.
|
||||
(let ((ffmpeg "ffmpeg-4.1.1"))
|
||||
(let ((ffmpeg "ffmpeg-4.1.4"))
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'patch-source-shebangs 'unpack-ffmpeg
|
||||
(lambda _
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 HiPhish <hiphish@posteo.de>
|
||||
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
|
||||
;;;
|
||||
|
@ -609,7 +609,7 @@ (define-public vim-airline-themes
|
|||
(define-public vim-syntastic
|
||||
(package
|
||||
(name "vim-syntastic")
|
||||
(version "3.9.0")
|
||||
(version "3.10.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -618,8 +618,7 @@ (define-public vim-syntastic
|
|||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"121a1mxgfng2y5zmivyyk02mca8pyw72crivf4f1q9nhn0barf57"))))
|
||||
(base32 "0j91f72jaz1s6aw1hpjiz30vk2ds2aqd9gisk91grsldy6nz6hhz"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
|
|
|
@ -2860,7 +2860,7 @@ (define-public perl-http-cookiejar
|
|||
(define-public perl-http-cookies
|
||||
(package
|
||||
(name "perl-http-cookies")
|
||||
(version "6.04")
|
||||
(version "6.05")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -2868,7 +2868,7 @@ (define-public perl-http-cookies
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1m0kxcirbvbkrm2c59p1bkbvzlcdymg8fdpa7wlxijlx0xwz1iqc"))))
|
||||
"0pbgns2gwgvgg9rglah7ryw0jj13aykyf38lnhm3rwzw3c2cvqaq"))))
|
||||
(build-system perl-build-system)
|
||||
(propagated-inputs
|
||||
`(("perl-http-message" ,perl-http-message)))
|
||||
|
@ -3204,7 +3204,7 @@ (define-public perl-io-socket-ssl
|
|||
(define-public perl-libwww
|
||||
(package
|
||||
(name "perl-libwww")
|
||||
(version "6.39")
|
||||
(version "6.41")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -3212,7 +3212,7 @@ (define-public perl-libwww
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mblfwz3g7vmyykmb0mcbmmad77rwx55fwaca9ymv9wajd3pg3cs"))))
|
||||
"0jh67946fwd33ap3xy8df0421d2mr6lmhalhkf1p7dx2b7fil9wf"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-test-fatal" ,perl-test-fatal)
|
||||
|
@ -6806,7 +6806,7 @@ (define-public poussetaches
|
|||
(build-system go-build-system)
|
||||
(propagated-inputs
|
||||
`(("go-github-com-robfig-cron" ,go-github-com-robfig-cron)
|
||||
("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate)))
|
||||
("go-golang-org-x-time" ,go-golang-org-x-time)))
|
||||
(arguments
|
||||
`(#:import-path "github.com/tsileo/poussetaches"))
|
||||
(home-page "https://github.com/tsileo/poussetaches")
|
||||
|
|
|
@ -691,14 +691,14 @@ (define-public xmobar
|
|||
(define-public ghc-xmonad-contrib
|
||||
(package
|
||||
(name "ghc-xmonad-contrib")
|
||||
(version "0.15")
|
||||
(version "0.16")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://hackage/package/xmonad-contrib/"
|
||||
"xmonad-contrib-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0r9yzgy67j4mi3dyxx714f0ssk5qzca5kh4zw0fhiz1pf008cxms"))))
|
||||
(base32 "1pddgkvnbww28wykncc7j0yb0lv15bk7xnnhdcbrwkxzw66w6wmd"))))
|
||||
(build-system haskell-build-system)
|
||||
(propagated-inputs
|
||||
`(("ghc-old-time" ,ghc-old-time)
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
;;; Copyright © 2018 Nam Nguyen <namn@berkeley.edu>
|
||||
;;; Copyright © 2019 Wiktor Żelazny <wzelazny@vurv.cz>
|
||||
;;; Copyright © 2019 Kyle Andrews <kyle.c.andrews@gmail.com>
|
||||
;;; Copyright © 2019 Josh Holland <josh@inv.alid.pw>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -190,6 +191,43 @@ (define-public autorandr
|
|||
used to further tweak the behaviour of the different profiles.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public bemenu
|
||||
(package
|
||||
(name "bemenu")
|
||||
(version "0.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Cloudef/bemenu.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0piax49az5kp96r1g6dcgj87fi6p4jl286wlkxsdvljzpkn8q6gv"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("-DBEMENU_WAYLAND_RENDERER=ON")))
|
||||
(inputs
|
||||
`(("cairo" ,cairo)
|
||||
("libx11" ,libx11)
|
||||
("libxkbcomon" ,libxkbcommon)
|
||||
("libxinerama" ,libxinerama)
|
||||
("ncurses" ,ncurses)
|
||||
("pango" ,pango)
|
||||
("wayland" ,wayland)
|
||||
("wayland-protocols" ,wayland-protocols)))
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://github.com/Cloudef/bemenu")
|
||||
(synopsis "Dynamic menu library and client program inspired by dmenu")
|
||||
(description
|
||||
"bemenu is a dynamic menu which allows the user to flexibly select from a
|
||||
list of options (usually programs to launch). It renders the menu graphically
|
||||
with X11 or Wayland, or in a text terminal with ncurses.")
|
||||
(license (list license:gpl3+ ; client program[s] and other sources
|
||||
license:lgpl3+)))) ; library and bindings
|
||||
|
||||
(define-public xclip
|
||||
(package
|
||||
(name "xclip")
|
||||
|
@ -997,7 +1035,7 @@ (define-public libwacom
|
|||
(define-public xf86-input-wacom
|
||||
(package
|
||||
(name "xf86-input-wacom")
|
||||
(version "0.36.1")
|
||||
(version "0.38.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1006,8 +1044,7 @@ (define-public xf86-input-wacom
|
|||
"xf86-input-wacom-" version "/"
|
||||
"xf86-input-wacom-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"029y8varbricba2dzhzhy0ndd7lbfif411ca8c3wxzni9qmbj1ij"))))
|
||||
(base32 "0w53hv3g7d5vv328x04wb57sa1lyv2h631c37csp1drfp7ghikd1"))))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--with-sdkdir="
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
|
||||
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -23,7 +24,9 @@ (define-module (gnu services audio)
|
|||
#:use-module (gnu packages mpd)
|
||||
#:use-module (guix records)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (mpd-configuration
|
||||
#:export (mpd-output
|
||||
mpd-output?
|
||||
mpd-configuration
|
||||
mpd-configuration?
|
||||
mpd-service-type))
|
||||
|
||||
|
@ -33,6 +36,25 @@ (define-module (gnu services audio)
|
|||
;;;
|
||||
;;; Code:
|
||||
|
||||
(define-record-type* <mpd-output>
|
||||
mpd-output make-mpd-output
|
||||
mpd-output?
|
||||
(type mpd-output-type
|
||||
(default "pulse"))
|
||||
(name mpd-output-name
|
||||
(default "MPD"))
|
||||
(enabled? mpd-output-enabled?
|
||||
(default #t))
|
||||
(tags? mpd-output-tags?
|
||||
(default #t))
|
||||
(always-on? mpd-output-always-on?
|
||||
(default #f))
|
||||
(mixer-type mpd-output-mixer-type
|
||||
;; valid: hardware, software, null, none
|
||||
(default #f))
|
||||
(extra-options mpd-output-extra-options
|
||||
(default '())))
|
||||
|
||||
(define-record-type* <mpd-configuration>
|
||||
mpd-configuration make-mpd-configuration
|
||||
mpd-configuration?
|
||||
|
@ -51,27 +73,56 @@ (define-record-type* <mpd-configuration>
|
|||
(port mpd-configuration-port
|
||||
(default "6600"))
|
||||
(address mpd-configuration-address
|
||||
(default "any")))
|
||||
(default "any"))
|
||||
(outputs mpd-configuration-outputs
|
||||
(default (list (mpd-output)))))
|
||||
|
||||
(define (mpd-output->string output)
|
||||
"Convert the OUTPUT of type <mpd-output> to a configuration file snippet."
|
||||
(let ((extra (string-join
|
||||
(map (match-lambda
|
||||
((key . value)
|
||||
(format #f " ~a \"~a\""
|
||||
(string-map
|
||||
(lambda (c) (if (char=? c #\-) #\_ c))
|
||||
(symbol->string key))
|
||||
value)))
|
||||
(mpd-output-extra-options output))
|
||||
"\n")))
|
||||
(format #f "\
|
||||
audio_output {
|
||||
type \"~a\"
|
||||
name \"~a\"
|
||||
~:[ enabled \"no\"~%~;~]\
|
||||
~:[ tags \"no\"~%~;~]\
|
||||
~:[~; always_on \"yes\"~%~]\
|
||||
~@[ mixer_type \"~a\"~%~]\
|
||||
~a~%}~%"
|
||||
(mpd-output-type output)
|
||||
(mpd-output-name output)
|
||||
(mpd-output-enabled? output)
|
||||
(mpd-output-tags? output)
|
||||
(mpd-output-always-on? output)
|
||||
(mpd-output-mixer-type output)
|
||||
extra)))
|
||||
|
||||
(define (mpd-config->file config)
|
||||
(apply
|
||||
mixed-text-file "mpd.conf"
|
||||
"audio_output {\n"
|
||||
" type \"pulse\"\n"
|
||||
" name \"MPD\"\n"
|
||||
"}\n"
|
||||
"pid_file \"" (mpd-file-name config "pid") "\"\n"
|
||||
(map (match-lambda
|
||||
((config-name config-val)
|
||||
(string-append config-name " \"" (config-val config) "\"\n")))
|
||||
`(("user" ,mpd-configuration-user)
|
||||
("music_directory" ,mpd-configuration-music-dir)
|
||||
("playlist_directory" ,mpd-configuration-playlist-dir)
|
||||
("db_file" ,mpd-configuration-db-file)
|
||||
("state_file" ,mpd-configuration-state-file)
|
||||
("sticker_file" ,mpd-configuration-sticker-file)
|
||||
("port" ,mpd-configuration-port)
|
||||
("bind_to_address" ,mpd-configuration-address)))))
|
||||
(append (map mpd-output->string
|
||||
(mpd-configuration-outputs config))
|
||||
(map (match-lambda
|
||||
((config-name config-val)
|
||||
(string-append config-name " \"" (config-val config) "\"\n")))
|
||||
`(("user" ,mpd-configuration-user)
|
||||
("music_directory" ,mpd-configuration-music-dir)
|
||||
("playlist_directory" ,mpd-configuration-playlist-dir)
|
||||
("db_file" ,mpd-configuration-db-file)
|
||||
("state_file" ,mpd-configuration-state-file)
|
||||
("sticker_file" ,mpd-configuration-sticker-file)
|
||||
("port" ,mpd-configuration-port)
|
||||
("bind_to_address" ,mpd-configuration-address))))))
|
||||
|
||||
(define (mpd-file-name config file)
|
||||
"Return a path in /var/run/mpd/ that is writable
|
||||
|
|
|
@ -505,7 +505,7 @@ (define lib
|
|||
;; In the "old style", %SELF-BUILD-FILE would simply return a
|
||||
;; derivation that builds modules. We have to infer what the
|
||||
;; dependencies of these modules were.
|
||||
(list guile-json guile-git guile-bytestructures
|
||||
(list guile-json-3 guile-git guile-bytestructures
|
||||
(ssh -> guile-ssh) (tls -> gnutls)))))
|
||||
|
||||
(define (old-style-guix? drv)
|
||||
|
|
|
@ -622,7 +622,7 @@ (define (write-env-var env-var port)
|
|||
(display ")" port))))
|
||||
|
||||
(define derivation->bytevector
|
||||
(mlambda (drv)
|
||||
(lambda (drv)
|
||||
"Return the external representation of DRV as a UTF-8-encoded string."
|
||||
(with-fluids ((%default-port-encoding "UTF-8"))
|
||||
(call-with-values open-bytevector-output-port
|
||||
|
@ -919,7 +919,6 @@ (define (invalidate-derivation-caches!)
|
|||
long-running processes that know what they're doing. Use with care!"
|
||||
;; Typically this is meant to be used by Cuirass and Hydra, which can clear
|
||||
;; caches when they start evaluating packages for another architecture.
|
||||
(invalidate-memoization! derivation->bytevector)
|
||||
(invalidate-memoization! derivation-base16-hash)
|
||||
|
||||
;; FIXME: Comment out to work around <https://bugs.gnu.org/36487>.
|
||||
|
@ -1207,6 +1206,26 @@ (define builder
|
|||
#:guile-for-build guile
|
||||
#:local-build? #t)))
|
||||
|
||||
(define %module-cache
|
||||
;; Map a list of modules to its 'imported+compiled-modules' result.
|
||||
(make-weak-value-hash-table))
|
||||
|
||||
(define* (imported+compiled-modules store modules #:key
|
||||
(system (%current-system))
|
||||
(guile (%guile-for-build)))
|
||||
"Return a pair containing the derivation to import MODULES and that where
|
||||
MODULES are compiled."
|
||||
(define key
|
||||
(list modules (derivation-file-name guile) system))
|
||||
|
||||
(or (hash-ref %module-cache key)
|
||||
(let ((result (cons (%imported-modules store modules
|
||||
#:system system #:guile guile)
|
||||
(%compiled-modules store modules
|
||||
#:system system #:guile guile))))
|
||||
(hash-set! %module-cache key result)
|
||||
result)))
|
||||
|
||||
(define* (build-expression->derivation store name exp ;deprecated
|
||||
#:key
|
||||
(system (%current-system))
|
||||
|
@ -1330,16 +1349,15 @@ (define %build-inputs
|
|||
;; fixed-output.
|
||||
(filter-map source-path inputs)))
|
||||
|
||||
(mod-drv (and (pair? modules)
|
||||
(%imported-modules store modules
|
||||
#:guile guile-drv
|
||||
#:system system)))
|
||||
(mod+go-drv (if (pair? modules)
|
||||
(imported+compiled-modules store modules
|
||||
#:guile guile-drv
|
||||
#:system system)
|
||||
'(#f . #f)))
|
||||
(mod-drv (car mod+go-drv))
|
||||
(go-drv (cdr mod+go-drv))
|
||||
(mod-dir (and mod-drv
|
||||
(derivation->output-path mod-drv)))
|
||||
(go-drv (and (pair? modules)
|
||||
(%compiled-modules store modules
|
||||
#:guile guile-drv
|
||||
#:system system)))
|
||||
(go-dir (and go-drv
|
||||
(derivation->output-path go-drv))))
|
||||
(derivation store name guile
|
||||
|
|
|
@ -654,6 +654,31 @@ (define-record-type <lowered-gexp>
|
|||
(load-path lowered-gexp-load-path) ;list of store items
|
||||
(load-compiled-path lowered-gexp-load-compiled-path)) ;list of store items
|
||||
|
||||
(define* (imported+compiled-modules modules system
|
||||
#:key (extensions '())
|
||||
deprecation-warnings guile
|
||||
(module-path %load-path))
|
||||
"Return a pair where the first element is the imported MODULES and the
|
||||
second element is the derivation to compile them."
|
||||
(mcached equal?
|
||||
(mlet %store-monad ((modules (if (pair? modules)
|
||||
(imported-modules modules
|
||||
#:system system
|
||||
#:module-path module-path)
|
||||
(return #f)))
|
||||
(compiled (if (pair? modules)
|
||||
(compiled-modules modules
|
||||
#:system system
|
||||
#:module-path module-path
|
||||
#:extensions extensions
|
||||
#:guile guile
|
||||
#:deprecation-warnings
|
||||
deprecation-warnings)
|
||||
(return #f))))
|
||||
(return (cons modules compiled)))
|
||||
modules
|
||||
system extensions guile deprecation-warnings module-path))
|
||||
|
||||
(define* (lower-gexp exp
|
||||
#:key
|
||||
(module-path %load-path)
|
||||
|
@ -719,20 +744,15 @@ (define (search-path modules extensions suffix)
|
|||
(lambda (obj)
|
||||
(lower-object obj system))
|
||||
extensions))
|
||||
(modules (if (pair? %modules)
|
||||
(imported-modules %modules
|
||||
#:system system
|
||||
#:module-path module-path)
|
||||
(return #f)))
|
||||
(compiled (if (pair? %modules)
|
||||
(compiled-modules %modules
|
||||
#:system system
|
||||
#:module-path module-path
|
||||
#:extensions extensions
|
||||
#:guile guile
|
||||
#:deprecation-warnings
|
||||
deprecation-warnings)
|
||||
(return #f))))
|
||||
(modules+compiled (imported+compiled-modules
|
||||
%modules system
|
||||
#:extensions extensions
|
||||
#:deprecation-warnings
|
||||
deprecation-warnings
|
||||
#:guile guile
|
||||
#:module-path module-path))
|
||||
(modules -> (car modules+compiled))
|
||||
(compiled -> (cdr modules+compiled)))
|
||||
(define load-path
|
||||
(search-path modules exts
|
||||
(string-append "/share/guile/site/" effective-version)))
|
||||
|
|
|
@ -714,6 +714,9 @@ (define file
|
|||
(define default-file
|
||||
(string-append (config-directory) "/channels.scm"))
|
||||
|
||||
(define global-file
|
||||
(string-append %sysconfdir "/guix/channels.scm"))
|
||||
|
||||
(define (load-channels file)
|
||||
(let ((result (load* file (make-user-module '((guix channels))))))
|
||||
(if (and (list? result) (every channel? result))
|
||||
|
@ -725,6 +728,8 @@ (define channels
|
|||
(load-channels file))
|
||||
((file-exists? default-file)
|
||||
(load-channels default-file))
|
||||
((file-exists? global-file)
|
||||
(load-channels global-file))
|
||||
(else
|
||||
%default-channels)))
|
||||
|
||||
|
|
|
@ -1612,10 +1612,11 @@ (define-alias store-bind state-bind)
|
|||
;; from %STATE-MONAD.
|
||||
(template-directory instantiations %store-monad)
|
||||
|
||||
(define* (cache-object-mapping object keys result)
|
||||
(define* (cache-object-mapping object keys result
|
||||
#:key (vhash-cons vhash-consq))
|
||||
"Augment the store's object cache with a mapping from OBJECT/KEYS to RESULT.
|
||||
KEYS is a list of additional keys to match against, for instance a (SYSTEM
|
||||
TARGET) tuple.
|
||||
TARGET) tuple. Use VHASH-CONS to insert OBJECT into the cache.
|
||||
|
||||
OBJECT is typically a high-level object such as a <package> or an <origin>,
|
||||
and RESULT is typically its derivation."
|
||||
|
@ -1623,8 +1624,8 @@ (define* (cache-object-mapping object keys result)
|
|||
(values result
|
||||
(store-connection
|
||||
(inherit store)
|
||||
(object-cache (vhash-consq object (cons result keys)
|
||||
(store-connection-object-cache store)))))))
|
||||
(object-cache (vhash-cons object (cons result keys)
|
||||
(store-connection-object-cache store)))))))
|
||||
|
||||
(define record-cache-lookup!
|
||||
(if (profiled? "object-cache")
|
||||
|
@ -1653,11 +1654,12 @@ (define record-cache-lookup!
|
|||
(lambda (x y)
|
||||
#t)))
|
||||
|
||||
(define* (lookup-cached-object object #:optional (keys '()))
|
||||
(define* (lookup-cached-object object #:optional (keys '())
|
||||
#:key (vhash-fold* vhash-foldq*))
|
||||
"Return the cached object in the store connection corresponding to OBJECT
|
||||
and KEYS. KEYS is a list of additional keys to match against, and which are
|
||||
compared with 'equal?'. Return #f on failure and the cached result
|
||||
otherwise."
|
||||
and KEYS; use VHASH-FOLD* to look for OBJECT in the cache. KEYS is a list of
|
||||
additional keys to match against, and which are compared with 'equal?'.
|
||||
Return #f on failure and the cached result otherwise."
|
||||
(lambda (store)
|
||||
(let* ((cache (store-connection-object-cache store))
|
||||
|
||||
|
@ -1665,33 +1667,50 @@ (define* (lookup-cached-object object #:optional (keys '()))
|
|||
;; the whole vlist chain and significantly reduces the number of
|
||||
;; 'hashq' calls.
|
||||
(value (let/ec return
|
||||
(vhash-foldq* (lambda (item result)
|
||||
(match item
|
||||
((value . keys*)
|
||||
(if (equal? keys keys*)
|
||||
(return value)
|
||||
result))))
|
||||
#f object
|
||||
cache))))
|
||||
(vhash-fold* (lambda (item result)
|
||||
(match item
|
||||
((value . keys*)
|
||||
(if (equal? keys keys*)
|
||||
(return value)
|
||||
result))))
|
||||
#f object
|
||||
cache))))
|
||||
(record-cache-lookup! value cache)
|
||||
(values value store))))
|
||||
|
||||
(define* (%mcached mthunk object #:optional (keys '()))
|
||||
(define* (%mcached mthunk object #:optional (keys '())
|
||||
#:key
|
||||
(vhash-cons vhash-consq)
|
||||
(vhash-fold* vhash-foldq*))
|
||||
"Bind the monadic value returned by MTHUNK, which supposedly corresponds to
|
||||
OBJECT/KEYS, or return its cached value."
|
||||
(mlet %store-monad ((cached (lookup-cached-object object keys)))
|
||||
OBJECT/KEYS, or return its cached value. Use VHASH-CONS to insert OBJECT into
|
||||
the cache, and VHASH-FOLD* to look it up."
|
||||
(mlet %store-monad ((cached (lookup-cached-object object keys
|
||||
#:vhash-fold* vhash-fold*)))
|
||||
(if cached
|
||||
(return cached)
|
||||
(>>= (mthunk)
|
||||
(lambda (result)
|
||||
(cache-object-mapping object keys result))))))
|
||||
(cache-object-mapping object keys result
|
||||
#:vhash-cons vhash-cons))))))
|
||||
|
||||
(define-syntax-rule (mcached mvalue object keys ...)
|
||||
"Run MVALUE, which corresponds to OBJECT/KEYS, and cache it; or return the
|
||||
(define-syntax mcached
|
||||
(syntax-rules (eq? equal?)
|
||||
"Run MVALUE, which corresponds to OBJECT/KEYS, and cache it; or return the
|
||||
value associated with OBJECT/KEYS in the store's object cache if there is
|
||||
one."
|
||||
(%mcached (lambda () mvalue)
|
||||
object (list keys ...)))
|
||||
((_ eq? mvalue object keys ...)
|
||||
(%mcached (lambda () mvalue)
|
||||
object (list keys ...)
|
||||
#:vhash-cons vhash-consq
|
||||
#:vhash-fold* vhash-foldq*))
|
||||
((_ equal? mvalue object keys ...)
|
||||
(%mcached (lambda () mvalue)
|
||||
object (list keys ...)
|
||||
#:vhash-cons vhash-cons
|
||||
#:vhash-fold* vhash-fold*))
|
||||
((_ mvalue object keys ...)
|
||||
(mcached eq? mvalue object keys ...))))
|
||||
|
||||
(define (preserve-documentation original proc)
|
||||
"Return PROC with documentation taken from ORIGINAL."
|
||||
|
|
Loading…
Reference in a new issue