Merge branch 'master' into core-updates
This commit is contained in:
commit
cf6db76d2a
|
@ -59,6 +59,7 @@
|
|||
(eval . (put 'emacs-substitute-variables 'scheme-indent-function 1))
|
||||
(eval . (put 'with-derivation-narinfo 'scheme-indent-function 1))
|
||||
(eval . (put 'with-derivation-substitute 'scheme-indent-function 2))
|
||||
(eval . (put 'with-status-report 'scheme-indent-function 1))
|
||||
|
||||
(eval . (put 'mlambda 'scheme-indent-function 1))
|
||||
(eval . (put 'mlambdaq 'scheme-indent-function 1))
|
||||
|
|
|
@ -131,6 +131,7 @@ MODULES = \
|
|||
guix/svn-download.scm \
|
||||
guix/i18n.scm \
|
||||
guix/ui.scm \
|
||||
guix/status.scm \
|
||||
guix/build/android-ndk-build-system.scm \
|
||||
guix/build/ant-build-system.scm \
|
||||
guix/build/download.scm \
|
||||
|
@ -340,6 +341,7 @@ SCM_TESTS = \
|
|||
tests/glob.scm \
|
||||
tests/grafts.scm \
|
||||
tests/ui.scm \
|
||||
tests/status.scm \
|
||||
tests/records.scm \
|
||||
tests/upstream.scm \
|
||||
tests/combinators.scm \
|
||||
|
|
110
doc/guix.texi
110
doc/guix.texi
|
@ -33,7 +33,7 @@ Copyright @copyright{} 2016 Alex ter Weele@*
|
|||
Copyright @copyright{} 2017, 2018 Clément Lassieur@*
|
||||
Copyright @copyright{} 2017 Mathieu Othacehe@*
|
||||
Copyright @copyright{} 2017 Federico Beffa@*
|
||||
Copyright @copyright{} 2017 Carlo Zancanaro@*
|
||||
Copyright @copyright{} 2017, 2018 Carlo Zancanaro@*
|
||||
Copyright @copyright{} 2017 Thomas Danckaert@*
|
||||
Copyright @copyright{} 2017 humanitiesNerd@*
|
||||
Copyright @copyright{} 2017 Christopher Allan Webber@*
|
||||
|
@ -11614,6 +11614,14 @@ This procedure can be called several times, one for each network
|
|||
interface of interest. Behind the scenes what it does is extend
|
||||
@code{static-networking-service-type} with additional network interfaces
|
||||
to handle.
|
||||
|
||||
For example:
|
||||
|
||||
@example
|
||||
(static-networking-service "eno1" "192.168.1.82"
|
||||
#:gateway "192.168.1.2"
|
||||
#:name-servers '("192.168.1.2"))
|
||||
@end example
|
||||
@end deffn
|
||||
|
||||
@cindex wicd
|
||||
|
@ -21028,6 +21036,100 @@ could instantiate a cgit service like this:
|
|||
(cgitrc "")))
|
||||
@end example
|
||||
|
||||
@subsubheading Gitolite Service
|
||||
|
||||
@cindex Gitolite service
|
||||
@cindex Git, hosting
|
||||
@uref{http://gitolite.com/gitolite/, Gitolite} is a tool for hosting Git
|
||||
repositories on a central server.
|
||||
|
||||
Gitolite can handle multiple repositories and users, and supports flexible
|
||||
configuration of the permissions for the users on the repositories.
|
||||
|
||||
The following example will configure Gitolite using the default @code{git}
|
||||
user, and the provided SSH public key.
|
||||
|
||||
@example
|
||||
(service gitolite-service-type
|
||||
(gitolite-configuration
|
||||
(admin-pubkey (plain-file
|
||||
"yourname.pub"
|
||||
"ssh-rsa AAAA... guix@@example.com"))))
|
||||
@end example
|
||||
|
||||
Gitolite is configured through a special admin repository which you can clone,
|
||||
for example, if you setup Gitolite on @code{example.com}, you would run the
|
||||
following command to clone the admin repository.
|
||||
|
||||
@example
|
||||
git clone git@@example.com:gitolite-admin
|
||||
@end example
|
||||
|
||||
When the Gitolite service is activated, the provided @code{admin-pubkey} will
|
||||
be inserted in to the @file{keydir} directory in the gitolite-admin
|
||||
repository. If this results in a change in the repository, it will be
|
||||
committed using the message ``gitolite setup by GNU Guix''.
|
||||
|
||||
@deftp {Data Type} gitolite-configuration
|
||||
Data type representing the configuration for @code{gitolite-service-type}.
|
||||
|
||||
@table @asis
|
||||
@item @code{package} (default: @var{gitolite})
|
||||
Gitolite package to use.
|
||||
|
||||
@item @code{user} (default: @var{git})
|
||||
User to use for Gitolite. This will be user that you use when accessing
|
||||
Gitolite over SSH.
|
||||
|
||||
@item @code{group} (default: @var{git})
|
||||
Group to use for Gitolite.
|
||||
|
||||
@item @code{home-directory} (default: @var{"/var/lib/gitolite"})
|
||||
Directory in which to store the Gitolite configuration and repositories.
|
||||
|
||||
@item @code{rc-file} (default: @var{(gitolite-rc-file)})
|
||||
A ``file-like'' object (@pxref{G-Expressions, file-like objects}),
|
||||
representing the configuration for Gitolite.
|
||||
|
||||
@item @code{admin-pubkey} (default: @var{#f})
|
||||
A ``file-like'' object (@pxref{G-Expressions, file-like objects}) used to
|
||||
setup Gitolite. This will be inserted in to the @file{keydir} directory
|
||||
within the gitolite-admin repository.
|
||||
|
||||
To specify the SSH key as a string, use the @code{plain-file} function.
|
||||
|
||||
@example
|
||||
(plain-file "yourname.pub" "ssh-rsa AAAA... guix@@example.com")
|
||||
@end example
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@deftp {Data Type} gitolite-rc-file
|
||||
Data type representing the Gitolite RC file.
|
||||
|
||||
@table @asis
|
||||
@item @code{umask} (default: @code{#o0077})
|
||||
This controls the permissions Gitolite sets on the repositories and their
|
||||
contents.
|
||||
|
||||
A value like @code{#o0027} will give read access to the group used by Gitolite
|
||||
(by default: @code{git}). This is necessary when using Gitolite with software
|
||||
like cgit or gitweb.
|
||||
|
||||
@item @code{git-config-keys} (default: @code{""})
|
||||
Gitolite allows you to set git config values using the "config" keyword. This
|
||||
setting allows control over the config keys to accept.
|
||||
|
||||
@item @code{roles} (default: @code{'(("READERS" . 1) ("WRITERS" . ))})
|
||||
Set the role names allowed to be used by users running the perms command.
|
||||
|
||||
@item @code{enable} (default: @code{'("help" "desc" "info" "perms" "writable" "ssh-authkeys" "git-config" "daemon" "gitweb")})
|
||||
This setting controls the commands and features to enable within Gitolite.
|
||||
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
|
||||
@node Game Services
|
||||
@subsubsection Game Services
|
||||
|
@ -21920,9 +22022,9 @@ systems already running GuixSD.}.
|
|||
This effects all the configuration specified in @var{file}: user
|
||||
accounts, system services, global package list, setuid programs, etc.
|
||||
The command starts system services specified in @var{file} that are not
|
||||
currently running; if a service is currently running, it does not
|
||||
attempt to upgrade it since this would not be possible without stopping it
|
||||
first.
|
||||
currently running; if a service is currently running this command will
|
||||
arrange for it to be upgraded the next time it is stopped (eg. by
|
||||
@code{herd stop X} or @code{herd restart X}).
|
||||
|
||||
This command creates a new generation whose number is one greater than
|
||||
the current generation (as reported by @command{guix system
|
||||
|
|
|
@ -814,8 +814,8 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/hydra-disable-darcs-test.patch \
|
||||
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
|
||||
%D%/packages/patches/icecat-CVE-2018-12383.patch \
|
||||
%D%/packages/patches/icecat-use-system-graphite2.patch \
|
||||
%D%/packages/patches/icecat-use-system-harfbuzz.patch \
|
||||
%D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \
|
||||
%D%/packages/patches/icecat-use-system-media-libs.patch \
|
||||
%D%/packages/patches/icedtea-6-hotspot-gcc-segfault-workaround.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-gcc-segfault-workaround.patch \
|
||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||
|
@ -1100,6 +1100,9 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/qtscript-disable-tests.patch \
|
||||
%D%/packages/patches/quagga-reproducible-build.patch \
|
||||
%D%/packages/patches/quickswitch-fix-dmenu-check.patch \
|
||||
%D%/packages/patches/quilt-test-fix-regex.patch \
|
||||
%D%/packages/patches/quilt-compat-getopt-fix-second-separator.patch \
|
||||
%D%/packages/patches/quilt-compat-getopt-fix-option-with-nondigit-param.patch \
|
||||
%D%/packages/patches/qtwebkit-pbutils-include.patch \
|
||||
%D%/packages/patches/rapicorn-isnan.patch \
|
||||
%D%/packages/patches/raptor2-heap-overflow.patch \
|
||||
|
|
|
@ -173,14 +173,14 @@ and provides a \"top-like\" mode (monitoring).")
|
|||
(define-public shepherd
|
||||
(package
|
||||
(name "shepherd")
|
||||
(version "0.4.0")
|
||||
(version "0.5.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://alpha.gnu.org/gnu/shepherd/shepherd-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1lgmsbxn8i8xdasxzkdp2cml75n128pplw6icvmspl6s0n9xmw8n"))))
|
||||
"1wmciqml9yplnx1s4ynn00giqyk06rbrcsgvpjj2df47sawk2jp8"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("--localstatedir=/var")))
|
||||
|
@ -613,7 +613,7 @@ connection alive.")
|
|||
(bind-minor-version "11")
|
||||
(bind-patch-version "4")
|
||||
(bind-release-type "-P") ; for patch release, use "-P"
|
||||
(bind-release-version "1") ; for patch release, e.g. "6"
|
||||
(bind-release-version "2") ; for patch release, e.g. "6"
|
||||
(bind-version (string-append bind-major-version
|
||||
"."
|
||||
bind-minor-version
|
||||
|
@ -730,7 +730,7 @@ connection alive.")
|
|||
"/bind-" bind-version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08zyy13b8ydfbg26b3y6mw299qs89ba90gymraqqjsgjicydrq5h"))))
|
||||
"04fq17zksd2b3w6w6padps5n7b6s2lasxpksbhl4378h56vgfnm8"))))
|
||||
|
||||
;; When cross-compiling, we need the cross Coreutils and sed.
|
||||
;; Otherwise just use those from %FINAL-INPUTS.
|
||||
|
@ -1194,9 +1194,6 @@ This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
|
|||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(qt '("qtbase" "qtsvg")))
|
||||
(substitute* "wpa_gui.desktop"
|
||||
(("Exec=wpa_gui")
|
||||
(string-append "Exec=" out "/bin/wpa_gui")))
|
||||
(install-file "wpa_gui" (string-append out "/bin"))
|
||||
(install-file "wpa_gui.desktop"
|
||||
(string-append out "/share/applications"))
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Alex ter Weele <alex.ter.weele@gmail.com>
|
||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -30,7 +31,7 @@
|
|||
(define-public agda
|
||||
(package
|
||||
(name "agda")
|
||||
(version "2.5.3")
|
||||
(version "2.5.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -39,7 +40,7 @@
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r80vw7vnvbgq47y50v050malv7zvv2p2kg6f47i04r0b2ix855a"))))
|
||||
"0bxpibsk98n9xp42d92ma5vj2fam8rsnl61fbhr3askfjdvalnbp"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("cpphs" ,cpphs)
|
||||
|
@ -51,14 +52,13 @@
|
|||
("ghc-edisoncore" ,ghc-edisoncore)
|
||||
("ghc-edit-distance" ,ghc-edit-distance)
|
||||
("ghc-equivalence" ,ghc-equivalence)
|
||||
("ghc-filemanip" ,ghc-filemanip)
|
||||
("ghc-geniplate-mirror" ,ghc-geniplate-mirror)
|
||||
("ghc-gitrev" ,ghc-gitrev)
|
||||
("ghc-happy" ,ghc-happy)
|
||||
("ghc-hashable" ,ghc-hashable)
|
||||
("ghc-hashtables" ,ghc-hashtables)
|
||||
("ghc-ieee754" ,ghc-ieee754)
|
||||
("ghc-monadplus" ,ghc-monadplus)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-murmur-hash" ,ghc-murmur-hash)
|
||||
("ghc-uri-encode" ,ghc-uri-encode)
|
||||
("ghc-parallel" ,ghc-parallel)
|
||||
|
@ -71,9 +71,50 @@
|
|||
(arguments
|
||||
`(#:modules ((guix build haskell-build-system)
|
||||
(guix build utils)
|
||||
(srfi srfi-26))
|
||||
(srfi srfi-26)
|
||||
(ice-9 match))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; FIXME: This is a copy of the standard configure phase with a tiny
|
||||
;; difference: this package needs the -package-db flag to be passed
|
||||
;; to "runhaskell" in addition to the "configure" action, because
|
||||
;; Setup.hs depends on filemanip. Without this option the Setup.hs
|
||||
;; file cannot be evaluated. The haskell-build-system should be
|
||||
;; changed to pass "-package-db" to "runhaskell" in any case.
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs inputs tests? (configure-flags '())
|
||||
#:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(input-dirs (match inputs
|
||||
(((_ . dir) ...)
|
||||
dir)
|
||||
(_ '())))
|
||||
(ghc-path (getenv "GHC_PACKAGE_PATH"))
|
||||
(params (append `(,(string-append "--prefix=" out))
|
||||
`(,(string-append "--libdir=" out "/lib"))
|
||||
`(,(string-append "--bindir=" out "/bin"))
|
||||
`(,(string-append
|
||||
"--docdir=" out
|
||||
"/share/doc/" ((@@ (guix build haskell-build-system)
|
||||
package-name-version) out)))
|
||||
'("--libsubdir=$compiler/$pkg-$version")
|
||||
'("--package-db=../package.conf.d")
|
||||
'("--global")
|
||||
`(,@(map
|
||||
(cut string-append "--extra-include-dirs=" <>)
|
||||
(search-path-as-list '("include") input-dirs)))
|
||||
`(,@(map
|
||||
(cut string-append "--extra-lib-dirs=" <>)
|
||||
(search-path-as-list '("lib") input-dirs)))
|
||||
(if tests?
|
||||
'("--enable-tests")
|
||||
'())
|
||||
configure-flags)))
|
||||
(unsetenv "GHC_PACKAGE_PATH")
|
||||
(apply invoke "runhaskell" "-package-db=../package.conf.d"
|
||||
"Setup.hs" "configure" params)
|
||||
(setenv "GHC_PACKAGE_PATH" ghc-path)
|
||||
#t)))
|
||||
(add-after 'compile 'agda-compile
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
|
|
|
@ -321,7 +321,7 @@ engineers, musicians, soundtrack editors and composers.")
|
|||
;; "sbsms"
|
||||
))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(inputs
|
||||
`(("wxwidgets" ,wxwidgets)
|
||||
("gtk+" ,gtk+)
|
||||
|
@ -410,16 +410,12 @@ engineers, musicians, soundtrack editors and composers.")
|
|||
(("../lib-src/portmidi/porttime/porttime.h") "porttime.h"))
|
||||
(substitute* "src/prefs/MidiIOPrefs.cpp"
|
||||
(("../../lib-src/portmidi/pm_common/portmidi.h") "portmidi.h"))
|
||||
#t))
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(wrap-program (string-append (assoc-ref outputs "out")
|
||||
"/bin/audacity")
|
||||
;; For GtkFileChooserDialog.
|
||||
`("GSETTINGS_SCHEMA_DIR" =
|
||||
(,(string-append (assoc-ref inputs "gtk+")
|
||||
"/share/glib-2.0/schemas"))))
|
||||
#t)))
|
||||
;; The translation Makefile generation is performed improperly for
|
||||
;; out-of-tree builds.
|
||||
;; XXX This can be removed if the glib-or-gkt-build-system
|
||||
;; switches to #:out-of-source? #t. See <https://bugs.gnu.org/32887>.
|
||||
#:out-of-source? #f
|
||||
;; The test suite is not "well exercised" according to the developers,
|
||||
;; and fails with various errors. See
|
||||
;; <http://sourceforge.net/p/audacity/mailman/message/33524292/>.
|
||||
|
@ -453,7 +449,14 @@ tools.")
|
|||
"CXXFLAGS=-std=gnu++11"
|
||||
"CFLAGS=-std=gnu++11"
|
||||
(string-append "prefix=" %output)
|
||||
(string-append "pkgdatadir=" %output "/share/azr3-jack"))))
|
||||
(string-append "pkgdatadir=" %output "/share/azr3-jack"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'install 'fix-timestamp
|
||||
(lambda _
|
||||
(let ((early-1980 315619200)) ; 1980-01-02 UTC
|
||||
(utime "azr3.1" early-1980 early-1980))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("gtkmm" ,gtkmm-2)
|
||||
("lvtk" ,lvtk)
|
||||
|
@ -2244,7 +2247,7 @@ aimed at audio/musical applications.")
|
|||
("vamp" ,vamp)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "http://breakfastquay.com/rubberband/")
|
||||
(home-page "https://breakfastquay.com/rubberband/")
|
||||
(synopsis "Audio time-stretching and pitch-shifting library")
|
||||
(description
|
||||
"Rubber Band is a library and utility program that permits changing the
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/x86 4.18.0-gnu Kernel Configuration
|
||||
# Linux/x86 4.18.9-gnu Kernel Configuration
|
||||
#
|
||||
|
||||
#
|
||||
|
@ -255,6 +255,7 @@ CONFIG_PROFILING=y
|
|||
CONFIG_TRACEPOINTS=y
|
||||
CONFIG_CRASH_CORE=y
|
||||
CONFIG_KEXEC_CORE=y
|
||||
CONFIG_HOTPLUG_SMT=y
|
||||
CONFIG_OPROFILE=m
|
||||
# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
|
@ -294,6 +295,7 @@ CONFIG_HAVE_PERF_REGS=y
|
|||
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
|
||||
CONFIG_HAVE_ARCH_JUMP_LABEL=y
|
||||
CONFIG_HAVE_RCU_TABLE_FREE=y
|
||||
CONFIG_HAVE_RCU_TABLE_INVALIDATE=y
|
||||
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
|
||||
CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
|
||||
CONFIG_HAVE_CMPXCHG_LOCAL=y
|
||||
|
@ -853,7 +855,7 @@ CONFIG_HOTPLUG_PCI_ACPI_IBM=m
|
|||
CONFIG_HOTPLUG_PCI_CPCI=y
|
||||
CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
|
||||
CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
|
||||
# CONFIG_HOTPLUG_PCI_SHPC is not set
|
||||
CONFIG_HOTPLUG_PCI_SHPC=y
|
||||
|
||||
#
|
||||
# PCI controller drivers
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
#
|
||||
# Automatically generated file; DO NOT EDIT.
|
||||
# Linux/x86 4.18.0-gnu Kernel Configuration
|
||||
# Linux/x86 4.18.9-gnu Kernel Configuration
|
||||
#
|
||||
|
||||
#
|
||||
|
@ -265,6 +265,7 @@ CONFIG_PROFILING=y
|
|||
CONFIG_TRACEPOINTS=y
|
||||
CONFIG_CRASH_CORE=y
|
||||
CONFIG_KEXEC_CORE=y
|
||||
CONFIG_HOTPLUG_SMT=y
|
||||
CONFIG_OPROFILE=m
|
||||
# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
|
||||
CONFIG_HAVE_OPROFILE=y
|
||||
|
@ -304,6 +305,7 @@ CONFIG_HAVE_PERF_REGS=y
|
|||
CONFIG_HAVE_PERF_USER_STACK_DUMP=y
|
||||
CONFIG_HAVE_ARCH_JUMP_LABEL=y
|
||||
CONFIG_HAVE_RCU_TABLE_FREE=y
|
||||
CONFIG_HAVE_RCU_TABLE_INVALIDATE=y
|
||||
CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y
|
||||
CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y
|
||||
CONFIG_HAVE_CMPXCHG_LOCAL=y
|
||||
|
@ -869,7 +871,7 @@ CONFIG_HOTPLUG_PCI_ACPI_IBM=m
|
|||
CONFIG_HOTPLUG_PCI_CPCI=y
|
||||
CONFIG_HOTPLUG_PCI_CPCI_ZT5550=m
|
||||
CONFIG_HOTPLUG_PCI_CPCI_GENERIC=m
|
||||
# CONFIG_HOTPLUG_PCI_SHPC is not set
|
||||
CONFIG_HOTPLUG_PCI_SHPC=y
|
||||
|
||||
#
|
||||
# PCI controller drivers
|
||||
|
|
|
@ -288,34 +288,25 @@ BAM files.")
|
|||
(define-public bcftools
|
||||
(package
|
||||
(name "bcftools")
|
||||
(version "1.8")
|
||||
(version "1.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/samtools/bcftools/releases/download/"
|
||||
version "/bcftools-" version ".tar.bz2"))
|
||||
(uri (string-append "https://github.com/samtools/bcftools/"
|
||||
"releases/download/"
|
||||
version "/bcftools-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vgw2mwngq20c530zim52zvgmw1lci8rzl33pvh44xqk3xlzvjsa"))
|
||||
"1j3h638i8kgihzyrlnpj82xg1b23sijibys9hvwari3fy7kd0dkg"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; Delete bundled htslib.
|
||||
(delete-file-recursively "htslib-1.8")
|
||||
(delete-file-recursively "htslib-1.9")
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
#:configure-flags (list "--with-htslib=system")
|
||||
#:make-flags
|
||||
(list
|
||||
"USE_GPL=1"
|
||||
"LIBS=-lgsl -lgslcblas"
|
||||
(string-append "prefix=" (assoc-ref %outputs "out"))
|
||||
(string-append "HTSDIR=" (assoc-ref %build-inputs "htslib") "/include")
|
||||
(string-append "HTSLIB=" (assoc-ref %build-inputs "htslib") "/lib/libhts.so")
|
||||
(string-append "BGZIP=" (assoc-ref %build-inputs "htslib") "/bin/bgzip")
|
||||
(string-append "TABIX=" (assoc-ref %build-inputs "htslib") "/bin/tabix")
|
||||
(string-append "PACKAGE_VERSION=" ,version))
|
||||
`(#:configure-flags
|
||||
(list "--enable-libgsl")
|
||||
#:test-target "test"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'patch-tests
|
||||
|
@ -1445,17 +1436,17 @@ multiple sequence alignments.")
|
|||
(define-public python-pysam
|
||||
(package
|
||||
(name "python-pysam")
|
||||
(version "0.13.0")
|
||||
(version "0.15.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(method git-fetch)
|
||||
;; Test data is missing on PyPi.
|
||||
(uri (string-append
|
||||
"https://github.com/pysam-developers/pysam/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pysam-developers/pysam.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dzap2axin9cbbl0d825w294bpn00zagfm1sigamm4v2pm5bj9lp"))
|
||||
"1vj367w6xbn9bpmksm162l1aipf7cj97h1q83y7jcpm33ihwpf7x"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; Drop bundled htslib. TODO: Also remove samtools
|
||||
|
@ -1482,6 +1473,11 @@ multiple sequence alignments.")
|
|||
#t))
|
||||
(replace 'check
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; This file contains tests that require a connection to the
|
||||
;; internet.
|
||||
(delete-file "tests/tabix_test.py")
|
||||
;; FIXME: This test fails
|
||||
(delete-file "tests/AlignmentFile_test.py")
|
||||
;; Add first subdirectory of "build" directory to PYTHONPATH.
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append
|
||||
|
@ -1492,28 +1488,26 @@ multiple sequence alignments.")
|
|||
;; Step out of source dir so python does not import from CWD.
|
||||
(with-directory-excursion "tests"
|
||||
(setenv "HOME" "/tmp")
|
||||
(and (zero? (system* "make" "-C" "pysam_data"))
|
||||
(zero? (system* "make" "-C" "cbcf_data"))
|
||||
;; Running nosetests without explicitly asking for a
|
||||
;; single process leads to a crash. Running with multiple
|
||||
;; processes fails because the tests are not designed to
|
||||
;; run in parallel.
|
||||
(invoke "make" "-C" "pysam_data")
|
||||
(invoke "make" "-C" "cbcf_data")
|
||||
;; Running nosetests without explicitly asking for a single
|
||||
;; process leads to a crash. Running with multiple processes
|
||||
;; fails because the tests are not designed to run in parallel.
|
||||
|
||||
;; FIXME: tests keep timing out on some systems.
|
||||
;; (zero? (system* "nosetests" "-v"
|
||||
;; "--processes" "1"))
|
||||
)))))))
|
||||
;; FIXME: tests keep timing out on some systems.
|
||||
(invoke "nosetests" "-v" "--processes" "1")))))))
|
||||
(propagated-inputs
|
||||
`(("htslib" ,htslib))) ; Included from installed header files.
|
||||
`(("htslib" ,htslib))) ; Included from installed header files.
|
||||
(inputs
|
||||
`(("ncurses" ,ncurses)
|
||||
("zlib" ,zlib)))
|
||||
`(("ncurses" ,ncurses)
|
||||
("curl" ,curl)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
`(("python-cython" ,python-cython)
|
||||
`(("python-cython" ,python-cython)
|
||||
;; Dependencies below are are for tests only.
|
||||
("samtools" ,samtools)
|
||||
("bcftools" ,bcftools)
|
||||
("python-nose" ,python-nose)))
|
||||
("samtools" ,samtools)
|
||||
("bcftools" ,bcftools)
|
||||
("python-nose" ,python-nose)))
|
||||
(home-page "https://github.com/pysam-developers/pysam")
|
||||
(synopsis "Python bindings to the SAMtools C API")
|
||||
(description
|
||||
|
@ -2012,18 +2006,25 @@ with Python.")
|
|||
(define-public deeptools
|
||||
(package
|
||||
(name "deeptools")
|
||||
(version "2.5.1")
|
||||
(version "3.1.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/deeptools/deepTools/"
|
||||
"archive/" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/deeptools/deepTools.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q8i12l2gvk4n2s8lhyzwhh9g4qbc8lrk5l7maz00yvd5g6z5540"))))
|
||||
"06fdpp6cg3xiwryxjhixvfysl4z0ps1crjgia587qa9ikqpsa7fd"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; This phase fails, but it's not needed.
|
||||
(delete 'reset-gzip-timestamps))))
|
||||
(inputs
|
||||
`(("python-scipy" ,python-scipy)
|
||||
`(("python-plotly" ,python-plotly)
|
||||
("python-scipy" ,python-scipy)
|
||||
("python-numpy" ,python-numpy)
|
||||
("python-numpydoc" ,python-numpydoc)
|
||||
("python-matplotlib" ,python-matplotlib)
|
||||
|
@ -3512,7 +3513,7 @@ performance.")
|
|||
(define-public htslib
|
||||
(package
|
||||
(name "htslib")
|
||||
(version "1.8")
|
||||
(version "1.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -3520,7 +3521,7 @@ performance.")
|
|||
version "/htslib-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"18bw0mn9pj5wgarnlaxmf1bb8pdqgl1zd6czirqcr62ajpn1xvy0"))))
|
||||
"16ljv43sc3fxmv63w7b2ff8m1s7h89xhazwmbm1bicz8axq8fjz0"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("openssl" ,openssl)
|
||||
|
@ -4997,7 +4998,7 @@ to the user's query of interest.")
|
|||
(define-public samtools
|
||||
(package
|
||||
(name "samtools")
|
||||
(version "1.8")
|
||||
(version "1.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -5006,15 +5007,19 @@ to the user's query of interest.")
|
|||
version "/samtools-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"05myg7bs90i68qbqab9cdg9rqj2xh39azibrx82ipzc5kcfvqhn9"))))
|
||||
"10ilqbmm7ri8z431sn90lvbjwizd0hhkf9rcqw8j823hf26nhgq8"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; Delete bundled htslib.
|
||||
(delete-file-recursively "htslib-1.9")
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules ((ice-9 ftw)
|
||||
(ice-9 regex)
|
||||
(guix build gnu-build-system)
|
||||
(guix build utils))
|
||||
#:make-flags (list (string-append "prefix=" (assoc-ref %outputs "out")))
|
||||
#:configure-flags (list "--with-ncurses" "--with-htslib=system")
|
||||
#:configure-flags (list "--with-ncurses")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-tests
|
||||
|
@ -5068,9 +5073,9 @@ viewer.")
|
|||
(base32 "1m33xsfwz0s8qi45lylagfllqg7fphf4dr0780rsvw75av9wk06h"))))
|
||||
(arguments
|
||||
`(#:tests? #f ;no "check" target
|
||||
#:make-flags
|
||||
(list "LIBCURSES=-lncurses")
|
||||
,@(substitute-keyword-arguments (package-arguments samtools)
|
||||
((#:make-flags flags)
|
||||
`(cons "LIBCURSES=-lncurses" ,flags))
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(replace 'install
|
||||
|
@ -13869,3 +13874,99 @@ single-cell transcriptomic map of the human and mouse pancreas reveals inter-
|
|||
and intra-cell population structure.\" Baron et al. Cell Systems (2016)
|
||||
@url{https://www.ncbi.nlm.nih.gov/pubmed/27667365}.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public porechop
|
||||
;; The recommended way to install is to clone the git repository
|
||||
;; https://github.com/rrwick/Porechop#installation
|
||||
(let ((commit "289d5dca4a5fc327f97b3f8cecb68ecaf1014861")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "porechop")
|
||||
(version (git-version "0.2.3" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/rrwick/Porechop.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05ps43gig0d3ia9x5lj84lb00hbsl6ba9n7y7jz927npxbr2ym23"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://github.com/rrwick/porechop")
|
||||
(synopsis "Finding, trimming or splitting adapters, in Oxford Nanopore reads")
|
||||
(description
|
||||
"The porechop package is a tool for finding and removing adapters from Oxford
|
||||
Nanopore reads. Adapters on the ends of reads are trimmed off, and when a read
|
||||
has an adapter in its middle, it is treated as chimeric and chopped into
|
||||
separate reads. Porechop performs thorough alignments to effectively find
|
||||
adapters, even at low sequence identity. Porechop also supports demultiplexing
|
||||
of Nanopore reads that were barcoded with the Native Barcoding Kit, PCR
|
||||
Barcoding Kit or Rapid Barcoding Kit.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public poretools
|
||||
;; The latest release was in 2016 and the latest commit is from 2017
|
||||
;; the recommended way to install is to clone the git repository
|
||||
;; https://poretools.readthedocs.io/en/latest/content/installation.html
|
||||
(let ((commit "e426b1f09e86ac259a00c261c79df91510777407")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "poretools")
|
||||
(version (git-version "0.6.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/arq5x/poretools.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0bglj833wxpp3cq430p1d3xp085ls221js2y90w7ir2x5ay8l7am"))))
|
||||
(build-system python-build-system)
|
||||
;; requires python >=2.7, <3.0, and the same for python dependencies
|
||||
(arguments `(#:python ,python-2))
|
||||
(inputs
|
||||
`(("hdf5" ,hdf5)))
|
||||
(propagated-inputs
|
||||
`(("python-dateutil" ,python2-dateutil)
|
||||
("python-h5py" ,python2-h5py)
|
||||
("python-matplotlib" ,python2-matplotlib)
|
||||
("python-pandas" ,python2-pandas)
|
||||
("python-seaborn" ,python2-seaborn)))
|
||||
(home-page "https://poretools.readthedocs.io")
|
||||
(synopsis "Toolkit for working with nanopore sequencing data")
|
||||
(description
|
||||
"The MinION from Oxford Nanopore Technologies is a nanopore sequencer.
|
||||
This @code{poretools} package is a flexible toolkit for exploring datasets
|
||||
generated by nanopore sequencing devices for the purposes of quality control and
|
||||
downstream analysis. Poretools operates directly on the native FAST5, a variant
|
||||
of the Hierarchical Data Format (HDF5) standard.")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public r-absfiltergsea
|
||||
(package
|
||||
(name "r-absfiltergsea")
|
||||
(version "1.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "AbsFilterGSEA" version))
|
||||
(sha256
|
||||
(base32 "15srxkxsvn38kd5frdrwfdf0ad8gskrd0h01wmdf9hglq8fjrp7w"))))
|
||||
(properties `((upstream-name . "AbsFilterGSEA")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-biobase" ,r-biobase)
|
||||
("r-deseq" ,r-deseq)
|
||||
("r-limma" ,r-limma)
|
||||
("r-rcpp" ,r-rcpp)
|
||||
("r-rcpparmadillo" ,r-rcpparmadillo)))
|
||||
(home-page "https://cran.r-project.org/web/packages/AbsFilterGSEA/")
|
||||
(synopsis "Improved false positive control of gene-permuting with absolute filtering")
|
||||
(description
|
||||
"This package provides a function that performs gene-permuting of a gene-set
|
||||
enrichment analysis (GSEA) calculation with or without the absolute filtering.
|
||||
Without filtering, users can perform (original) two-tailed or one-tailed
|
||||
absolute GSEA.")
|
||||
(license license:gpl2)))
|
||||
|
|
|
@ -186,8 +186,8 @@ their dependencies.")
|
|||
(license l:gpl3+))))
|
||||
|
||||
(define-public cuirass
|
||||
(let ((commit "8d40c49170971ad7bbf8b97336934dbb3d949fc1")
|
||||
(revision "19"))
|
||||
(let ((commit "fe2b73c2353d106431ed0659345391f14ed64600")
|
||||
(revision "20"))
|
||||
(package
|
||||
(name "cuirass")
|
||||
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
|
||||
|
@ -199,7 +199,7 @@ their dependencies.")
|
|||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xxcapf9ag3zx6131v128vhin5m2j3w2gjbjbpdwr0qkaysh0gvf"))))
|
||||
"00ldbig2p14qpwrl2i2hnhb9idgbbf0kqnlh4n79rmz96blm7463"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils)
|
||||
|
|
|
@ -403,13 +403,13 @@ functionality such as HTML output.")
|
|||
(package
|
||||
(name "rtags")
|
||||
(version "2.18")
|
||||
(home-page "https://github.com/Andersbakken/rtags")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append home-page "/archive/v" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Andersbakken/rtags.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(patches (search-patches "rtags-separate-rct.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
|
@ -424,7 +424,7 @@ functionality such as HTML output.")
|
|||
#t)))
|
||||
(sha256
|
||||
(base32
|
||||
"0scjbp1z201q8njvrxqz7lk2m9b6k2rxd5q1shrng6532r7ndif2"))))
|
||||
"0raqjbkl1ykga4ahgl9xw49cgh3cyqcf42z36z7d6fz1fw192kg0"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:build-type "RelWithDebInfo"
|
||||
|
@ -442,6 +442,7 @@ functionality such as HTML output.")
|
|||
("lua" ,lua)
|
||||
("rct" ,rct)
|
||||
("selene" ,selene)))
|
||||
(home-page "https://github.com/Andersbakken/rtags")
|
||||
(synopsis "Indexer for the C language family with Emacs integration")
|
||||
(description
|
||||
"RTags is a client/server application that indexes C/C++ code and keeps a
|
||||
|
|
|
@ -5895,3 +5895,364 @@ hemoglobin to reticulocytes (OFF-score), as well as example data.")
|
|||
based on entropy estimates from k-nearest neighbors distances and algorithms
|
||||
for the reconstruction of gene regulatory networks.")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public r-pscl
|
||||
(package
|
||||
(name "r-pscl")
|
||||
(version "1.5.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "pscl" version))
|
||||
(sha256
|
||||
(base32 "1phf3awsfr4ncqfqzin5m1pz0g7y1zhbcm2sz7358ssw914fd7rc"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-mass" ,r-mass)))
|
||||
(home-page "https://github.com/atahk/pscl/")
|
||||
(synopsis "Political science computational laboratory")
|
||||
(description
|
||||
"The @code{pscl} is an R package providing classes and methods for:
|
||||
@enumerate
|
||||
@item Bayesian analysis of roll call data (item-response models);
|
||||
@item elementary Bayesian statistics;
|
||||
@item maximum likelihood estimation of zero-inflated and hurdle models for count
|
||||
data;
|
||||
@item utility functions.
|
||||
@end enumerate")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public r-accelmissing
|
||||
(package
|
||||
(name "r-accelmissing")
|
||||
(version "1.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "accelmissing" version))
|
||||
(sha256
|
||||
(base32 "1nql9inx6azdzi3z4sfm2vdml2mms6krl8wzlf1dn1c97ahn57fy"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-mice" ,r-mice)
|
||||
("r-pscl" ,r-pscl)))
|
||||
(home-page "https://cran.r-project.org/web/packages/accelmissing/")
|
||||
(synopsis "Missing value imputation for accelerometer data")
|
||||
(description
|
||||
"This package provides a statistical method to impute the missing values in
|
||||
accelerometer data. The methodology includes both parametric and
|
||||
semi-parametric multiple imputations under the zero-inflated Poisson lognormal
|
||||
model. It also provides multiple functions to preprocess the accelerometer data
|
||||
previous to the missing data imputation. These include detecting the wearing
|
||||
and the non-wearing time, selecting valid days and subjects, and creating plots.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-mhsmm
|
||||
(package
|
||||
(name "r-mhsmm")
|
||||
(version "0.4.16")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "mhsmm" version))
|
||||
(sha256
|
||||
(base32 "009dj0zkj1zry7jr9hf4cknb686z50a2l967if64xm0dvjmp7dgs"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs `(("r-mvtnorm" ,r-mvtnorm)))
|
||||
(home-page "https://github.com/jaredo/mhsmm/")
|
||||
(synopsis "Inference for hidden Markov and semi-Markov models")
|
||||
(description
|
||||
"The @code{r-mhsmm} package implements estimation and prediction methods for
|
||||
hidden Markov and semi-Markov models for multiple observation sequences. Such
|
||||
techniques are of interest when observed data is thought to be dependent on some
|
||||
unobserved (or hidden) state. Also, this package is suitable for equidistant
|
||||
time series data, with multivariate and/or missing data. Allows user defined
|
||||
emission distributions.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-nleqslv
|
||||
(package
|
||||
(name "r-nleqslv")
|
||||
(version "3.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "nleqslv" version))
|
||||
(sha256
|
||||
(base32 "1v9znvncyigw9r25wx2ma0b7ib179b488dl0qsrhp5zrcz7mcjgm"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs `(("gfortran" ,gfortran)))
|
||||
(home-page "https://cran.r-project.org/web/packages/nleqslv/")
|
||||
(synopsis "Solve systems of nonlinear equations")
|
||||
(description
|
||||
"The @code{r-nleqslv} package solves a system of nonlinear equations using a
|
||||
Broyden or a Newton method with a choice of global strategies such as line
|
||||
search and trust region. There are options for using a numerical or user
|
||||
supplied Jacobian, for specifying a banded numerical Jacobian and for allowing a
|
||||
singular or ill-conditioned Jacobian.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-physicalactivity
|
||||
(package
|
||||
(name "r-physicalactivity")
|
||||
(version "0.2-2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "PhysicalActivity" version))
|
||||
(sha256
|
||||
(base32 "14z6plgwyr46vs9m997rvlz8sdglfs9g087an8668zqkzzs2w4ln"))))
|
||||
(properties
|
||||
`((upstream-name . "PhysicalActivity")))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/PhysicalActivity/")
|
||||
(synopsis "Procesing accelerometer data for physical activity measurement")
|
||||
(description
|
||||
"This @code{r-physicalactivity} package provides a function @code{wearingMarking}
|
||||
for classification of monitor wear and nonwear time intervals in accelerometer
|
||||
data collected to assess physical activity. The package also contains functions
|
||||
for making plots of accelerometer data and obtaining the summary of various
|
||||
information including daily monitor wear time and the mean monitor wear time
|
||||
during valid days. The revised package version 0.2-1 improved the functions
|
||||
regarding speed, robustness and add better support for time zones and daylight
|
||||
saving. In addition, several functions were added:
|
||||
@enumerate
|
||||
@item the @code{markDelivery} can classify days for ActiGraph delivery by mail;
|
||||
@item the @code{markPAI} can categorize physical activity intensity level based
|
||||
on user-defined cut-points of accelerometer counts.
|
||||
@end enumerate
|
||||
It also supports importing ActiGraph (AGD) files with @code{readActigraph} and
|
||||
@code{queryActigraph} functions.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public r-acc
|
||||
(package
|
||||
(name "r-acc")
|
||||
(version "1.3.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "acc" version))
|
||||
(sha256
|
||||
(base32 "1ii2vm47djxbixa75h690q1s2f9m9x6i8nkygik93j6dayr6kr1m"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-circlize" ,r-circlize)
|
||||
("r-dbi" ,r-dbi)
|
||||
("r-ggplot2" ,r-ggplot2)
|
||||
("r-iterators" ,r-iterators)
|
||||
("r-mhsmm" ,r-mhsmm)
|
||||
("r-nleqslv" ,r-nleqslv)
|
||||
("r-physicalactivity" ,r-physicalactivity)
|
||||
("r-plyr" ,r-plyr)
|
||||
("r-r-utils" ,r-r-utils)
|
||||
("r-rcpp" ,r-rcpp)
|
||||
("r-rcpparmadillo" ,r-rcpparmadillo)
|
||||
("r-rsqlite" ,r-rsqlite)
|
||||
("r-zoo" ,r-zoo)))
|
||||
(home-page "https://cran.r-project.org/web/packages/acc/")
|
||||
(synopsis "Exploring accelerometer data")
|
||||
(description
|
||||
"This package processes accelerometer data from uni-axial and tri-axial devices
|
||||
and generates data summaries. Also, includes functions to plot, analyze, and
|
||||
simulate accelerometer data.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-rbenchmark
|
||||
(package
|
||||
(name "r-rbenchmark")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "rbenchmark" version))
|
||||
(sha256
|
||||
(base32 "010fn3qwnk2k411cbqyvra1d12c3bhhl3spzm8kxffmirj4p2al9"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/rbenchmark/")
|
||||
(synopsis "Benchmarking routine for R")
|
||||
(description
|
||||
"This @code{r-rbenchmark} package is inspired by the Perl module Benchmark,
|
||||
and is intended to facilitate benchmarking of arbitrary R code. The library
|
||||
consists of just one function, benchmark, which is a simple wrapper around
|
||||
system.time. Given a specification of the benchmarking process (counts of
|
||||
replications, evaluation environment) and an arbitrary number of expressions,
|
||||
benchmark evaluates each of the expressions in the specified environment,
|
||||
replicating the evaluation as many times as specified, and returning the results
|
||||
conveniently wrapped into a data frame.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-dvmisc
|
||||
(package
|
||||
(name "r-dvmisc")
|
||||
(version "1.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "dvmisc" version))
|
||||
(sha256
|
||||
(base32 "1dy0yykskwhkql19bhzmbwsgv028afc8jh9yqwbczj6f3vpv31zh"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-mass" ,r-mass)
|
||||
("r-rbenchmark" ,r-rbenchmark)
|
||||
("r-rcpp" ,r-rcpp)))
|
||||
(home-page "https://cran.r-project.org/web/packages/dvmisc/")
|
||||
(synopsis "Faster computation of common statistics and miscellaneous functions")
|
||||
(description
|
||||
"This package implements faster versions of base R functions (e.g. mean, standard
|
||||
deviation, covariance, weighted mean), mostly written in C++, along with
|
||||
miscellaneous functions for various purposes (e.g. create the histogram with
|
||||
fitted probability density function or probability mass function curve, create
|
||||
the body mass index groups, assess the linearity assumption in logistic
|
||||
regression).")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public r-accelerometry
|
||||
(package
|
||||
(name "r-accelerometry")
|
||||
(version "3.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "accelerometry" version))
|
||||
(sha256
|
||||
(base32 "13xzrwhr4i1nj9c8vrmfdg2rmrc8n446iihcyxmy99sm99hpzyip"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-dvmisc" ,r-dvmisc)
|
||||
("r-rcpp" ,r-rcpp)))
|
||||
(home-page "https://cran.r-project.org/web/packages/accelerometry/")
|
||||
(synopsis "Functions for processing accelerometer data")
|
||||
(description
|
||||
"This package provides a collection of functions that perform operations on
|
||||
time-series accelerometer data, such as identify the non-wear time, flag minutes
|
||||
that are part of an activity bout, and find the maximum 10-minute average count
|
||||
value. The functions are generally very flexible, allowing for a variety of
|
||||
algorithms to be implemented.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public r-absim
|
||||
(package
|
||||
(name "r-absim")
|
||||
(version "0.2.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "AbSim" version))
|
||||
(sha256
|
||||
(base32 "16ddjk8b6xw80ch4jis1y751i9561wdxh0gifbf15qiz3vjckq8m"))))
|
||||
(properties `((upstream-name . "AbSim")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ape" ,r-ape)
|
||||
("r-powerlaw" ,r-powerlaw)))
|
||||
(home-page "https://cran.r-project.org/web/packages/AbSim/")
|
||||
(synopsis "Time resolved simulations of antibody repertoires")
|
||||
(description
|
||||
"This package provides simulation methods for the evolution of antibody repertoires.
|
||||
The heavy and light chain variable region of both human and C57BL/6 mice can
|
||||
be simulated in a time-dependent fashion. Both single lineages using one set of
|
||||
V-, D-, and J-genes or full repertoires can be simulated. The algorithm begins
|
||||
with an initial V-D-J recombination event, starting the first phylogenetic tree.
|
||||
Upon completion, the main loop of the algorithm begins, with each iteration
|
||||
representing one simulated time step. Various mutation events are possible at
|
||||
each time step, contributing to a diverse final repertoire.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public r-ac3net
|
||||
(package
|
||||
(name "r-ac3net")
|
||||
(version "1.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "Ac3net" version))
|
||||
(sha256
|
||||
(base32 "1ns4n0xxz6p34c11bj0k7nzgmyqr9mis2b0g5nfz37dbikndyqyz"))))
|
||||
(properties `((upstream-name . "Ac3net")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-data-table" ,r-data-table)))
|
||||
(home-page "https://cran.r-project.org/web/packages/Ac3net/")
|
||||
(synopsis "Inferring directional conservative causal core gene networks")
|
||||
(description "This package infers directional Conservative causal core
|
||||
(gene) networks (C3NET). This is a version of the algorithm C3NET with
|
||||
directional network.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public r-aca
|
||||
(package
|
||||
(name "r-aca")
|
||||
(version "1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ACA" version))
|
||||
(sha256
|
||||
(base32 "1i3hm27nvnkvc39xlh0d1blq8q0q02czmvgi3cazmjx3jvxay0vq"))))
|
||||
(properties `((upstream-name . "ACA")))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/ACA/")
|
||||
(synopsis "Abrupt change-point or aberration detection in point series")
|
||||
(description
|
||||
"This package offers an interactive function for the detection of breakpoints in
|
||||
series.")
|
||||
;; Any version of the GPL
|
||||
(license (list license:gpl2+ license:gpl3+))))
|
||||
|
||||
(define-public r-acceptancesampling
|
||||
(package
|
||||
(name "r-acceptancesampling")
|
||||
(version "1.0-5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "AcceptanceSampling" version))
|
||||
(sha256
|
||||
(base32 "18krmmyn8pn11aqd81kbvka68lnd36mnpdh7p3pz9r4m4vjj007x"))))
|
||||
(properties
|
||||
`((upstream-name . "AcceptanceSampling")))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/AcceptanceSampling/")
|
||||
(synopsis "Creation and evaluation of acceptance sampling plans")
|
||||
(description
|
||||
"This @code{r-acceptancesampling} provides functionality for creating and evaluating
|
||||
acceptance sampling plans. Acceptance sampling is a methodology commonly used
|
||||
in quality control and improvement. International standards of acceptance
|
||||
sampling provide sampling plans for specific circumstances. The aim of this
|
||||
package is to provide an easy-to-use interface to visualize single, double or
|
||||
multiple sampling plans. In addition, methods have been provided to enable the
|
||||
user to assess sampling plans against pre-specified levels of performance, as
|
||||
measured by the probability of acceptance for a given level of quality in the
|
||||
lot.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public r-acclma
|
||||
(package
|
||||
(name "r-acclma")
|
||||
(version "1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ACCLMA" version))
|
||||
(sha256
|
||||
(base32 "1na27sp18fq12gp6vxgqw1ffsz2yi1d8xvrxbrzx5g1kqxrayy0v"))))
|
||||
(properties `((upstream-name . "ACCLMA")))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/ACCLMA/")
|
||||
(synopsis "ACC & LMA graph plotting")
|
||||
(description
|
||||
"This package contains a function that imports data from a @acronym{CSV,
|
||||
Comma-Separated Values} file, or uses manually entered data from the format (x,
|
||||
y, weight) and plots the appropriate @acronym{ACC, Absolute Concentration
|
||||
Curve} vs @acronym{LOI, Line of Independence} graph and
|
||||
@acronym{LMA, @acronym{LOI} Minus @acronym{ACC}} graph. The main
|
||||
function is @code{plotLMA} (source file, header) that takes a data set and plots the
|
||||
appropriate @acronym{LMA} and @acronym{ACC} graphs. If no source file (a
|
||||
string) was passed, a manual data entry window is opened. The header parameter
|
||||
indicates by TRUE/FALSE (false by default) if the source @acronym{CSV} file has
|
||||
a header row or not. The dataset should contain only one independent variable
|
||||
(x) and one dependent variable (y) and can contain a weight for each
|
||||
observation.")
|
||||
(license license:gpl2)))
|
||||
|
|
|
@ -642,7 +642,7 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.")
|
|||
(define-public escpr
|
||||
(package
|
||||
(name "escpr")
|
||||
(version "1.6.20")
|
||||
(version "1.6.30")
|
||||
;; XXX: This currently works. But it will break as soon as a newer
|
||||
;; version is available since the URLs for older versions are not
|
||||
;; preserved. An alternative source will be added as soon as
|
||||
|
@ -650,12 +650,12 @@ HP@tie{}LaserJet, and possibly other printers. See @file{README} for details.")
|
|||
(source (origin
|
||||
(method url-fetch)
|
||||
;; The uri has to be chopped up in order to satisfy guix lint.
|
||||
(uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/07/16/23/"
|
||||
"804253d188a31ae6a0f2722648248ef952afedfb/"
|
||||
"epson-inkjet-printer-escpr-1.6.20-1lsb3.2.tar.gz"))
|
||||
(uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/08/18/20/"
|
||||
"e94de600e28e510c1cfa158929d8b2c0aadc8aa0/"
|
||||
"epson-inkjet-printer-escpr-1.6.30-1lsb3.2.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"19800pl7kbbgdzbsy9ijmd7dm3ly4kr2h1dxypqpd075g6n0i770"))))
|
||||
"0m8pyfkixisp0vclwxj340isn15zzisal0v2xvv66kxfd68dzf12"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
|
|
@ -2685,12 +2685,14 @@ parsing code in hiredis. It primarily speeds up parsing of multi bulk replies."
|
|||
`(#:tests? #f))
|
||||
(home-page "https://github.com/jamesls/fakeredis")
|
||||
(synopsis "Fake implementation of redis API for testing purposes")
|
||||
(description "Fakeredis is a pure python implementation of the redis-py
|
||||
python client that simulates talking to a redis server. This was created for a
|
||||
single purpose: to write unittests. Setting up redis is not hard, but many time
|
||||
you want to write unittests that do not talk to an external server (such as
|
||||
redis). This module now allows tests to simply use this module as a reasonable
|
||||
substitute for redis.")
|
||||
(description
|
||||
"Fakeredis is a pure-Python implementation of the redis-py Python client
|
||||
that simulates talking to a redis server. It was created for a single purpose:
|
||||
to write unit tests.
|
||||
|
||||
Setting up redis is not hard, but one often wants to write unit tests that don't
|
||||
talk to an external server such as redis. This module can be used as a
|
||||
reasonable substitute.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python2-fakeredis
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -37,14 +38,14 @@
|
|||
(define-public dico
|
||||
(package
|
||||
(name "dico")
|
||||
(version "2.6")
|
||||
(version "2.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/dico/dico-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zmi041gv5nd5fmyzgdrgrsy2pvjaq9p8dvvhxwi842hiyng5b7i"))))
|
||||
"0dg4aacnmlf3ljssd7dwh8z5644xzq8k1501mbsx8nz8p8a9mbsq"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags (list (string-append "--with-guile-site-dir=" %output
|
||||
|
@ -57,7 +58,11 @@
|
|||
;; infrastructure. Gag it.
|
||||
(setenv "GUILE_AUTO_COMPILE" "0")
|
||||
(setenv "GUILE_WARN_DEPRECATED" "no")
|
||||
#t)))))
|
||||
#t))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
;; Test '71: append + dooffs + env' fails if $V is not 2.
|
||||
(invoke "make" "check" "V=2"))))))
|
||||
(inputs
|
||||
`(("m4" ,m4) ;used at run time
|
||||
("pcre" ,pcre)
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -219,7 +220,7 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
|
|||
"Grammalecte-fr-v" version ".zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"1flsahqw2r0cmg0bixpl5w0acricmdh2cf4lf9zr66ydgmjnmv2s"))))
|
||||
"11byjs3ggdhia5f4vyfqfvbbczsfqimll98h98g7hlsrm7vrifb0"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://www.dicollecte.org")
|
||||
(synopsis "French spelling and grammar checker")
|
||||
|
|
|
@ -631,14 +631,15 @@ passphrases.")
|
|||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'autogen
|
||||
(add-after 'unpack 'patch-FHS-file-names
|
||||
(lambda _
|
||||
(substitute* "autogen.sh"
|
||||
(("/bin/sh") (which "sh")))
|
||||
(substitute* "git-version-gen"
|
||||
(("/bin/sh") (which "sh")))
|
||||
(substitute* "git-version"
|
||||
(("/bin/bash") (which "bash"))))))
|
||||
(("/bin/bash") (which "bash")))
|
||||
#t)))
|
||||
#:make-flags
|
||||
(let ((out (assoc-ref %outputs "out")))
|
||||
(list (string-append "BASH_COMPLETION_DIR=" out
|
||||
|
|
|
@ -104,7 +104,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
|
|||
(define-public isc-bind
|
||||
(package
|
||||
(name "bind")
|
||||
(version "9.12.2-P1")
|
||||
(version "9.12.2-P2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -112,7 +112,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"192ld6w8f4n46hvdmmzzrfkd28apf4dwmbpbi3j2q1d2p315ajww"))))
|
||||
"0gk9vwqlbdmn10m21f2awvmiccfbadvcwi8zsgm91awbx4k7h0l7"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs `("out" "utils"))
|
||||
(inputs
|
||||
|
@ -289,6 +289,77 @@ asynchronous fashion.")
|
|||
(license:non-copyleft "file://LICENSE") ; includes.h
|
||||
license:openssl))))
|
||||
|
||||
(define-public nsd
|
||||
(package
|
||||
(name "nsd")
|
||||
(version "4.1.25")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0zyzjd3wmq258jiry62ci1z23qfd0rc5ggnpmybc60xvpddgynwg"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "--enable-pie" ; fully benefit from ASLR
|
||||
"--enable-ratelimit"
|
||||
"--enable-recvmmsg"
|
||||
"--enable-relro-now" ; protect GOT and .dtor areas
|
||||
"--disable-radix-tree"
|
||||
(string-append "--with-libevent="
|
||||
(assoc-ref %build-inputs "libevent"))
|
||||
(string-append "--with-ssl="
|
||||
(assoc-ref %build-inputs "openssl"))
|
||||
"--with-configdir=/etc"
|
||||
"--with-nsd_conf_file=/etc/nsd/nsd.conf"
|
||||
"--with-logfile=/var/log/nsd.log"
|
||||
"--with-pidfile=/var/db/nsd/nsd.pid"
|
||||
"--with-dbfile=/var/db/nsd/nsd.db"
|
||||
"--with-zonesdir=/etc/nsd"
|
||||
"--with-xfrdfile=/var/db/nsd/xfrd.state"
|
||||
"--with-zonelistfile=/var/db/nsd/zone.list")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-installation-paths
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(doc (string-append out "/share/doc/" ,name "-" ,version)))
|
||||
;; The ‘make install’ target tries to create the parent
|
||||
;; directories of run-time things like ‘pidfile’ above, and
|
||||
;; useless empty directories like 'configdir'. Remove such
|
||||
;; '$(INSTALL)' lines and install the example configuration file
|
||||
;; in an appropriate location.
|
||||
(substitute* "Makefile.in"
|
||||
((".*INSTALL.*\\$\\((config|pid|xfr|db)dir" command)
|
||||
(string-append "#" command))
|
||||
(("\\$\\(nsdconfigfile\\)\\.sample" file-name)
|
||||
(string-append doc "/examples/" file-name)))
|
||||
#t))))
|
||||
#:tests? #f)) ; no tests
|
||||
(inputs
|
||||
`(("libevent" ,libevent)
|
||||
("openssl" ,openssl)))
|
||||
(home-page "https://www.nlnetlabs.nl/projects/nsd/about/")
|
||||
(synopsis "Authoritative DNS name server")
|
||||
(description "@dfn{NSD}, short for Name Server Daemon, is an authoritative
|
||||
name server for the Domain Name System (@dfn{DNS}). It aims to be a fast and
|
||||
RFC-compliant nameserver.
|
||||
|
||||
NSD uses zone information compiled via @command{zonec} into a binary database
|
||||
file (@file{nsd.db}). This allows fast startup of the name service daemon and
|
||||
allows syntax-structural errors in zone files to be flagged at compile time,
|
||||
before being made available to NSD service itself. However, most traditional
|
||||
BIND-style zone files can be directly imported into NSD without modification.
|
||||
|
||||
The collection of programs and processes that make up NSD are designed so that
|
||||
the daemon itself runs as a non-privileged user and can be easily configured to
|
||||
run in a @code{chroot} jail, thus making any security flaws in NSD less likely
|
||||
to result in system-wide compromise.")
|
||||
(license (list license:bsd-3))))
|
||||
|
||||
(define-public unbound
|
||||
(package
|
||||
(name "unbound")
|
||||
|
|
|
@ -458,7 +458,7 @@ on stdout instead of using a socket as the Emacsclient does.")
|
|||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/magit/magit/releases/download/"
|
||||
version "/" name "-" version ".tar.gz"))
|
||||
version "/magit-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ygaah3dd3nxpyd17297xgvdcgr7pgzzwlmpnmchki0kiwgg3sbc"))))
|
||||
|
@ -782,9 +782,6 @@ different tools. It highlights errors and warnings inline in the buffer, and
|
|||
provides an optional IDE-like error list.")
|
||||
(license license:gpl3+))) ;+GFDLv1.3+ for the manual
|
||||
|
||||
(define-public flycheck
|
||||
(deprecated-package "flycheck" emacs-flycheck))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Web browsing.
|
||||
|
@ -1066,9 +1063,6 @@ light user interface.")
|
|||
(home-page "https://www.gnu.org/software/emms/")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emms
|
||||
(deprecated-package "emacs-emms" emacs-emms))
|
||||
|
||||
(define-public emacs-emms-player-mpv
|
||||
;; A new mpv backend is included in Emms from 5.0.
|
||||
(deprecated-package "emacs-emms-player-mpv" emacs-emms))
|
||||
|
@ -1088,7 +1082,7 @@ light user interface.")
|
|||
"0ifszi930pnaxk1x8pcydmvnp06868gc7nfx14q17zbajbx735k6"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emms" ,emms)))
|
||||
`(("emms" ,emacs-emms)))
|
||||
(home-page "https://github.com/momomo5717/emms-mode-line-cycle")
|
||||
(synopsis "Display the EMMS mode line as a ticker")
|
||||
(description
|
||||
|
@ -2722,9 +2716,6 @@ view the build status of those servers' build jobs, and possibly to trigger
|
|||
build jobs.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public butler
|
||||
(deprecated-package "emacs-butler" emacs-butler))
|
||||
|
||||
(define-public emacs-company
|
||||
(package
|
||||
(name "emacs-company")
|
||||
|
@ -2874,9 +2865,6 @@ automatically inserts a Unicode opening or closing quotation mark, depending
|
|||
on context.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public typo
|
||||
(deprecated-package "emacs-typo" emacs-typo))
|
||||
|
||||
(define-public emacs-scheme-complete
|
||||
(let ((commit "9b5cf224bf2a5994bc6d5b152ff487517f1a9bb5"))
|
||||
(package
|
||||
|
@ -6994,8 +6982,8 @@ Emacs.")
|
|||
(substitute* "bin/ert-runner"
|
||||
(("ERT_RUNNER=\"\\$\\(dirname \\$\\(dirname \\$0\\)\\)")
|
||||
(string-append "ERT_RUNNER=\"" out
|
||||
"/share/emacs/site-lisp/guix.d/"
|
||||
,name "-" ,version)))
|
||||
"/share/emacs/site-lisp/guix.d/ert-runner-"
|
||||
,version)))
|
||||
(install-file "bin/ert-runner" (string-append out "/bin"))
|
||||
(wrap-program (string-append out "/bin/ert-runner")
|
||||
(list "EMACSLOADPATH" ":" 'prefix
|
||||
|
@ -8019,7 +8007,7 @@ supports multiple backends such as @code{vlc}, @code{mpg123},
|
|||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/Groovy-Emacs-Modes/" name
|
||||
"https://github.com/Groovy-Emacs-Modes/groovy-emacs-modes"
|
||||
"/archive/" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
|
@ -8061,9 +8049,6 @@ navigation with the grails mode.")
|
|||
@kbd{C-<} to jump to the next and previous slide.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public org-tree-slide
|
||||
(deprecated-package "emacs-org-tree-slide" emacs-org-tree-slide))
|
||||
|
||||
(define-public emacs-scratch-el
|
||||
(let ((commit "2cdf2b841ce7a0987093f65b0cc431947549f897")
|
||||
(revision "1"))
|
||||
|
@ -10425,8 +10410,8 @@ perform regression test for packages that provide font-lock rules.")
|
|||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-racket-mode
|
||||
(let ((commit "92c33487f6c707880ac3f6169e7ea65ddffd1463")
|
||||
(revision "1"))
|
||||
(let ((commit "b977873e6128f8399432dcd60cc39f6a6f803d9c")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "emacs-racket-mode")
|
||||
(version (string-append "0.0.2" "-" revision "."
|
||||
|
@ -10440,7 +10425,7 @@ perform regression test for packages that provide font-lock rules.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"19q6ym10gj2xdzzcgh3wdbq1xv8cv7nlrhv2b0bjvvdjzhiki472"))))
|
||||
"0vp4bbbplqvmnhjpl6ajrlydmrhqzil56cfbs18m5c5fddx0zlh7"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:include '("\\.el$" "\\.rkt$")))
|
||||
|
@ -12277,3 +12262,96 @@ execute its commands and resize images.")
|
|||
(description "Synosaurus is a thesaurus fontend for Emacs with pluggable
|
||||
backends, including the @command{wordnet} offline backend.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-all-the-icons
|
||||
(package
|
||||
(name "emacs-all-the-icons")
|
||||
(version "3.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/domtronn/all-the-icons.el.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1sdl33117lccznj38021lwcdnpi9nxmym295q6y460y4dm4lx0jn"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:include '("\\.el$" "^data/" "^fonts/")
|
||||
;; Compiling "test/" fails with "Symbol’s value as variable is void:
|
||||
;; all-the-icons--root-code". Ignoring tests.
|
||||
#:exclude '("^test/")
|
||||
#:tests? #f))
|
||||
(propagated-inputs
|
||||
`(("f" ,emacs-f)
|
||||
("memoize" ,emacs-memoize)))
|
||||
(home-page "https://github.com/domtronn/all-the-icons.el")
|
||||
(synopsis "Collect icon fonts and propertize them within Emacs")
|
||||
(description "All-the-icons is a utility package to collect various icon
|
||||
fonts and propertize them within Emacs. Icon fonts allow you to propertize
|
||||
and format icons the same way you would normal text. This enables things such
|
||||
as better scaling of and anti aliasing of the icons.")
|
||||
;; Package is released under Expat license. Elisp files are licensed
|
||||
;; under GPL3+. Fonts come with various licenses: Expat for
|
||||
;; "all-the-icons.ttf" and "file-icons.ttf", Apache License 2.0 for
|
||||
;; "material-design-icons.ttf", and SIL OFL 1.1 for "fontawesome.ttf",
|
||||
;; "ocitcons.ttf" and "weathericons.ttf".
|
||||
(license
|
||||
(list license:expat license:gpl3+ license:silofl1.1 license:asl2.0))))
|
||||
|
||||
(define-public emacs-powerline
|
||||
(package
|
||||
(name "emacs-powerline")
|
||||
(version "2.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/milkypostman/powerline.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hp3xp18943n0rlggz55150020ivw8gvi1vyxkr4z8xhpwq4gaar"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/milkypostman/powerline/")
|
||||
(synopsis "Mode-line plugin for Emacs")
|
||||
(description "Powerline is a utility plugin which allows you to create
|
||||
a better-looking, more functional Emacs mode-line. A collection of predefined
|
||||
themes comes with the package.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-spaceline
|
||||
(package
|
||||
(name "emacs-spaceline")
|
||||
(version "2.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/TheBB/spaceline.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q8r95zfrh0vxna5ml2pq9b9f66clfqcl4d2qy2aizkvzyxg6skl"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("dash" ,emacs-dash)
|
||||
("powerline" ,emacs-powerline)
|
||||
("s" ,emacs-s)))
|
||||
(home-page "https://github.com/TheBB/spaceline")
|
||||
(synopsis "Powerline theme from Spacemacs")
|
||||
(description "Spaceline provides Spacemacs' mode-line theme.
|
||||
This package provides features for three kinds of users.
|
||||
|
||||
@itemize
|
||||
@item You just want to use the Spacemacs mode-line theme and forget about it.
|
||||
@item You want to use something similar to the Spacemacs mode-line theme, but
|
||||
with a handful of easy tweaks.
|
||||
@item You want an easy-to-use library for building your own mode-line from
|
||||
scratch, and you think the Spacemacs theme looks good.
|
||||
@end itemize")
|
||||
(license license:gpl3+)))
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2016 David Craven <david@craven.ch>
|
||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -27,6 +28,7 @@
|
|||
#:use-module (guix svn-download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix build utils)
|
||||
|
@ -1104,3 +1106,40 @@ and displaying decoded target responses.
|
|||
@end enumerate")
|
||||
(home-page "https://www.freecalypso.org/")
|
||||
(license license:public-domain)))
|
||||
|
||||
(define-public stlink
|
||||
(package
|
||||
(name "stlink")
|
||||
(version "1.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/texane/stlink/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"01z1cz1a5xbbhd163qrqcgp4bi1k145pb80jmwdz50g7sfzmy570"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;no tests
|
||||
#:configure-flags
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(etc (in-vicinity out "etc"))
|
||||
(modprobe (in-vicinity etc "modprobe.d"))
|
||||
(udev-rules (in-vicinity etc "udev/rules.d")))
|
||||
(list (string-append "-DSTLINK_UDEV_RULES_DIR=" udev-rules)
|
||||
(string-append "-DSTLINK_MODPROBED_DIR=" modprobe)))))
|
||||
(inputs
|
||||
`(("libusb" ,libusb)))
|
||||
(synopsis "Programmer for STM32 Discovery boards")
|
||||
(description "This package provides a firmware programmer for the STM32
|
||||
Discovery boards. It supports two versions of the chip: ST-LINK/V1 (on
|
||||
STM32VL discovery kits) and ST-LINK/V2 (on STM32L discovery and later kits).
|
||||
Two different transport layers are used: ST-LINK/V1 uses SCSI passthru
|
||||
commands over USB, and ST-LINK/V2 and ST-LINK/V2-1 (seen on Nucleo boards) use
|
||||
raw USB commands.")
|
||||
(home-page "https://github.com/texane/stlink")
|
||||
;; The flashloaders/stm32l0x.s and flashloaders/stm32lx.s source files are
|
||||
;; licensed under the GPLv2+.
|
||||
(license (list license:bsd-3 license:gpl2+))))
|
||||
|
|
|
@ -1055,15 +1055,16 @@ emulation community. It provides highly accurate emulation.")
|
|||
(define-public retroarch
|
||||
(package
|
||||
(name "retroarch")
|
||||
(version "1.7.4")
|
||||
(version "1.7.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/libretro/RetroArch/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/libretro/RetroArch.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0h6y2hpjg4b470jvn9ghwp0k3a527sbb6xhia17frlm9w9v5028w"))))
|
||||
(base32 "1jfpgl34jjxn3dvxd1kd564swkw7v98hnn562v998b7vllz3dxdm"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
|
@ -1184,7 +1185,7 @@ play them on systems for which they were never designed!")
|
|||
(define-public mame
|
||||
(package
|
||||
(name "mame")
|
||||
(version "0.201")
|
||||
(version "0.202")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1194,7 +1195,7 @@ play them on systems for which they were never designed!")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"00whiig4ld3d4fkl34q48vlf28ygvvp5g7fp0rb5n31ymhl4kajk"))
|
||||
"1v9gm124p65nbj678gfkcvwphp9qc15ky2p12ca6g3rllma94di5"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Remove bundled libraries.
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Timo Eisenmann <eisenmann@fn.de>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -268,13 +269,23 @@ Libraries with some extra bells and whistles.")
|
|||
(add-before 'configure 'set-system-actions
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((xkeyboard (assoc-ref inputs "xkeyboard-config"))
|
||||
(utils (assoc-ref inputs "util-linux")))
|
||||
(setxkbmap (assoc-ref inputs "setxkbmap"))
|
||||
(utils (assoc-ref inputs "util-linux"))
|
||||
(libc (assoc-ref inputs "libc")))
|
||||
;; We need to patch the path to 'base.lst' to be able
|
||||
;; to switch the keyboard layout in E.
|
||||
(substitute* "src/modules/xkbswitch/e_mod_parse.c"
|
||||
(substitute* (list "src/modules/xkbswitch/e_mod_parse.c"
|
||||
"src/modules/wizard/page_011.c")
|
||||
(("/usr/share/X11/xkb/rules/xorg.lst")
|
||||
(string-append xkeyboard
|
||||
"/share/X11/xkb/rules/base.lst")))
|
||||
(substitute* "src/bin/e_xkb.c"
|
||||
(("\"setxkbmap \"")
|
||||
(string-append "\"" setxkbmap "/bin/setxkbmap \"")))
|
||||
(substitute* (list "src/bin/e_intl.c"
|
||||
"src/modules/conf_intl/e_int_config_intl.c"
|
||||
"src/modules/wizard/page_010.c")
|
||||
(("locale -a") (string-append libc "/bin/locale -a")))
|
||||
(substitute* "src/modules/everything/evry_plug_apps.c"
|
||||
(("/usr/bin/") ""))
|
||||
(substitute* "configure"
|
||||
|
@ -298,6 +309,7 @@ Libraries with some extra bells and whistles.")
|
|||
("libxcb" ,libxcb)
|
||||
("libxext" ,libxext)
|
||||
("linux-pam" ,linux-pam)
|
||||
("setxkbmap" ,setxkbmap)
|
||||
("xcb-util-keysyms" ,xcb-util-keysyms)
|
||||
("xkeyboard-config" ,xkeyboard-config)))
|
||||
(home-page "https://www.enlightenment.org/about-enlightenment")
|
||||
|
@ -452,19 +464,22 @@ and in creating applications based on the Enlightenment Foundation Library suite
|
|||
(home-page "http://smhouston.us/ephoto/")
|
||||
(synopsis "EFL image viewer/editor/manipulator/slideshow creator")
|
||||
(description "Ephoto is an image viewer and editor written using the
|
||||
@dfn{Enlightenment Foundation Libraries} (EFL). It focuses on simplicity and ease
|
||||
of use, while taking advantage of the speed and small footprint the EFL provide.
|
||||
@dfn{Enlightenment Foundation Libraries} (EFL). It focuses on simplicity and
|
||||
ease of use, while taking advantage of the speed and small footprint the EFL
|
||||
provide.
|
||||
|
||||
Ephoto’s features include:
|
||||
@enumerate
|
||||
@item Browsing the filesystem and displaying images in an easy to use grid view.
|
||||
@item Browsing the file system and displaying images in an easy-to-use grid view.
|
||||
@item Browsing images in a single image view format.
|
||||
@item Viewing images in a slideshow.
|
||||
@item Editing your image with features such as cropping, auto enhance,
|
||||
blurring, sharpening, brightness/contrast/gamma adjustments, hue/saturation/value
|
||||
adjustments, and color level adjustment.
|
||||
@item Applying artistic filters to your image such as black and white and old photo.
|
||||
@item Drag And Drop along with file operations to easy maintain your photo directories.
|
||||
@item Applying artistic filters to your image such as black and white and old
|
||||
photo.
|
||||
@item Drag And Drop along with file operations to easily maintain your photo
|
||||
directories.
|
||||
@end enumerate\n")
|
||||
(license (list
|
||||
license:bsd-2 ; Ephoto's thumbnailing code
|
||||
|
|
|
@ -107,7 +107,7 @@ single file can be mounted.")
|
|||
(define-public disorderfs
|
||||
(package
|
||||
(name "disorderfs")
|
||||
(version "0.5.3")
|
||||
(version "0.5.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -117,7 +117,7 @@ single file can be mounted.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nmhfvxpvz3xsfxl9wqnh6r2l5m7hjq6n0vpblsl5xdcvwaqcf50"))))
|
||||
"1mw4ix9h17ikki8p2rxdvzp87rcm1c7by5lvfn5gxlxr7hlj9f8g"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -1210,7 +1210,7 @@ ExtraLight, Light, Book, Medium, Semibold, Bold & ExtraBold")
|
|||
(define-public font-culmus
|
||||
(package
|
||||
(name "font-culmus")
|
||||
(version "0.132")
|
||||
(version "0.133")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1219,7 +1219,7 @@ ExtraLight, Light, Book, Medium, Semibold, Bold & ExtraBold")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1djxalm26r7bcq33ckmfa15xfs6pmqzvcl64d5lqa1dl01bl4j4z"))))
|
||||
"02akysgsqhi15cck54xcacm16q5raf4l7shgb8fnj7xr3c1pbfyp"))))
|
||||
(build-system font-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -349,7 +349,7 @@ of a the system to know what users are logged in, and where.")
|
|||
(define-public packagekit
|
||||
(package
|
||||
(name "packagekit")
|
||||
(version "1.1.10")
|
||||
(version "1.1.11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -358,7 +358,7 @@ of a the system to know what users are logged in, and where.")
|
|||
"PackageKit-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1msfmb22cm4s3l6vsbr86b8s0v897sy6gcga3qg87z7640a0di2b"))))
|
||||
"0fi6wn54y03zh5sn92nmmxkh4cd8yn44cyk0l8phw60ivfwmkh1q"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
|
|
|
@ -397,7 +397,7 @@ support.")
|
|||
(define-public tiled
|
||||
(package
|
||||
(name "tiled")
|
||||
(version "1.1.6")
|
||||
(version "1.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/bjorn/tiled/archive/v"
|
||||
|
@ -405,7 +405,7 @@ support.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"194ciw8688mikndvxivzb8ql5vm405pkwnn4srzm7ymwfc4xygb0"))))
|
||||
"13dlf5kzvhhjkhy19118x3diakmraz4m9kxrsdam8dms6xivb6lp"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
|
@ -1256,17 +1256,24 @@ a 2D editor view.")
|
|||
(define-public guile-chickadee
|
||||
(package
|
||||
(name "guile-chickadee")
|
||||
(version "0.2.0")
|
||||
(version "0.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://files.dthompson.us/chickadee/"
|
||||
"chickadee-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"10qx0ha5gsayybd186r1my7vc7rf5fbzp9jvmc4xg9a8wz8rqhah"))))
|
||||
"0jl223dybsj5gvs7z4q60gnafj1b7kgi5mx0kj58m5knrp8qwg5h"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:make-flags '("GUILE_AUTO_COMPILE=0")))
|
||||
'(#:make-flags '("GUILE_AUTO_COMPILE=0")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-godir
|
||||
(lambda _
|
||||
;; Install compiled '.go' files into the site directory.
|
||||
(substitute* "Makefile.in"
|
||||
(("/ccache") "/site-ccache")))))))
|
||||
(propagated-inputs
|
||||
`(("guile-opengl" ,guile-opengl)
|
||||
("guile-sdl2" ,guile-sdl2)))
|
||||
|
|
|
@ -364,6 +364,59 @@ played. Freedoom complements the Doom engine with free levels, artwork, sound
|
|||
effects and music to make a completely free game.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public freedroidrpg
|
||||
(package
|
||||
(name "freedroidrpg")
|
||||
(version "0.16.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://ftp.osuosl.org/pub/freedroid/"
|
||||
"freedroidRPG-" (version-major+minor version) "/"
|
||||
"freedroidRPG-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0n4kn38ncmcy3lrxmq8fjry6c1z50z4q1zcqfig0j4jb0dsz2va2"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list
|
||||
(string-append "CFLAGS="
|
||||
"-I" (assoc-ref %build-inputs "sdl-gfx") "/include/SDL "
|
||||
"-I" (assoc-ref %build-inputs "sdl-image") "/include/SDL "
|
||||
"-I" (assoc-ref %build-inputs "sdl-mixer") "/include/SDL")
|
||||
"--enable-opengl")
|
||||
;; FIXME: the test suite fails with the following error output:
|
||||
;; 4586 Segmentation fault env SDL_VIDEODRIVER=dummy \
|
||||
;; SDL_AUDIODRIVER=dummy ./src/freedroidRPG -nb text
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("glu" ,glu)
|
||||
("libjpeg" ,libjpeg)
|
||||
("libogg" ,libogg)
|
||||
("libpng" ,libpng)
|
||||
("libvorbis" ,libvorbis)
|
||||
("mesa" ,mesa)
|
||||
("python" ,python-wrapper)
|
||||
("sdl" ,sdl)
|
||||
("sdl-gfx" ,sdl-gfx)
|
||||
("sdl-image" ,sdl-image)
|
||||
("sdl-mixer" ,sdl-mixer)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "http://www.freedroid.org/")
|
||||
(synopsis "Isometric role-playing game against killer robots")
|
||||
(description
|
||||
"Freedroid RPG is an @dfn{RPG} (Role-Playing Game) with isometric graphics.
|
||||
The game tells the story of a world destroyed by a conflict between robots and
|
||||
their human masters. To restore peace to humankind, the player must complete
|
||||
numerous quests while fighting off rebelling robots---either by taking control
|
||||
of them, or by simply blasting them to pieces with melee and ranged weapons in
|
||||
real-time combat.")
|
||||
(license (list license:expat ; lua/
|
||||
license:gpl3 ; src/gen_savestruct.py
|
||||
license:gpl2+)))) ; the rest
|
||||
|
||||
(define-public golly
|
||||
(package
|
||||
(name "golly")
|
||||
|
@ -2122,28 +2175,36 @@ on the screen and keyboard to display letters.")
|
|||
(define-public raincat
|
||||
(package
|
||||
(name "raincat")
|
||||
(version "1.1.1.3")
|
||||
(version "1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://hackage.haskell.org/package/Raincat/Raincat-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (string-append "http://hackage.haskell.org/package/Raincat/"
|
||||
"Raincat-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1aalh68h6799mv4vyg30zpskl5jkn6x2j1jza7p4lrflyifxzar8"))))
|
||||
"10y9zi22m6hf13c9h8zd9vg7mljpwbw0r3djb6r80bna701fdf6c"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-executable
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(wrap-program (string-append out "/bin/raincat")
|
||||
`("LD_LIBRARY_PATH" ":" =
|
||||
(,(string-append (assoc-ref inputs "freeglut")
|
||||
"/lib"))))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-random" ,ghc-random)
|
||||
("ghc-glut" ,ghc-glut)
|
||||
("freeglut" ,freeglut)
|
||||
("ghc-opengl" ,ghc-opengl)
|
||||
("ghc-sdl" ,ghc-sdl)
|
||||
("ghc-sdl-image" ,ghc-sdl-image)
|
||||
("ghc-sdl-mixer" ,ghc-sdl-mixer)))
|
||||
("ghc-sdl2" ,ghc-sdl2)
|
||||
("ghc-sdl2-image" ,ghc-sdl2-image)
|
||||
("ghc-sdl2-mixer" ,ghc-sdl2-mixer)))
|
||||
(home-page "http://www.bysusanlin.com/raincat/")
|
||||
(synopsis "Puzzle game with a cat in lead role")
|
||||
(description "Project Raincat is a game developed by Carnegie Mellon
|
||||
|
|
|
@ -24,8 +24,10 @@
|
|||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages geo)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system go)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system scons)
|
||||
#:use-module (guix build-system r)
|
||||
|
@ -37,6 +39,8 @@
|
|||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages datastructures)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages cran)
|
||||
#:use-module (gnu packages glib)
|
||||
|
@ -44,6 +48,7 @@
|
|||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages pcre)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
|
@ -57,7 +62,7 @@
|
|||
(define-public geos
|
||||
(package
|
||||
(name "geos")
|
||||
(version "3.6.2")
|
||||
(version "3.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://download.osgeo.org/geos/geos-"
|
||||
|
@ -65,7 +70,7 @@
|
|||
".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ak5szby29l9l0vy43dm5z2g92xzdky20q1gc1kah1fnhkgi6nh4"))))
|
||||
"1mrz778m6bd1x9k6sha5kld43kalhq79h2lynlx2jx7xjakl3gsg"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments `(#:phases
|
||||
(modify-phases %standard-phases
|
||||
|
@ -760,3 +765,224 @@ location queries to be run in SQL.")
|
|||
license:bsd-3 ; files only say "BSD"
|
||||
;; doc
|
||||
license:cc-by-sa3.0))))
|
||||
|
||||
(define-public tegola
|
||||
(package
|
||||
(name "tegola")
|
||||
(version "0.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/go-spatial/tegola/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09vnzxfn0r70kmd776kcdfqxhzdj11syxa0b27z4ci1k367v7viw"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/go-spatial/tegola/cmd/tegola"
|
||||
#:unpack-path "github.com/go-spatial"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'set-version
|
||||
(lambda _
|
||||
(with-directory-excursion
|
||||
(string-append "src/github.com/go-spatial/tegola-" ,version)
|
||||
(substitute* '("cmd/tegola/cmd/root.go"
|
||||
"cmd/tegola_lambda/main.go")
|
||||
(("version not set") ,version)))
|
||||
#t))
|
||||
(add-before 'build 'rename-import
|
||||
(lambda _
|
||||
(rename-file (string-append "src/github.com/go-spatial/tegola-" ,version)
|
||||
"src/github.com/go-spatial/tegola")
|
||||
#t)))))
|
||||
(home-page "http://tegola.io")
|
||||
(synopsis "Vector tile server for maps")
|
||||
(description "Tegola is a free vector tile server written in Go. Tegola
|
||||
takes geospatial data and slices it into vector tiles that can be efficiently
|
||||
delivered to any client.")
|
||||
(license (list
|
||||
license:expat
|
||||
;; Some packages in vendor have other licenses
|
||||
license:asl2.0
|
||||
license:bsd-2
|
||||
license:bsd-3
|
||||
license:wtfpl2))))
|
||||
|
||||
(define-public imposm3
|
||||
(package
|
||||
(name "imposm3")
|
||||
(version "0.6.0-alpha.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/omniscale/imposm3/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"06f0kwmv52yd5m9jlckqxqmkf0cnqy3hamakrvg9lspplyqrds80"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/omniscale/imposm3/cmd/imposm"
|
||||
#:unpack-path "github.com/omniscale"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'rename-import
|
||||
(lambda _
|
||||
(rename-file (string-append "src/github.com/omniscale/imposm3-" ,version)
|
||||
"src/github.com/omniscale/imposm3")
|
||||
#t))
|
||||
(add-before 'build 'set-version
|
||||
(lambda _
|
||||
(substitute* "src/github.com/omniscale/imposm3/version.go"
|
||||
(("0.0.0-dev") ,version))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("geos" ,geos)
|
||||
("leveldb" ,leveldb)))
|
||||
(home-page "https://imposm.org/")
|
||||
(synopsis "OpenStreetMap importer for PostGIS")
|
||||
(description "Imposm is an importer for OpenStreetMap data. It reads PBF
|
||||
files and imports the data into PostgreSQL/PostGIS databases. It is designed
|
||||
to create databases that are optimized for rendering/tile/map-services.")
|
||||
(license (list
|
||||
license:asl2.0
|
||||
;; Some dependencies in vendor have different licenses
|
||||
license:expat
|
||||
license:bsd-2
|
||||
license:bsd-3))))
|
||||
|
||||
(define-public protozero
|
||||
(package
|
||||
(name "protozero")
|
||||
(version "1.6.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/mapbox/protozero/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xaj4phz1r7xn0vgdfvfkz8b0bizgb6mavjky1zqcvdmbwgwgly5"))))
|
||||
(build-system cmake-build-system)
|
||||
(home-page "https://github.com/mapbox/protozero")
|
||||
(synopsis "Minimalistic protocol buffer decoder and encoder in C++")
|
||||
(description "Protozero is a minimalistic protocol buffer decored and
|
||||
encoder in C++. The developer using protozero has to manually translate the
|
||||
@file{.proto} description into code.")
|
||||
(license (list
|
||||
license:asl2.0; for folly
|
||||
license:bsd-2))))
|
||||
|
||||
(define-public libosmium
|
||||
(package
|
||||
(name "libosmium")
|
||||
(version "2.14.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/osmcode/libosmium/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0d9b46qiw7zkw1h9lygjdwqxnbhm3c7v8kydzw9f9f778cyagc94"))))
|
||||
(build-system cmake-build-system)
|
||||
(propagated-inputs
|
||||
`(("boost" ,boost)
|
||||
("expat" ,expat)
|
||||
("gdal" ,gdal)
|
||||
("geos" ,geos)
|
||||
("proj.4" ,proj.4)
|
||||
("protozero" ,protozero)
|
||||
("sparsehash" ,sparsehash)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)))
|
||||
(home-page "https://osmcode.org/libosmium/")
|
||||
(synopsis "C++ library for working with OpenStreetMap data")
|
||||
(description "Libosmium is a fast and flexible C++ library for working with
|
||||
OpenStreetMap data.")
|
||||
(license license:boost1.0)))
|
||||
|
||||
(define-public osm2pgsql
|
||||
(package
|
||||
(name "osm2pgsql")
|
||||
(version "0.96.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/openstreetmap/osm2pgsql/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08y7776r4l9v9177a4q6cfdri0lpirky96m6g699hwl7v1vhw0mn"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(delete-file-recursively "contrib/protozero")
|
||||
(delete-file-recursively "contrib/libosmium")
|
||||
#t))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f; tests fail because we need to setup a database
|
||||
#:configure-flags
|
||||
(list (string-append "-DOSMIUM_INCLUDE_DIR="
|
||||
(assoc-ref %build-inputs "libosmium")
|
||||
"/include")
|
||||
(string-append "-DPROTOZERO_INCLUDE_DIR="
|
||||
(assoc-ref %build-inputs "protozero")
|
||||
"/include"))))
|
||||
(inputs
|
||||
`(("boost" ,boost)
|
||||
("expat" ,expat)
|
||||
("libosmium" ,libosmium)
|
||||
("lua" ,lua)
|
||||
("postgresql" ,postgresql)
|
||||
("proj.4" ,proj.4)
|
||||
("protozero" ,protozero)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
`(("python-2" ,python-2)
|
||||
("python2-psycopg2" ,python2-psycopg2)))
|
||||
(home-page "https://github.com/openstreetmap/osm2pgsql")
|
||||
(synopsis "OSM data importer to postgresql")
|
||||
(description "Osm2pgsql is a tool for loading OpenStreetMap data into a
|
||||
PostgreSQL / PostGIS database suitable for applications like rendering into a
|
||||
map, geocoding with Nominatim, or general analysis.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public tippecanoe
|
||||
(package
|
||||
(name "tippecanoe")
|
||||
(version "1.31.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/mapbox/tippecanoe/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1057na1dkgjaryr7jr15lqkxpam111d3l5zdpdkqzzzpxmdjxqcf"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases (delete 'configure))
|
||||
#:test-target "test"
|
||||
#:make-flags
|
||||
(list "CC=gcc"
|
||||
(string-append "PREFIX=" (assoc-ref %outputs "out")))))
|
||||
(inputs
|
||||
`(("perl" ,perl)
|
||||
("sqlite" ,sqlite)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "https://github.com/mapbox/tippecanoe")
|
||||
(synopsis "Vector tile server for maps")
|
||||
(description "Tippecanoe creates scale-independent view of data, so that
|
||||
the texture and density of features is visible at every zoom level, instead of
|
||||
dropping features at lower levels.")
|
||||
(license license:bsd-2)))
|
||||
|
|
|
@ -4096,15 +4096,15 @@ work and the interface is well tested.")
|
|||
(define-public eolie
|
||||
(package
|
||||
(name "eolie")
|
||||
(version "0.9.37")
|
||||
(version "0.9.38")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gitlab.gnome.org/World/eolie/"
|
||||
"uploads/4341cb428b7a45670308ee3fb3fa07dd/"
|
||||
"uploads/9814c06a1bc83ea09c3da8719a9ed11b/"
|
||||
"eolie-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"126m0nwwy3lqv7z8aj9hiwangih03b1nlkg3xja9p7wbf7zcvp2n"))))
|
||||
"10vrh91rapgfmqwc6jkcybpmlvn4q0y8bnklw3rddzigf9kvqsff"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:glib-or-gtk? #t
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cargo)
|
||||
#:use-module (gnu packages audio)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages databases)
|
||||
|
@ -62,6 +63,7 @@
|
|||
#:use-module (gnu packages rust)
|
||||
#:use-module (gnu packages icu4c)
|
||||
#:use-module (gnu packages video)
|
||||
#:use-module (gnu packages xiph)
|
||||
#:use-module (gnu packages xdisorg)
|
||||
#:use-module (gnu packages readline))
|
||||
|
||||
|
@ -495,12 +497,28 @@ security standards.")
|
|||
"0lqx7g79x15941rhjr3qsfwsny6vzc7d7abdmvjy6jjbqkqlc1zl"))
|
||||
(patches
|
||||
(list
|
||||
(search-patch "icecat-avoid-bundled-libraries.patch")
|
||||
;; FIXME (search-patch "icecat-use-system-harfbuzz.patch")
|
||||
;; FIXME (search-patch "icecat-use-system-graphite2.patch")
|
||||
(search-patch "icecat-avoid-bundled-libraries.patch")
|
||||
(search-patch "icecat-use-system-graphite2+harfbuzz.patch")
|
||||
(search-patch "icecat-use-system-media-libs.patch")
|
||||
(mozilla-patch "icecat-CVE-2018-12385.patch" "80a4a7ef2813" "1vgcbimpnfjqj934v0cryq1g13xac3wfmd4jyhcb5s60x8xyssf5")
|
||||
(search-patch "icecat-CVE-2018-12383.patch")
|
||||
(mozilla-patch "icecat-bug-1489744.patch" "6546ee839d30" "11mhvj77r789b428bfxqq5wdx8yr7lbrdjzr8qjj6fw197pldn51")))
|
||||
(mozilla-patch "icecat-bug-1489744.patch" "6546ee839d30" "11mhvj77r789b428bfxqq5wdx8yr7lbrdjzr8qjj6fw197pldn51")
|
||||
(mozilla-patch "icecat-CVE-2018-12386.patch" "4808fcb2e6ca" "05sc881l7sh8bag8whd2ggdn198lskqcxq8f41scfpqscw6xs5d5")
|
||||
(mozilla-patch "icecat-CVE-2018-12387.patch" "b8f5c37486e1" "0lvmbh126m695kgdbasy1y5xh9n1j08cwdhn071mgvj6yn8cns5z")
|
||||
(mozilla-patch "icecat-bug-1464751.patch" "d5d00faf0465" "1mj7dbb06brwrk0mvap0z4lfl2hwz1cj6dwjvdrisxm046pdw98i")
|
||||
(mozilla-patch "icecat-bug-1472538.patch" "11462f2b98f2" "1nxgh0plzilylx8r73r7d74pv66qwjqxmd7nqii33p0snl2jjfzs")
|
||||
(mozilla-patch "icecat-bug-1478685.patch" "098585dc86fc" "1b0x4qdh6isvffmibvc8ad8z62m3iky9q6jq0z6gyvn8q252cqal")
|
||||
(mozilla-patch "icecat-bug-1486080.patch" "3f8d57d936ea" "0pz2c18wcgj44v0j8my9xbm90m4bsjcvzmavj569fi8bh6s6zz8p")
|
||||
(mozilla-patch "icecat-bug-1423278.patch" "878ceaee5634" "0i47s5nvrx9vqbnj6s9y9f4ffww20p8nviqa6frg676y1188xlyl")
|
||||
(mozilla-patch "icecat-bug-1442010.patch" "87be1b98ec9a" "15f4l18c7hz9aqn89gg3dwmdidfwgn10dywgpzydm8mps45amx7j")
|
||||
(mozilla-patch "icecat-bug-1484559.patch" "99e58b5307ce" "02fdgbliwzi2r2376wg6k1rky1isfka0smac4ii2cll01jhpfrn6")
|
||||
(mozilla-patch "icecat-bug-1487098.patch" "f25ce451a492" "18nzg39iyxza1686180qk9cc88l5j2hf1h35d62lrqmdgd9vcj33")
|
||||
(mozilla-patch "icecat-bug-1484905.patch" "35c26bc231df" "0qh8d4z6y03h5xh7djci26a01l6zq667lg2k11f6zzg7z2j0h67x")
|
||||
(mozilla-patch "icecat-bug-1488061.patch" "050d0cfa8e3d" "05ql798ynbyz5pvyri4b95j4ixmgnny3zl7sd2ckfrrbm9mxh627")
|
||||
(mozilla-patch "icecat-bug-1434963-pt1.patch" "1e6dad87efed" "1v00a6cmgswjk54041jyv1ib129fxshpzwk6mn6lr0v5hylk3bx9")
|
||||
(mozilla-patch "icecat-bug-1434963-pt2.patch" "6558c46df9ea" "0vdy9dm9w5k1flhcfxwvvff0aa415b5mgmmq5r37i83686768xfb")
|
||||
(mozilla-patch "icecat-bug-1434963-pt3.patch" "686fcfa8abd6" "0ihqr11aq4b0y7mx7bwn8yzn25mv3k2gdphm951mj1g85qg35ann")
|
||||
(mozilla-patch "icecat-bug-1491132.patch" "14120e0c74d6" "188c5fbhqqhmlk88p70l6d97skh7xy4jhqdby1ri3h9ix967515j")))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -517,26 +535,37 @@ security standards.")
|
|||
;; FIXME: A script from the bundled nspr is used.
|
||||
;;"nsprpub"
|
||||
;;
|
||||
;; TODO: Use system media libraries. Waiting for:
|
||||
;; FIXME: With the update to IceCat 60, using system NSS
|
||||
;; broke certificate validation. See
|
||||
;; <https://bugs.gnu.org/32833>. For now, we use
|
||||
;; the bundled NSPR and NSS. TODO: Investigate,
|
||||
;; and try to unbundle these libraries again.
|
||||
;; UNBUNDLE-ME! "security/nss"
|
||||
;;
|
||||
;; TODO: Use more system media libraries. See:
|
||||
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=517422>
|
||||
;; * libogg
|
||||
;; * libtheora
|
||||
;; * libvorbis
|
||||
;; * libtremor (not yet in guix)
|
||||
;; * libtheora: esr60 wants v1.2, not yet released.
|
||||
;; * soundtouch: avoiding the bundled library would
|
||||
;; result in some loss of functionality. There's
|
||||
;; also an issue with exception handling
|
||||
;; configuration. It seems that this is needed in
|
||||
;; some moz.build:
|
||||
;; DEFINES['ST_NO_EXCEPTION_HANDLING'] = 1
|
||||
;; * libopus
|
||||
;; * speex
|
||||
;; * soundtouch (not yet in guix)
|
||||
;;
|
||||
"modules/freetype2"
|
||||
"modules/zlib"
|
||||
"modules/libbz2"
|
||||
;; UNBUNDLE-ME "ipc/chromium/src/third_party/libevent"
|
||||
"ipc/chromium/src/third_party/libevent"
|
||||
"media/libjpeg"
|
||||
"media/libvpx"
|
||||
"security/nss"
|
||||
;; UNBUNDLE-ME "gfx/cairo"
|
||||
;; UNBUNDLE-ME "gfx/harfbuzz"
|
||||
;; UNBUNDLE-ME "gfx/graphite2"
|
||||
"media/libogg"
|
||||
"media/libvorbis"
|
||||
;; "media/libtheora" ; wants theora-1.2, not yet released
|
||||
"media/libtremor"
|
||||
"gfx/harfbuzz"
|
||||
"gfx/graphite2"
|
||||
"js/src/ctypes/libffi"
|
||||
"db/sqlite3"))
|
||||
;; Delete .pyc files, typically present in icecat source tarballs
|
||||
|
@ -550,23 +579,25 @@ security standards.")
|
|||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("bzip2" ,bzip2)
|
||||
;; UNBUNDLE-ME ("cairo" ,cairo)
|
||||
("cups" ,cups)
|
||||
("dbus-glib" ,dbus-glib)
|
||||
("gdk-pixbuf" ,gdk-pixbuf)
|
||||
("glib" ,glib)
|
||||
("gtk+" ,gtk+)
|
||||
("gtk+-2" ,gtk+-2)
|
||||
;; UNBUNDLE-ME ("graphite2" ,graphite2)
|
||||
("graphite2" ,graphite2)
|
||||
("pango" ,pango)
|
||||
("freetype" ,freetype)
|
||||
;; UNBUNDLE-ME ("harfbuzz" ,harfbuzz)
|
||||
("harfbuzz" ,harfbuzz)
|
||||
("hunspell" ,hunspell)
|
||||
("libcanberra" ,libcanberra)
|
||||
("libgnome" ,libgnome)
|
||||
("libjpeg-turbo" ,libjpeg-turbo)
|
||||
("libogg" ,libogg)
|
||||
;; ("libtheora" ,libtheora) ; wants theora-1.2, not yet released
|
||||
("libvorbis" ,libvorbis)
|
||||
("libxft" ,libxft)
|
||||
;; UNBUNDLE-ME ("libevent" ,libevent-2.0)
|
||||
("libevent" ,libevent)
|
||||
("libxinerama" ,libxinerama)
|
||||
("libxscrnsaver" ,libxscrnsaver)
|
||||
("libxcomposite" ,libxcomposite)
|
||||
|
@ -579,8 +610,10 @@ security standards.")
|
|||
("pulseaudio" ,pulseaudio)
|
||||
("mesa" ,mesa)
|
||||
("mit-krb5" ,mit-krb5)
|
||||
("nspr" ,nspr)
|
||||
("nss" ,nss)
|
||||
;; See <https://bugs.gnu.org/32833>
|
||||
;; and related comments in the 'snippet' above.
|
||||
;; UNBUNDLE-ME! ("nspr" ,nspr)
|
||||
;; UNBUNDLE-ME! ("nss" ,nss)
|
||||
("sqlite" ,sqlite)
|
||||
("startup-notification" ,startup-notification)
|
||||
("unzip" ,unzip)
|
||||
|
@ -638,15 +671,21 @@ security standards.")
|
|||
"--with-system-zlib"
|
||||
"--with-system-bz2"
|
||||
"--with-system-jpeg" ; must be libjpeg-turbo
|
||||
;; UNBUNDLE-ME "--with-system-libevent"
|
||||
"--with-system-libevent"
|
||||
"--with-system-ogg"
|
||||
"--with-system-vorbis"
|
||||
;; "--with-system-theora" ; wants theora-1.2, not yet released
|
||||
"--with-system-libvpx"
|
||||
"--with-system-icu"
|
||||
"--with-system-nspr"
|
||||
"--with-system-nss"
|
||||
;; UNBUNDLE-ME "--with-system-harfbuzz"
|
||||
;; UNBUNDLE-ME "--with-system-graphite2"
|
||||
|
||||
;; See <https://bugs.gnu.org/32833>
|
||||
;; and related comments in the 'snippet' above.
|
||||
;; UNBUNDLE-ME! "--with-system-nspr"
|
||||
;; UNBUNDLE-ME! "--with-system-nss"
|
||||
|
||||
"--with-system-harfbuzz"
|
||||
"--with-system-graphite2"
|
||||
"--enable-system-pixman"
|
||||
;; UNBUNDLE-ME "--enable-system-cairo"
|
||||
"--enable-system-ffi"
|
||||
"--enable-system-hunspell"
|
||||
"--enable-system-sqlite"
|
||||
|
@ -696,8 +735,11 @@ security standards.")
|
|||
'avcodec', 'avutil', 'pulse' ]\n\n"
|
||||
all)))
|
||||
#t))
|
||||
(replace 'bootstrap
|
||||
(lambda _
|
||||
(invoke "sh" "-c" "autoconf old-configure.in > old-configure")))
|
||||
(add-after 'patch-source-shebangs 'patch-cargo-checksums
|
||||
(lambda* _
|
||||
(lambda _
|
||||
(use-modules (guix build cargo-build-system))
|
||||
(let ((null-file "/dev/null")
|
||||
(null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
|
||||
|
|
|
@ -504,7 +504,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
|
|||
(package
|
||||
(inherit go-1.10)
|
||||
(name "go")
|
||||
(version "1.11")
|
||||
(version "1.11.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -512,7 +512,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
|
|||
name version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ysj04jzds6xa8kdflkdsgyv3mg9fdn90zdf78g4g6p4bwpy3hdg"))))
|
||||
"05qivf2f59pv4bfrmdr4m0xvswkmvvl9c5a2h5dy45g2k8b8r3sm"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-1.10)
|
||||
((#:phases phases)
|
||||
|
|
|
@ -224,6 +224,7 @@ lines.")
|
|||
(propagated-inputs
|
||||
`(("python-decorator" ,python-decorator)
|
||||
("python-nbformat" ,python-nbformat)
|
||||
("python-pandas" ,python-pandas)
|
||||
("python-pytz" ,python-pytz)
|
||||
("python-requests" ,python-requests)
|
||||
("python-six" ,python-six)))
|
||||
|
|
|
@ -774,54 +774,26 @@ application suites.")
|
|||
(define-public guile-cairo
|
||||
(package
|
||||
(name "guile-cairo")
|
||||
(version "1.4.1")
|
||||
(version "1.10.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://download.gna.org/guile-cairo/guile-cairo-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (string-append "mirror://savannah/guile-cairo/guile-cairo-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1f5nd9n46n6cwfl1byjml02q3y2hgn7nkx98km1czgwarxl7ws3x"))))
|
||||
"0p6xrhf2k6n5dybn88050za7h90gnd7534n62l53vsca187pwgdf"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
(begin
|
||||
'(begin
|
||||
;; Install Scheme files in …/guile/site/X.Y.
|
||||
(substitute* (find-files "." "^Makefile\\.in$")
|
||||
(("^(.*)dir = (.*)/guile/site(.*)" _ name prefix suffix)
|
||||
(string-append name "dir = " prefix
|
||||
"/guile/site/@GUILE_EFFECTIVE_VERSION@"
|
||||
suffix)))
|
||||
#t)))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils)
|
||||
(guix build gnu-build-system)
|
||||
(ice-9 popen)
|
||||
(ice-9 rdelim))
|
||||
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-before 'configure 'set-module-directory
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Install modules under $out/share/guile/site/2.0.
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(effective
|
||||
(read-line
|
||||
(open-pipe* OPEN_READ "guile" "-c"
|
||||
"(display (effective-version))"))))
|
||||
(substitute* "Makefile.in"
|
||||
(("scmdir = ([[:graph:]]+).*" _ value)
|
||||
(string-append "scmdir = " value "/" effective "\n")))
|
||||
(substitute* "cairo/Makefile.in"
|
||||
(("moduledir = ([[:graph:]]+).*" _ value)
|
||||
(string-append "moduledir = "
|
||||
"$(prefix)/share/guile/site/"
|
||||
effective "/cairo\n'")))
|
||||
#t)))
|
||||
(add-after 'install 'install-missing-file
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; By default 'vector-types.scm' is not installed, so do
|
||||
;; it here.
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(effective
|
||||
(read-line
|
||||
(open-pipe* OPEN_READ "guile" "-c"
|
||||
"(display (effective-version))"))))
|
||||
(install-file "cairo/vector-types.scm"
|
||||
(string-append out "/share/guile/site/"
|
||||
effective "/cairo"))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("guile-lib" ,guile-lib)
|
||||
("expat" ,expat)
|
||||
|
|
|
@ -287,8 +287,8 @@ without requiring the source code to be rewritten.")
|
|||
|
||||
(define-public guile-next
|
||||
;; This is the upcoming Guile 3.0, with JIT support.
|
||||
(let ((commit "a74b4a45fab1a78e34954bce5f031e8a9765f827")
|
||||
(revision "0"))
|
||||
(let ((commit "6f3357b0df64c4be17e72079864c09a542f1c779")
|
||||
(revision "1"))
|
||||
(package
|
||||
(inherit guile-2.2)
|
||||
(name "guile-next")
|
||||
|
@ -300,7 +300,7 @@ without requiring the source code to be rewritten.")
|
|||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"0kq6mabv7j4gdlwmpz3iaddv98sc7awkl2358sg8j50sg10yw8nx"))
|
||||
"1c2xy5cflg0hws48914rz3z8mdmf8w3lblfic0kxnymcmdv9cbhv"))
|
||||
(file-name (git-file-name name version))))
|
||||
(native-inputs
|
||||
`(("autoconf", autoconf)
|
||||
|
@ -324,7 +324,15 @@ without requiring the source code to be rewritten.")
|
|||
(lambda _
|
||||
;; Remove this test that's bound to fail.
|
||||
(delete-file "test-suite/tests/version.test")
|
||||
#t)))))))))
|
||||
#t))))))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "GUILE_LOAD_PATH")
|
||||
(files '("share/guile/site/3.0")))
|
||||
(search-path-specification
|
||||
(variable "GUILE_LOAD_COMPILED_PATH")
|
||||
(files '("lib/guile/3.0/site-ccache"
|
||||
"share/guile/site/3.0"))))))))
|
||||
|
||||
(define (make-guile-readline guile)
|
||||
(package
|
||||
|
|
|
@ -18,6 +18,7 @@
|
|||
|
||||
(define-module (gnu packages hardware)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages libusb)
|
||||
#:use-module (gnu packages linux)
|
||||
|
@ -35,14 +36,14 @@
|
|||
(define-public ddcutil
|
||||
(package
|
||||
(name "ddcutil")
|
||||
(version "0.9.1")
|
||||
(version "0.9.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.ddcutil.com/tarballs/"
|
||||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1b4bm3zhk5vnad6fxf0mn8nrlj3fngifl7nzxgxw0n56hlv7ccv0"))))
|
||||
(base32 "0nhi261vf2n3jpi0a0n6659911kxi3lj7a4h7cmv0ip6sbb8rk88"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -74,6 +75,115 @@ calibrated, and restored when the calibration is applied.")
|
|||
(license (list license:bsd-3 ; FindDDCUtil.cmake
|
||||
license:gpl2+)))) ; everything else
|
||||
|
||||
;; Distinct from memtest86, which is obsolete.
|
||||
(define-public memtest86+
|
||||
(package
|
||||
(name "memtest86+")
|
||||
;; Update the description when/if UEFI support is released.
|
||||
(version "5.01")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.memtest.org/download/5.01/memtest86+-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0fch1l55753y6jkk0hj8f6vw4h1kinkn9ysp22dq5g9zjnvjf88l"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:system "i686-linux" ; the result runs outside of any OS
|
||||
#:tests? #f ; no way to test this
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure) ; no configure script
|
||||
(replace 'build
|
||||
;; The default 'make all' does wonderful things, like scp(1) a file to
|
||||
;; 192.168.0.12. Build the bootable images and nothing more.
|
||||
(lambda _
|
||||
(invoke "make"
|
||||
"memtest" ; ELF executable
|
||||
"memtest.bin"))) ; DOS/MBR boot sector
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(lib (string-append out "/lib/memtest86+"))
|
||||
(doc (string-append out "/share/doc/memtest86+-" ,version)))
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(install-file file lib))
|
||||
(list "memtest"
|
||||
"memtest.bin"))
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(install-file file doc))
|
||||
(list "FAQ"
|
||||
"README"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
;; Newer GCCs fail with a deluge of "multiple definition of `__foo'" errors.
|
||||
`(("gcc" ,gcc-4.9)))
|
||||
(supported-systems (list "i686-linux" "x86_64-linux"))
|
||||
(home-page "https://www.memtest.org/")
|
||||
(synopsis "Thorough real-mode memory tester")
|
||||
(description
|
||||
"Memtest86+ is a thorough, stand-alone memory test for x86 systems. It
|
||||
repeatedly writes different patterns to all memory locations, reads them back
|
||||
again, and verifies whether the result is the same as what was written. This
|
||||
can help debug even intermittent and non-deterministic errors.
|
||||
|
||||
It runs independently of any operating system, at computer boot-up, so that it
|
||||
can scan as much of your RAM as possible for hardware defects.
|
||||
|
||||
Memtest86+ cannot currently be used on computers booted with UEFI.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public memtester
|
||||
(package
|
||||
(name "memtester")
|
||||
(version "4.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
;; Even the latest release is available under 'old-versions/'.
|
||||
(uri (string-append "http://pyropus.ca/software/memtester/old-versions/"
|
||||
"memtester-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "127xymmyzb9r6dxqrwd69v7gf8csv8kv7fjvagbglf3wfgyy5pzr"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags
|
||||
(list "CC=gcc")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
;; This is a home-brewed configuration system where the cc/ld command
|
||||
;; lines are stored in one-line files.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out")))
|
||||
(substitute* (list "conf-cc" "conf-ld")
|
||||
(("^cc") "gcc"))
|
||||
(substitute* "Makefile"
|
||||
(("(INSTALLPATH.*=).*" _ assignment)
|
||||
(string-append assignment out)))
|
||||
#t)))
|
||||
(replace 'check
|
||||
;; There is no test suite. Test some RAM for a single iteration.
|
||||
(lambda _
|
||||
(invoke "./memtester" "64K" "1"))))))
|
||||
(home-page "http://pyropus.ca/software/memtester/")
|
||||
(synopsis "User-space memory subsystem tester")
|
||||
(description
|
||||
"Memtester stress-tests the memory subsystem of your operating system and
|
||||
computer. It repeatedly writes different patterns to all memory locations,
|
||||
reads them back again, and verifies whether the result is the same as what was
|
||||
written. This can help debug even intermittent and non-deterministic errors.
|
||||
|
||||
Memtester runs entirely in user space. This means that you don't need to reboot
|
||||
to test your memory, but also that it's not possible to test all of the RAM
|
||||
installed in the system.
|
||||
|
||||
It can also be told to test memory starting at a particular physical address.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public msr-tools
|
||||
(package
|
||||
(name "msr-tools")
|
||||
|
|
|
@ -54,7 +54,6 @@
|
|||
(inputs
|
||||
`(("ghc-generic-deriving" ,ghc-generic-deriving)
|
||||
("ghc-xml" ,ghc-xml)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-stm" ,ghc-stm)
|
||||
("ghc-tagged" ,ghc-tagged)
|
||||
("ghc-tasty" ,ghc-tasty)))
|
||||
|
@ -97,7 +96,7 @@ Haskell test framework.")
|
|||
(define-public ghc-tasty-quickcheck
|
||||
(package
|
||||
(name "ghc-tasty-quickcheck")
|
||||
(version "0.8.4")
|
||||
(version "0.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -106,7 +105,7 @@ Haskell test framework.")
|
|||
"tasty-quickcheck-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"15rjxib5jmjq0hzj47x15kgp3awc73va4cy1pmpf7k3hvfv4qprn"))))
|
||||
"0vr6szbbz3s5461i0zr8zpq347zfvidfzv5gf3xwxhm0yk731z8h"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-quickcheck" ,ghc-quickcheck)
|
||||
|
@ -125,7 +124,7 @@ Haskell test framework.")
|
|||
(define-public ghc-tasty-golden
|
||||
(package
|
||||
(name "ghc-tasty-golden")
|
||||
(version "2.3.1.1")
|
||||
(version "2.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -135,12 +134,11 @@ Haskell test framework.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0pcf5hsyp5mmbqn7krdm49jxpkjm6rb4j83j28f76h7q55dzm1wy"))))
|
||||
"0k3ibjhjc9vcwzrjnl4rnwvfm8l81q347nb7dgvcib6n5wm3s404"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-temporary" ,ghc-temporary)
|
||||
("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-optparse-applicative" ,ghc-optparse-applicative)
|
||||
("ghc-tagged" ,ghc-tagged)
|
||||
("ghc-async" ,ghc-async)
|
||||
|
@ -183,7 +181,7 @@ timer functions of different operating systems via a unified API.")
|
|||
(define-public ghc-tasty
|
||||
(package
|
||||
(name "ghc-tasty")
|
||||
(version "0.11.0.4")
|
||||
(version "1.1.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -193,19 +191,18 @@ timer functions of different operating systems via a unified API.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"05pxjzgbgjdn7477xry0ssjrnmnsydqiq6nm6ck8n2da1baliqp0"))))
|
||||
"14riid753hjqr6lca1kgxpnvq0wykf0k3qc5jpag42hh8bszav22"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-stm" ,ghc-stm)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-tagged" ,ghc-tagged)
|
||||
("ghc-regex-tdfa" ,ghc-regex-tdfa)
|
||||
("ghc-regex-tdfa-rc" ,ghc-regex-tdfa-rc)
|
||||
("ghc-optparse-applicative" ,ghc-optparse-applicative)
|
||||
("ghc-unbounded-delays" ,ghc-unbounded-delays)
|
||||
("ghc-async" ,ghc-async)
|
||||
("ghc-ansi-terminal" ,ghc-ansi-terminal)
|
||||
("ghc-clock-bootstrap" ,ghc-clock-bootstrap)))
|
||||
("ghc-clock-bootstrap" ,ghc-clock-bootstrap)
|
||||
("ghc-wcwidth" ,ghc-wcwidth-bootstrap)))
|
||||
(home-page "http://documentup.com/feuerbach/tasty")
|
||||
(synopsis "Modern and extensible testing framework")
|
||||
(description "Tasty is a modern testing framework for Haskell. It lets
|
||||
|
@ -216,7 +213,7 @@ and any other types of tests into a single test suite.")
|
|||
(define-public ghc-tasty-hunit
|
||||
(package
|
||||
(name "ghc-tasty-hunit")
|
||||
(version "0.9.2")
|
||||
(version "0.10.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -226,10 +223,11 @@ and any other types of tests into a single test suite.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08qnxaw34wfnzi9irs1jd4d0zczqm3k5ffkd4zwhkz0dflmgq7mf"))))
|
||||
"0j3hgga6c3s8h5snzivb8a75h96207ia2rlbxzj07xbf4zpkp44g"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-tasty" ,ghc-tasty)))
|
||||
`(("ghc-call-stack" ,ghc-call-stack-boot)
|
||||
("ghc-tasty" ,ghc-tasty)))
|
||||
(home-page "http://documentup.com/feuerbach/tasty")
|
||||
(synopsis "HUnit support for the Tasty test framework")
|
||||
(description "This package provides HUnit support for the Tasty Haskell
|
||||
|
@ -250,7 +248,6 @@ test framework.")
|
|||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
|
||||
("ghc-tasty-hunit" ,ghc-tasty-hunit)))
|
||||
(home-page "https://github.com/vincenthz/tasty-kat")
|
||||
|
@ -263,7 +260,7 @@ tasty.")
|
|||
(define-public ghc-tasty-th
|
||||
(package
|
||||
(name "ghc-tasty-th")
|
||||
(version "0.1.4")
|
||||
(version "0.1.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -272,10 +269,12 @@ tasty.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0dff9si8i1qp0s7p4hlk0l29vq7wxfglw6mvlgmld43h7rllv88q"))))
|
||||
"0b2ivrw2257m4cy4rjnkwqlarh83j1y3zywnmaqqqbvy667sqnj3"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-tasty" ,ghc-tasty)))
|
||||
`(("ghc-haskell-src-exts" ,ghc-haskell-src-exts)
|
||||
("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-tasty-hunit" ,ghc-tasty-hunit)))
|
||||
(home-page "https://github.com/bennofs/tasty-th")
|
||||
(synopsis "Automatically generate tasty TestTrees")
|
||||
(description
|
||||
|
@ -288,7 +287,7 @@ test-framework.")
|
|||
(define-public ghc-tasty-rerun
|
||||
(package
|
||||
(name "ghc-tasty-rerun")
|
||||
(version "1.1.8")
|
||||
(version "1.1.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -296,11 +295,10 @@ test-framework.")
|
|||
"tasty-rerun-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yg8cicfn3qaazvp4rbanzy3dyk95k3y1kkd4bykvkl9v4076788"))))
|
||||
"05lp4zy6lwd916snq6hs43848n62j9vdfl3s8sfivqydrax0vvd8"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-optparse-applicative" ,ghc-optparse-applicative)
|
||||
`(("ghc-optparse-applicative" ,ghc-optparse-applicative)
|
||||
("ghc-reducers" ,ghc-reducers)
|
||||
("ghc-split" ,ghc-split)
|
||||
("ghc-stm" ,ghc-stm)
|
||||
|
@ -317,7 +315,7 @@ been added since previous test run.")
|
|||
(define-public ghc-tasty-expected-failure
|
||||
(package
|
||||
(name "ghc-tasty-expected-failure")
|
||||
(version "0.11.0.4")
|
||||
(version "0.11.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -326,7 +324,7 @@ been added since previous test run.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r555f18d2gj96pjyc13chn1nxaxl81am4xgip3mvvjhw8s5mva1"))))
|
||||
"1i2s809m644b7hgiblqay9j364r3fjj1rwbrahsn1pgr5q6mr6ji"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-tagged" ,ghc-tagged)
|
||||
|
@ -356,7 +354,8 @@ development.")
|
|||
"1bh1pzz5fdcqvzdcirqxna6fnjms02min5md716299g5niz46w55"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "--allow-newer=base-compat")))
|
||||
`(#:cabal-revision
|
||||
("1" "1sngfq3v71bvgjsl8cj5kh65m3fziwy8dkvwjzs0kxfrzr87faly")))
|
||||
(inputs
|
||||
`(("ghc-quickcheck" ,ghc-quickcheck)
|
||||
("ghc-base-compat" ,ghc-base-compat)
|
||||
|
@ -426,7 +425,7 @@ use HUnit assertions as QuickCheck properties.")
|
|||
(define-public ghc-quickcheck
|
||||
(package
|
||||
(name "ghc-quickcheck")
|
||||
(version "2.10.1")
|
||||
(version "2.11.3")
|
||||
(outputs '("out" "doc"))
|
||||
(source
|
||||
(origin
|
||||
|
@ -437,11 +436,10 @@ use HUnit assertions as QuickCheck properties.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rfmns3lj3hl93k1jws85ajkkw7z9ll8cw292n9m7zald1w5dfqx"))))
|
||||
"0xhqk35fkzlbjcqbabg6962jkv8d688nzmz7ng4bm84x2d95d328"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; FIXME: currently missing libraries used for tests.
|
||||
#:configure-flags '("-f base4")))
|
||||
`(#:tests? #f)) ; FIXME: currently missing libraries used for tests.
|
||||
(inputs
|
||||
`(("ghc-random" ,ghc-random)
|
||||
("ghc-tf-random" ,ghc-tf-random)))
|
||||
|
@ -455,37 +453,10 @@ hold in a large number of randomly generated cases. Specifications are
|
|||
expressed in Haskell, using combinators defined in the QuickCheck library.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-quickcheck-2.9
|
||||
(package
|
||||
(inherit ghc-quickcheck)
|
||||
(name "ghc-quickcheck")
|
||||
(version "2.9.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/QuickCheck-2.9.2/QuickCheck-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"119np67qvx8hyp9vkg4gr2wv3lj3j6ay2vl4hxspkg43ymb1cp0m"))))))
|
||||
|
||||
(define-public ghc-quickcheck-latest
|
||||
(package (inherit ghc-quickcheck)
|
||||
(version "2.11.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/QuickCheck/QuickCheck-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0xhqk35fkzlbjcqbabg6962jkv8d688nzmz7ng4bm84x2d95d328"))))))
|
||||
|
||||
(define-public ghc-test-framework
|
||||
(package
|
||||
(name "ghc-test-framework")
|
||||
(version "0.8.1.1")
|
||||
(version "0.8.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -493,10 +464,17 @@ expressed in Haskell, using combinators defined in the QuickCheck library.")
|
|||
"test-framework-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wxjgdvb1c4ykazw774zlx86550848wbsvgjgcrdzcgbb9m650vq"))))
|
||||
"1hhacrzam6b8f10hyldmjw8pb7frdxh04rfg3farxcxwbnhwgbpm"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "--allow-newer=time")))
|
||||
`(#:tests? #f ; FIXME: Tests do not build.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'update-constraints
|
||||
(lambda _
|
||||
(substitute* "test-framework.cabal"
|
||||
(("QuickCheck >= 2\\.3 && < 2\\.10")
|
||||
"QuickCheck >= 2.3 && < 2.12")))))))
|
||||
(native-inputs
|
||||
`(("ghc-hunit" ,ghc-hunit)
|
||||
("ghc-quickcheck" ,ghc-quickcheck)))
|
||||
|
@ -508,7 +486,8 @@ expressed in Haskell, using combinators defined in the QuickCheck library.")
|
|||
("ghc-random" ,ghc-random)
|
||||
("ghc-regex-posix" ,ghc-regex-posix)
|
||||
("ghc-xml" ,ghc-xml)
|
||||
("ghc-libxml" ,ghc-libxml)))
|
||||
("ghc-libxml" ,ghc-libxml)
|
||||
("ghc-semigroups" ,ghc-semigroups-bootstrap)))
|
||||
(home-page "https://batterseapower.github.io/test-framework/")
|
||||
(synopsis "Framework for running and organising tests")
|
||||
(description
|
||||
|
@ -533,9 +512,9 @@ reporting and test statistics output.")
|
|||
(base32
|
||||
"1y0b6vg8nfm43v90lxxcydhi6qlxhfy4vpxbzm5ic2w55bh8xjwm"))))
|
||||
(build-system haskell-build-system)
|
||||
;; The official revision of the cabal file allows for HUnit lower than 1.7
|
||||
(arguments
|
||||
`(#:configure-flags (list "--allow-newer=HUnit")))
|
||||
`(#:cabal-revision
|
||||
("3" "0i9mlalv7cl1iq43ld5myrnpszq5rxmd79hk495dcb08rglhgl3z")))
|
||||
(inputs
|
||||
`(("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
|
||||
("ghc-hunit" ,ghc-hunit)
|
||||
|
@ -560,6 +539,9 @@ reporting and test statistics output.")
|
|||
(base32
|
||||
"0vj834337r6jzr3258cv68ly2sv5999mklpsrfngyk51kywsyqyp"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:cabal-revision
|
||||
("1" "147ngmfdkskyg7mwsp5w73a4dbx3rp5s38bci3z03kn1m093lxff")))
|
||||
(inputs
|
||||
`(("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
|
||||
("ghc-quickcheck" ,ghc-quickcheck)
|
||||
|
@ -827,7 +809,6 @@ minimal dependencies.")
|
|||
"19wqignlq90qwpam01hnmmrxaxh5lkax9l1l6rlbi4a07nvp1dnz"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs `(("ghc-quickcheck" ,ghc-quickcheck)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-hunit" ,ghc-hunit)
|
||||
("ghc-test-framework" ,ghc-test-framework)
|
||||
("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2)
|
||||
|
|
|
@ -70,8 +70,7 @@ format.")
|
|||
(inputs
|
||||
`(("ghc-hourglass" ,ghc-hourglass)
|
||||
("ghc-asn1-types" ,ghc-asn1-types)
|
||||
("ghc-text" ,ghc-text)
|
||||
("ghc-mtl" ,ghc-mtl)))
|
||||
("ghc-text" ,ghc-text)))
|
||||
(native-inputs
|
||||
`(("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)))
|
||||
|
@ -108,7 +107,7 @@ when ASN1 pattern matching is not convenient.")
|
|||
(define-public ghc-crypto-api
|
||||
(package
|
||||
(name "ghc-crypto-api")
|
||||
(version "0.13.2")
|
||||
(version "0.13.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -117,7 +116,7 @@ when ASN1 pattern matching is not convenient.")
|
|||
"crypto-api-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vc27qcgbg7hf50rkqhlrs58zn1888ilh4b6wrrm07bnm48xacak"))))
|
||||
"19bsmkqkpnvh01b77pmyarx00fic15j4hvg4pzscrj4prskrx2i9"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs `(("ghc-cereal" ,ghc-cereal)
|
||||
("ghc-tagged" ,ghc-tagged)
|
||||
|
@ -211,7 +210,9 @@ that hides the C implementation.")
|
|||
"1y8q7s2bn4gdknw1wjikdnar2b5pgz3nv3220lxrlgpsf23x82vi"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; tests require old version of ghc-hunit (0.9)
|
||||
`(#:cabal-revision
|
||||
("2" "0vyb9cfvpfxpslxvvhd48gw37i9g8ry5x63xwxd9q7xfiqhs7p3a")
|
||||
#:tests? #f)) ; tests require old version of ghc-hunit (0.9)
|
||||
(native-inputs `(("ghc-base16-bytestring" ,ghc-base16-bytestring)
|
||||
("ghc-puremd5" ,ghc-puremd5)
|
||||
("ghc-tasty" ,ghc-tasty)
|
||||
|
@ -237,7 +238,9 @@ that hides the C implementation.")
|
|||
"1aqdxdhxhl9jldh951djpwxx8z7gzaqspxl7iwpl84i5ahrsyy9w"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; tests require old version of ghc-hunit (0.9)
|
||||
`(#:cabal-revision
|
||||
("2" "0xas0nbq9bfdzlj6k565ibizv1cqvzfzsdj6q9pdiiwyxqblqc3m")
|
||||
#:tests? #f)) ; tests require old version of ghc-hunit (0.9)
|
||||
(native-inputs `(("ghc-base16-bytestring" ,ghc-base16-bytestring)
|
||||
("ghc-sha" ,ghc-sha)
|
||||
("ghc-tasty" ,ghc-tasty)
|
||||
|
@ -250,6 +253,42 @@ pure API to the @uref{https://en.wikipedia.org/wiki/SHA-1, SHA-1 hash algorithm}
|
|||
including @uref{https://en.wikipedia.org/wiki/HMAC, HMAC support}, with
|
||||
performance close to the fastest implementations available in other languages.
|
||||
|
||||
The implementation is made in C with a haskell FFI wrapper that hides
|
||||
the C implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-cryptohash-sha256
|
||||
(package
|
||||
(name "ghc-cryptohash-sha256")
|
||||
(version "0.11.101.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
"cryptohash-sha256-" version "/"
|
||||
"cryptohash-sha256-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1p85vajcgw9hmq8zsz9krzx0vxh7aggwbg5w9ws8w97avcsn8xaj"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:cabal-revision
|
||||
("1" "19birnmwga1yh82l4jqc3fygqkqcf5y8dlldnxfswngkzc3rvwp3")
|
||||
#:tests? #f)) ; tests require old version of ghc-hunit (0.9)
|
||||
(inputs
|
||||
`(("ghc-base16-bytestring" ,ghc-base16-bytestring)))
|
||||
(native-inputs
|
||||
`(("ghc-sha" ,ghc-sha)
|
||||
("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
|
||||
("ghc-hunit" ,ghc-hunit)))
|
||||
(home-page "https://github.com/hvr/cryptohash-sha1")
|
||||
(synopsis "SHA-256 implementation for Haskell")
|
||||
(description "This Haskell package provides an incremental and
|
||||
one-pass, pure API to the @uref{https://en.wikipedia.org/wiki/SHA-2,
|
||||
SHA-256 cryptographic hash algorithm}, with performance close to the
|
||||
fastest implementations available in other languages.
|
||||
|
||||
The implementation is made in C with a haskell FFI wrapper that hides
|
||||
the C implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
@ -315,7 +354,7 @@ are implemented as FFI bindings to efficient code from zlib.")
|
|||
(define-public ghc-entropy
|
||||
(package
|
||||
(name "ghc-entropy")
|
||||
(version "0.3.8")
|
||||
(version "0.4.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -324,7 +363,7 @@ are implemented as FFI bindings to efficient code from zlib.")
|
|||
"entropy-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1l3lfigqvdlmxkz1wl7zdkmc0i2r5p6z4xzhiw8xdsbsw7aljfkl"))))
|
||||
"1ahz5g148l6sax3dy505na2513i99c7bxix68jja5kbx4f271zcf"))))
|
||||
(build-system haskell-build-system)
|
||||
(home-page "https://github.com/TomMD/entropy")
|
||||
(synopsis "Provides platform independent entropy source for Haskell")
|
||||
|
@ -335,18 +374,18 @@ to obtain cryptographically strong entropy.")
|
|||
(define-public ghc-pem
|
||||
(package
|
||||
(name "ghc-pem")
|
||||
(version "0.2.2")
|
||||
(version "0.2.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
"pem/pem-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"162sk5sg22w21wqz5qv8kx6ibxp99v5p20g3nknhm1kddk3hha1p"))))
|
||||
"1m7qjsxrd8m88cvkqmr8kscril500j2a9y0iynvksjyjkhdlq33p"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-base64-bytestring" ,ghc-base64-bytestring)))
|
||||
`(("ghc-basement" ,ghc-basement)
|
||||
("ghc-memory" ,ghc-memory)))
|
||||
(native-inputs
|
||||
`(("ghc-test-framework" ,ghc-test-framework)
|
||||
("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2)
|
||||
|
@ -393,14 +432,14 @@ interface.")
|
|||
(define-public ghc-sha
|
||||
(package
|
||||
(name "ghc-sha")
|
||||
(version "1.6.4.2")
|
||||
(version "1.6.4.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
"SHA/SHA-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"134ajm87fm4lpsw86m9q8apv20dw4bpk46raa389zr6bcdpifw64"))))
|
||||
"0i4b2wjisivdy72synal711ywhx05mfqfba5n65rk8qidggm1nbb"))))
|
||||
(build-system haskell-build-system)
|
||||
(native-inputs
|
||||
`(("ghc-quickcheck" ,ghc-quickcheck)
|
||||
|
@ -420,18 +459,17 @@ libraries, like OpenSSL.")
|
|||
(define-public ghc-x509
|
||||
(package
|
||||
(name "ghc-x509")
|
||||
(version "1.6.4")
|
||||
(version "1.7.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
"x509/x509-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hixx76wpb4qxida017ka5zr6lrsycahrqyw8z90q9mxvndpy3my"))))
|
||||
"0mkk29g32fs70bqkikg83v45h9jig9c8aail3mrdqwxpkfa0yx21"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-memory" ,ghc-memory)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-hourglass" ,ghc-hourglass)
|
||||
("ghc-pem" ,ghc-pem)
|
||||
("ghc-asn1-types" ,ghc-asn1-types)
|
||||
|
@ -450,7 +488,7 @@ libraries, like OpenSSL.")
|
|||
(define-public ghc-x509-store
|
||||
(package
|
||||
(name "ghc-x509-store")
|
||||
(version "1.6.2")
|
||||
(version "1.6.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
|
@ -458,15 +496,17 @@ libraries, like OpenSSL.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yw09nwkvr324qz4sc27c0p28bz2h6gns6lkaz9mz92mgqf2dza9"))))
|
||||
"0dbndqmnmyixxc7308nyq3zlkhz9dff4rbcw2a49c77rbicny9va"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-pem" ,ghc-pem)
|
||||
`(("ghc-pem" ,ghc-pem)
|
||||
("ghc-asn1-types" ,ghc-asn1-types)
|
||||
("ghc-asn1-encoding" ,ghc-asn1-encoding)
|
||||
("ghc-cryptonite" ,ghc-cryptonite)
|
||||
("ghc-x509" ,ghc-x509)))
|
||||
(native-inputs
|
||||
`(("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-tasty-hunit" ,ghc-tasty-hunit)))
|
||||
(home-page "https://github.com/vincenthz/hs-certificate")
|
||||
(synopsis "X.509 collection accessing and storing methods")
|
||||
(description
|
||||
|
@ -477,7 +517,7 @@ collections, certificates, revocation lists, and exception lists.")
|
|||
(define-public ghc-x509-validation
|
||||
(package
|
||||
(name "ghc-x509-validation")
|
||||
(version "1.6.5")
|
||||
(version "1.6.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
|
@ -485,12 +525,11 @@ collections, certificates, revocation lists, and exception lists.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"190w1sr3w6w49v3yvqz4grb0v09ym4gll3n8bxwijvbvcybk3xyi"))))
|
||||
"1ms51scawldgyfcim5a2qlgyn3rnrclyh205d6djaa1569vrs73n"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-memory" ,ghc-memory)
|
||||
("ghc-byteable" ,ghc-byteable)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-hourglass" ,ghc-hourglass)
|
||||
("ghc-data-default-class" ,ghc-data-default-class)
|
||||
("ghc-pem" ,ghc-pem)
|
||||
|
@ -499,6 +538,9 @@ collections, certificates, revocation lists, and exception lists.")
|
|||
("ghc-x509" ,ghc-x509)
|
||||
("ghc-x509-store" ,ghc-x509-store)
|
||||
("ghc-cryptonite" ,ghc-cryptonite)))
|
||||
(native-inputs
|
||||
`(("ghc-tasty" ,ghc-tasty)
|
||||
("ghc-tasty-hunit" ,ghc-tasty-hunit)))
|
||||
(home-page "https://github.com/vincenthz/hs-certificate")
|
||||
(synopsis "X.509 certificate and revocation list validation")
|
||||
(description
|
||||
|
@ -509,7 +551,7 @@ list validation.")
|
|||
(define-public ghc-x509-system
|
||||
(package
|
||||
(name "ghc-x509-system")
|
||||
(version "1.6.4")
|
||||
(version "1.6.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
|
@ -517,11 +559,10 @@ list validation.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0k7zc0xp7r6kqmi39rpiicvq78xb0pr2cq6q5s3kmmsshllg13nr"))))
|
||||
"06a4m9c7vlr9nhp9gmqbb46arf0yj1dkdm4nip03hzy67spdmp20"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-pem" ,ghc-pem)
|
||||
`(("ghc-pem" ,ghc-pem)
|
||||
("ghc-x509" ,ghc-x509)
|
||||
("ghc-x509-store" ,ghc-x509-store)))
|
||||
(home-page "https://github.com/vincenthz/hs-certificate")
|
||||
|
@ -660,3 +701,33 @@ percent.
|
|||
@item Monte Carlo value for Pi is 3.132465868 (error 0.29 percent).
|
||||
@end itemize")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-ed25519
|
||||
(package
|
||||
(name "ghc-ed25519")
|
||||
(version "0.0.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/ed25519/ed25519-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0v8msqvgzimhs7p5ri25hrb1ni2wvisl5rmdxy89fc59py79b9fq"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:cabal-revision
|
||||
("2" "1cq6h3jqkb1kvd9fjfhsllg5gq78sdiyf2gy9862xhlbv6wil19f")
|
||||
;; We omit these test suites because they require old versions of
|
||||
;; packages and packages we do not have.
|
||||
#:configure-flags
|
||||
'("--flags=-test-hlint -test-doctests -test-properties")))
|
||||
(home-page "http://thoughtpolice.github.com/hs-ed25519")
|
||||
(synopsis "Ed25519 cryptographic signatures")
|
||||
(description "This package provides a simple, fast, self-contained
|
||||
copy of the Ed25519 public-key signature system with a clean interface.
|
||||
It also includes support for detached signatures, and thorough
|
||||
documentation on the design and implementation, including usage
|
||||
guidelines.")
|
||||
(license license:expat)))
|
||||
|
|
|
@ -23,6 +23,7 @@
|
|||
|
||||
(define-module (gnu packages haskell-web)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages haskell)
|
||||
#:use-module (gnu packages haskell-check)
|
||||
#:use-module (gnu packages haskell-crypto)
|
||||
|
@ -64,7 +65,7 @@ for screen-scraping.")
|
|||
(define-public ghc-cookie
|
||||
(package
|
||||
(name "ghc-cookie")
|
||||
(version "0.4.3")
|
||||
(version "0.4.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -74,7 +75,7 @@ for screen-scraping.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qpdydhb9gw590ffabqg70x7xvjpg8l74idqnrfbhv5yrr7hryzv"))))
|
||||
"1qy09i0jh2z9i9avy2khf8a8afq4fqgnv0fyrszgfg4kmq2fsi9j"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-old-locale" ,ghc-old-locale)
|
||||
|
@ -171,7 +172,6 @@ both client and server code).")
|
|||
("ghc-old-time" ,ghc-old-time)
|
||||
("ghc-parsec" ,ghc-parsec)
|
||||
("ghc-puremd5" ,ghc-puremd5)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-network" ,ghc-network)
|
||||
("ghc-network-uri" ,ghc-network-uri)
|
||||
("ghc-split" ,ghc-split)))
|
||||
|
@ -230,7 +230,7 @@ for more user-friendly packages.")
|
|||
(define-public ghc-http-client-tls
|
||||
(package
|
||||
(name "ghc-http-client-tls")
|
||||
(version "0.3.5.1")
|
||||
(version "0.3.5.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
|
@ -238,7 +238,7 @@ for more user-friendly packages.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0n4mi8z77qaggfyq17z79cl304nf1f4h6gag60v4wjwghvmj7yn1"))))
|
||||
"0qj3pcpgbsfsc4m52dz35khhl4hf1i0nmcpa445z82d9567vy6j7"))))
|
||||
(build-system haskell-build-system)
|
||||
;; Tests require Internet access
|
||||
(arguments `(#:tests? #f))
|
||||
|
@ -262,7 +262,7 @@ libraries, such as http-conduit.")
|
|||
(define-public ghc-http-date
|
||||
(package
|
||||
(name "ghc-http-date")
|
||||
(version "0.0.6.1")
|
||||
(version "0.0.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -271,7 +271,7 @@ libraries, such as http-conduit.")
|
|||
"http-date-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0dknh28kyarnzqrsc80ssalxjrq0qbv7ir49247p2grb7rh0dqgj"))))
|
||||
"09slbzqayjnqqz9zybk7slgzvizgplikqgg4b2flzgks91466k0g"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-attoparsec" ,ghc-attoparsec)))
|
||||
|
@ -350,7 +350,6 @@ and HPACK. Currently HTTP/2 16 framing and HPACK 10 is supported.")
|
|||
("ghc-http-client" ,ghc-http-client)
|
||||
("ghc-http-client-tls" ,ghc-http-client-tls)
|
||||
("ghc-monad-control" ,ghc-monad-control)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-exceptions" ,ghc-exceptions)
|
||||
("ghc-unliftio" ,ghc-unliftio)))
|
||||
(native-inputs
|
||||
|
@ -387,7 +386,7 @@ which allow you to avoid direct usage of conduits.")
|
|||
(define-public ghc-wai
|
||||
(package
|
||||
(name "ghc-wai")
|
||||
(version "3.2.1.1")
|
||||
(version "3.2.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -397,7 +396,7 @@ which allow you to avoid direct usage of conduits.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"08afasnirja21vr0bmzcywz4w29x736dmdv7h8nnh1l8bn7sd02x"))))
|
||||
"0jr3b2789wa4m6mxkz12ynz4lfsqmgbrcy0am8karyqr3x3528r8"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-bytestring-builder" ,ghc-bytestring-builder)
|
||||
|
@ -422,7 +421,7 @@ communication between web applications and web servers.")
|
|||
(define-public ghc-wai-logger
|
||||
(package
|
||||
(name "ghc-wai-logger")
|
||||
(version "2.3.0")
|
||||
(version "2.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -432,7 +431,7 @@ communication between web applications and web servers.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1w0b0vinsyqr37wciljkz8g5dcmfi2r210lq194a0wkycly9kkch"))))
|
||||
"0w5ldq4gplc16zzk5ikmbbjw79imaqvw8p6lylaw3hlsbn3zzm4d"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments `(#:tests? #f)) ; FIXME: Tests cannot find libraries exported
|
||||
; by propagated-inputs.
|
||||
|
@ -455,7 +454,7 @@ communication between web applications and web servers.")
|
|||
(define-public ghc-wai-extra
|
||||
(package
|
||||
(name "ghc-wai-extra")
|
||||
(version "3.0.18")
|
||||
(version "3.0.24.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -465,7 +464,7 @@ communication between web applications and web servers.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r079mqqdv14fp97w0rigdpwk6b88grpjlqsjc5y8bbc0skf5za2"))))
|
||||
"07gcgq59dki5drkjci9ka34xjsy3bqilbsx0lsc4905w9jlyfbci"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-ansi-terminal" ,ghc-ansi-terminal)
|
||||
|
@ -504,7 +503,7 @@ functionality.")
|
|||
(define-public ghc-wai-conduit
|
||||
(package
|
||||
(name "ghc-wai-conduit")
|
||||
(version "3.0.0.3")
|
||||
(version "3.0.0.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -513,7 +512,7 @@ functionality.")
|
|||
"wai-conduit-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zvsiwjq2mvkb9sjgp3ly9m968m7a2jjzr4id6jpi3mmqykj15z4"))))
|
||||
"07yn41rn2skd5p3wqqa09wa761vj7ibl8l19gh4bi4i8slxhk417"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-conduit" ,ghc-conduit)
|
||||
|
@ -526,10 +525,34 @@ functionality.")
|
|||
Haskell's Web Application Interface (WAI).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-bsb-http-chunked
|
||||
(package
|
||||
(name "ghc-bsb-http-chunked")
|
||||
(version "0.0.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/"
|
||||
"bsb-http-chunked/bsb-http-chunked-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1x6m6xkrcw6jiaig1bb2wb5pqyw31x8xr9k9pxgq2g3ng44pbjr8"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-bytestring-builder" ,ghc-bytestring-builder)))
|
||||
(home-page "http://github.com/sjakobi/bsb-http-chunked")
|
||||
(synopsis "Chunked HTTP transfer encoding for bytestring builders")
|
||||
(description "This Haskell library contains functions for encoding
|
||||
bytestring builders for chunked Hypertext Transfer Protocol (HTTP) 1.1
|
||||
transfers.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-warp
|
||||
(package
|
||||
(name "ghc-warp")
|
||||
(version "3.2.11.1")
|
||||
(version "3.2.23")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -538,15 +561,12 @@ Haskell's Web Application Interface (WAI).")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zp5cy0bbj508vdvms1n5z80z37m253kwsqc5a83cfc990n6fgw5"))))
|
||||
"12v9qhi4hyp0sb90yddsax16jj7x47nmqwn53sv7b5nszcxgzam0"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; FIXME: Test-Suite `spec` fails.
|
||||
(inputs
|
||||
`(("ghc-async" ,ghc-async)
|
||||
("ghc-auto-update" ,ghc-auto-update)
|
||||
("ghc-blaze-builder" ,ghc-blaze-builder)
|
||||
("ghc-bytestring-builder" ,ghc-bytestring-builder)
|
||||
("ghc-bsb-http-chunked" ,ghc-bsb-http-chunked)
|
||||
("ghc-case-insensitive" ,ghc-case-insensitive)
|
||||
("ghc-hashable" ,ghc-hashable)
|
||||
("ghc-http-types" ,ghc-http-types)
|
||||
|
@ -559,18 +579,18 @@ Haskell's Web Application Interface (WAI).")
|
|||
("ghc-vault" ,ghc-vault)
|
||||
("ghc-wai" ,ghc-wai)
|
||||
("ghc-word8" ,ghc-word8)
|
||||
("ghc-lifted-base" ,ghc-lifted-base)
|
||||
("ghc-http-date" ,ghc-http-date)
|
||||
("ghc-simple-sendfile" ,ghc-simple-sendfile)
|
||||
("ghc-http2" ,ghc-http2)))
|
||||
(native-inputs
|
||||
`(("ghc-silently" ,ghc-silently)
|
||||
`(("curl" ,curl)
|
||||
("ghc-silently" ,ghc-silently)
|
||||
("ghc-hspec" ,ghc-hspec)
|
||||
("ghc-auto-update" ,ghc-auto-update)
|
||||
("ghc-doctest" ,ghc-doctest)
|
||||
("ghc-lifted-base" ,ghc-lifted-base)
|
||||
("ghc-quickcheck" ,ghc-quickcheck)
|
||||
("ghc-hunit" ,ghc-hunit)
|
||||
("ghc-http" ,ghc-http)
|
||||
("ghc-http-client" ,ghc-http-client)
|
||||
("hspec-discover" ,hspec-discover)))
|
||||
(home-page "http://github.com/yesodweb/wai")
|
||||
(synopsis "HTTP server library for Haskell's WAI")
|
||||
|
@ -578,10 +598,36 @@ Haskell's Web Application Interface (WAI).")
|
|||
based WAI (Web Application Interface in Haskell).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ghc-tls-session-manager
|
||||
(package
|
||||
(name "ghc-tls-session-manager")
|
||||
(version "0.0.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/"
|
||||
"tls-session-manager/tls-session-manager-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0rvmln545vghsx8zhxp44f0f6pzma8cylarmfhhysy55ipywr1n5"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-auto-update" ,ghc-auto-update)
|
||||
("ghc-clock" ,ghc-clock)
|
||||
("ghc-psqueues" ,ghc-psqueues)
|
||||
("ghc-tls" ,ghc-tls)))
|
||||
(home-page "http://hackage.haskell.org/package/tls-session-manager")
|
||||
(synopsis "In-memory TLS session manager")
|
||||
(description "This Haskell library provides a TLS session manager with
|
||||
limitation, automatic pruning, energy saving and replay resistance.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-warp-tls
|
||||
(package
|
||||
(name "ghc-warp-tls")
|
||||
(version "3.2.3")
|
||||
(version "3.2.4.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -590,7 +636,7 @@ based WAI (Web Application Interface in Haskell).")
|
|||
"warp-tls-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"14m2bzk5ivz9gdpxlcj6qnh46f2lycm1ybdjnfkj2876zrqwii7m"))))
|
||||
"17gj295fr98l7mkz2gdz6kahdnmja0sql3kvy2zab6q168g53kc4"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-cryptonite" ,ghc-cryptonite)
|
||||
|
@ -598,6 +644,7 @@ based WAI (Web Application Interface in Haskell).")
|
|||
("ghc-network" ,ghc-network)
|
||||
("ghc-streaming-commons" ,ghc-streaming-commons)
|
||||
("ghc-tls" ,ghc-tls)
|
||||
("ghc-tls-session-manager" ,ghc-tls-session-manager)
|
||||
("ghc-wai" ,ghc-wai)
|
||||
("ghc-warp" ,ghc-warp)))
|
||||
(home-page "http://github.com/yesodweb/wai")
|
||||
|
@ -609,7 +656,7 @@ a WAI handler, via the native Haskell TLS implementation.")
|
|||
(define-public ghc-xss-sanitize
|
||||
(package
|
||||
(name "ghc-xss-sanitize")
|
||||
(version "0.3.5.7")
|
||||
(version "0.3.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -618,7 +665,7 @@ a WAI handler, via the native Haskell TLS implementation.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"005cmhaw9xbzkcn42jmhvcvk63bzmg4lml368xwmqdvh7r0mcn4m"))))
|
||||
"1d72s3a6520iwwc1wbn9v2znqgbw6a5wwzb23iq8ny9ccnjyx1dk"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-tagsoup" ,ghc-tagsoup)
|
||||
|
@ -666,7 +713,7 @@ Haskell.")
|
|||
(define-public ghc-mime-types
|
||||
(package
|
||||
(name "ghc-mime-types")
|
||||
(version "0.1.0.7")
|
||||
(version "0.1.0.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
|
@ -674,7 +721,7 @@ Haskell.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1fg9cqpp5lswk8ajlq4f41n12c2v2naz179l8dsz6zisjqj4l5l3"))))
|
||||
"14ccl2842ya17zyj0bpc7vzklbyqvvydpbypn69h2fmhgji192x8"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-text" ,ghc-text)))
|
||||
|
@ -710,7 +757,7 @@ documents.")
|
|||
(define-public ghc-xhtml
|
||||
(package
|
||||
(name "ghc-xhtml")
|
||||
(version "3000.2.1")
|
||||
(version "3000.2.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -720,7 +767,7 @@ documents.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1n6wgzxbj8xf0wf1il827qidphnffb5vzhwzqlxhh70c2y10f0ik"))))
|
||||
"0939kwpinq6l4n3nyvd1gzyl7f83gymw0wzqndlgy1yc7q0nkj2w"))))
|
||||
(build-system haskell-build-system)
|
||||
(home-page "https://github.com/haskell/xhtml")
|
||||
(synopsis "XHTML combinator library")
|
||||
|
@ -732,7 +779,7 @@ Strict, Transitional and Frameset variants.")
|
|||
(define-public ghc-blaze-html
|
||||
(package
|
||||
(name "ghc-blaze-html")
|
||||
(version "0.9.0.1")
|
||||
(version "0.9.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -741,11 +788,8 @@ Strict, Transitional and Frameset variants.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r0acv47nh75bmf7kjyfvhcwz8f02rn9x0a1l80pzgyczfrsmkmf"))))
|
||||
"06xv8fqhclfjj61z74cgggn4lmx1s7diakxg84mnkgfvk11983pa"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "--allow-newer=QuickCheck"
|
||||
"--allow-newer=HUnit")))
|
||||
(inputs
|
||||
`(("ghc-blaze-builder" ,ghc-blaze-builder)
|
||||
("ghc-text" ,ghc-text)
|
||||
|
@ -764,7 +808,7 @@ Strict, Transitional and Frameset variants.")
|
|||
(define-public ghc-aeson
|
||||
(package
|
||||
(name "ghc-aeson")
|
||||
(version "1.2.4.0")
|
||||
(version "1.3.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -774,7 +818,7 @@ Strict, Transitional and Frameset variants.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"16zwpd07cmhs58wwsqbhxy3b58gqw8w5nr7nf6lwi4nvznjdn09l"))))
|
||||
"1i1ig840fvsb1lnklcv32zsc0zscirc301lw1mpfxhc6h4pk0gw4"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments `(#:tests? #f)) ; FIXME: testing libraries are missing.
|
||||
(inputs
|
||||
|
@ -808,22 +852,10 @@ for Haskell, optimized for ease of use and high performance. (A note on
|
|||
naming: in Greek mythology, Aeson was the father of Jason.)")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-aeson-for-pandoc-1
|
||||
(package (inherit ghc-aeson)
|
||||
(version "1.1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/aeson/aeson-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zy5z8pzvh53qkjm0nm3f4rwqfqg3867ck8ncd6mrxpcyvxqqj1p"))))))
|
||||
|
||||
(define-public ghc-aeson-pretty
|
||||
(package
|
||||
(name "ghc-aeson-pretty")
|
||||
(version "0.8.5")
|
||||
(version "0.8.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -831,7 +863,7 @@ naming: in Greek mythology, Aeson was the father of Jason.)")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1yd98972srlbkn0f2jhrb3f443j9wnq2fnw5gbxjxzmkcinfh5yx"))))
|
||||
"1m977gs0s9gf3lwzlbs5y7bl6ansc5pywmn2qjk09l5bwg2yrhf1"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-aeson" ,ghc-aeson)
|
||||
|
@ -889,7 +921,7 @@ of a JSON value into a @code{Data.Aeson.Value}.")
|
|||
(define-public ghc-multipart
|
||||
(package
|
||||
(name "ghc-multipart")
|
||||
(version "0.1.2")
|
||||
(version "0.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -899,9 +931,11 @@ of a JSON value into a @code{Data.Aeson.Value}.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0g04jhyw1ib1s7c9bcldyyn4n90qd9x7dmvic4vgq57bgcqgnhz5"))))
|
||||
"1x4n4yyva22dhfr1pg5ki112qvvzb4hyd7bwpm189iq4gcp52q4z"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs `(("ghc-parsec" ,ghc-parsec)))
|
||||
(inputs
|
||||
`(("ghc-parsec" ,ghc-parsec)
|
||||
("ghc-stringsearch" ,ghc-stringsearch)))
|
||||
(home-page
|
||||
"http://www.github.com/silkapp/multipart")
|
||||
(synopsis
|
||||
|
@ -1023,7 +1057,7 @@ avoid any issues with characters.")
|
|||
(define-public ghc-yesod-core
|
||||
(package
|
||||
(name "ghc-yesod-core")
|
||||
(version "1.4.37")
|
||||
(version "1.6.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1032,18 +1066,18 @@ avoid any issues with characters.")
|
|||
"yesod-core-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ww8hl0cx2g58zrdx3j6d5m2xwhssbajdqws1xk6rzl7rpfm1b9j"))))
|
||||
"0xahf6m5c7mkl74p0gimy4wb5w4s3lh92wwxmk517fbq666c92kb"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs `(("ghc-wai" ,ghc-wai)
|
||||
("ghc-extra" ,ghc-extra)
|
||||
("ghc-text" ,ghc-text)
|
||||
("ghc-shakespeare" ,ghc-shakespeare)
|
||||
("ghc-blaze-builder" ,ghc-blaze-builder)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-clientsession" ,ghc-clientsession)
|
||||
("ghc-random" ,ghc-random)
|
||||
("ghc-cereal" ,ghc-cereal)
|
||||
("ghc-old-locale" ,ghc-old-locale)
|
||||
("ghc-unliftio" ,ghc-unliftio)
|
||||
("ghc-unordered-containers" ,ghc-unordered-containers)
|
||||
("ghc-monad-control" ,ghc-monad-control)
|
||||
("ghc-transformers-base" ,ghc-transformers-base)
|
||||
|
@ -1058,6 +1092,7 @@ avoid any issues with characters.")
|
|||
("ghc-monad-logger" ,ghc-monad-logger)
|
||||
("ghc-conduit" ,ghc-conduit)
|
||||
("ghc-resourcet" ,ghc-resourcet)
|
||||
("ghc-rio" ,ghc-rio)
|
||||
("ghc-lifted-base" ,ghc-lifted-base)
|
||||
("ghc-blaze-html" ,ghc-blaze-html)
|
||||
("ghc-blaze-markup" ,ghc-blaze-markup)
|
||||
|
@ -1093,7 +1128,7 @@ functions, widgets, etc.")
|
|||
(define-public ghc-yesod-persistent
|
||||
(package
|
||||
(name "ghc-yesod-persistent")
|
||||
(version "1.4.3")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1102,7 +1137,7 @@ functions, widgets, etc.")
|
|||
"yesod-persistent-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0kiksw46c8ww9yiwl28pkrppx8d6fhsasr0hvmsliqbrp16likj8"))))
|
||||
"1gd59xf7b6v3cald58mzwnfbdzjr49cz60rm4wc5w9pvfx12pgj2"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments `(#:tests? #f)) ; FIXME: hspec-discover not available in PATH.
|
||||
(inputs `(("ghc-yesod-core" ,ghc-yesod-core)
|
||||
|
@ -1126,7 +1161,7 @@ from Yesod.")
|
|||
(define-public ghc-yesod-form
|
||||
(package
|
||||
(name "ghc-yesod-form")
|
||||
(version "1.4.16")
|
||||
(version "1.6.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1136,7 +1171,7 @@ from Yesod.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lij3m5vn8nvh6y88r1dhk03xmmjwmjzazm307nc2wvc5fmx9p2j"))))
|
||||
"1p1x1hffvarplc82ykdk7rm6p5isqgqf78bvxzpfhncxs4kwx057"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-yesod-core" ,ghc-yesod-core)
|
||||
|
@ -1169,7 +1204,7 @@ providing richtext field using Nic editor. ")
|
|||
(define-public ghc-yesod
|
||||
(package
|
||||
(name "ghc-yesod")
|
||||
(version "1.4.5")
|
||||
(version "1.6.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1178,7 +1213,7 @@ providing richtext field using Nic editor. ")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1sg66nq8yaas2m5nqsdrxricvcizd1ik02zqk60sxh3wna08fz16"))))
|
||||
"0wx77nbpzdh40p1bm527kimfj48vs9d2avpvvz2w42zi3pz2y94a"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-yesod-core" ,ghc-yesod-core)
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2017 Gábor Boskovits <boskovits@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -21,25 +22,33 @@
|
|||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu))
|
||||
|
||||
(define-public hexedit
|
||||
(package
|
||||
(name "hexedit")
|
||||
(version "1.2.13")
|
||||
(version "1.4.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://rigaux.org/"
|
||||
name "-" version ".src.tgz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pixel/hexedit.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mwdp1ikk64cqmagnrrps5jkn3li3n47maiqh2qc1xbp1ains4ka"))))
|
||||
"1xsxa5mip892jkvz9jshj73y6c7j3mgp8y393ciihqlyf2nmfs67"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments '(#:tests? #f)) ; no check target
|
||||
(inputs `(("ncurses" ,ncurses)))
|
||||
(arguments '(#:tests? #f)) ; no check target
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)))
|
||||
(inputs
|
||||
`(("ncurses" ,ncurses)))
|
||||
(synopsis "View and edit files or devices in hexadecimal or ASCII")
|
||||
(description "hexedit shows a file both in ASCII and in hexadecimal. The
|
||||
file can be a device as the file is read a piece at a time. You can modify
|
||||
|
|
|
@ -31,56 +31,10 @@
|
|||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages))
|
||||
|
||||
(define ghc-aeson-1.1.2.0
|
||||
(package (inherit ghc-aeson)
|
||||
(version "1.1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/aeson/aeson-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zy5z8pzvh53qkjm0nm3f4rwqfqg3867ck8ncd6mrxpcyvxqqj1p"))))))
|
||||
|
||||
(define ghc-trifecta-1.6.2.1
|
||||
(package (inherit ghc-trifecta)
|
||||
(version "1.6.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/trifecta/"
|
||||
"trifecta-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rgv62dlmm4vkdymx5rw5jg3w8ifpzg1745rvs1m4kzdx16p5cxs"))))))
|
||||
|
||||
;; ghc-cheapskate appeared too new. This follows LTS Haskell.
|
||||
(define ghc-cheapskate-0.1.0.5
|
||||
(package
|
||||
(inherit ghc-cheapskate)
|
||||
(version "0.1.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://hackage.haskell.org/package/cheapskate/cheapskate-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cpsmfx5z2xykg71sv8j7pl8ga6pzyjnjdb9bxn00vcpqkzvfqvs"))))
|
||||
(arguments
|
||||
;; LTS Haskell says data-default >=0.5 && <0.8
|
||||
`(#:configure-flags (list "--allow-newer=data-default")))))
|
||||
|
||||
(define-public idris
|
||||
(package
|
||||
(name "idris")
|
||||
(version "1.0")
|
||||
(version "1.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -88,12 +42,12 @@
|
|||
"idris-" version "/idris-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1srbz0cyvd0k1yqgbrwnfj94yg5y3z533q1kzac96z1h7v454s5h"))))
|
||||
"1w5i2z88li4niykwc6yrgxgfp25ll6ih95cip0ri7d8i7ik03c48"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("gmp" ,gmp)
|
||||
("ncurses" ,ncurses)
|
||||
("ghc-aeson" ,ghc-aeson-1.1.2.0)
|
||||
("ghc-aeson" ,ghc-aeson)
|
||||
("ghc-annotated-wl-pprint" ,ghc-annotated-wl-pprint)
|
||||
("ghc-ansi-terminal" ,ghc-ansi-terminal)
|
||||
("ghc-ansi-wl-pprint" ,ghc-ansi-wl-pprint)
|
||||
|
@ -101,12 +55,12 @@
|
|||
("ghc-base64-bytestring" ,ghc-base64-bytestring)
|
||||
("ghc-blaze-html" ,ghc-blaze-html)
|
||||
("ghc-blaze-markup" ,ghc-blaze-markup)
|
||||
("ghc-cheapskate" ,ghc-cheapskate-0.1.0.5)
|
||||
("ghc-cheapskate" ,ghc-cheapskate)
|
||||
("ghc-code-page" ,ghc-code-page)
|
||||
("ghc-fingertree" ,ghc-fingertree)
|
||||
("ghc-fsnotify" ,ghc-fsnotify)
|
||||
("ghc-ieee754" ,ghc-ieee754)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-megaparsec" ,ghc-megaparsec)
|
||||
("ghc-network" ,ghc-network)
|
||||
("ghc-optparse-applicative" ,ghc-optparse-applicative)
|
||||
("ghc-regex-tdfa" ,ghc-regex-tdfa)
|
||||
|
@ -114,7 +68,6 @@
|
|||
("ghc-split" ,ghc-split)
|
||||
("ghc-terminal-size" ,ghc-terminal-size)
|
||||
("ghc-text" ,ghc-text)
|
||||
("ghc-trifecta" ,ghc-trifecta-1.6.2.1)
|
||||
("ghc-uniplate" ,ghc-uniplate)
|
||||
("ghc-unordered-containers" ,ghc-unordered-containers)
|
||||
("ghc-utf8-string" ,ghc-utf8-string)
|
||||
|
@ -132,6 +85,11 @@
|
|||
(lambda _
|
||||
(setenv "CC" "gcc")
|
||||
#t))
|
||||
(add-before 'configure 'update-constraints
|
||||
(lambda _
|
||||
(substitute* "idris.cabal"
|
||||
(("aeson >= 0\\.6 && < 1\\.3")
|
||||
"aeson >= 0.6 && < 1.4"))))
|
||||
(add-after 'install 'fix-libs-install-location
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
|
|
|
@ -200,7 +200,7 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
|
|||
(define-public opencv
|
||||
(package
|
||||
(name "opencv")
|
||||
(version "3.4.1")
|
||||
(version "3.4.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/opencv/opencv/archive/"
|
||||
|
@ -208,7 +208,7 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
|
|||
(file-name (string-append name "-" version ".zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"1g8pvnlkzzp50amd89149hqsbvsc2hq3vk1d6a9fksdcx8ra9g94"))
|
||||
"0pycx1pz8lj794q32mlalyc3ijqxwsyin65r26nh4yc0p71xiirp"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -345,7 +345,7 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
|
|||
"opencv/opencv_extra/zip/" version))
|
||||
(file-name (string-append "opencv-extra-" version ".zip"))
|
||||
(sha256
|
||||
(base32 "0wfh3pvfxqydf7hsccp50npcsg37sf6fqi6cd3zkc4qil9zhpbps"))))
|
||||
(base32 "0yd1vidzbg6himxyh4yzivywijg8548kfmcn421khabnipm7l74y"))))
|
||||
("opencv-contrib"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
|
@ -353,7 +353,7 @@ integrates with various databases on GUI toolkits such as Qt and Tk.")
|
|||
"opencv/opencv_contrib/zip/" version))
|
||||
(file-name (string-append "opencv-contrib-" version ".zip"))
|
||||
(sha256
|
||||
(base32 "18zm0qmjcdvg90c33gzv0ws0xdaid1xpqzz2xa9l2x12qkr6zj3p"))))))
|
||||
(base32 "0j0ci6ia1qwklp9hq07ypl0vkngj1wrgh6n98n657m5d0pyp4m0g"))))))
|
||||
(inputs `(("libjpeg" ,libjpeg)
|
||||
("libpng" ,libpng)
|
||||
("jasper" ,jasper)
|
||||
|
|
|
@ -4288,6 +4288,85 @@ setter and getter method.")
|
|||
file filters and endian classes.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-commons-exec-1.1
|
||||
(package
|
||||
(name "java-commons-exec")
|
||||
(version "1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://apache/commons/exec/source/"
|
||||
"commons-exec-" version "-src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"025dk8xgj10lxwwwqp0hng2rn7fr4vcirxzydqzx9k4dim667alk"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
#:make-flags
|
||||
(list (string-append "-Dmaven.junit.jar="
|
||||
(assoc-ref %build-inputs "java-junit")
|
||||
"/share/java/junit.jar"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'delete-network-tests
|
||||
(lambda _
|
||||
(delete-file "src/test/java/org/apache/commons/exec/DefaultExecutorTest.java")
|
||||
(substitute* "src/test/java/org/apache/commons/exec/TestRunner.java"
|
||||
(("suite\\.addTestSuite\\(DefaultExecutorTest\\.class\\);") ""))
|
||||
#t))
|
||||
;; The "build" phase automatically tests.
|
||||
(delete 'check)
|
||||
(replace 'install (install-jars "target")))))
|
||||
(native-inputs
|
||||
`(("java-junit" ,java-junit)))
|
||||
(home-page "http://commons.apache.org/proper/commons-exec/")
|
||||
(synopsis "Common program execution related classes")
|
||||
(description "Commons-Exec simplifies executing external processes.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-commons-exec
|
||||
(package
|
||||
(inherit java-commons-exec-1.1)
|
||||
(version "1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://apache/commons/exec/source/"
|
||||
"commons-exec-" version "-src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"17yb4h6f8l49c5iyyvda4z2nmw0bxrx857nrwmsr7mmpb7x441yv"))))
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
#:make-flags
|
||||
(list (string-append "-Dmaven.junit.jar="
|
||||
(assoc-ref %build-inputs "java-junit")
|
||||
"/share/java/junit.jar")
|
||||
"-Dmaven.compiler.source=1.7"
|
||||
"-Dmaven.compiler.target=1.7")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'delete-network-tests
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; This test hangs indefinitely.
|
||||
(delete-file "src/test/java/org/apache/commons/exec/issues/Exec60Test.java")
|
||||
(substitute* "src/test/java/org/apache/commons/exec/issues/Exec41Test.java"
|
||||
(("ping -c 10 127.0.0.1") "sleep 10"))
|
||||
(substitute* "src/test/java/org/apache/commons/exec/issues/Exec49Test.java"
|
||||
(("/bin/ls") "ls"))
|
||||
(call-with-output-file "src/test/scripts/ping.sh"
|
||||
(lambda (port)
|
||||
(format port "#!~a/bin/sh\nsleep $1\n"
|
||||
(assoc-ref inputs "bash"))))
|
||||
#t))
|
||||
;; The "build" phase automatically tests.
|
||||
(delete 'check)
|
||||
(replace 'install (install-jars "target")))))
|
||||
(native-inputs
|
||||
`(("java-junit" ,java-junit)
|
||||
("java-hamcrest-core" ,java-hamcrest-core)))))
|
||||
|
||||
(define-public java-commons-lang
|
||||
(package
|
||||
(name "java-commons-lang")
|
||||
|
@ -7585,6 +7664,55 @@ configuration.")
|
|||
(description "This package is the jaxb annotations module for jackson.")
|
||||
(license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing
|
||||
|
||||
(define-public java-fasterxml-jackson-modules-base-mrbean
|
||||
(package
|
||||
(name "java-fasterxml-jackson-modules-base-mrbean")
|
||||
(version "2.9.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/FasterXML/"
|
||||
"jackson-modules-base/archive/"
|
||||
"jackson-modules-base-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wws95xi8sppp6b0k2vvjdjyynl20r1a4dwrhai08lzlria6blp5"))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:jar-name "jackson-modules-base-mrbean.jar"
|
||||
#:source-dir "mrbean/src/main/java"
|
||||
#:test-dir "mrbean/src/test"
|
||||
#:test-exclude
|
||||
;; Base class for tests
|
||||
(list "**/BaseTest.java")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'generate-PackageVersion.java
|
||||
(lambda _
|
||||
(let* ((out (string-append "mrbean/src/main/java/com/fasterxml/"
|
||||
"jackson/module/mrbean/PackageVersion.java"))
|
||||
(in (string-append out ".in")))
|
||||
(copy-file in out)
|
||||
(substitute* out
|
||||
(("@package@") "com.fasterxml.jackson.module.mrbean")
|
||||
(("@projectversion@") ,version)
|
||||
(("@projectgroupid@") "com.fasterxml.jackson.module.mrbean")
|
||||
(("@projectartifactid@") "jackson-module-mrbean")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("java-asm" ,java-asm)
|
||||
("java-fasterxml-jackson-annotations"
|
||||
,java-fasterxml-jackson-annotations)
|
||||
("java-fasterxml-jackson-core" ,java-fasterxml-jackson-core)
|
||||
("java-fasterxml-jackson-databind" ,java-fasterxml-jackson-databind)))
|
||||
(native-inputs
|
||||
`(("java-junit" ,java-junit)))
|
||||
(home-page "https://github.com/FasterXML/jackson-modules-base")
|
||||
(synopsis "POJO type materialization for Java")
|
||||
(description "This package implements POJO type materialization.
|
||||
Databinders can construct implementation classes for Java interfaces as part
|
||||
of deserialization.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public java-snakeyaml
|
||||
(package
|
||||
(name "java-snakeyaml")
|
||||
|
|
|
@ -236,7 +236,7 @@ plugins, as well as code to create plugins, or complete applications.")
|
|||
(define-public krita
|
||||
(package
|
||||
(name "krita")
|
||||
(version "4.1.1")
|
||||
(version "4.1.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -245,7 +245,7 @@ plugins, as well as code to create plugins, or complete applications.")
|
|||
"/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qz9bjvnwa5gc2b0063i2p72jq6y1b6kgqdj39599acp7ws11asw"))))
|
||||
"0d546dxs552z0pxnaka1jm7ksravw17f777wf593z0pl4ds8dgdx"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages libreoffice)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix download)
|
||||
|
@ -935,7 +936,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
|
|||
(define-public libreoffice
|
||||
(package
|
||||
(name "libreoffice")
|
||||
(version "6.1.0.3")
|
||||
(version "6.1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -945,10 +946,10 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
|
|||
(version-prefix version 3) "/libreoffice-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1n7b6abc0bp9x8lddx60w5br444wf62mdlkqmfk2zmkmiwkcvv2l"))
|
||||
"149ziasibplihfxlzafzcm4737ns30hg9175967b43c81yv5f335"))
|
||||
(patches (search-patches "libreoffice-icu.patch"
|
||||
"libreoffice-glm.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
("cppunit" ,cppunit-1.14)
|
||||
|
@ -1026,6 +1027,9 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
|
|||
(arguments
|
||||
`(#:tests? #f ; Building the tests already fails.
|
||||
#:make-flags '("build-nocheck") ; Do not build unit tests, which fails.
|
||||
;; XXX Remove this if glib-or-gtk-build-system changes to in-source-tree
|
||||
;; builds by default.
|
||||
#:out-of-source? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'prepare-src
|
||||
|
|
|
@ -61,7 +61,7 @@ Regexp::Pattern is a convention for organizing reusable regex patterns.")
|
|||
(define-public perl-string-copyright
|
||||
(package
|
||||
(name "perl-string-copyright")
|
||||
(version "0.003005")
|
||||
(version "0.003006")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -70,7 +70,7 @@ Regexp::Pattern is a convention for organizing reusable regex patterns.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12c6x4c10gr46ryc3dpwgfi6wggmgy4a1ls2hwhcpdm3wvzy5619"))))
|
||||
"0fzymv065nn3glwnw34nkyadzw2dh4rcz8avmki4zrnk4k45m01a"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-number-range" ,perl-number-range)))
|
||||
|
|
|
@ -399,8 +399,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
;; supports qemu "virt" machine and possibly a large number of ARM boards.
|
||||
;; See : https://wiki.debian.org/DebianKernel/ARMMP.
|
||||
|
||||
(define %linux-libre-version "4.18.9")
|
||||
(define %linux-libre-hash "0wwmhnfvcsdlqhzwwwyz1x5a3ldjky6l0xir1pi6pysr0lak402x")
|
||||
(define %linux-libre-version "4.18.12")
|
||||
(define %linux-libre-hash "1mcnb1mm7m6i9s591c3kx0f1vbzhbl3w92w137swcm9zifqpci5r")
|
||||
|
||||
(define %linux-libre-4.18-patches
|
||||
(list %boot-logo-patch
|
||||
|
@ -430,8 +430,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:patches %linux-libre-4.18-patches
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define %linux-libre-4.14-version "4.14.71")
|
||||
(define %linux-libre-4.14-hash "1akvykaccy7ikl8v04grwxvgs4z2rrs7drf2s85ysqwq79mdh3gq")
|
||||
(define %linux-libre-4.14-version "4.14.74")
|
||||
(define %linux-libre-4.14-hash "0cxyx2yinnc8q0hmhb0swjgdz3s0ry7wxzyqss9f2i74xjjz4rm0")
|
||||
|
||||
(define-public linux-libre-4.14
|
||||
(make-linux-libre %linux-libre-4.14-version
|
||||
|
@ -440,14 +440,14 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.9
|
||||
(make-linux-libre "4.9.128"
|
||||
"0lww23xcyyg0dwzrap5x9d700gy3lbxln55n6sqqkm7m89dkqwha"
|
||||
(make-linux-libre "4.9.131"
|
||||
"11pxwl7dmisbf2szg9qzkvhlpk68clh5l478n7b62q7hd8j3hxlv"
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.4
|
||||
(make-linux-libre "4.4.157"
|
||||
"00bnfqwkr0jfdabmwx5qk5bqxn5vwnnzwqbm5rfg7lggii74kk54"
|
||||
(make-linux-libre "4.4.159"
|
||||
"12wrhni1ikmakwv55cgzsznx9llzp82irsisbjjs7bc8z2hzwr6l"
|
||||
%intel-compatible-systems
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
|
@ -3668,15 +3668,16 @@ The collection contains a set of bandwidth and latency benchmark such as:
|
|||
(define-public rng-tools
|
||||
(package
|
||||
(name "rng-tools")
|
||||
(version "6.4")
|
||||
(home-page "https://github.com/nhorman/rng-tools")
|
||||
(version "6.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/nhorman/rng-tools/"
|
||||
"archive/v" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"005krksl8iz37l5p1nx8apl1yg7q78yrsb6inby31d2g5ck8nnwa"))))
|
||||
"11kw1rcgzmgzwk7g1w2g0nzjraqb0pf24gxpy50k4ls2qxslw3rk"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(;; Avoid using OpenSSL, curl, and libxml2, reducing the closure by 166 MiB.
|
||||
|
@ -3691,7 +3692,6 @@ The collection contains a set of bandwidth and latency benchmark such as:
|
|||
(description
|
||||
"Monitor a hardware random number generator, and supply entropy
|
||||
from that to the system kernel's @file{/dev/random} machinery.")
|
||||
(home-page "https://sourceforge.net/projects/gkernel")
|
||||
;; The source package is offered under the GPL2+, but the files
|
||||
;; 'rngd_rdrand.c' and 'rdrand_asm.S' are only available under the GPL2.
|
||||
(license (list license:gpl2 license:gpl2+))))
|
||||
|
@ -4827,19 +4827,20 @@ interface to this kernel feature.")
|
|||
(define-public mbpfan
|
||||
(package
|
||||
(name "mbpfan")
|
||||
(version "2.0.2")
|
||||
(version "2.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/dgraziotin/mbpfan/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/dgraziotin/mbpfan.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wifsws9icki95hhfh4zw1hmk07ddmkcz9mg5a9jr7q2kkrk01cx"))))
|
||||
"1gysq778rkl6dvvj9a1swxcl15wvz0bng5bn4nwq118cl8p8pask"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no tests
|
||||
'(#:tests? #f ; tests ask to be run as root
|
||||
#:make-flags (let ((out (assoc-ref %outputs "out")))
|
||||
(list (string-append "DESTDIR=" out)
|
||||
"CC=gcc"))
|
||||
|
@ -4850,7 +4851,7 @@ interface to this kernel feature.")
|
|||
(substitute* "Makefile"
|
||||
(("/usr") ""))
|
||||
#t))
|
||||
(delete 'configure)))) ; There's no configure phase.
|
||||
(delete 'configure)))) ; there's no configure phase
|
||||
(home-page "https://github.com/dgraziotin/mbpfan")
|
||||
(synopsis "Control fan speed on Macbooks")
|
||||
(description
|
||||
|
|
|
@ -2556,17 +2556,16 @@ PGP handling, multiple servers, and secure connections.")
|
|||
(define-public imapfilter
|
||||
(package
|
||||
(name "imapfilter")
|
||||
(version "2.6.11")
|
||||
(version "2.6.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://github.com/lefcha/imapfilter/archive/"
|
||||
"v" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/lefcha/imapfilter.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1yslvwr3w5fnl06gfrp0lim8zdlasx3cvgd2fsqi0695xnb9bsms"))))
|
||||
(base32 "0vzpc54fjf5vb5vx5w0fl20xvx1k9cg6a3hbl86mm8kwsqf3wrab"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
|
|
|
@ -1702,13 +1702,21 @@ scientific applications modeled by partial differential equations.")
|
|||
(package (inherit petsc)
|
||||
(name "petsc-openmpi")
|
||||
(inputs
|
||||
`(("openmpi" ,openmpi)
|
||||
("hdf5" ,hdf5-parallel-openmpi)
|
||||
`(("hdf5" ,hdf5-parallel-openmpi)
|
||||
("metis" ,metis)
|
||||
("mumps" ,mumps-openmpi)
|
||||
("openmpi" ,openmpi)
|
||||
("scalapack" ,scalapack)
|
||||
("scotch" ,pt-scotch)
|
||||
,@(package-inputs petsc)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments petsc)
|
||||
((#:configure-flags cf)
|
||||
``("--with-mpiexec=mpirun"
|
||||
"--with-metis=1"
|
||||
"--with-mumps=1"
|
||||
"--with-scalapack=1"
|
||||
"--with-ptscotch=1"
|
||||
,(string-append "--with-mpi-dir="
|
||||
(assoc-ref %build-inputs "openmpi"))
|
||||
,(string-append "--with-hdf5-include="
|
||||
|
@ -1718,9 +1726,9 @@ scientific applications modeled by partial differential equations.")
|
|||
,@(delete "--with-mpi=0" ,cf)))
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-before 'check 'mpi-setup
|
||||
(add-before 'configure 'mpi-setup
|
||||
,%openmpi-setup)))))
|
||||
(synopsis "Library to solve PDEs (with MPI support)")))
|
||||
(synopsis "Library to solve PDEs (with MUMPS and MPI support)")))
|
||||
|
||||
(define-public petsc-complex-openmpi
|
||||
(package (inherit petsc-complex)
|
||||
|
@ -1737,7 +1745,6 @@ scientific applications modeled by partial differential equations.")
|
|||
,@(delete "--with-mpi=0" ,cf)))))
|
||||
(synopsis "Library to solve PDEs (with complex scalars and MPI support)")))
|
||||
|
||||
|
||||
(define-public python-kiwisolver
|
||||
(package
|
||||
(name "python-kiwisolver")
|
||||
|
|
|
@ -1385,7 +1385,7 @@ protocol allows.")
|
|||
(define-public mcabber
|
||||
(package
|
||||
(name "mcabber")
|
||||
(version "1.0.5")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1393,7 +1393,7 @@ protocol allows.")
|
|||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ixdzk5b3s31a4bdfqgqrsiq7vbgdzhqr49p9pz9cq9bgn0h1wm0"))))
|
||||
"1ggh865p1rf10ffsnf4g6qv9i8bls36dxdb1nzs5r9vdqci2rz04"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags (list "--enable-otr"
|
||||
|
|
|
@ -5,6 +5,7 @@
|
|||
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2017 Dave Love <fx@gnu.org>
|
||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -125,7 +126,7 @@ bind processes, and much more.")
|
|||
;; Note: 2.0 isn't the default yet, see above.
|
||||
(package
|
||||
(inherit hwloc)
|
||||
(version "2.0.1")
|
||||
(version "2.0.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.open-mpi.org/software/hwloc/v"
|
||||
|
@ -133,7 +134,7 @@ bind processes, and much more.")
|
|||
"/downloads/hwloc-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jf0krj1h95flmb784ifv9vnkdnajjz00p4zbhmja7vm4v67axdr"))))
|
||||
"1phc863d5b2fvwpyyq4mlh4rkjdslh6h0h197zmyk3prwrq7si8l"))))
|
||||
|
||||
;; libnuma is no longer needed.
|
||||
(inputs (alist-delete "numactl" (package-inputs hwloc)))
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
;;; Copyright © 2013 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -27,7 +28,7 @@
|
|||
(define-public mtools
|
||||
(package
|
||||
(name "mtools")
|
||||
(version "4.0.18")
|
||||
(version "4.0.19")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -35,7 +36,7 @@
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hxciksv7av5ilnkvwbidyxxr1gzn24lr0mz9z8drkml7780im1h"))))
|
||||
"003qnj4rs22v2sih3is55scvav8xq9p1dp5b7gnyl67a60ky516r"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://www.gnu.org/software/mtools/")
|
||||
(synopsis "Access MS-DOS disks without mounting")
|
||||
|
|
|
@ -1996,7 +1996,7 @@ capabilities, custom envelopes, effects, etc.")
|
|||
(define-public yoshimi
|
||||
(package
|
||||
(name "yoshimi")
|
||||
(version "1.5.8.2")
|
||||
(version "1.5.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/yoshimi/"
|
||||
|
@ -2004,7 +2004,7 @@ capabilities, custom envelopes, effects, etc.")
|
|||
"/yoshimi-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1kg7d6mnzdwzsqhrf7pmrf1hzgfpbpm5lv8xkaz32wiv391qrnxc"))))
|
||||
"1nqwxwq6814m860zrh33r85vdyi2bgkvjg5372h3ngcdmxnb7wr0"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; there are no tests
|
||||
|
|
|
@ -902,7 +902,7 @@ private (reserved).")
|
|||
(define-public perl-net-dns
|
||||
(package
|
||||
(name "perl-net-dns")
|
||||
(version "1.17")
|
||||
(version "1.18")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -914,7 +914,7 @@ private (reserved).")
|
|||
version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"1q62w9rf2w8kjzqagzr0rdn20ybl8gj3l6cdq4k8fw0sxa7zsycs"))))
|
||||
"1lx902cbvlfl63bqfdrnyavmfwbjvrfdnwgdc1dgs1wpzja19kjj"))))
|
||||
(build-system perl-build-system)
|
||||
(inputs
|
||||
`(("perl-digest-hmac" ,perl-digest-hmac)))
|
||||
|
@ -927,7 +927,7 @@ private (reserved).")
|
|||
(define-public perl-socket6
|
||||
(package
|
||||
(name "perl-socket6")
|
||||
(version "0.28")
|
||||
(version "0.29")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -937,7 +937,7 @@ private (reserved).")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"11j5jzqbzmwlws9zals43ry2f1nw9qy6im7yhn9ck5rikywrmm5z"))))
|
||||
"054izici8klfxs8hr5rljib28plijpsfymy99xbzdp047bx1b2a6"))))
|
||||
(build-system perl-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -28,14 +28,14 @@
|
|||
(define-public nickle
|
||||
(package
|
||||
(name "nickle")
|
||||
(version "2.81")
|
||||
(version "2.82")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://nickle.org/release/nickle-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1daqsflnqqgfkq6w6dknbm42avz70f5qxn7qidvgp472i4a37acr"))))
|
||||
"0jy96z01qbrnmsrywn5mfa14615qdix6b8520qd65c6yjyrk8gs0"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("readline" ,readline)))
|
||||
|
|
|
@ -294,23 +294,23 @@ back-end for the LLVM compiler framework.")
|
|||
(define-public pocl
|
||||
(package
|
||||
(name "pocl")
|
||||
(version "1.1")
|
||||
(version "1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pocl/pocl.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1z3sqn20ddv1030adchpzs65qng436gc2mb99p213mkh95jkh1l5"))))
|
||||
(base32 "0fyiwd9nrqhl0jsac0bx17p9acpfzhyxp50mmp28mzn7psb9qidg"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("libltdl" ,libltdl)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("clang" ,clang)
|
||||
("hwloc" ,hwloc "lib")
|
||||
("hwloc" ,hwloc-2.0 "lib")
|
||||
("llvm" ,llvm)
|
||||
("ocl-icd" ,ocl-icd)))
|
||||
(arguments
|
||||
|
|
|
@ -101,8 +101,8 @@
|
|||
;; Note: the 'update-guix-package.scm' script expects this definition to
|
||||
;; start precisely like this.
|
||||
(let ((version "0.15.0")
|
||||
(commit "3d43017026f9995ad128915db8ca5eafe061bf75")
|
||||
(revision 3))
|
||||
(commit "1d0be47ab680db938ac8da1ee65e1de91e198f67")
|
||||
(revision 5))
|
||||
(package
|
||||
(name "guix")
|
||||
|
||||
|
@ -118,7 +118,7 @@
|
|||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"167rzz2h33xmmchkplwzfq94s5jwdn5nabsq2lb84s54ps0sm89m"))
|
||||
"19cn4ndmr9cqd7qh6w3nchbmdpaawdl9kc6g0v6g680vzcja417k"))
|
||||
(file-name (string-append "guix-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
@ -493,7 +493,7 @@ symlinks to the files in a common directory such as /usr/local.")
|
|||
(define-public rpm
|
||||
(package
|
||||
(name "rpm")
|
||||
(version "4.13.0.2")
|
||||
(version "4.14.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://ftp.rpm.org/releases/rpm-"
|
||||
|
@ -501,40 +501,20 @@ symlinks to the files in a common directory such as /usr/local.")
|
|||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1521y4ghjns449kzpwkjn9cksh686383xnfx0linzlalqc3jqgig"))))
|
||||
"0armd7dqr8bl0isx8l4xlylm7dikasmxhhcbz336fkp2x30w5jw0"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("--with-external-db" ;use the system's bdb
|
||||
"--enable-python"
|
||||
"--without-lua")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-before 'configure 'set-nspr-search-path
|
||||
(add-before 'configure 'set-nss-library-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; nspr.pc contains the right -I flag pointing to
|
||||
;; 'include/nspr', but unfortunately 'configure' doesn't
|
||||
;; use 'pkg-config'. Thus, augment CPATH.
|
||||
;; Likewise for NSS.
|
||||
(let ((nspr (assoc-ref inputs "nspr"))
|
||||
(nss (assoc-ref inputs "nss")))
|
||||
(setenv "CPATH"
|
||||
(string-append (getenv "C_INCLUDE_PATH") ":"
|
||||
nspr "/include/nspr:"
|
||||
nss "/include/nss"))
|
||||
(let ((nss (assoc-ref inputs "nss")))
|
||||
(setenv "LIBRARY_PATH"
|
||||
(string-append (getenv "LIBRARY_PATH") ":"
|
||||
nss "/lib/nss"))
|
||||
#t)))
|
||||
(add-after 'install 'fix-rpm-symlinks
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; 'make install' gets these symlinks wrong. Fix them.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin")))
|
||||
(with-directory-excursion bin
|
||||
(for-each (lambda (file)
|
||||
(delete-file file)
|
||||
(symlink "rpm" file))
|
||||
'("rpmquery" "rpmverify"))
|
||||
#t)))))))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
|
@ -550,7 +530,7 @@ symlinks to the files in a common directory such as /usr/local.")
|
|||
("bzip2" ,bzip2)
|
||||
("zlib" ,zlib)
|
||||
("cpio" ,cpio)))
|
||||
(home-page "http://www.rpm.org/")
|
||||
(home-page "http://rpm.org/")
|
||||
(synopsis "The RPM Package Manager")
|
||||
(description
|
||||
"The RPM Package Manager (RPM) is a command-line driven package
|
||||
|
|
|
@ -0,0 +1,86 @@
|
|||
This patch (inspired by Debian) allows ghc-haddock-library to use our
|
||||
ghc-attoparsec package instead of using a bundled version.
|
||||
|
||||
--- a/haddock-library.cabal 2018-09-01 01:22:18.676855884 -0400
|
||||
+++ b/haddock-library.cabal 2018-09-01 01:25:10.501150260 -0400
|
||||
@@ -10,7 +10,6 @@
|
||||
itself, see the ‘haddock’ package.
|
||||
license: BSD3
|
||||
license-files: LICENSE
|
||||
- vendor/attoparsec-0.13.1.0/LICENSE
|
||||
maintainer: Alex Biehl <alexbiehl@gmail.com>, Simon Hengel <sol@typeful.net>, Mateusz Kowalczyk <fuuzetsu@fuuzetsu.co.uk>
|
||||
homepage: http://www.haskell.org/haddock/
|
||||
bug-reports: https://github.com/haskell/haddock/issues
|
||||
@@ -28,7 +27,6 @@
|
||||
, containers >= 0.4.2.1 && < 0.6
|
||||
, transformers >= 0.3.0 && < 0.6
|
||||
|
||||
- -- internal sub-lib
|
||||
build-depends: attoparsec
|
||||
|
||||
hs-source-dirs: src
|
||||
@@ -49,42 +47,6 @@
|
||||
if impl(ghc >= 8.0)
|
||||
ghc-options: -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances
|
||||
|
||||
-library attoparsec
|
||||
- default-language: Haskell2010
|
||||
-
|
||||
- build-depends:
|
||||
- base >= 4.5 && < 4.12
|
||||
- , bytestring >= 0.9.2.1 && < 0.11
|
||||
- , deepseq >= 1.3 && < 1.5
|
||||
-
|
||||
- hs-source-dirs: vendor/attoparsec-0.13.1.0
|
||||
-
|
||||
- -- NB: haddock-library needs only small part of lib:attoparsec
|
||||
- -- internally, so we only bundle that subset here
|
||||
- exposed-modules:
|
||||
- Data.Attoparsec.ByteString
|
||||
- Data.Attoparsec.ByteString.Char8
|
||||
- Data.Attoparsec.Combinator
|
||||
-
|
||||
- other-modules:
|
||||
- Data.Attoparsec
|
||||
- Data.Attoparsec.ByteString.Buffer
|
||||
- Data.Attoparsec.ByteString.FastSet
|
||||
- Data.Attoparsec.ByteString.Internal
|
||||
- Data.Attoparsec.Internal
|
||||
- Data.Attoparsec.Internal.Fhthagn
|
||||
- Data.Attoparsec.Internal.Types
|
||||
- Data.Attoparsec.Number
|
||||
-
|
||||
- ghc-options: -funbox-strict-fields -Wall -fwarn-tabs -O2
|
||||
-
|
||||
- ghc-options: -Wall
|
||||
- if impl(ghc >= 8.0)
|
||||
- ghc-options: -Wcompat -Wnoncanonical-monad-instances -Wnoncanonical-monadfail-instances
|
||||
- else
|
||||
- build-depends: semigroups ^>= 0.18.3, fail ^>= 4.9.0.0
|
||||
-
|
||||
-
|
||||
test-suite spec
|
||||
type: exitcode-stdio-1.0
|
||||
default-language: Haskell2010
|
||||
@@ -115,11 +77,10 @@
|
||||
, hspec ^>= 2.4.4
|
||||
, QuickCheck ^>= 2.11
|
||||
|
||||
- -- internal sub-lib
|
||||
build-depends: attoparsec
|
||||
|
||||
-- Versions for the dependencies below are transitively pinned by
|
||||
- -- dependency on haddock-library:lib:attoparsec
|
||||
+ -- dependency on attoparsec
|
||||
build-depends:
|
||||
base
|
||||
, bytestring
|
||||
@@ -146,7 +107,7 @@
|
||||
haddock-library
|
||||
|
||||
-- Versions for the dependencies below are transitively pinned by
|
||||
- -- dependency on haddock-library:lib:attoparsec
|
||||
+ -- dependency on attoparsec
|
||||
build-depends:
|
||||
base
|
||||
|
|
@ -33,3 +33,17 @@ Fixes needed when avoiding bundled libraries.
|
|||
'/dom/base',
|
||||
'/dom/storage',
|
||||
'/ipc/glue',
|
||||
--- icecat-60.2.0/media/webrtc/trunk/webrtc/base/rtc_task_queue_gn/moz.build.orig 2018-09-13 17:40:54.000000000 -0400
|
||||
+++ icecat-60.2.0/media/webrtc/trunk/webrtc/base/rtc_task_queue_gn/moz.build 2018-09-23 21:33:12.319975105 -0400
|
||||
@@ -130,11 +130,6 @@
|
||||
DEFINES["WEBRTC_POSIX"] = True
|
||||
DEFINES["_FILE_OFFSET_BITS"] = "64"
|
||||
|
||||
- LOCAL_INCLUDES += [
|
||||
- "/ipc/chromium/src/third_party/libevent/include/",
|
||||
- "/ipc/chromium/src/third_party/libevent/linux/"
|
||||
- ]
|
||||
-
|
||||
UNIFIED_SOURCES += [
|
||||
"/media/webrtc/trunk/webrtc/base/task_queue_libevent.cc",
|
||||
"/media/webrtc/trunk/webrtc/base/task_queue_posix.cc"
|
||||
|
|
|
@ -0,0 +1,226 @@
|
|||
Allow building against system-wide graphite2/harfbuzz.
|
||||
See <https://bugzilla.mozilla.org/show_bug.cgi?id=847568>
|
||||
Based on:
|
||||
https://svnweb.freebsd.org/ports/head/www/firefox-esr/files/patch-bug847568?revision=472833&view=co
|
||||
Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
||||
|
||||
--- icecat-60.2.0/config/system-headers.mozbuild
|
||||
+++ icecat-60.2.0/config/system-headers.mozbuild
|
||||
@@ -1311,6 +1311,19 @@
|
||||
'pixman.h',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ system_headers += [
|
||||
+ 'graphite2/Font.h',
|
||||
+ 'graphite2/Segment.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ system_headers += [
|
||||
+ 'harfbuzz/hb-glib.h',
|
||||
+ 'harfbuzz/hb-ot.h',
|
||||
+ 'harfbuzz/hb.h',
|
||||
+ ]
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_LIBVPX']:
|
||||
system_headers += [
|
||||
'vpx_mem/vpx_mem.h',
|
||||
--- icecat-60.2.0/dom/base/moz.build
|
||||
+++ icecat-60.2.0/dom/base/moz.build
|
||||
@@ -474,6 +474,9 @@
|
||||
if CONFIG['MOZ_X11']:
|
||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
GENERATED_FILES += [
|
||||
'PropertyUseCounterMap.inc',
|
||||
'UseCounterList.h',
|
||||
--- icecat-60.2.0/gfx/graphite2/moz-gr-update.sh
|
||||
+++ icecat-60.2.0/gfx/graphite2/moz-gr-update.sh
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script used to update the Graphite2 library in the mozilla source tree
|
||||
+# and bump version for --with-system-graphite2
|
||||
|
||||
# This script lives in gfx/graphite2, along with the library source,
|
||||
# but must be run from the top level of the mozilla-central tree.
|
||||
@@ -37,12 +38,16 @@ echo "See" $0 "for update procedure." >> gfx/graphite2/README.mozilla
|
||||
#find gfx/graphite2/ -name "*.cpp" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
|
||||
#find gfx/graphite2/ -name "*.h" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
|
||||
|
||||
+# chase version for --with-system-graphite2
|
||||
+perl -p -i -e "s/[0-9]+\,[0-9]+\,[0-9]+/$RELEASE/ and tr/./,/ \
|
||||
+ if /GR2_VERSION_REQUIRE/" old-configure.in
|
||||
+
|
||||
# summarize what's been touched
|
||||
echo Updated to $RELEASE.
|
||||
echo Here is what changed in the gfx/graphite2 directory:
|
||||
echo
|
||||
|
||||
-hg stat gfx/graphite2
|
||||
+hg stat old-configure.in gfx/graphite2
|
||||
|
||||
echo
|
||||
echo If gfx/graphite2/src/files.mk has changed, please make corresponding
|
||||
--- icecat-60.2.0/gfx/moz.build
|
||||
+++ icecat-60.2.0/gfx/moz.build
|
||||
@@ -10,6 +10,12 @@ with Files('**'):
|
||||
if CONFIG['MOZ_TREE_CAIRO']:
|
||||
DIRS += ['cairo']
|
||||
|
||||
+if not CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ DIRS += ['graphite2/src' ]
|
||||
+
|
||||
+if not CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ DIRS += ['harfbuzz/src']
|
||||
+
|
||||
DIRS += [
|
||||
'2d',
|
||||
'ycbcr',
|
||||
@@ -18,8 +24,6 @@ DIRS += [
|
||||
'qcms',
|
||||
'gl',
|
||||
'layers',
|
||||
- 'graphite2/src',
|
||||
- 'harfbuzz/src',
|
||||
'ots/src',
|
||||
'thebes',
|
||||
'ipc',
|
||||
--- icecat-60.2.0/gfx/skia/generate_mozbuild.py
|
||||
+++ icecat-60.2.0/gfx/skia/generate_mozbuild.py
|
||||
@@ -148,6 +148,9 @@
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
--- icecat-60.2.0/gfx/skia/moz.build
|
||||
+++ icecat-60.2.0/gfx/skia/moz.build
|
||||
@@ -822,6 +822,9 @@
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
--- icecat-60.2.0/gfx/thebes/moz.build
|
||||
+++ icecat-60.2.0/gfx/thebes/moz.build
|
||||
@@ -272,7 +272,13 @@
|
||||
|
||||
LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
|
||||
|
||||
-DEFINES['GRAPHITE2_STATIC'] = True
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_GRAPHITE2_CFLAGS']
|
||||
+else:
|
||||
+ DEFINES['GRAPHITE2_STATIC'] = True
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
|
||||
if CONFIG['CC_TYPE'] == 'clang':
|
||||
# Suppress warnings from Skia header files.
|
||||
--- icecat-60.2.0/intl/unicharutil/util/moz.build
|
||||
+++ icecat-60.2.0/intl/unicharutil/util/moz.build
|
||||
@@ -25,4 +25,7 @@ UNIFIED_SOURCES += [
|
||||
'nsUnicodeProperties.cpp',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
FINAL_LIBRARY = 'xul'
|
||||
--- icecat-60.2.0/netwerk/dns/moz.build
|
||||
+++ icecat-60.2.0/netwerk/dns/moz.build
|
||||
@@ -76,3 +76,6 @@
|
||||
|
||||
if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
||||
CXXFLAGS += ['-Wno-error=shadow']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
--- icecat-60.2.0/old-configure.in
|
||||
+++ icecat-60.2.0/old-configure.in
|
||||
@@ -3995,6 +3995,27 @@
|
||||
AC_SUBST(MOZ_LINUX_32_SSE2_STARTUP_ERROR)
|
||||
|
||||
dnl ========================================================
|
||||
+dnl Check for graphite2
|
||||
+dnl ========================================================
|
||||
+if test -n "$MOZ_SYSTEM_GRAPHITE2"; then
|
||||
+ dnl graphite2.pc has bogus version, check manually
|
||||
+ _SAVE_CFLAGS=$CFLAGS
|
||||
+ CFLAGS="$CFLAGS $MOZ_GRAPHITE2_CFLAGS"
|
||||
+ AC_TRY_COMPILE([ #include <graphite2/Font.h>
|
||||
+ #define GR2_VERSION_REQUIRE(major,minor,bugfix) \
|
||||
+ ( GR2_VERSION_MAJOR * 10000 + GR2_VERSION_MINOR \
|
||||
+ * 100 + GR2_VERSION_BUGFIX >= \
|
||||
+ (major) * 10000 + (minor) * 100 + (bugfix) )
|
||||
+ ], [
|
||||
+ #if !GR2_VERSION_REQUIRE(1,3,10)
|
||||
+ #error "Insufficient graphite2 version."
|
||||
+ #endif
|
||||
+ ], [],
|
||||
+ [AC_MSG_ERROR([--with-system-graphite2 requested but no working libgraphite2 found])])
|
||||
+ CFLAGS=$_SAVE_CFLAGS
|
||||
+fi
|
||||
+
|
||||
+dnl ========================================================
|
||||
dnl Check for pixman and cairo
|
||||
dnl ========================================================
|
||||
|
||||
--- icecat-60.2.0/toolkit/library/moz.build
|
||||
+++ icecat-60.2.0/toolkit/library/moz.build
|
||||
@@ -235,6 +235,12 @@
|
||||
if CONFIG['MOZ_SYSTEM_PNG']:
|
||||
OS_LIBS += CONFIG['MOZ_PNG_LIBS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS']
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
||||
--- icecat-60.2.0/toolkit/moz.configure
|
||||
+++ icecat-60.2.0/toolkit/moz.configure
|
||||
@@ -1051,6 +1051,26 @@
|
||||
add_old_configure_assignment('FT2_CFLAGS',
|
||||
ft2_info.cflags)
|
||||
|
||||
+# Graphite2
|
||||
+# ==============================================================
|
||||
+option('--with-system-graphite2',
|
||||
+ help="Use system graphite2 (located with pkgconfig)")
|
||||
+
|
||||
+system_graphite2 = pkg_check_modules('MOZ_GRAPHITE2', 'graphite2',
|
||||
+ when='--with-system-graphite2')
|
||||
+
|
||||
+set_config('MOZ_SYSTEM_GRAPHITE2', depends_if(system_graphite2)(lambda _: True))
|
||||
+
|
||||
+# HarfBuzz
|
||||
+# ==============================================================
|
||||
+option('--with-system-harfbuzz',
|
||||
+ help="Use system harfbuzz (located with pkgconfig)")
|
||||
+
|
||||
+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.7.4',
|
||||
+ when='--with-system-harfbuzz')
|
||||
+
|
||||
+set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True))
|
||||
+
|
||||
# Mortar
|
||||
# ==============================================================
|
||||
option('--enable-mortar', help='Enable mortar extension')
|
|
@ -1,248 +0,0 @@
|
|||
Copied from <https://reviewboard.mozilla.org/r/90218/diff/4>
|
||||
See <https://bugzilla.mozilla.org/show_bug.cgi?id=847568>
|
||||
|
||||
diff --git a/config/Makefile.in b/config/Makefile.in
|
||||
--- a/config/Makefile.in
|
||||
+++ b/config/Makefile.in
|
||||
@@ -36,16 +36,17 @@ ifdef WRAP_SYSTEM_INCLUDES
|
||||
export-preqs = \
|
||||
$(call mkdir_deps,system_wrappers) \
|
||||
$(NULL)
|
||||
|
||||
export:: $(export-preqs)
|
||||
$(PYTHON) -m mozbuild.action.preprocessor $(DEFINES) $(ACDEFINES) \
|
||||
-DMOZ_TREE_CAIRO=$(MOZ_TREE_CAIRO) \
|
||||
-DMOZ_TREE_PIXMAN=$(MOZ_TREE_PIXMAN) \
|
||||
+ -DMOZ_SYSTEM_GRAPHITE2=$(MOZ_SYSTEM_GRAPHITE2) \
|
||||
-DMOZ_SYSTEM_HARFBUZZ=$(MOZ_SYSTEM_HARFBUZZ) \
|
||||
-DMOZ_SYSTEM_HUNSPELL=$(MOZ_SYSTEM_HUNSPELL) \
|
||||
-DMOZ_SYSTEM_BZ2=$(MOZ_SYSTEM_BZ2) \
|
||||
-DMOZ_SYSTEM_ZLIB=$(MOZ_SYSTEM_ZLIB) \
|
||||
-DMOZ_SYSTEM_PNG=$(MOZ_SYSTEM_PNG) \
|
||||
-DMOZ_SYSTEM_JPEG=$(MOZ_SYSTEM_JPEG) \
|
||||
-DMOZ_SYSTEM_LIBEVENT=$(MOZ_SYSTEM_LIBEVENT) \
|
||||
-DMOZ_SYSTEM_LIBVPX=$(MOZ_SYSTEM_LIBVPX) \
|
||||
diff --git a/config/system-headers b/config/system-headers
|
||||
--- a/config/system-headers
|
||||
+++ b/config/system-headers
|
||||
@@ -1260,16 +1260,20 @@ zlib.h
|
||||
#ifdef MOZ_ENABLE_STARTUP_NOTIFICATION
|
||||
libsn/sn.h
|
||||
libsn/sn-common.h
|
||||
libsn/sn-launchee.h
|
||||
libsn/sn-launcher.h
|
||||
libsn/sn-monitor.h
|
||||
libsn/sn-util.h
|
||||
#endif
|
||||
+#if MOZ_SYSTEM_GRAPHITE2==1
|
||||
+graphite2/Font.h
|
||||
+graphite2/Segment.h
|
||||
+#endif
|
||||
#if MOZ_SYSTEM_HARFBUZZ==1
|
||||
harfbuzz/hb-glib.h
|
||||
harfbuzz/hb-ot.h
|
||||
harfbuzz/hb.h
|
||||
#endif
|
||||
#if MOZ_SYSTEM_HUNSPELL==1
|
||||
hunspell.hxx
|
||||
#endif
|
||||
diff --git a/gfx/graphite2/moz-gr-update.sh b/gfx/graphite2/moz-gr-update.sh
|
||||
--- a/gfx/graphite2/moz-gr-update.sh
|
||||
+++ b/gfx/graphite2/moz-gr-update.sh
|
||||
@@ -1,11 +1,12 @@
|
||||
#!/bin/bash
|
||||
|
||||
# Script used to update the Graphite2 library in the mozilla source tree
|
||||
+# and bump version for --with-system-graphite2
|
||||
|
||||
# This script lives in gfx/graphite2, along with the library source,
|
||||
# but must be run from the top level of the mozilla-central tree.
|
||||
|
||||
# Run as
|
||||
#
|
||||
# ./gfx/graphite2/moz-gr-update.sh RELEASE
|
||||
#
|
||||
@@ -32,22 +33,26 @@ echo "This directory contains the Graphi
|
||||
echo "$TARBALL" >> gfx/graphite2/README.mozilla
|
||||
echo ""
|
||||
echo "See" $0 "for update procedure." >> gfx/graphite2/README.mozilla
|
||||
|
||||
# fix up includes because of bug 721839 (cstdio) and bug 803066 (Windows.h)
|
||||
#find gfx/graphite2/ -name "*.cpp" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
|
||||
#find gfx/graphite2/ -name "*.h" -exec perl -p -i -e "s/<cstdio>/<stdio.h>/;s/Windows.h/windows.h/;" {} \;
|
||||
|
||||
+# chase version for --with-system-graphite2
|
||||
+perl -p -i -e "s/[0-9]+\,[0-9]+\,[0-9]+/$RELEASE/ and tr/./,/ \
|
||||
+ if /GR2_VERSION_REQUIRE/" old-configure.in
|
||||
+
|
||||
# summarize what's been touched
|
||||
echo Updated to $RELEASE.
|
||||
echo Here is what changed in the gfx/graphite2 directory:
|
||||
echo
|
||||
|
||||
-hg stat gfx/graphite2
|
||||
+hg stat old-configure.in gfx/graphite2
|
||||
|
||||
echo
|
||||
echo If gfx/graphite2/src/files.mk has changed, please make corresponding
|
||||
echo changes to gfx/graphite2/src/moz.build
|
||||
echo
|
||||
|
||||
echo
|
||||
echo Now use hg commands to create a patch for the mozilla tree.
|
||||
diff --git a/gfx/moz.build b/gfx/moz.build
|
||||
--- a/gfx/moz.build
|
||||
+++ b/gfx/moz.build
|
||||
@@ -2,28 +2,30 @@
|
||||
# vim: set filetype=python:
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# 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/.
|
||||
|
||||
if CONFIG['MOZ_TREE_CAIRO']:
|
||||
DIRS += ['cairo']
|
||||
|
||||
+if not CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ DIRS += ['graphite2/src' ]
|
||||
+
|
||||
if not CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
DIRS += ['harfbuzz/src']
|
||||
|
||||
DIRS += [
|
||||
'2d',
|
||||
'ycbcr',
|
||||
'angle',
|
||||
'src',
|
||||
'qcms',
|
||||
'gl',
|
||||
'layers',
|
||||
- 'graphite2/src',
|
||||
'ots/src',
|
||||
'thebes',
|
||||
'ipc',
|
||||
'vr',
|
||||
'config',
|
||||
]
|
||||
|
||||
if CONFIG['MOZ_ENABLE_SKIA']:
|
||||
diff --git a/gfx/thebes/moz.build b/gfx/thebes/moz.build
|
||||
--- a/gfx/thebes/moz.build
|
||||
+++ b/gfx/thebes/moz.build
|
||||
@@ -261,16 +261,19 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('and
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'):
|
||||
CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS']
|
||||
|
||||
LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
|
||||
LOCAL_INCLUDES += ['/media/libyuv/include']
|
||||
|
||||
-DEFINES['GRAPHITE2_STATIC'] = True
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_GRAPHITE2_CFLAGS']
|
||||
+else:
|
||||
+ DEFINES['GRAPHITE2_STATIC'] = True
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
|
||||
if CONFIG['CLANG_CXX']:
|
||||
# Suppress warnings from Skia header files.
|
||||
SOURCES['gfxPlatform.cpp'].flags += ['-Wno-implicit-fallthrough']
|
||||
diff --git a/moz.configure b/moz.configure
|
||||
--- a/moz.configure
|
||||
+++ b/moz.configure
|
||||
@@ -260,16 +260,28 @@ def extra_programs(target):
|
||||
|
||||
check_prog('DSYMUTIL', delayed_getattr(extra_programs, 'DSYMUTIL'),
|
||||
allow_missing=True)
|
||||
check_prog('GENISOIMAGE', delayed_getattr(extra_programs, 'GENISOIMAGE'),
|
||||
allow_missing=True)
|
||||
check_prog('RPMBUILD', delayed_getattr(extra_programs, 'RPMBUILD'),
|
||||
allow_missing=True)
|
||||
|
||||
+option('--with-system-graphite2',
|
||||
+ help="Use system graphite2 (located with pkgconfig)")
|
||||
+
|
||||
+@depends('--with-system-graphite2', compile_environment)
|
||||
+def check_for_graphite2(value, compile_env):
|
||||
+ return value and compile_env
|
||||
+
|
||||
+system_graphite2 = pkg_check_modules('MOZ_GRAPHITE2', 'graphite2',
|
||||
+ check_for_graphite2)
|
||||
+
|
||||
+set_config('MOZ_SYSTEM_GRAPHITE2', depends_if(system_graphite2)(lambda _: True))
|
||||
+
|
||||
option('--with-system-harfbuzz',
|
||||
help="Use system harfbuzz (located with pkgconfig)")
|
||||
|
||||
@depends('--with-system-harfbuzz', compile_environment)
|
||||
def check_for_harfbuzz(value, compile_env):
|
||||
return value and compile_env
|
||||
|
||||
system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.3.3',
|
||||
diff --git a/old-configure.in b/old-configure.in
|
||||
--- a/old-configure.in
|
||||
+++ b/old-configure.in
|
||||
@@ -5060,16 +5060,37 @@ if test "$USE_FC_FREETYPE"; then
|
||||
CPPFLAGS="$CPPFLAGS $FT2_CFLAGS $XCFLAGS"
|
||||
MOZ_CHECK_HEADERS([fontconfig/fcfreetype.h], ,
|
||||
[AC_MSG_ERROR(Can't find header fontconfig/fcfreetype.h.)], [#include <fontconfig/fontconfig.h>])
|
||||
CPPFLAGS="$_SAVE_CPPFLAGS"
|
||||
fi
|
||||
fi
|
||||
|
||||
dnl ========================================================
|
||||
+dnl Check for graphite2
|
||||
+dnl ========================================================
|
||||
+if test -n "$MOZ_SYSTEM_GRAPHITE2"; then
|
||||
+ dnl graphite2.pc has bogus version, check manually
|
||||
+ _SAVE_CFLAGS=$CFLAGS
|
||||
+ CFLAGS="$CFLAGS $MOZ_GRAPHITE2_CFLAGS"
|
||||
+ AC_TRY_COMPILE([ #include <graphite2/Font.h>
|
||||
+ #define GR2_VERSION_REQUIRE(major,minor,bugfix) \
|
||||
+ ( GR2_VERSION_MAJOR * 10000 + GR2_VERSION_MINOR \
|
||||
+ * 100 + GR2_VERSION_BUGFIX >= \
|
||||
+ (major) * 10000 + (minor) * 100 + (bugfix) )
|
||||
+ ], [
|
||||
+ #if !GR2_VERSION_REQUIRE(1,3,8)
|
||||
+ #error "Insufficient graphite2 version."
|
||||
+ #endif
|
||||
+ ], [],
|
||||
+ [AC_MSG_ERROR([--with-system-graphite2 requested but no working libgraphite2 found])])
|
||||
+ CFLAGS=$_SAVE_CFLAGS
|
||||
+fi
|
||||
+
|
||||
+dnl ========================================================
|
||||
dnl Check for pixman and cairo
|
||||
dnl ========================================================
|
||||
|
||||
MOZ_TREE_CAIRO=1
|
||||
MOZ_ARG_ENABLE_BOOL(system-cairo,
|
||||
[ --enable-system-cairo Use system cairo (located with pkgconfig)],
|
||||
MOZ_TREE_CAIRO=,
|
||||
MOZ_TREE_CAIRO=1 )
|
||||
diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build
|
||||
--- a/toolkit/library/moz.build
|
||||
+++ b/toolkit/library/moz.build
|
||||
@@ -221,16 +221,19 @@ if CONFIG['SERVO_TARGET_DIR']:
|
||||
OS_LIBS += ['-L%s' % CONFIG['SERVO_TARGET_DIR'], '-lgeckoservo']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_JPEG']:
|
||||
OS_LIBS += CONFIG['MOZ_JPEG_LIBS']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_PNG']:
|
||||
OS_LIBS += CONFIG['MOZ_PNG_LIBS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_GRAPHITE2']:
|
||||
+ OS_LIBS += CONFIG['MOZ_GRAPHITE2_LIBS']
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_LIBEVENT']:
|
||||
OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS']
|
||||
|
|
@ -1,279 +0,0 @@
|
|||
Copied from <https://reviewboard.mozilla.org/r/35763/diff/9>
|
||||
See <https://bugzilla.mozilla.org/show_bug.cgi?id=847568>
|
||||
|
||||
diff --git a/config/Makefile.in b/config/Makefile.in
|
||||
--- a/config/Makefile.in
|
||||
+++ b/config/Makefile.in
|
||||
@@ -36,16 +36,17 @@ ifdef WRAP_SYSTEM_INCLUDES
|
||||
export-preqs = \
|
||||
$(call mkdir_deps,system_wrappers) \
|
||||
$(NULL)
|
||||
|
||||
export:: $(export-preqs)
|
||||
$(PYTHON) -m mozbuild.action.preprocessor $(DEFINES) $(ACDEFINES) \
|
||||
-DMOZ_TREE_CAIRO=$(MOZ_TREE_CAIRO) \
|
||||
-DMOZ_TREE_PIXMAN=$(MOZ_TREE_PIXMAN) \
|
||||
+ -DMOZ_SYSTEM_HARFBUZZ=$(MOZ_SYSTEM_HARFBUZZ) \
|
||||
-DMOZ_SYSTEM_HUNSPELL=$(MOZ_SYSTEM_HUNSPELL) \
|
||||
-DMOZ_SYSTEM_BZ2=$(MOZ_SYSTEM_BZ2) \
|
||||
-DMOZ_SYSTEM_ZLIB=$(MOZ_SYSTEM_ZLIB) \
|
||||
-DMOZ_SYSTEM_PNG=$(MOZ_SYSTEM_PNG) \
|
||||
-DMOZ_SYSTEM_JPEG=$(MOZ_SYSTEM_JPEG) \
|
||||
-DMOZ_SYSTEM_LIBEVENT=$(MOZ_SYSTEM_LIBEVENT) \
|
||||
-DMOZ_SYSTEM_LIBVPX=$(MOZ_SYSTEM_LIBVPX) \
|
||||
-DMOZ_SYSTEM_ICU=$(MOZ_SYSTEM_ICU) \
|
||||
diff --git a/config/system-headers b/config/system-headers
|
||||
--- a/config/system-headers
|
||||
+++ b/config/system-headers
|
||||
@@ -1260,16 +1260,21 @@ zlib.h
|
||||
#ifdef MOZ_ENABLE_STARTUP_NOTIFICATION
|
||||
libsn/sn.h
|
||||
libsn/sn-common.h
|
||||
libsn/sn-launchee.h
|
||||
libsn/sn-launcher.h
|
||||
libsn/sn-monitor.h
|
||||
libsn/sn-util.h
|
||||
#endif
|
||||
+#if MOZ_SYSTEM_HARFBUZZ==1
|
||||
+harfbuzz/hb-glib.h
|
||||
+harfbuzz/hb-ot.h
|
||||
+harfbuzz/hb.h
|
||||
+#endif
|
||||
#if MOZ_SYSTEM_HUNSPELL==1
|
||||
hunspell.hxx
|
||||
#endif
|
||||
#if MOZ_SYSTEM_BZ2==1
|
||||
bzlib.h
|
||||
#endif
|
||||
#ifdef MOZ_ENABLE_GIO
|
||||
gio/gio.h
|
||||
diff --git a/dom/base/moz.build b/dom/base/moz.build
|
||||
--- a/dom/base/moz.build
|
||||
+++ b/dom/base/moz.build
|
||||
@@ -474,16 +474,19 @@ for var in ('MOZ_B2G_RIL'):
|
||||
DEFINES[var] = True
|
||||
|
||||
if CONFIG['MOZ_BUILD_APP'] in ['browser', 'mobile/android', 'xulrunner']:
|
||||
DEFINES['HAVE_SIDEBAR'] = True
|
||||
|
||||
if CONFIG['MOZ_X11']:
|
||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
GENERATED_FILES += [
|
||||
'PropertyUseCounterMap.inc',
|
||||
'UseCounterList.h',
|
||||
]
|
||||
|
||||
countermap = GENERATED_FILES['PropertyUseCounterMap.inc']
|
||||
countermap.script = 'gen-usecounters.py:property_map'
|
||||
countermap.inputs = ['UseCounters.conf']
|
||||
diff --git a/gfx/harfbuzz/README-mozilla b/gfx/harfbuzz/README-mozilla
|
||||
--- a/gfx/harfbuzz/README-mozilla
|
||||
+++ b/gfx/harfbuzz/README-mozilla
|
||||
@@ -14,8 +14,13 @@ this file when updating harfbuzz, and ch
|
||||
|
||||
The normal approach to updating harfbuzz, therefore, is to pull the latest HB
|
||||
source into a scratch directory and do a local build; then copy the original
|
||||
sources AND the generated header mentioned above from the build directory into
|
||||
the mozilla tree.
|
||||
|
||||
If the collection of source files changes, manual updates to moz.build may be
|
||||
needed, as we don't use the upstream makefiles.
|
||||
+
|
||||
+The in-tree copy may be omitted during build by --with-system-harfbuzz.
|
||||
+Make sure to keep pkg-config version check within old-configure.in in sync
|
||||
+with checkout version or increment latest tag by one if it's not based
|
||||
+on upstream release.
|
||||
diff --git a/gfx/moz.build b/gfx/moz.build
|
||||
--- a/gfx/moz.build
|
||||
+++ b/gfx/moz.build
|
||||
@@ -2,26 +2,28 @@
|
||||
# vim: set filetype=python:
|
||||
# This Source Code Form is subject to the terms of the Mozilla Public
|
||||
# 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/.
|
||||
|
||||
if CONFIG['MOZ_TREE_CAIRO']:
|
||||
DIRS += ['cairo']
|
||||
|
||||
+if not CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ DIRS += ['harfbuzz/src']
|
||||
+
|
||||
DIRS += [
|
||||
'2d',
|
||||
'ycbcr',
|
||||
'angle',
|
||||
'src',
|
||||
'qcms',
|
||||
'gl',
|
||||
'layers',
|
||||
'graphite2/src',
|
||||
- 'harfbuzz/src',
|
||||
'ots/src',
|
||||
'thebes',
|
||||
'ipc',
|
||||
'vr',
|
||||
'config',
|
||||
]
|
||||
|
||||
if CONFIG['MOZ_ENABLE_SKIA']:
|
||||
diff --git a/gfx/skia/generate_mozbuild.py b/gfx/skia/generate_mozbuild.py
|
||||
--- a/gfx/skia/generate_mozbuild.py
|
||||
+++ b/gfx/skia/generate_mozbuild.py
|
||||
@@ -138,16 +138,19 @@ if CONFIG['GNU_CXX'] and not CONFIG['CLA
|
||||
if CONFIG['CLANG_CXX'] or CONFIG['CLANG_CL']:
|
||||
CXXFLAGS += [
|
||||
'-Wno-implicit-fallthrough',
|
||||
'-Wno-inconsistent-missing-override',
|
||||
'-Wno-macro-redefined',
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'):
|
||||
CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS']
|
||||
"""
|
||||
|
||||
diff --git a/gfx/skia/moz.build b/gfx/skia/moz.build
|
||||
--- a/gfx/skia/moz.build
|
||||
+++ b/gfx/skia/moz.build
|
||||
@@ -748,14 +748,17 @@ if CONFIG['GNU_CXX'] and not CONFIG['CLA
|
||||
if CONFIG['CLANG_CXX'] or CONFIG['CLANG_CL']:
|
||||
CXXFLAGS += [
|
||||
'-Wno-implicit-fallthrough',
|
||||
'-Wno-inconsistent-missing-override',
|
||||
'-Wno-macro-redefined',
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'):
|
||||
CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS']
|
||||
diff --git a/gfx/thebes/moz.build b/gfx/thebes/moz.build
|
||||
--- a/gfx/thebes/moz.build
|
||||
+++ b/gfx/thebes/moz.build
|
||||
@@ -263,11 +263,14 @@ if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('and
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk2', 'gtk3'):
|
||||
CXXFLAGS += CONFIG['MOZ_PANGO_CFLAGS']
|
||||
|
||||
LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
|
||||
LOCAL_INCLUDES += ['/media/libyuv/include']
|
||||
|
||||
DEFINES['GRAPHITE2_STATIC'] = True
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['CLANG_CXX']:
|
||||
# Suppress warnings from Skia header files.
|
||||
SOURCES['gfxPlatform.cpp'].flags += ['-Wno-implicit-fallthrough']
|
||||
diff --git a/intl/unicharutil/util/moz.build b/intl/unicharutil/util/moz.build
|
||||
--- a/intl/unicharutil/util/moz.build
|
||||
+++ b/intl/unicharutil/util/moz.build
|
||||
@@ -37,9 +37,12 @@ if CONFIG['_MSC_VER']:
|
||||
DEFINES['_USE_ANSI_CPP'] = True
|
||||
# Don't include directives about which CRT to use
|
||||
CFLAGS += ['-Zl']
|
||||
CXXFLAGS += ['-Zl']
|
||||
|
||||
if CONFIG['ENABLE_INTL_API']:
|
||||
USE_LIBS += ['icu']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
DIST_INSTALL = True
|
||||
diff --git a/moz.configure b/moz.configure
|
||||
--- a/moz.configure
|
||||
+++ b/moz.configure
|
||||
@@ -260,16 +260,28 @@ def extra_programs(target):
|
||||
|
||||
check_prog('DSYMUTIL', delayed_getattr(extra_programs, 'DSYMUTIL'),
|
||||
allow_missing=True)
|
||||
check_prog('GENISOIMAGE', delayed_getattr(extra_programs, 'GENISOIMAGE'),
|
||||
allow_missing=True)
|
||||
check_prog('RPMBUILD', delayed_getattr(extra_programs, 'RPMBUILD'),
|
||||
allow_missing=True)
|
||||
|
||||
+option('--with-system-harfbuzz',
|
||||
+ help="Use system harfbuzz (located with pkgconfig)")
|
||||
+
|
||||
+@depends('--with-system-harfbuzz', compile_environment)
|
||||
+def check_for_harfbuzz(value, compile_env):
|
||||
+ return value and compile_env
|
||||
+
|
||||
+system_harfbuzz = pkg_check_modules('MOZ_HARFBUZZ', 'harfbuzz >= 1.3.3',
|
||||
+ check_for_harfbuzz)
|
||||
+
|
||||
+set_config('MOZ_SYSTEM_HARFBUZZ', depends_if(system_harfbuzz)(lambda _: True))
|
||||
+
|
||||
option('--enable-system-hunspell',
|
||||
help="Use system hunspell (located with pkgconfig)")
|
||||
|
||||
@depends('--enable-system-hunspell', compile_environment)
|
||||
def check_for_hunspell(value, compile_env):
|
||||
return value and compile_env
|
||||
|
||||
system_hunspell = pkg_check_modules('MOZ_HUNSPELL', 'hunspell',
|
||||
diff --git a/netwerk/dns/moz.build b/netwerk/dns/moz.build
|
||||
--- a/netwerk/dns/moz.build
|
||||
+++ b/netwerk/dns/moz.build
|
||||
@@ -61,16 +61,19 @@ etld_data = GENERATED_FILES['etld_data.i
|
||||
etld_data.script = 'prepare_tlds.py'
|
||||
etld_data.inputs = ['effective_tld_names.dat']
|
||||
|
||||
# need to include etld_data.inc
|
||||
LOCAL_INCLUDES += [
|
||||
'/netwerk/base',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
if CONFIG['ENABLE_INTL_API']:
|
||||
DEFINES['IDNA2008'] = True
|
||||
USE_LIBS += ['icu']
|
||||
else:
|
||||
UNIFIED_SOURCES += [
|
||||
'nameprep.c',
|
||||
]
|
||||
|
||||
diff --git a/toolkit/library/moz.build b/toolkit/library/moz.build
|
||||
--- a/toolkit/library/moz.build
|
||||
+++ b/toolkit/library/moz.build
|
||||
@@ -221,16 +221,19 @@ if CONFIG['SERVO_TARGET_DIR']:
|
||||
OS_LIBS += ['-L%s' % CONFIG['SERVO_TARGET_DIR'], '-lgeckoservo']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_JPEG']:
|
||||
OS_LIBS += CONFIG['MOZ_JPEG_LIBS']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_PNG']:
|
||||
OS_LIBS += CONFIG['MOZ_PNG_LIBS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ OS_LIBS += CONFIG['MOZ_HARFBUZZ_LIBS']
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_LIBEVENT']:
|
||||
OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS']
|
||||
|
||||
if CONFIG['MOZ_SYSTEM_LIBVPX']:
|
||||
OS_LIBS += CONFIG['MOZ_LIBVPX_LIBS']
|
||||
|
|
@ -0,0 +1,381 @@
|
|||
Support building with system media libraries.
|
||||
See <https://bugzilla.mozilla.org/show_bug.cgi?id=517422>
|
||||
|
||||
Based on:
|
||||
https://svnweb.freebsd.org/ports/head/www/firefox-esr/files/patch-z-bug517422?revision=472833&view=markup
|
||||
|
||||
Changes to files within the bundled libraries are omitted, since those files
|
||||
are removed from Guix sources. Modified for use with patch -p1, and to apply
|
||||
cleanly to GNU IceCat.
|
||||
|
||||
--- icecat-60.2.0/build/moz.configure/old.configure
|
||||
+++ icecat-60.2.0/build/moz.configure/old.configure
|
||||
@@ -273,7 +273,12 @@
|
||||
'--with-system-libvpx',
|
||||
'--with-system-nspr',
|
||||
'--with-system-nss',
|
||||
+ '--with-system-ogg',
|
||||
'--with-system-png',
|
||||
+ '--with-system-soundtouch',
|
||||
+ '--with-system-theora',
|
||||
+ '--with-system-tremor',
|
||||
+ '--with-system-vorbis',
|
||||
'--with-system-zlib',
|
||||
'--with-thumb',
|
||||
'--with-thumb-interwork',
|
||||
--- icecat-60.2.0/config/external/moz.build
|
||||
+++ icecat-60.2.0/config/external/moz.build
|
||||
@@ -23,12 +23,21 @@
|
||||
|
||||
external_dirs += ['modules/xz-embedded']
|
||||
|
||||
-if CONFIG['MOZ_VORBIS']:
|
||||
+if not CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ external_dirs += ['media/libogg']
|
||||
+
|
||||
+if CONFIG['MOZ_VORBIS'] and not CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
external_dirs += ['media/libvorbis']
|
||||
|
||||
-if CONFIG['MOZ_TREMOR']:
|
||||
+if CONFIG['MOZ_TREMOR'] and not CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
external_dirs += ['media/libtremor']
|
||||
|
||||
+if not CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ external_dirs += ['media/libtheora']
|
||||
+
|
||||
+if not CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
|
||||
+ external_dirs += ['media/libsoundtouch']
|
||||
+
|
||||
if CONFIG['MOZ_WEBM_ENCODER']:
|
||||
external_dirs += ['media/libmkv']
|
||||
|
||||
@@ -51,11 +60,8 @@
|
||||
'media/kiss_fft',
|
||||
'media/libcubeb',
|
||||
'media/libnestegg',
|
||||
- 'media/libogg',
|
||||
'media/libopus',
|
||||
- 'media/libtheora',
|
||||
'media/libspeex_resampler',
|
||||
- 'media/libsoundtouch',
|
||||
'media/mp4parse-rust',
|
||||
'media/psshparser'
|
||||
]
|
||||
--- icecat-60.2.0/config/system-headers.mozbuild
|
||||
+++ icecat-60.2.0/config/system-headers.mozbuild
|
||||
@@ -1324,6 +1324,28 @@
|
||||
'harfbuzz/hb.h',
|
||||
]
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ system_headers += [
|
||||
+ 'ogg/ogg.h',
|
||||
+ 'ogg/os_types.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ system_headers += [
|
||||
+ 'theora/theoradec.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
+ system_headers += [
|
||||
+ 'vorbis/codec.h',
|
||||
+ 'vorbis/vorbisenc.h',
|
||||
+ ]
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
+ system_headers += [
|
||||
+ 'tremor/ivorbiscodec.h',
|
||||
+ ]
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_LIBVPX']:
|
||||
system_headers += [
|
||||
'vpx_mem/vpx_mem.h',
|
||||
--- icecat-60.2.0/dom/media/AudioStream.cpp
|
||||
+++ icecat-60.2.0/dom/media/AudioStream.cpp
|
||||
@@ -121,7 +121,9 @@
|
||||
: mMonitor("AudioStream")
|
||||
, mChannels(0)
|
||||
, mOutChannels(0)
|
||||
+#ifndef MOZ_SYSTEM_SOUNDTOUCH
|
||||
, mTimeStretcher(nullptr)
|
||||
+#endif
|
||||
, mDumpFile(nullptr)
|
||||
, mState(INITIALIZED)
|
||||
, mDataSource(aSource)
|
||||
@@ -142,9 +144,11 @@
|
||||
if (mDumpFile) {
|
||||
fclose(mDumpFile);
|
||||
}
|
||||
+#ifndef MOZ_SYSTEM_SOUNDTOUCH
|
||||
if (mTimeStretcher) {
|
||||
soundtouch::destroySoundTouchObj(mTimeStretcher);
|
||||
}
|
||||
+#endif
|
||||
#if defined(XP_WIN)
|
||||
if (XRE_IsContentProcess()) {
|
||||
audio::AudioNotificationReceiver::Unregister(this);
|
||||
@@ -168,7 +172,11 @@
|
||||
{
|
||||
mMonitor.AssertCurrentThreadOwns();
|
||||
if (!mTimeStretcher) {
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+ mTimeStretcher = new soundtouch::SoundTouch();
|
||||
+#else
|
||||
mTimeStretcher = soundtouch::createSoundTouchObj();
|
||||
+#endif
|
||||
mTimeStretcher->setSampleRate(mAudioClock.GetInputRate());
|
||||
mTimeStretcher->setChannels(mOutChannels);
|
||||
mTimeStretcher->setPitch(1.0);
|
||||
--- icecat-60.2.0/dom/media/AudioStream.h
|
||||
+++ icecat-60.2.0/dom/media/AudioStream.h
|
||||
@@ -15,7 +15,11 @@
|
||||
#include "mozilla/TimeStamp.h"
|
||||
#include "mozilla/UniquePtr.h"
|
||||
#include "CubebUtils.h"
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+#include "soundtouch/SoundTouch.h"
|
||||
+#else
|
||||
#include "soundtouch/SoundTouchFactory.h"
|
||||
+#endif
|
||||
|
||||
#if defined(XP_WIN)
|
||||
#include "mozilla/audio/AudioNotificationReceiver.h"
|
||||
@@ -297,7 +301,11 @@
|
||||
uint32_t mChannels;
|
||||
uint32_t mOutChannels;
|
||||
AudioClock mAudioClock;
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+ nsAutoPtr<soundtouch::SoundTouch> mTimeStretcher;
|
||||
+#else
|
||||
soundtouch::SoundTouch* mTimeStretcher;
|
||||
+#endif
|
||||
|
||||
// Output file for dumping audio
|
||||
FILE* mDumpFile;
|
||||
--- icecat-60.2.0/dom/media/moz.build
|
||||
+++ icecat-60.2.0/dom/media/moz.build
|
||||
@@ -327,6 +327,21 @@
|
||||
|
||||
DEFINES['MOZILLA_INTERNAL_API'] = True
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_OGG_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_THEORA_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_VORBIS_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_TREMOR_CFLAGS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_SOUNDTOUCH_CFLAGS']
|
||||
+
|
||||
if CONFIG['MOZ_ANDROID_HLS_SUPPORT']:
|
||||
DEFINES['MOZ_ANDROID_HLS_SUPPORT'] = True
|
||||
|
||||
--- icecat-60.2.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
+++ icecat-60.2.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
@@ -15,9 +15,13 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+#include "nsXPCOMPrivate.h" // for XUL_DLL
|
||||
+#else
|
||||
// We use a known symbol located in lgpllibs to determine its location.
|
||||
// soundtouch happens to be always included in lgpllibs
|
||||
#include "soundtouch/SoundTouch.h"
|
||||
+#endif
|
||||
|
||||
namespace mozilla {
|
||||
|
||||
@@ -64,6 +68,12 @@
|
||||
|
||||
sLinkStatus = LinkStatus_FAILED;
|
||||
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
+ // We retrieve the path of the XUL library as this is where mozavcodec and
|
||||
+ // mozavutil libs are located.
|
||||
+ char* path =
|
||||
+ PR_GetLibraryFilePathname(XUL_DLL, (PRFuncPtr)&FFVPXRuntimeLinker::Init);
|
||||
+#else
|
||||
// We retrieve the path of the lgpllibs library as this is where mozavcodec
|
||||
// and mozavutil libs are located.
|
||||
PathString lgpllibsname = GetLibraryName(nullptr, "lgpllibs");
|
||||
@@ -73,6 +83,7 @@
|
||||
PathString path =
|
||||
GetLibraryFilePathname(lgpllibsname.get(),
|
||||
(PRFuncPtr)&soundtouch::SoundTouch::getVersionId);
|
||||
+#endif
|
||||
if (path.IsEmpty()) {
|
||||
return false;
|
||||
}
|
||||
--- icecat-60.2.0/old-configure.in
|
||||
+++ icecat-60.2.0/old-configure.in
|
||||
@@ -2451,6 +2451,111 @@
|
||||
fi
|
||||
fi # COMPILE_ENVIRONMENT
|
||||
|
||||
+dnl ========================================================
|
||||
+dnl Check for libogg
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-ogg,
|
||||
+[ --with-system-ogg Use system libogg (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_OGG=1,
|
||||
+MOZ_SYSTEM_OGG=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_OGG"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_OGG, ogg >= 1.3.3)
|
||||
+
|
||||
+ _SAVE_LIBS=$LIBS
|
||||
+ LIBS="$LIBS $MOZ_OGG_LIBS"
|
||||
+ AC_CHECK_FUNC(ogg_set_mem_functions, [],
|
||||
+ [AC_DEFINE(MOZ_OGG_NO_MEM_REPORTING)])
|
||||
+ LIBS=$_SAVE_LIBS
|
||||
+fi
|
||||
+
|
||||
+AC_SUBST(MOZ_SYSTEM_OGG)
|
||||
+
|
||||
+dnl ========================================================
|
||||
+dnl Check for libvorbis
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-vorbis,
|
||||
+[ --with-system-vorbis Use system libvorbis (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_VORBIS=1,
|
||||
+MOZ_SYSTEM_VORBIS=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_VORBIS"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_VORBIS, vorbis vorbisenc >= 1.3.6)
|
||||
+fi
|
||||
+
|
||||
+AC_SUBST(MOZ_SYSTEM_VORBIS)
|
||||
+
|
||||
+dnl ========================================================
|
||||
+dnl Check for integer-only libvorbis aka tremor
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-tremor,
|
||||
+[ --with-system-tremor Use system libtremor (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_TREMOR=1,
|
||||
+MOZ_SYSTEM_TREMOR=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_TREMOR"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_TREMOR, vorbisidec >= 1.2.1)
|
||||
+fi
|
||||
+
|
||||
+AC_SUBST(MOZ_SYSTEM_TREMOR)
|
||||
+
|
||||
+dnl ========================================================
|
||||
+dnl Check for libtheora
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-theora,
|
||||
+[ --with-system-theora Use system libtheora (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_THEORA=1,
|
||||
+MOZ_SYSTEM_THEORA=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_THEORA"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_THEORA, theora >= 1.2)
|
||||
+fi
|
||||
+
|
||||
+AC_SUBST(MOZ_SYSTEM_THEORA)
|
||||
+
|
||||
+dnl ========================================================
|
||||
+dnl Check for libSoundTouch
|
||||
+dnl ========================================================
|
||||
+
|
||||
+MOZ_ARG_WITH_BOOL(system-soundtouch,
|
||||
+[ --with-system-soundtouch Use system libSoundTouch (located with pkgconfig)],
|
||||
+MOZ_SYSTEM_SOUNDTOUCH=1,
|
||||
+MOZ_SYSTEM_SOUNDTOUCH=)
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_SOUNDTOUCH"; then
|
||||
+ PKG_CHECK_MODULES(MOZ_SOUNDTOUCH, soundtouch >= 1.9.0)
|
||||
+
|
||||
+ AC_LANG_SAVE
|
||||
+ AC_LANG_CPLUSPLUS
|
||||
+ _SAVE_CXXFLAGS=$CXXFLAGS
|
||||
+ CXXFLAGS="$CXXFLAGS $MOZ_SOUNDTOUCH_CFLAGS"
|
||||
+ AC_CACHE_CHECK(for soundtouch sample type,
|
||||
+ ac_cv_soundtouch_sample_type,
|
||||
+ [AC_TRY_COMPILE([#include <SoundTouch.h>
|
||||
+ #ifndef SOUNDTOUCH_INTEGER_SAMPLES
|
||||
+ #error soundtouch expects float samples
|
||||
+ #endif],
|
||||
+ [],
|
||||
+ [ac_cv_soundtouch_sample_type=short],
|
||||
+ [ac_cv_soundtouch_sample_type=float])])
|
||||
+ CXXFLAGS=$_SAVE_CXXFLAGS
|
||||
+ AC_LANG_RESTORE
|
||||
+
|
||||
+ if test \( -n "$MOZ_SAMPLE_TYPE_S16" -a "$ac_cv_soundtouch_sample_type" != short \) \
|
||||
+ -o \( -n "$MOZ_SAMPLE_TYPE_FLOAT32" -a "$ac_cv_soundtouch_sample_type" != float \) ; then
|
||||
+ AC_MSG_ERROR([SoundTouch library is built with incompatible sample type. Either rebuild the library with/without --enable-integer-samples, chase default Mozilla sample type or remove --with-system-soundtouch.])
|
||||
+ fi
|
||||
+fi
|
||||
+
|
||||
+if test -n "$MOZ_SYSTEM_SOUNDTOUCH"; then
|
||||
+ AC_DEFINE(MOZ_SYSTEM_SOUNDTOUCH)
|
||||
+fi
|
||||
+AC_SUBST(MOZ_SYSTEM_SOUNDTOUCH)
|
||||
+
|
||||
dnl system libvpx Support
|
||||
dnl ========================================================
|
||||
MOZ_ARG_WITH_BOOL(system-libvpx,
|
||||
--- icecat-60.2.0/toolkit/library/moz.build
|
||||
+++ icecat-60.2.0/toolkit/library/moz.build
|
||||
@@ -244,6 +244,21 @@
|
||||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
||||
+if CONFIG['MOZ_SYSTEM_OGG']:
|
||||
+ OS_LIBS += CONFIG['MOZ_OGG_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_THEORA']:
|
||||
+ OS_LIBS += CONFIG['MOZ_THEORA_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_VORBIS']:
|
||||
+ OS_LIBS += CONFIG['MOZ_VORBIS_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_TREMOR']:
|
||||
+ OS_LIBS += CONFIG['MOZ_TREMOR_LIBS']
|
||||
+
|
||||
+if CONFIG['MOZ_SYSTEM_SOUNDTOUCH']:
|
||||
+ OS_LIBS += CONFIG['MOZ_SOUNDTOUCH_LIBS']
|
||||
+
|
||||
if CONFIG['MOZ_SYSTEM_LIBEVENT']:
|
||||
OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS']
|
||||
|
||||
--- icecat-60.2.0/xpcom/build/XPCOMInit.cpp
|
||||
+++ icecat-60.2.0/xpcom/build/XPCOMInit.cpp
|
||||
@@ -138,7 +138,9 @@
|
||||
|
||||
#include "mozilla/ipc/GeckoChildProcessHost.h"
|
||||
|
||||
+#ifndef MOZ_OGG_NO_MEM_REPORTING
|
||||
#include "ogg/ogg.h"
|
||||
+#endif
|
||||
#if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
|
||||
#if defined(HAVE_STDINT_H)
|
||||
// mozilla-config.h defines HAVE_STDINT_H, and then it's defined *again* in
|
||||
@@ -639,11 +641,13 @@
|
||||
// this oddness.
|
||||
mozilla::SetICUMemoryFunctions();
|
||||
|
||||
+#ifndef MOZ_OGG_NO_MEM_REPORTING
|
||||
// Do the same for libogg.
|
||||
ogg_set_mem_functions(OggReporter::CountingMalloc,
|
||||
OggReporter::CountingCalloc,
|
||||
OggReporter::CountingRealloc,
|
||||
OggReporter::CountingFree);
|
||||
+#endif
|
||||
|
||||
#if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
|
||||
// And for VPX.
|
|
@ -0,0 +1,45 @@
|
|||
From: Jean Delvare <jdelvare@suse.de>
|
||||
Subject: compat/getopt: Allow non-digit parameter embedded in short option
|
||||
|
||||
The compatibility getopt script allows only digit parameters to be
|
||||
embedded in short options. Util-linux's getopt implementation does
|
||||
not have such a restriction and allows any parameter to be embedded
|
||||
in short options. As a consequence, using the compatibility getopt
|
||||
script would choke for example on "-pab", which is a legal option
|
||||
of the "quilt refresh" command.
|
||||
|
||||
Remove the limitation on digits so that the compatibility getopt
|
||||
script allows what util-linux allows. This fixes the second half
|
||||
of bug #54772:
|
||||
https://savannah.nongnu.org/bugs/index.php?54772
|
||||
|
||||
As a side note, this feature of the compatibility script was broken
|
||||
anyway, as it would output the digits in reverse order.
|
||||
|
||||
Signed-off-by: Jean Delvare <jdelvare@suse.de>
|
||||
---
|
||||
compat/getopt.in | 13 ++++---------
|
||||
1 file changed, 4 insertions(+), 9 deletions(-)
|
||||
|
||||
--- quilt.orig/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200
|
||||
+++ quilt/compat/getopt.in 2018-10-03 16:12:17.624841732 +0200
|
||||
@@ -108,15 +108,10 @@ foreach my $word (@words) {
|
||||
if (scalar(@letters) == 0) {
|
||||
$need_param = $letter;
|
||||
} else {
|
||||
- # short options can have numerical args
|
||||
- # embedded in the short option list: -UO
|
||||
- die "unexpected character after option $letter"
|
||||
- if ($letters[$#letters] !~ /[0-9]/);
|
||||
- my @digits;
|
||||
- while (scalar(@letters) && ($letters[$#letters] =~ /[0-9]/)) {
|
||||
- push @digits, pop @letters;
|
||||
- }
|
||||
- push @options, quote_word(join('', reverse @digits));
|
||||
+ # short options can have args
|
||||
+ # embedded in the short option list
|
||||
+ push @options, quote_word(join('', reverse @letters));
|
||||
+ @letters = ();
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,58 @@
|
|||
From: Jean Delvare <jdelvare@suse.de>
|
||||
Subject: compat/getopt: Handle a second separator
|
||||
|
||||
getopt can be passed 2 '--' separators. The first one tells that
|
||||
getopt options are over and target program options start. The second
|
||||
one tells that the target program's options are over and following
|
||||
arguments should be treated as non-options even if they look like
|
||||
options.
|
||||
|
||||
This second separator was not handled, causing the compatibility
|
||||
getopt script to treat the following arguments as options, eventually
|
||||
failing one way or another.
|
||||
|
||||
Properly detect and handle the second separator. This fixes the first
|
||||
half of bug #54772:
|
||||
https://savannah.nongnu.org/bugs/index.php?54772
|
||||
|
||||
Signed-off-by: Jean Delvare <jdelvare@suse.de>
|
||||
---
|
||||
compat/getopt.in | 13 ++++++++++---
|
||||
1 file changed, 10 insertions(+), 3 deletions(-)
|
||||
|
||||
--- quilt.orig/compat/getopt.in 2018-10-03 15:23:21.147620172 +0200
|
||||
+++ quilt/compat/getopt.in 2018-10-03 16:05:56.818667040 +0200
|
||||
@@ -8,12 +8,12 @@
|
||||
|
||||
use strict;
|
||||
|
||||
-my $opts;
|
||||
+my $opts = '';
|
||||
my @words;
|
||||
my $found_sep = 0;
|
||||
|
||||
foreach my $arg (@ARGV) {
|
||||
- if ($arg eq '--') {
|
||||
+ if (!$found_sep && $arg eq '--') {
|
||||
$found_sep = 1;
|
||||
}
|
||||
else {
|
||||
@@ -62,10 +62,17 @@ sub quote_word
|
||||
return "'$word'";
|
||||
}
|
||||
|
||||
+# there can be a second separator, to inhibit processing following arguments
|
||||
+# as options
|
||||
+$found_sep = 0;
|
||||
foreach my $word (@words) {
|
||||
+ if ($word eq '--') {
|
||||
+ $found_sep = 1;
|
||||
+ next;
|
||||
+ }
|
||||
|
||||
# allow '-' to be an option value
|
||||
- if (!$need_param && $word !~ /^-./) {
|
||||
+ if ($found_sep || (!$need_param && $word !~ /^-./)) {
|
||||
push @barewords, quote_word($word);
|
||||
next;
|
||||
}
|
|
@ -0,0 +1,41 @@
|
|||
From 5193b137b5a9034ce79946edd40760df2f63a82a Mon Sep 17 00:00:00 2001
|
||||
From: Jean Delvare <jdelvare@suse.de>
|
||||
Date: Tue, 25 Apr 2017 15:17:53 +0200
|
||||
Subject: test: Escape curly braces in regex
|
||||
|
||||
Curly braces in perl regex are supposed to be escaped, recent
|
||||
versions of perl complain when they aren't:
|
||||
|
||||
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/%{ <-- HERE (\w+)}/ at ./run line 114.
|
||||
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/%{ <-- HERE \?}/ at ./run line 290.
|
||||
|
||||
Signed-off-by: Jean Delvare <jdelvare@suse.de>
|
||||
---
|
||||
test/run | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/test/run b/test/run
|
||||
index 942014e..03afc7a 100755
|
||||
--- a/test/run
|
||||
+++ b/test/run
|
||||
@@ -112,7 +112,7 @@ sub flush_output()
|
||||
sub substitute_vars($)
|
||||
{
|
||||
my ($line) = @_;
|
||||
- $line =~ s[%{(\w+)}][defined $ENV{$1} ? $ENV{$1} : ""]eg;
|
||||
+ $line =~ s[%\{(\w+)\}][defined $ENV{$1} ? $ENV{$1} : ""]eg;
|
||||
return $line;
|
||||
}
|
||||
|
||||
@@ -288,7 +288,7 @@ while (defined(my $line = <SOURCE>)) {
|
||||
# Parse the next command
|
||||
if ($line =~ s/^\s*\$ ?//) {
|
||||
# Substitute %{?} with the last command's status
|
||||
- $line =~ s[%{\?}][$last_status]eg;
|
||||
+ $line =~ s[%\{\?\}][$last_status]eg;
|
||||
|
||||
chomp($prog = substitute_vars($line));
|
||||
$prog_line = $lineno;
|
||||
--
|
||||
cgit v1.0-41-gc330
|
||||
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2014, 2018 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015, 2018 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
|
@ -31,11 +31,13 @@
|
|||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages gawk)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages less)
|
||||
#:use-module (gnu packages mail)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
(define-public patchutils
|
||||
|
@ -92,7 +94,7 @@ listing the files modified by a patch.")
|
|||
(define-public quilt
|
||||
(package
|
||||
(name "quilt")
|
||||
(version "0.61")
|
||||
(version "0.65")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -100,12 +102,18 @@ listing the files modified by a patch.")
|
|||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hwz58djkq9cv46sjwxbp2v5m8yjr41kd0nm1zm1xm6418khmv0y"))))
|
||||
"06b816m2gz9jfif7k9v2hrm7fz76zjg5pavf7hd3ifybwn4cgjzn"))
|
||||
(patches (search-patches "quilt-test-fix-regex.patch"
|
||||
"quilt-compat-getopt-fix-second-separator.patch"
|
||||
"quilt-compat-getopt-fix-option-with-nondigit-param.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("gettext" ,gnu-gettext)))
|
||||
(inputs `(("perl" ,perl)
|
||||
("less" ,less)
|
||||
("file" ,file)
|
||||
("ed" ,ed)))
|
||||
("ed" ,ed)
|
||||
("diffstat" ,diffstat)))
|
||||
(arguments
|
||||
'(#:parallel-tests? #f
|
||||
#:phases
|
||||
|
@ -116,8 +124,6 @@ listing the files modified by a patch.")
|
|||
'("test/run"
|
||||
"test/edit.test")
|
||||
(("/bin/sh") (which "sh")))
|
||||
;; TODO: Run the mail tests once the mail feature can be supported.
|
||||
(delete-file "test/mail.test")
|
||||
#t))
|
||||
(add-after 'install 'wrap-program
|
||||
;; quilt's configure checks for the absolute path to the utilities it
|
||||
|
@ -128,6 +134,7 @@ listing the files modified by a patch.")
|
|||
(coreutils (assoc-ref inputs "coreutils"))
|
||||
(diffutils (assoc-ref inputs "diffutils"))
|
||||
(findutils (assoc-ref inputs "findutils"))
|
||||
(diffstat (assoc-ref inputs "diffstat"))
|
||||
(less (assoc-ref inputs "less"))
|
||||
(file (assoc-ref inputs "file"))
|
||||
(ed (assoc-ref inputs "ed"))
|
||||
|
@ -139,7 +146,8 @@ listing the files modified by a patch.")
|
|||
,(map (lambda (dir)
|
||||
(string-append dir "/bin"))
|
||||
(list coreutils diffutils findutils
|
||||
less file ed sed bash grep)))))
|
||||
less file ed sed bash grep
|
||||
diffstat)))))
|
||||
#t)))))
|
||||
(home-page "https://savannah.nongnu.org/projects/quilt/")
|
||||
(synopsis "Script for managing patches to software")
|
||||
|
|
|
@ -10391,7 +10391,7 @@ theme for the Sphinx documentation system. It's the default theme of Sphinx.")
|
|||
(setenv "CC" "gcc")
|
||||
;; No need to extend PYTHONPATH to find the built package, since
|
||||
;; the Makefile will build anyway
|
||||
(zero? (system* "make" "check")))))))
|
||||
(invoke "make" "check"))))))
|
||||
(native-inputs
|
||||
`(("procps" ,procps))) ; required for tests
|
||||
(home-page
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2017 Sergei Trofimovich <slyfox@inbox.ru>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -25,7 +26,7 @@
|
|||
(define-public re2c
|
||||
(package
|
||||
(name "re2c")
|
||||
(version "1.0.3")
|
||||
(version "1.1.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/skvadrik/" name
|
||||
|
@ -33,7 +34,7 @@
|
|||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lnbj15hhgi3r40ipskmg178m18d8n5nph78sci6lprk7zgf0mng"))))
|
||||
"1ksifjn18v6nra935dpqllmvkqgcdsggfjgmj77282x0gqrrfrc5"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://re2c.org/")
|
||||
(synopsis "Lexer generator for C/C++")
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
#:use-module (guix download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system haskell)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (gnu packages audio)
|
||||
#:use-module (gnu packages fcitx)
|
||||
|
@ -40,6 +41,7 @@
|
|||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages haskell)
|
||||
#:use-module (gnu packages ibus)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages linux)
|
||||
|
@ -520,3 +522,93 @@ sound and device input (keyboards, joysticks, mice, etc.).")
|
|||
The bindings are written in pure Scheme using Guile's foreign function
|
||||
interface.")
|
||||
(license lgpl3+)))
|
||||
|
||||
(define-public ghc-sdl2
|
||||
(package
|
||||
(name "ghc-sdl2")
|
||||
(version "2.4.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
"sdl2/sdl2-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0p4b12fmxps0sbnkqdfy0qw19s355yrkw7fgw6xz53wzq706k991"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments '(#:tests? #f)) ; tests require graphical environment
|
||||
(inputs
|
||||
`(("ghc-exceptions" ,ghc-exceptions)
|
||||
("ghc-linear" ,ghc-linear)
|
||||
("ghc-statevar" ,ghc-statevar)
|
||||
("ghc-text" ,ghc-text)
|
||||
("ghc-vector" ,ghc-vector)
|
||||
("sdl2" ,sdl2)))
|
||||
(native-inputs
|
||||
`(("ghc-weigh" ,ghc-weigh)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "http://hackage.haskell.org/package/sdl2")
|
||||
(synopsis "High- and low-level bindings to the SDL library")
|
||||
(description
|
||||
"This package contains bindings to the SDL 2 library, in both high- and
|
||||
low-level forms. The @code{SDL} namespace contains high-level bindings, where
|
||||
enumerations are split into sum types, and we perform automatic
|
||||
error-checking. The @code{SDL.Raw} namespace contains an almost 1-1
|
||||
translation of the C API into Haskell FFI calls. As such, this does not
|
||||
contain sum types nor error checking. Thus this namespace is suitable for
|
||||
building your own abstraction over SDL, but is not recommended for day-to-day
|
||||
programming.")
|
||||
(license bsd-3)))
|
||||
|
||||
(define-public ghc-sdl2-mixer
|
||||
(package
|
||||
(name "ghc-sdl2-mixer")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/sdl2-mixer/"
|
||||
"sdl2-mixer-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1k8avyccq5l9z7bwxigim312yaancxl1sr3q6a96bcm7pnhiak0g"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-data-default-class" ,ghc-data-default-class)
|
||||
("ghc-lifted-base" ,ghc-lifted-base)
|
||||
("ghc-monad-control" ,ghc-monad-control)
|
||||
("ghc-sdl2" ,ghc-sdl2)
|
||||
("ghc-vector" ,ghc-vector)
|
||||
("sdl2-mixer" ,sdl2-mixer)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "http://hackage.haskell.org/package/sdl2-mixer")
|
||||
(synopsis "Bindings to SDL2 mixer")
|
||||
(description "This package provides Haskell bindings to
|
||||
@code{SDL2_mixer}.")
|
||||
(license bsd-3)))
|
||||
|
||||
(define-public ghc-sdl2-image
|
||||
(package
|
||||
(name "ghc-sdl2-image")
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/sdl2-image/"
|
||||
"sdl2-image-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1pr6dkg73cy9z0w54lrkj9c5bhxj56nl92lxikjy8kz6nyr455rr"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-sdl2" ,ghc-sdl2)
|
||||
("ghc-text" ,ghc-text)
|
||||
("sdl2-image" ,sdl2-image)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "http://hackage.haskell.org/package/sdl2-image")
|
||||
(synopsis "Bindings to SDL2_image")
|
||||
(description "This package provides Haskell bindings to
|
||||
@code{SDL2_image}.")
|
||||
(license expat)))
|
||||
|
|
|
@ -30,7 +30,7 @@
|
|||
(define-public syncthing
|
||||
(package
|
||||
(name "syncthing")
|
||||
(version "0.14.50")
|
||||
(version "0.14.51")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/syncthing/syncthing"
|
||||
|
@ -38,7 +38,7 @@
|
|||
"/syncthing-source-v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yjj6zzivzw289bhwqjb4xcv8p39n5mcwwr5w6xf5ykzljc5pk55"))
|
||||
"17phn8l2afhgzh0q9ambi28awj2m905sr1bicq2wc7ghypk5vgqh"))
|
||||
(modules '((guix build utils)))
|
||||
;; Delete bundled ("vendored") free software source code.
|
||||
(snippet '(begin
|
||||
|
@ -59,7 +59,7 @@
|
|||
(add-before 'build 'increase-test-timeout
|
||||
(lambda _
|
||||
(substitute* "src/github.com/syncthing/syncthing/build.go"
|
||||
(("60s") "999s"))
|
||||
(("120s") "999s"))
|
||||
#t))
|
||||
|
||||
(replace 'build
|
||||
|
@ -138,6 +138,7 @@
|
|||
("go-github-com-pkg-errors" ,go-github-com-pkg-errors)
|
||||
("go-github-com-rcrowley-go-metrics" ,go-github-com-rcrowley-go-metrics)
|
||||
("go-github-com-sasha-s-go-deadlock" ,go-github-com-sasha-s-go-deadlock)
|
||||
("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-github-com-vitrun-qart" ,(go-github-com-vitrun-qart-union))
|
||||
|
@ -145,7 +146,7 @@
|
|||
("go-golang-org-x-net-union" ,(go-golang-org-x-net-union))
|
||||
("go-golang-org-x-text" ,(go-golang-org-x-text-union))
|
||||
("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate)
|
||||
("go-github-com-syncthing-notify" ,go-github-com-syncthing-notify)
|
||||
("go-gopkg.in-ldap.v2" ,go-gopkg.in-ldap.v2)
|
||||
;; For tests
|
||||
("go-github-com-d4l3k-messagediff" ,go-github-com-d4l3k-messagediff)))
|
||||
(synopsis "Decentralized continuous file system synchronization")
|
||||
|
@ -678,11 +679,11 @@ database in Go.")
|
|||
(license bsd-2))))
|
||||
|
||||
(define-public go-github-com-thejerf-suture
|
||||
(let ((commit "3f1fb62fe0a3cc6429122d7dc45588a8b59c5bb6")
|
||||
(let ((commit "bf6ee6a0b047ebbe9ae07d847f750dd18c6a9276")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "go-github-com-thejerf-suture")
|
||||
(version (git-version "2.0.3" revision commit))
|
||||
(version (git-version "3.0.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -691,7 +692,7 @@ database in Go.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mp7gz6bp6xhggkgmbl33vpmrq3a6n2dkgcxbkb7csnpv4r4d59k"))))
|
||||
"0rzx9k408vaglwnnpgpcs6y7ff7p65915nbg33rvbaz13hxwkz3y"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/thejerf/suture"))
|
||||
|
@ -1366,3 +1367,50 @@ Prometheus HTTP API.")
|
|||
(description "This is a union of Go Prometheus libraries")
|
||||
(home-page (package-home-page go-github-com-client-golang-prometheus))
|
||||
(license (package-license go-github-com-client-golang-prometheus))))
|
||||
|
||||
(define-public go-gopkg.in-asn1-ber.v1
|
||||
(package
|
||||
(name "go-gopkg.in-asn1-ber.v1")
|
||||
(version "1.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gopkg.in/asn1-ber.v1")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1y8bvzbxpw0lfnn7pbcdwzqj4l90qj6xf88dvv9pxd9yl5g6cskx"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "gopkg.in/asn1-ber.v1"))
|
||||
(synopsis "ASN.1 BER encoding and decoding in Go")
|
||||
(description "This package provides ASN.1 BER encoding and decoding in the
|
||||
Go language.")
|
||||
(home-page "https://gopkg.in/asn1-ber.v1")
|
||||
(license expat)))
|
||||
|
||||
(define-public go-gopkg.in-ldap.v2
|
||||
(package
|
||||
(name "go-gopkg.in-ldap.v2")
|
||||
(version "2.5.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gopkg.in/ldap.v2")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wf81wy04nhkqs0dg5zkivr4sh37r83bxrfwjz9vr4jq6vmljr3h"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "gopkg.in/ldap.v2"
|
||||
#:tests? #f)) ; the test suite requires network access
|
||||
(propagated-inputs
|
||||
`(("go-gopkg.in-asn1-ber.v1" ,go-gopkg.in-asn1-ber.v1)))
|
||||
(synopsis "LDAP v3 functionality for Go")
|
||||
(description "This package provides basic LDAP v3 functionality in the Go
|
||||
language.")
|
||||
(home-page "https://gopkg.in/ldap.v2")
|
||||
(license expat)))
|
||||
|
|
|
@ -35,7 +35,7 @@
|
|||
(define-public newsboat
|
||||
(package
|
||||
(name "newsboat")
|
||||
(version "2.12")
|
||||
(version "2.13")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -43,7 +43,7 @@
|
|||
"/newsboat-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1x23zlgljaqf46v7sp8wnkyf6wighvirvn48ankpa34yr8mvrgcv"))))
|
||||
"0pik1d98ydzqi6055vdbkjg5krwifbk2hy2f5jp5p1wcy2s16dn7"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
|
|
|
@ -84,7 +84,7 @@ to DOS format and vice versa.")
|
|||
(define-public recode
|
||||
(package
|
||||
(name "recode")
|
||||
(version "3.7")
|
||||
(version "3.7.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -92,7 +92,7 @@ to DOS format and vice versa.")
|
|||
"download/v" version "/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0r4yhf7i7zp2nl2apyzz7r3i2in12n385hmr8zcfr18ly0ly530q"))
|
||||
"0215hfj0rhlh0grg91qfx75pp6z09bpv8211qdxqihniw7y9a4fs"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
(delete-file "tests/Recode.c")
|
||||
|
|
|
@ -665,7 +665,7 @@ servers or clients for more complicated applications.")
|
|||
(define-public perl-crypt-openssl-rsa
|
||||
(package
|
||||
(name "perl-crypt-openssl-rsa")
|
||||
(version "0.30")
|
||||
(version "0.31")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -675,7 +675,7 @@ servers or clients for more complicated applications.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1b19kaaw4wda8dy6kjiwqa2prpbs2dqcyjyj9zdh5wbs74qkbq93"))))
|
||||
"0djl5i6kibl7862b6ih29q8dhg5zpwzq77q9j8hp6xngshx40ws1"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-crypt-openssl-guess" ,perl-crypt-openssl-guess)))
|
||||
|
@ -826,7 +826,7 @@ then ported to the GNU / Linux environment.")
|
|||
(define-public mbedtls-apache
|
||||
(package
|
||||
(name "mbedtls-apache")
|
||||
(version "2.7.6")
|
||||
(version "2.13.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -836,13 +836,14 @@ then ported to the GNU / Linux environment.")
|
|||
version "-apache.tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fl2nrxvlgx9ja7yy3kd1zadpr98fxbvn3f6fl2mj87gryhkfqlk"))))
|
||||
"1nh6xfyxs3mnnpgc6pancvdhv6ihz9lhsxdlg90gqa8n5r6lwfsr"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "-DUSE_SHARED_MBEDTLS_LIBRARY=ON")))
|
||||
(native-inputs
|
||||
`(("perl" ,perl)))
|
||||
`(("perl" ,perl)
|
||||
("python" ,python)))
|
||||
(synopsis "Small TLS library")
|
||||
(description
|
||||
"@code{mbed TLS}, formerly known as PolarSSL, makes it trivially easy
|
||||
|
@ -852,21 +853,38 @@ coding footprint.")
|
|||
(home-page "https://tls.mbed.org")
|
||||
(license license:asl2.0)))
|
||||
|
||||
;; The Hiawatha Web server requires some specific features to be enabled.
|
||||
(define-public mbedtls-for-hiawatha
|
||||
(hidden-package
|
||||
(package
|
||||
(inherit mbedtls-apache)
|
||||
(arguments
|
||||
(substitute-keyword-arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'configure 'configure-extra-features
|
||||
(lambda _
|
||||
(for-each (lambda (feature)
|
||||
(invoke "scripts/config.pl" "set" feature))
|
||||
(list "MBEDTLS_THREADING_C"
|
||||
"MBEDTLS_THREADING_PTHREAD"))
|
||||
#t)))
|
||||
,@(package-arguments mbedtls-apache)))))))
|
||||
|
||||
(define-public ghc-tls
|
||||
(package
|
||||
(name "ghc-tls")
|
||||
(version "1.3.8")
|
||||
(version "1.4.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://hackage.haskell.org/package/"
|
||||
"tls/tls-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1rdidf18i781c0vdvy9yn79yh08hmcacf6fp3sgghyiy3h0wyh5l"))))
|
||||
"1y083724mym28n6xfaz7pcc7zqxdhjpaxpbvzxfbs25qq2px3smv"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-cereal" ,ghc-cereal)
|
||||
`(("ghc-cereal" ,ghc-cereal)
|
||||
("ghc-data-default-class" ,ghc-data-default-class)
|
||||
("ghc-memory" ,ghc-memory)
|
||||
("ghc-cryptonite" ,ghc-cryptonite)
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
;;; Copyright © 2014, 2016 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2015 Kyle Meyer <kyle@kyleam.com>
|
||||
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016, 2017, 2018 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
|
@ -1031,12 +1031,48 @@ also walk each side of a merge and test those changes individually.")
|
|||
((" perl -")
|
||||
(string-append " " perl " -")))
|
||||
|
||||
(substitute* (find-files "src/triggers" ".*")
|
||||
((" sed ")
|
||||
(string-append " " (which "sed") " ")))
|
||||
|
||||
(substitute*
|
||||
'("src/triggers/post-compile/update-gitweb-access-list"
|
||||
"src/triggers/post-compile/ssh-authkeys-split"
|
||||
"src/triggers/upstream")
|
||||
((" grep ")
|
||||
(string-append " " (which "grep") " ")))
|
||||
|
||||
;; Avoid references to the store in authorized_keys.
|
||||
;; This works because gitolite-shell is in the PATH.
|
||||
(substitute* "src/triggers/post-compile/ssh-authkeys"
|
||||
(("\\$glshell \\$user")
|
||||
"gitolite-shell $user"))
|
||||
#t)))
|
||||
(add-before 'install 'patch-source
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Gitolite uses cat to test the readability of the
|
||||
;; pubkey
|
||||
(substitute* "src/lib/Gitolite/Setup.pm"
|
||||
(("\"cat ")
|
||||
(string-append "\"" (which "cat") " "))
|
||||
(("\"ssh-keygen")
|
||||
(string-append "\"" (which "ssh-keygen"))))
|
||||
|
||||
(substitute* '("src/lib/Gitolite/Hooks/PostUpdate.pm"
|
||||
"src/lib/Gitolite/Hooks/Update.pm")
|
||||
(("/usr/bin/perl")
|
||||
(string-append (assoc-ref inputs "perl")
|
||||
"/bin/perl")))
|
||||
|
||||
(substitute* "src/lib/Gitolite/Common.pm"
|
||||
(("\"ssh-keygen")
|
||||
(string-append "\"" (which "ssh-keygen")))
|
||||
(("\"logger\"")
|
||||
(string-append "\""
|
||||
(assoc-ref inputs "inetutils")
|
||||
"/bin/logger\"")))
|
||||
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((output (assoc-ref outputs "out"))
|
||||
|
@ -1050,9 +1086,24 @@ also walk each side of a merge and test those changes individually.")
|
|||
(symlink (string-append sharedir "/" script)
|
||||
(string-append bindir "/" script)))
|
||||
'("gitolite" "gitolite-shell"))
|
||||
#t)))
|
||||
(add-after 'install 'wrap-scripts
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(coreutils (assoc-ref inputs "coreutils"))
|
||||
(findutils (assoc-ref inputs "findutils"))
|
||||
(git (assoc-ref inputs "git")))
|
||||
(wrap-program (string-append out "/bin/gitolite")
|
||||
`("PATH" ":" prefix
|
||||
,(map (lambda (dir)
|
||||
(string-append dir "/bin"))
|
||||
(list out coreutils findutils git))))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("perl" ,perl)))
|
||||
`(("perl" ,perl)
|
||||
("coreutils" ,coreutils)
|
||||
("findutils" ,findutils)
|
||||
("inetutils" ,inetutils)))
|
||||
;; git and openssh are propagated because trying to patch the source via
|
||||
;; regexp matching is too brittle and prone to false positives.
|
||||
(propagated-inputs
|
||||
|
@ -1844,7 +1895,6 @@ be served with a HTTP file server of your choice.")
|
|||
("ghc-hashable" ,ghc-hashable)
|
||||
("ghc-html" ,ghc-html)
|
||||
("ghc-mmap" ,ghc-mmap)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-old-time" ,ghc-old-time)
|
||||
("ghc-parsec" ,ghc-parsec)
|
||||
("ghc-random" ,ghc-random)
|
||||
|
@ -2053,7 +2103,7 @@ directory full of HOWTOs.")
|
|||
(define-public git-annex
|
||||
(package
|
||||
(name "git-annex")
|
||||
(version "6.20180807")
|
||||
(version "6.20180926")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -2061,7 +2111,7 @@ directory full of HOWTOs.")
|
|||
"git-annex/git-annex-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wkqh1y58m0z1mf2j33qhndpxcjwv8mbv384kdk17vn0lp9zas1s"))))
|
||||
"1251rj8h63y30sfqk0zh670yhz14p256y59n3590pg015pf3575d"))))
|
||||
(build-system haskell-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
@ -2137,7 +2187,6 @@ directory full of HOWTOs.")
|
|||
("ghc-memory" ,ghc-memory)
|
||||
("ghc-monad-control" ,ghc-monad-control)
|
||||
("ghc-monad-logger" ,ghc-monad-logger)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-network" ,ghc-network)
|
||||
("ghc-old-locale" ,ghc-old-locale)
|
||||
("ghc-optparse-applicative" ,ghc-optparse-applicative)
|
||||
|
|
|
@ -1121,7 +1121,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
|
|||
(define-public mpv
|
||||
(package
|
||||
(name "mpv")
|
||||
(version "0.29.0")
|
||||
(version "0.29.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -1129,7 +1129,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
|
|||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"06bk8836brzik1qmq8kycwg5n35r438sd2176k6msjg5rrwghakp"))
|
||||
"08x63hlpj6s8xixmdbx6raff5p5mih7cnk0bcql9f3wrs5hx9ygr"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
(build-system waf-build-system)
|
||||
(native-inputs
|
||||
|
@ -1271,7 +1271,7 @@ access to mpv's powerful playback capabilities.")
|
|||
(define-public youtube-dl
|
||||
(package
|
||||
(name "youtube-dl")
|
||||
(version "2018.09.08")
|
||||
(version "2018.09.18")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://yt-dl.org/downloads/"
|
||||
|
@ -1279,7 +1279,7 @@ access to mpv's powerful playback capabilities.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0vwc4faqdddrb3nm4fzmkr60n5rc2zwyy8jwrrjad60kcp8isf05"))))
|
||||
"0mlsdmddmyy3xaqy366k48xds14g17l81al3kglndjkbrrji63sb"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; The problem here is that the directory for the man page and completion
|
||||
|
|
|
@ -347,6 +347,16 @@ private network between hosts on the internet.")
|
|||
(base32
|
||||
"0pqk43kd7crqhg6qgnl8kapncwgw1xgaf02zarzypcw64kvdih9h"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-FHS-file-names
|
||||
(lambda _
|
||||
(substitute* "sshuttle/client.py"
|
||||
(("/usr/bin/env") (which "env")))
|
||||
(substitute* "sshuttle/ssh.py"
|
||||
(("/bin/sh") "sh"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("python-setuptools-scm" ,python-setuptools-scm)
|
||||
;; For tests only.
|
||||
|
|
|
@ -124,14 +124,14 @@
|
|||
(define-public httpd
|
||||
(package
|
||||
(name "httpd")
|
||||
(version "2.4.34")
|
||||
(version "2.4.35")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://apache/httpd/httpd-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1w1q2smdgf6ln0x741lk5pv5r0gzrxj2iza1vslhifzy65bcjlzs"))))
|
||||
"0mlvwsm7hmpc7db6lfc2nx3v4cll3qljjxhjhgsw6aniskywc1r6"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pcre" ,pcre "bin"))) ;for 'pcre-config'
|
||||
(inputs `(("apr" ,apr)
|
||||
|
@ -1862,15 +1862,15 @@ MIME type directly to the browser, without being processed through Catalyst.")
|
|||
(define-public perl-catalyst-runtime
|
||||
(package
|
||||
(name "perl-catalyst-runtime")
|
||||
(version "5.90118")
|
||||
(version "5.90119")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
"Catalyst-Runtime-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0cws3szx3vvh0372qdx8fypgv6qphcc3v81rbq30sl1ghby7ksd3"))))
|
||||
"1iw7x9rqk3sz2hm1bw01blz5vwm7zlljdf4xj3r8vz54f1yggzqr"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-test-fatal" ,perl-test-fatal)))
|
||||
|
@ -5173,7 +5173,7 @@ functions of Tidy.")
|
|||
(define-public hiawatha
|
||||
(package
|
||||
(name "hiawatha")
|
||||
(version "10.7")
|
||||
(version "10.8.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -5181,28 +5181,34 @@ functions of Tidy.")
|
|||
"hiawatha-" version ".tar.gz"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; We use our packaged mbedtls, so delete the included copy.
|
||||
(delete-file-recursively "mbedtls")
|
||||
;; We use packaged libraries, so delete the bundled copies.
|
||||
(for-each delete-file-recursively
|
||||
(list "nghttp2" "mbedtls"))
|
||||
#t))
|
||||
(sha256
|
||||
(base32
|
||||
"0x2zfc8kc6c7rl4gwymwmg13w1c60biv6c6c9fvzpnl59bc9jgin"))))
|
||||
"0w7047pwijhsbvvv1qjynp7gvn0nil56w82f7ax0gabrg7ddzk6s"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; No tests included
|
||||
`(#:tests? #f ; no tests included
|
||||
#:configure-flags (list (string-append "-DUSE_SYSTEM_MBEDTLS=on")
|
||||
(string-append "-DENABLE_HTTP2=on")
|
||||
(string-append "-DUSE_SYSTEM_NGHTTP2=on")
|
||||
(string-append "-DENABLE_TOMAHAWK=on")
|
||||
(string-append "-DLOG_DIR=/var/log/hiawatha")
|
||||
(string-append "-DPID_DIR=/run")
|
||||
(string-append "-DWEBROOT_DIR="
|
||||
(assoc-ref %outputs "out")
|
||||
"/share/hiawatha/html"))
|
||||
"/share/hiawatha/html")
|
||||
(string-append "-DWORK_DIR=/var/lib/hiawatha"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'remove-empty-dirs
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out")))
|
||||
;; The directories in "var" are empty, remove them.
|
||||
(delete-file-recursively (string-append out "/var"))
|
||||
#t)))
|
||||
(add-after 'unpack 'install-no-empty-directories
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("install\\(DIRECTORY DESTINATION" match)
|
||||
(string-append "#" match)))
|
||||
#t))
|
||||
(add-after 'install 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
;; Make sure 'hiawatha' finds 'mbedtls'.
|
||||
|
@ -5212,11 +5218,12 @@ functions of Tidy.")
|
|||
(wrap-program (string-append sbin "/hiawatha")
|
||||
`("PATH" ":" prefix (,mbed)))))))))
|
||||
(inputs
|
||||
;; TODO: package "hiawatha-monitor", an optional dependency of "hiawatha"
|
||||
`(("mbedtls-apache" ,mbedtls-apache) ;Hiawatha includes this version.
|
||||
("zlib" ,zlib)
|
||||
("libxslt" ,libxslt)
|
||||
("libxml2" ,libxml2)))
|
||||
;; TODO: package "hiawatha-monitor", an optional dependency of "hiawatha".
|
||||
`(("libxslt" ,libxslt)
|
||||
("libxml2" ,libxml2)
|
||||
("mbedtls-apache" ,mbedtls-for-hiawatha)
|
||||
("nghttp2" ,nghttp2 "lib")
|
||||
("zlib" ,zlib)))
|
||||
(home-page "https://www.hiawatha-webserver.org")
|
||||
(synopsis "Webserver with focus on security")
|
||||
(description
|
||||
|
|
|
@ -225,7 +225,7 @@ integrate Windows applications into your desktop.")
|
|||
(define-public wine-staging-patchset-data
|
||||
(package
|
||||
(name "wine-staging-patchset-data")
|
||||
(version "3.16")
|
||||
(version "3.17")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -235,7 +235,7 @@ integrate Windows applications into your desktop.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0c1bs9qpxlvld6jkwjri2v8jaixxn1r5b0m9r5hnkfrnpl7z7cfv"))))
|
||||
"1ds9q90xjg59ikic98kqkhmijnqx4yplvwsm6rav4mx72yci7d4w"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs
|
||||
`(("bash" ,bash)
|
||||
|
@ -281,7 +281,7 @@ integrate Windows applications into your desktop.")
|
|||
(file-name (string-append name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0g55l41apiwgblfk9ihzd96003gd32w5ng79f96hmiwhyzwbqhxd"))))
|
||||
"08fcziadw40153a9rv630m7iz6ipfzylms5y191z4sj2vvhy5vac"))))
|
||||
(inputs `(("autoconf" ,autoconf) ; for autoreconf
|
||||
("gtk+" ,gtk+)
|
||||
("libva" ,libva)
|
||||
|
|
|
@ -455,7 +455,7 @@ desktop environment.")
|
|||
(define-public xmonad
|
||||
(package
|
||||
(name "xmonad")
|
||||
(version "0.14")
|
||||
(version "0.14.2")
|
||||
(synopsis "Tiling window manager")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
|
@ -463,11 +463,10 @@ desktop environment.")
|
|||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lq3k0ap7jxrrswpd954mqa6h8diccbif5srcgbmr39y6y8x0mm4"))))
|
||||
"0gqyivpw8z1x73p1l1fpyq1wc013a1c07r6xn1a82liijs91b949"))))
|
||||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-quickcheck" ,ghc-quickcheck)
|
||||
("ghc-semigroups" ,ghc-semigroups)
|
||||
("ghc-setlocale" ,ghc-setlocale)
|
||||
|
@ -505,14 +504,14 @@ tiled on several screens.")
|
|||
(define-public xmobar
|
||||
(package
|
||||
(name "xmobar")
|
||||
(version "0.27")
|
||||
(version "0.28")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://hackage/package/xmobar/"
|
||||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0agx490q6sbmv3vfq33ys8dsrgwizj3bmha4i1pkxz5wp5q8cx3l"))))
|
||||
"1xh87asg8y35srvp7d3gyyy4bkxsw122liihxgzgm8pqv2z3h4zd"))))
|
||||
(build-system haskell-build-system)
|
||||
(native-inputs
|
||||
`(("ghc-hspec" ,ghc-hspec)
|
||||
|
@ -560,11 +559,11 @@ Haskell, no knowledge of the language is required to install and use it.")
|
|||
"1660w3xhbfrlq8b8s1rviq2mcn1vyqpypli4023gqxwry52brk6y"))))
|
||||
(build-system haskell-build-system)
|
||||
(propagated-inputs
|
||||
`(("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-old-time" ,ghc-old-time)
|
||||
`(("ghc-old-time" ,ghc-old-time)
|
||||
("ghc-random" ,ghc-random)
|
||||
("ghc-utf8-string" ,ghc-utf8-string)
|
||||
("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
|
||||
("ghc-semigroups", ghc-semigroups)
|
||||
("ghc-x11" ,ghc-x11)
|
||||
("ghc-x11-xft" ,ghc-x11-xft)
|
||||
("xmonad" ,xmonad)))
|
||||
|
|
|
@ -786,17 +786,17 @@ server, collect the answer, and finally decoding the XML to Perl.")
|
|||
(define-public perl-xml-feed
|
||||
(package
|
||||
(name "perl-xml-feed")
|
||||
(version "0.53")
|
||||
(version "0.54")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/D/DA/DAVECROSS/"
|
||||
"XML-Feed-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07b165g6wk8kqwpl49r3n0kag6p2nrkyp3ch0h8qyxb6nrnkkq7c"))))
|
||||
"0ydyi7wdhv8325h7j27vrlwiqxll56sn8zy5nbzhpma3nrf61bci"))))
|
||||
(build-system perl-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; Tests require internet connection
|
||||
`(#:tests? #f)) ; tests require internet connection
|
||||
(native-inputs
|
||||
`(("perl-module-build" ,perl-module-build)
|
||||
("perl-uri" ,perl-uri)
|
||||
|
@ -1136,7 +1136,7 @@ XSLT and EXSLT.")
|
|||
(define-public html-xml-utils
|
||||
(package
|
||||
(name "html-xml-utils")
|
||||
(version "7.6")
|
||||
(version "7.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1145,7 +1145,7 @@ XSLT and EXSLT.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0l97ps089byy62838wf2jwvvc465iw29z9r5kwmwcq7f3bn11y3m"))))
|
||||
"1vwqp5q276j8di9zql3kygf31z2frp2c59yjqlrvvwcvccvkcdwr"))))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "https://www.w3.org/Tools/HTML-XML-utils/")
|
||||
(synopsis "Command line utilities to manipulate HTML and XML files")
|
||||
|
@ -2094,7 +2094,6 @@ derivations of regular expressions.")
|
|||
(build-system haskell-build-system)
|
||||
(inputs
|
||||
`(("ghc-parsec" ,ghc-parsec)
|
||||
("ghc-mtl" ,ghc-mtl)
|
||||
("ghc-hxt-charproperties" ,ghc-hxt-charproperties)
|
||||
("ghc-hxt-unicode" ,ghc-hxt-unicode)
|
||||
("ghc-hxt-regex-xmlschema" ,ghc-hxt-regex-xmlschema)
|
||||
|
|
|
@ -125,11 +125,9 @@ for ROTATION."
|
|||
|
||||
(define (default-jobs rottlog)
|
||||
(list #~(job '(next-hour '(0)) ;midnight
|
||||
(lambda ()
|
||||
(system* #$(file-append rottlog "/sbin/rottlog"))))
|
||||
#$(file-append rottlog "/sbin/rottlog"))
|
||||
#~(job '(next-hour '(12)) ;noon
|
||||
(lambda ()
|
||||
(system* #$(file-append rottlog "/sbin/rottlog"))))))
|
||||
#$(file-append rottlog "/sbin/rottlog"))))
|
||||
|
||||
(define-record-type* <rottlog-configuration>
|
||||
rottlog-configuration make-rottlog-configuration
|
||||
|
|
|
@ -685,17 +685,20 @@ to add @var{device} to the kernel's entropy pool. The service will fail if
|
|||
(shepherd-service-type
|
||||
'virtual-terminal
|
||||
(lambda (utf8?)
|
||||
(shepherd-service
|
||||
(documentation "Set virtual terminals in UTF-8 module.")
|
||||
(provision '(virtual-terminal))
|
||||
(requirement '(root-file-system))
|
||||
(start #~(lambda _
|
||||
(call-with-output-file
|
||||
"/sys/module/vt/parameters/default_utf8"
|
||||
(lambda (port)
|
||||
(display 1 port)))
|
||||
#t))
|
||||
(stop #~(const #f))))
|
||||
(let ((knob "/sys/module/vt/parameters/default_utf8"))
|
||||
(shepherd-service
|
||||
(documentation "Set virtual terminals in UTF-8 module.")
|
||||
(provision '(virtual-terminal))
|
||||
(requirement '(root-file-system))
|
||||
(start #~(lambda _
|
||||
;; In containers /sys is read-only so don't insist on
|
||||
;; writing to this file.
|
||||
(unless (= 1 (call-with-input-file #$knob read))
|
||||
(call-with-output-file #$knob
|
||||
(lambda (port)
|
||||
(display 1 port))))
|
||||
#t))
|
||||
(stop #~(const #f)))))
|
||||
#t)) ;default to UTF-8
|
||||
|
||||
(define console-keymap-service-type
|
||||
|
@ -1881,7 +1884,12 @@ item of @var{packages}."
|
|||
(string-append linux-module-directory "/"
|
||||
kernel-release))
|
||||
(old-umask (umask #o022)))
|
||||
(make-static-device-nodes directory)
|
||||
;; If we're in a container, DIRECTORY might not exist,
|
||||
;; for instance because the host runs a different
|
||||
;; kernel. In that case, skip it; we'll just miss a few
|
||||
;; nodes like /dev/fuse.
|
||||
(when (file-exists? directory)
|
||||
(make-static-device-nodes directory))
|
||||
(umask old-umask))
|
||||
|
||||
(let ((pid (fork+exec-command (list udevd))))
|
||||
|
|
|
@ -50,6 +50,7 @@
|
|||
unload-services
|
||||
unload-service
|
||||
load-services
|
||||
load-services/safe
|
||||
start-service
|
||||
stop-service))
|
||||
|
||||
|
@ -232,6 +233,25 @@ returns a shepherd <service> object."
|
|||
`(primitive-load ,file))
|
||||
files))))
|
||||
|
||||
(define (load-services/safe files)
|
||||
"This is like 'load-services', but make sure only the subset of FILES that
|
||||
can be safely reloaded is actually reloaded.
|
||||
|
||||
This is done to accommodate the Shepherd < 0.15.0 where services lacked the
|
||||
'replacement' slot, and where 'register-services' would throw an exception
|
||||
when passed a service with an already-registered name."
|
||||
(eval-there `(let* ((services (map primitive-load ',files))
|
||||
(slots (map slot-definition-name
|
||||
(class-slots <service>)))
|
||||
(can-replace? (memq 'replacement slots)))
|
||||
(define (registered? service)
|
||||
(not (null? (lookup-services (canonical-name service)))))
|
||||
|
||||
(apply register-services
|
||||
(if can-replace?
|
||||
services
|
||||
(remove registered? services))))))
|
||||
|
||||
(define (start-service name)
|
||||
(with-shepherd-action name ('start) result
|
||||
result))
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
|
||||
|
@ -191,19 +191,7 @@ fe80::1%lo0 apps.facebook.com\n")
|
|||
(cons* #$dhclient "-nw"
|
||||
"-pf" #$pid-file ifaces))))
|
||||
(and (zero? (cdr (waitpid pid)))
|
||||
(let loop ()
|
||||
(catch 'system-error
|
||||
(lambda ()
|
||||
(call-with-input-file #$pid-file read))
|
||||
(lambda args
|
||||
;; 'dhclient' returned before PID-FILE was created,
|
||||
;; so try again.
|
||||
(let ((errno (system-error-errno args)))
|
||||
(if (= ENOENT errno)
|
||||
(begin
|
||||
(sleep 1)
|
||||
(loop))
|
||||
(apply throw args))))))))))
|
||||
(read-pid-file #$pid-file)))))
|
||||
(stop #~(make-kill-destructor))))))
|
||||
|
||||
(define* (dhcp-client-service #:key (dhcp isc-dhcp))
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Carlo Zancanaro <carlo@zancanaro.id.au>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -58,6 +59,7 @@
|
|||
%default-modules
|
||||
|
||||
shepherd-service-file
|
||||
%containerized-shepherd-service
|
||||
|
||||
shepherd-service-lookup-procedure
|
||||
shepherd-service-back-edges
|
||||
|
@ -326,10 +328,25 @@ symbols provided/required by a service."
|
|||
(lambda (service)
|
||||
(vhash-foldq* cons '() service edges)))
|
||||
|
||||
(define %containerized-shepherd-service
|
||||
;; XXX: This service works around a bug in the Shepherd 0.5.0: shepherd
|
||||
;; calls reboot(2) (via 'disable-reboot-on-ctrl-alt-del') when it starts,
|
||||
;; but in a container that fails with EINVAL. This was fixed in Shepherd
|
||||
;; commit 92e806bac1abaeeaf5d60f0ab50d1ae85ba6a62f.
|
||||
(simple-service 'containerized-shepherd
|
||||
shepherd-root-service-type
|
||||
(list (shepherd-service
|
||||
(provision '(containerized-shepherd))
|
||||
(start #~(lambda ()
|
||||
(set! (@@ (shepherd)
|
||||
disable-reboot-on-ctrl-alt-del)
|
||||
(const #t))
|
||||
#t))))))
|
||||
|
||||
(define (shepherd-service-upgrade live target)
|
||||
"Return two values: the subset of LIVE (a list of <live-service>) that needs
|
||||
to be unloaded, and the subset of TARGET (a list of <shepherd-service>) that
|
||||
needs to be loaded."
|
||||
need to be restarted to complete their upgrade."
|
||||
(define (essential? service)
|
||||
(memq (first (live-service-provision service))
|
||||
'(root shepherd)))
|
||||
|
@ -346,12 +363,6 @@ needs to be loaded."
|
|||
(and=> (lookup-live (shepherd-service-canonical-name service))
|
||||
live-service-running))
|
||||
|
||||
(define (stopped service)
|
||||
(match (lookup-live (shepherd-service-canonical-name service))
|
||||
(#f #f)
|
||||
(service (and (not (live-service-running service))
|
||||
service))))
|
||||
|
||||
(define live-service-dependents
|
||||
(shepherd-service-back-edges live
|
||||
#:provision live-service-provision
|
||||
|
@ -362,16 +373,14 @@ needs to be loaded."
|
|||
(#f (every obsolete? (live-service-dependents service)))
|
||||
(_ #f)))
|
||||
|
||||
(define to-load
|
||||
;; Only load services that are either new or currently stopped.
|
||||
(remove running? target))
|
||||
(define to-restart
|
||||
;; Restart services that are currently running.
|
||||
(filter running? target))
|
||||
|
||||
(define to-unload
|
||||
;; Unload services that are (1) no longer required, or (2) are in TO-LOAD.
|
||||
(remove essential?
|
||||
(append (filter obsolete? live)
|
||||
(filter-map stopped to-load))))
|
||||
;; Unload services that are no longer required.
|
||||
(remove essential? (filter obsolete? live)))
|
||||
|
||||
(values to-unload to-load))
|
||||
(values to-unload to-restart))
|
||||
|
||||
;;; shepherd.scm ends here
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
;;; Copyright © 2016 Sou Bunnbu <iyzsong@member.fsf.org>
|
||||
;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -32,6 +33,7 @@
|
|||
#:use-module (guix store)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (ice-9 format)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (git-daemon-service
|
||||
git-daemon-service-type
|
||||
|
@ -40,7 +42,23 @@
|
|||
|
||||
git-http-configuration
|
||||
git-http-configuration?
|
||||
git-http-nginx-location-configuration))
|
||||
git-http-nginx-location-configuration
|
||||
|
||||
<gitolite-configuration>
|
||||
gitolite-configuration
|
||||
gitolite-configuration-package
|
||||
gitolite-configuration-user
|
||||
gitolite-configuration-rc-file
|
||||
gitolite-configuration-admin-pubkey
|
||||
|
||||
<gitolite-rc-file>
|
||||
gitolite-rc-file
|
||||
gitolite-rc-file-umask
|
||||
gitolite-rc-file-git-config-keys
|
||||
gitolite-rc-file-roles
|
||||
gitolite-rc-file-enable
|
||||
|
||||
gitolite-service-type))
|
||||
|
||||
;;; Commentary:
|
||||
;;;
|
||||
|
@ -197,3 +215,163 @@ access to exported repositories under @file{/srv/git}."
|
|||
"")
|
||||
(list "fastcgi_param GIT_PROJECT_ROOT " git-root ";")
|
||||
"fastcgi_param PATH_INFO $1;"))))))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Gitolite
|
||||
;;;
|
||||
|
||||
(define-record-type* <gitolite-rc-file>
|
||||
gitolite-rc-file make-gitolite-rc-file
|
||||
gitolite-rc-file?
|
||||
(umask gitolite-rc-file-umask
|
||||
(default #o0077))
|
||||
(git-config-keys gitolite-rc-file-git-config-keys
|
||||
(default ""))
|
||||
(roles gitolite-rc-file-roles
|
||||
(default '(("READERS" . 1)
|
||||
("WRITERS" . 1))))
|
||||
(enable gitolite-rc-file-enable
|
||||
(default '("help"
|
||||
"desc"
|
||||
"info"
|
||||
"perms"
|
||||
"writable"
|
||||
"ssh-authkeys"
|
||||
"git-config"
|
||||
"daemon"
|
||||
"gitweb"))))
|
||||
|
||||
(define-gexp-compiler (gitolite-rc-file-compiler
|
||||
(file <gitolite-rc-file>) system target)
|
||||
(match file
|
||||
(($ <gitolite-rc-file> umask git-config-keys roles enable)
|
||||
(apply text-file* "gitolite.rc"
|
||||
`("%RC = (\n"
|
||||
" UMASK => " ,(format #f "~4,'0o" umask) ",\n"
|
||||
" GIT_CONFIG_KEYS => '" ,git-config-keys "',\n"
|
||||
" ROLES => {\n"
|
||||
,@(map (match-lambda
|
||||
((role . value)
|
||||
(simple-format #f " ~A => ~A,\n" role value)))
|
||||
roles)
|
||||
" },\n"
|
||||
"\n"
|
||||
" ENABLE => [\n"
|
||||
,@(map (lambda (value)
|
||||
(simple-format #f " '~A',\n" value))
|
||||
enable)
|
||||
" ],\n"
|
||||
");\n"
|
||||
"\n"
|
||||
"1;\n")))))
|
||||
|
||||
(define-record-type* <gitolite-configuration>
|
||||
gitolite-configuration make-gitolite-configuration
|
||||
gitolite-configuration?
|
||||
(package gitolite-configuration-package
|
||||
(default gitolite))
|
||||
(user gitolite-configuration-user
|
||||
(default "git"))
|
||||
(group gitolite-configuration-group
|
||||
(default "git"))
|
||||
(home-directory gitolite-configuration-home-directory
|
||||
(default "/var/lib/gitolite"))
|
||||
(rc-file gitolite-configuration-rc-file
|
||||
(default (gitolite-rc-file)))
|
||||
(admin-pubkey gitolite-configuration-admin-pubkey))
|
||||
|
||||
(define gitolite-accounts
|
||||
(match-lambda
|
||||
(($ <gitolite-configuration> package user group home-directory
|
||||
rc-file admin-pubkey)
|
||||
;; User group and account to run Gitolite.
|
||||
(list (user-group (name user) (system? #t))
|
||||
(user-account
|
||||
(name user)
|
||||
(group group)
|
||||
(system? #t)
|
||||
(comment "Gitolite user")
|
||||
(home-directory home-directory))))))
|
||||
|
||||
(define gitolite-activation
|
||||
(match-lambda
|
||||
(($ <gitolite-configuration> package user group home
|
||||
rc-file admin-pubkey)
|
||||
#~(begin
|
||||
(use-modules (ice-9 match)
|
||||
(guix build utils))
|
||||
|
||||
(let* ((user-info (getpwnam #$user))
|
||||
(admin-pubkey #$admin-pubkey)
|
||||
(pubkey-file (string-append
|
||||
#$home "/"
|
||||
(basename
|
||||
(strip-store-file-name admin-pubkey)))))
|
||||
|
||||
(simple-format #t "guix: gitolite: installing ~A\n" #$rc-file)
|
||||
(copy-file #$rc-file #$(string-append home "/.gitolite.rc"))
|
||||
|
||||
;; The key must be writable, so copy it from the store
|
||||
(copy-file admin-pubkey pubkey-file)
|
||||
|
||||
(chmod pubkey-file #o500)
|
||||
(chown pubkey-file
|
||||
(passwd:uid user-info)
|
||||
(passwd:gid user-info))
|
||||
|
||||
;; Set the git configuration, to avoid gitolite trying to use
|
||||
;; the hostname command, as the network might not be up yet
|
||||
(with-output-to-file #$(string-append home "/.gitconfig")
|
||||
(lambda ()
|
||||
(display "[user]
|
||||
name = GNU Guix
|
||||
email = guix@localhost
|
||||
")))
|
||||
;; Run Gitolite setup, as this updates the hooks and include the
|
||||
;; admin pubkey if specified. The admin pubkey is required for
|
||||
;; initial setup, and will replace the previous key if run after
|
||||
;; initial setup
|
||||
(match (primitive-fork)
|
||||
(0
|
||||
;; Exit with a non-zero status code if an exception is thrown.
|
||||
(dynamic-wind
|
||||
(const #t)
|
||||
(lambda ()
|
||||
(setenv "HOME" (passwd:dir user-info))
|
||||
(setenv "USER" #$user)
|
||||
(setgid (passwd:gid user-info))
|
||||
(setuid (passwd:uid user-info))
|
||||
(primitive-exit
|
||||
(system* #$(file-append package "/bin/gitolite")
|
||||
"setup"
|
||||
"-m" "gitolite setup by GNU Guix"
|
||||
"-pk" pubkey-file)))
|
||||
(lambda ()
|
||||
(primitive-exit 1))))
|
||||
(pid (waitpid pid)))
|
||||
|
||||
(when (file-exists? pubkey-file)
|
||||
(delete-file pubkey-file)))))))
|
||||
|
||||
(define gitolite-service-type
|
||||
(service-type
|
||||
(name 'gitolite)
|
||||
(extensions
|
||||
(list (service-extension activation-service-type
|
||||
gitolite-activation)
|
||||
(service-extension account-service-type
|
||||
gitolite-accounts)
|
||||
(service-extension profile-service-type
|
||||
;; The Gitolite package in Guix uses
|
||||
;; gitolite-shell in the authorized_keys file, so
|
||||
;; gitolite-shell needs to be on the PATH for
|
||||
;; gitolite to work.
|
||||
(lambda (config)
|
||||
(list
|
||||
(gitolite-configuration-package config))))))
|
||||
(description
|
||||
"Setup @command{gitolite}, a Git hosting tool providing access over SSH..
|
||||
By default, the @code{git} user is used, but this is configurable.
|
||||
Additionally, Gitolite can integrate with with tools like gitweb or cgit to
|
||||
provide a web interface to view selected repositories.")))
|
||||
|
|
|
@ -501,7 +501,7 @@ a container or that of a \"bare metal\" system."
|
|||
;; Add the firmware service, unless we are building for a
|
||||
;; container.
|
||||
(if container?
|
||||
'()
|
||||
(list %containerized-shepherd-service)
|
||||
(list %linux-bare-metal-service
|
||||
(service firmware-service-type
|
||||
(operating-system-firmware os))))))))
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
;;; Copyright © 2017, 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -27,14 +28,17 @@
|
|||
#:use-module (gnu services)
|
||||
#:use-module (gnu services version-control)
|
||||
#:use-module (gnu services cgit)
|
||||
#:use-module (gnu services ssh)
|
||||
#:use-module (gnu services web)
|
||||
#:use-module (gnu services networking)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages ssh)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix modules)
|
||||
#:export (%test-cgit
|
||||
%test-git-http))
|
||||
%test-git-http
|
||||
%test-gitolite))
|
||||
|
||||
(define README-contents
|
||||
"Hello! This is what goes inside the 'README' file.")
|
||||
|
@ -300,3 +304,111 @@ HTTP-PORT."
|
|||
(name "git-http")
|
||||
(description "Connect to a running Git HTTP server.")
|
||||
(value (run-git-http-test))))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Gitolite.
|
||||
;;;
|
||||
|
||||
(define %gitolite-test-admin-keypair
|
||||
(computed-file
|
||||
"gitolite-test-admin-keypair"
|
||||
(with-imported-modules (source-module-closure
|
||||
'((guix build utils)))
|
||||
#~(begin
|
||||
(use-modules (ice-9 match) (srfi srfi-26)
|
||||
(guix build utils))
|
||||
|
||||
(mkdir #$output)
|
||||
(invoke #$(file-append openssh "/bin/ssh-keygen")
|
||||
"-f" (string-append #$output "/test-admin")
|
||||
"-t" "rsa"
|
||||
"-q"
|
||||
"-N" "")))))
|
||||
|
||||
(define %gitolite-os
|
||||
(simple-operating-system
|
||||
(dhcp-client-service)
|
||||
(service openssh-service-type)
|
||||
(service gitolite-service-type
|
||||
(gitolite-configuration
|
||||
(admin-pubkey
|
||||
(file-append %gitolite-test-admin-keypair "/test-admin.pub"))))))
|
||||
|
||||
(define (run-gitolite-test)
|
||||
(define os
|
||||
(marionette-operating-system
|
||||
%gitolite-os
|
||||
#:imported-modules '((gnu services herd)
|
||||
(guix combinators))))
|
||||
|
||||
(define vm
|
||||
(virtual-machine
|
||||
(operating-system os)
|
||||
(port-forwardings `((2222 . 22)))))
|
||||
|
||||
(define test
|
||||
(with-imported-modules '((gnu build marionette)
|
||||
(guix build utils))
|
||||
#~(begin
|
||||
(use-modules (srfi srfi-64)
|
||||
(rnrs io ports)
|
||||
(gnu build marionette)
|
||||
(guix build utils))
|
||||
|
||||
(define marionette
|
||||
(make-marionette (list #$vm)))
|
||||
|
||||
(mkdir #$output)
|
||||
(chdir #$output)
|
||||
|
||||
(test-begin "gitolite")
|
||||
|
||||
;; Wait for sshd to be up and running.
|
||||
(test-assert "service running"
|
||||
(marionette-eval
|
||||
'(begin
|
||||
(use-modules (gnu services herd))
|
||||
(start-service 'ssh-daemon))
|
||||
marionette))
|
||||
|
||||
(display #$%gitolite-test-admin-keypair)
|
||||
|
||||
(setenv "GIT_SSH_VARIANT" "ssh")
|
||||
(setenv "GIT_SSH_COMMAND"
|
||||
(string-join
|
||||
'(#$(file-append openssh "/bin/ssh")
|
||||
"-i" #$(file-append %gitolite-test-admin-keypair
|
||||
"/test-admin")
|
||||
"-o" "UserKnownHostsFile=/dev/null"
|
||||
"-o" "StrictHostKeyChecking=no")))
|
||||
|
||||
(test-assert "cloning the admin repository"
|
||||
(invoke #$(file-append git "/bin/git")
|
||||
"clone" "-v"
|
||||
"ssh://git@localhost:2222/gitolite-admin"
|
||||
"/tmp/clone"))
|
||||
|
||||
(test-assert "admin key exists"
|
||||
(file-exists? "/tmp/clone/keydir/test-admin.pub"))
|
||||
|
||||
(with-directory-excursion "/tmp/clone"
|
||||
(invoke #$(file-append git "/bin/git")
|
||||
"-c" "user.name=Guix" "-c" "user.email=guix"
|
||||
"commit"
|
||||
"-m" "Test commit"
|
||||
"--allow-empty")
|
||||
|
||||
(test-assert "pushing, and the associated hooks"
|
||||
(invoke #$(file-append git "/bin/git") "push")))
|
||||
|
||||
(test-end)
|
||||
(exit (= (test-runner-fail-count (test-runner-current)) 0)))))
|
||||
|
||||
(gexp->derivation "gitolite" test))
|
||||
|
||||
(define %test-gitolite
|
||||
(system-test
|
||||
(name "gitolite")
|
||||
(description "Clone the Gitolite admin repository.")
|
||||
(value (run-gitolite-test))))
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
|
||||
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
#:use-module (guix utils)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix derivations)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix search-paths)
|
||||
#:use-module (guix build-system)
|
||||
#:use-module (guix build-system gnu)
|
||||
|
@ -48,14 +49,35 @@
|
|||
(let ((haskell (resolve-interface '(gnu packages haskell))))
|
||||
(module-ref haskell 'ghc)))
|
||||
|
||||
(define (source-url->revision-url url revision)
|
||||
"Convert URL (a Hackage source URL) to the URL for the Cabal file at
|
||||
version REVISION."
|
||||
(let* ((last-slash (string-rindex url #\/))
|
||||
(next-slash (string-rindex url #\/ 0 last-slash)))
|
||||
(string-append (substring url 0 next-slash)
|
||||
(substring url last-slash (- (string-length url)
|
||||
(string-length ".tar.gz")))
|
||||
"/revision/" revision ".cabal")))
|
||||
|
||||
(define* (lower name
|
||||
#:key source inputs native-inputs outputs system target
|
||||
(haskell (default-haskell))
|
||||
cabal-revision
|
||||
#:allow-other-keys
|
||||
#:rest arguments)
|
||||
"Return a bag for NAME."
|
||||
(define private-keywords
|
||||
'(#:target #:haskell #:inputs #:native-inputs))
|
||||
'(#:target #:haskell #:cabal-revision #:inputs #:native-inputs))
|
||||
|
||||
(define (cabal-revision->origin cabal-revision)
|
||||
(match cabal-revision
|
||||
((revision hash)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (source-url->revision-url (origin-uri source) revision))
|
||||
(sha256 (base32 hash))
|
||||
(file-name (string-append name "-" revision ".cabal"))))
|
||||
(#f #f)))
|
||||
|
||||
(and (not target) ;XXX: no cross-compilation
|
||||
(bag
|
||||
|
@ -64,6 +86,9 @@
|
|||
(host-inputs `(,@(if source
|
||||
`(("source" ,source))
|
||||
'())
|
||||
,@(match (cabal-revision->origin cabal-revision)
|
||||
(#f '())
|
||||
(revision `(("cabal-revision" ,revision))))
|
||||
,@inputs
|
||||
|
||||
;; Keep the standard inputs of 'gnu-build-system'.
|
||||
|
@ -103,6 +128,11 @@ provides a 'Setup.hs' file as its build system."
|
|||
source)
|
||||
(source
|
||||
source))
|
||||
#:cabal-revision ,(match (assoc-ref inputs
|
||||
"cabal-revision")
|
||||
(((? derivation? revision))
|
||||
(derivation->output-path revision))
|
||||
(revision revision))
|
||||
#:configure-flags ,configure-flags
|
||||
#:haddock-flags ,haddock-flags
|
||||
#:system ,system
|
||||
|
|
|
@ -115,7 +115,7 @@ and 'guix publish', something like
|
|||
(string-drop path 33)
|
||||
path)))
|
||||
|
||||
(define* (ftp-fetch uri file #:key timeout)
|
||||
(define* (ftp-fetch uri file #:key timeout print-build-trace?)
|
||||
"Fetch data from URI and write it to FILE. Return FILE on success. Bail
|
||||
out if the connection could not be established in less than TIMEOUT seconds."
|
||||
(let* ((conn (match (and=> (uri-userinfo uri)
|
||||
|
@ -136,12 +136,17 @@ out if the connection could not be established in less than TIMEOUT seconds."
|
|||
(lambda (out)
|
||||
(dump-port* in out
|
||||
#:buffer-size %http-receive-buffer-size
|
||||
#:reporter (progress-reporter/file
|
||||
(uri-abbreviation uri) size))))
|
||||
#:reporter
|
||||
(if print-build-trace?
|
||||
(progress-reporter/trace
|
||||
file (uri->string uri) size)
|
||||
(progress-reporter/file
|
||||
(uri-abbreviation uri) size)))))
|
||||
|
||||
(ftp-close conn))
|
||||
(newline)
|
||||
file)
|
||||
(ftp-close conn)
|
||||
(unless print-build-trace?
|
||||
(newline))
|
||||
file))
|
||||
|
||||
;; Autoload GnuTLS so that this module can be used even when GnuTLS is
|
||||
;; not available. At compile time, this yields "possibly unbound
|
||||
|
@ -723,7 +728,8 @@ Return a list of URIs."
|
|||
#:key
|
||||
(timeout 10) (verify-certificate? #t)
|
||||
(mirrors '()) (content-addressed-mirrors '())
|
||||
(hashes '()))
|
||||
(hashes '())
|
||||
print-build-trace?)
|
||||
"Fetch FILE from URL; URL may be either a single string, or a list of
|
||||
string denoting alternate URLs for FILE. Return #f on failure, and FILE
|
||||
on success.
|
||||
|
@ -759,13 +765,18 @@ otherwise simply ignore them."
|
|||
(lambda (output)
|
||||
(dump-port* port output
|
||||
#:buffer-size %http-receive-buffer-size
|
||||
#:reporter (progress-reporter/file
|
||||
(uri-abbreviation uri) size))
|
||||
#:reporter (if print-build-trace?
|
||||
(progress-reporter/trace
|
||||
file (uri->string uri) size)
|
||||
(progress-reporter/file
|
||||
(uri-abbreviation uri) size)))
|
||||
(newline)))
|
||||
file)))
|
||||
((ftp)
|
||||
(false-if-exception* (ftp-fetch uri file
|
||||
#:timeout timeout)))
|
||||
#:timeout timeout
|
||||
#:print-build-trace?
|
||||
print-build-trace?)))
|
||||
(else
|
||||
(format #t "skipping URI with unsupported scheme: ~s~%"
|
||||
uri)
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
#:use-module (ice-9 regex)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (ice-9 vlist)
|
||||
#:use-module (ice-9 ftw)
|
||||
#:export (%standard-phases
|
||||
haskell-build))
|
||||
|
||||
|
@ -266,8 +267,19 @@ given Haskell package."
|
|||
(run-setuphs "haddock" haddock-flags))
|
||||
#t)
|
||||
|
||||
(define* (patch-cabal-file #:key cabal-revision #:allow-other-keys)
|
||||
(when cabal-revision
|
||||
;; Cabal requires there to be a single file with the suffix ".cabal".
|
||||
(match (scandir "." (cut string-suffix? ".cabal" <>))
|
||||
((original)
|
||||
(format #t "replacing ~s with ~s~%" original cabal-revision)
|
||||
(copy-file cabal-revision original))
|
||||
(_ (error "Could not find a Cabal file to patch."))))
|
||||
#t)
|
||||
|
||||
(define %standard-phases
|
||||
(modify-phases gnu:%standard-phases
|
||||
(add-after 'unpack 'patch-cabal-file patch-cabal-file)
|
||||
(delete 'bootstrap)
|
||||
(add-before 'configure 'setup-compiler setup-compiler)
|
||||
(add-before 'install 'haddock haddock)
|
||||
|
|
|
@ -84,11 +84,12 @@
|
|||
(define (normalize-dependency dependency)
|
||||
"Normalize the name of DEPENDENCY. Handles dependency definitions of the
|
||||
dependency-def form described by
|
||||
<https://common-lisp.net/project/asdf/asdf.html#The-defsystem-grammar>."
|
||||
<https://common-lisp.net/project/asdf/asdf.html#The-defsystem-grammar>.
|
||||
Assume that any symbols in DEPENDENCY will be in upper-case."
|
||||
(match dependency
|
||||
((':version name rest ...)
|
||||
((':VERSION name rest ...)
|
||||
`(:version ,(normalize-string name) ,@rest))
|
||||
((':feature feature-specification dependency-specification)
|
||||
((':FEATURE feature-specification dependency-specification)
|
||||
`(:feature
|
||||
,feature-specification
|
||||
,(normalize-dependency dependency-specification)))
|
||||
|
|
|
@ -43,15 +43,12 @@
|
|||
|
||||
(define (lts-info-ghc-version lts-info)
|
||||
"Retruns the version of the GHC compiler contained in LTS-INFO."
|
||||
(match lts-info
|
||||
((("snapshot" ("ghc" . version) _ _) _) version)
|
||||
(_ #f)))
|
||||
(and=> (assoc-ref lts-info "snapshot")
|
||||
(cut assoc-ref <> "ghc")))
|
||||
|
||||
(define (lts-info-packages lts-info)
|
||||
"Returns the alist of packages contained in LTS-INFO."
|
||||
(match lts-info
|
||||
((("packages" pkg ...) . _) pkg)
|
||||
(_ '())))
|
||||
"Retruns the alist of packages contained in LTS-INFO."
|
||||
(or (assoc-ref lts-info "packages") '()))
|
||||
|
||||
(define (leave-with-message fmt . args)
|
||||
(raise (condition (&message (message (apply format #f fmt args))))))
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2017 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2015 Steve Sprang <scs@stevesprang.com>
|
||||
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -38,7 +38,11 @@
|
|||
progress-reporter/silent
|
||||
progress-reporter/file
|
||||
progress-reporter/bar
|
||||
progress-reporter/trace
|
||||
|
||||
display-download-progress
|
||||
erase-current-line
|
||||
progress-bar
|
||||
byte-count->string
|
||||
current-terminal-columns
|
||||
|
||||
|
@ -183,6 +187,46 @@ width of the bar is BAR-WIDTH."
|
|||
move the cursor to the beginning of the line."
|
||||
(display "\r\x1b[K" port))
|
||||
|
||||
(define* (display-download-progress file size
|
||||
#:key
|
||||
start-time (transferred 0)
|
||||
(log-port (current-error-port)))
|
||||
"Write the progress report to LOG-PORT. Use START-TIME (a SRFI-19 time
|
||||
object) and TRANSFERRED (a total number of bytes) to determine the
|
||||
throughput."
|
||||
(define elapsed
|
||||
(duration->seconds
|
||||
(time-difference (current-time time-monotonic) start-time)))
|
||||
(if (number? size)
|
||||
(let* ((% (* 100.0 (/ transferred size)))
|
||||
(throughput (/ transferred elapsed))
|
||||
(left (format #f " ~a ~a" file
|
||||
(byte-count->string size)))
|
||||
(right (format #f "~a/s ~a ~a~6,1f%"
|
||||
(byte-count->string throughput)
|
||||
(seconds->string elapsed)
|
||||
(progress-bar %) %)))
|
||||
(erase-current-line log-port)
|
||||
(display (string-pad-middle left right
|
||||
(current-terminal-columns))
|
||||
log-port)
|
||||
(force-output log-port))
|
||||
(let* ((throughput (/ transferred elapsed))
|
||||
(left (format #f " ~a" file))
|
||||
(right (format #f "~a/s ~a | ~a transferred"
|
||||
(byte-count->string throughput)
|
||||
(seconds->string elapsed)
|
||||
(byte-count->string transferred))))
|
||||
(erase-current-line log-port)
|
||||
(display (string-pad-middle left right
|
||||
(current-terminal-columns))
|
||||
log-port)
|
||||
(force-output log-port))))
|
||||
|
||||
(define %progress-interval
|
||||
;; Default interval between subsequent outputs for rate-limited displays.
|
||||
(make-time time-monotonic 200000000 0))
|
||||
|
||||
(define* (progress-reporter/file file size
|
||||
#:optional (log-port (current-output-port))
|
||||
#:key (abbreviation basename))
|
||||
|
@ -192,44 +236,16 @@ ABBREVIATION used to shorten FILE for display."
|
|||
(let ((start-time (current-time time-monotonic))
|
||||
(transferred 0))
|
||||
(define (render)
|
||||
"Write the progress report to LOG-PORT."
|
||||
(define elapsed
|
||||
(duration->seconds
|
||||
(time-difference (current-time time-monotonic) start-time)))
|
||||
(if (number? size)
|
||||
(let* ((% (* 100.0 (/ transferred size)))
|
||||
(throughput (/ transferred elapsed))
|
||||
(left (format #f " ~a ~a"
|
||||
(abbreviation file)
|
||||
(byte-count->string size)))
|
||||
(right (format #f "~a/s ~a ~a~6,1f%"
|
||||
(byte-count->string throughput)
|
||||
(seconds->string elapsed)
|
||||
(progress-bar %) %)))
|
||||
(erase-current-line log-port)
|
||||
(display (string-pad-middle left right
|
||||
(current-terminal-columns))
|
||||
log-port)
|
||||
(force-output log-port))
|
||||
(let* ((throughput (/ transferred elapsed))
|
||||
(left (format #f " ~a"
|
||||
(abbreviation file)))
|
||||
(right (format #f "~a/s ~a | ~a transferred"
|
||||
(byte-count->string throughput)
|
||||
(seconds->string elapsed)
|
||||
(byte-count->string transferred))))
|
||||
(erase-current-line log-port)
|
||||
(display (string-pad-middle left right
|
||||
(current-terminal-columns))
|
||||
log-port)
|
||||
(force-output log-port))))
|
||||
(display-download-progress (abbreviation file) size
|
||||
#:start-time start-time
|
||||
#:transferred transferred
|
||||
#:log-port log-port))
|
||||
|
||||
(progress-reporter
|
||||
(start render)
|
||||
;; Report the progress every 300ms or longer.
|
||||
(report
|
||||
(let ((rate-limited-render
|
||||
(rate-limited render (make-time time-monotonic 300000000 0))))
|
||||
(let ((rate-limited-render (rate-limited render %progress-interval)))
|
||||
(lambda (value)
|
||||
(set! transferred value)
|
||||
(rate-limited-render))))
|
||||
|
@ -269,6 +285,32 @@ tasks is performed. Write PREFIX at the beginning of the line."
|
|||
(newline port))
|
||||
(force-output port)))))
|
||||
|
||||
(define* (progress-reporter/trace file url size
|
||||
#:optional (log-port (current-output-port)))
|
||||
"Like 'progress-reporter/file', but instead of returning human-readable
|
||||
progress reports, write \"build trace\" lines to be processed elsewhere."
|
||||
(define (report-progress transferred)
|
||||
(define message
|
||||
(format #f "@ download-progress ~a ~a ~a ~a~%"
|
||||
file url (or size "-") transferred))
|
||||
|
||||
(display message log-port) ;should be atomic
|
||||
(flush-output-port log-port))
|
||||
|
||||
(progress-reporter
|
||||
(start (lambda ()
|
||||
(display (format #f "@ download-started ~a ~a ~a~%"
|
||||
file url (or size "-"))
|
||||
log-port)))
|
||||
(report (rate-limited report-progress %progress-interval))
|
||||
(stop (lambda ()
|
||||
(let ((size (or (and=> (stat file #f) stat:size)
|
||||
size)))
|
||||
(report-progress size)
|
||||
(display (format #f "@ download-succeeded ~a ~a ~a~%"
|
||||
file url size)
|
||||
log-port))))))
|
||||
|
||||
;; TODO: replace '(@ (guix build utils) dump-port))'.
|
||||
(define* (dump-port* in out
|
||||
#:key (buffer-size 16384)
|
||||
|
|
|
@ -45,6 +45,9 @@
|
|||
#:use-module (srfi srfi-37)
|
||||
#:autoload (gnu packages) (specification->package %package-module-path)
|
||||
#:autoload (guix download) (download-to-store)
|
||||
#:use-module (guix status)
|
||||
#:use-module ((guix progress) #:select (current-terminal-columns))
|
||||
#:use-module ((guix build syscalls) #:select (terminal-columns))
|
||||
#:export (%standard-build-options
|
||||
set-build-options-from-command-line
|
||||
set-build-options-from-command-line*
|
||||
|
@ -390,6 +393,8 @@ options handled by 'set-build-options-from-command-line', and listed in
|
|||
#:max-silent-time (assoc-ref opts 'max-silent-time)
|
||||
#:timeout (assoc-ref opts 'timeout)
|
||||
#:print-build-trace (assoc-ref opts 'print-build-trace?)
|
||||
#:print-extended-build-trace?
|
||||
(assoc-ref opts 'print-extended-build-trace?)
|
||||
#:verbosity (assoc-ref opts 'verbosity)))
|
||||
|
||||
(define set-build-options-from-command-line*
|
||||
|
@ -499,6 +504,7 @@ options handled by 'set-build-options-from-command-line', and listed in
|
|||
(substitutes? . #t)
|
||||
(build-hook? . #t)
|
||||
(print-build-trace? . #t)
|
||||
(print-extended-build-trace? . #t)
|
||||
(verbosity . 0)))
|
||||
|
||||
(define (show-help)
|
||||
|
@ -733,11 +739,12 @@ needed."
|
|||
;; Set the build options before we do anything else.
|
||||
(set-build-options-from-command-line store opts)
|
||||
|
||||
(parameterize ((current-build-output-port
|
||||
(parameterize ((current-terminal-columns (terminal-columns))
|
||||
(current-build-output-port
|
||||
(if quiet?
|
||||
(%make-void-port "w")
|
||||
(build-output-port #:verbose? #t
|
||||
#:port (duplicate-port (current-error-port) "w")))))
|
||||
(build-event-output-port
|
||||
(build-status-updater print-build-event)))))
|
||||
(let* ((mode (assoc-ref opts 'build-mode))
|
||||
(drv (options->derivations store opts))
|
||||
(urls (map (cut string-append <> "/log")
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
(define-module (guix scripts environment)
|
||||
#:use-module (guix ui)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix status)
|
||||
#:use-module (guix grafts)
|
||||
#:use-module (guix derivations)
|
||||
#:use-module (guix packages)
|
||||
|
@ -173,6 +174,8 @@ COMMAND or an interactive shell in that environment.\n"))
|
|||
(substitutes? . #t)
|
||||
(build-hook? . #t)
|
||||
(graft? . #t)
|
||||
(print-build-trace? . #t)
|
||||
(print-extended-build-trace? . #t)
|
||||
(verbosity . 0)))
|
||||
|
||||
(define (tag-package-arg opts arg)
|
||||
|
@ -661,59 +664,60 @@ message if any test fails."
|
|||
(leave (G_ "'--user' cannot be used without '--container'~%")))
|
||||
|
||||
(with-store store
|
||||
(set-build-options-from-command-line store opts)
|
||||
(with-status-report print-build-event
|
||||
(set-build-options-from-command-line store opts)
|
||||
|
||||
;; Use the bootstrap Guile when requested.
|
||||
(parameterize ((%graft? (assoc-ref opts 'graft?))
|
||||
(%guile-for-build
|
||||
(package-derivation
|
||||
store
|
||||
(if bootstrap?
|
||||
%bootstrap-guile
|
||||
(canonical-package guile-2.2)))))
|
||||
(run-with-store store
|
||||
;; Containers need a Bourne shell at /bin/sh.
|
||||
(mlet* %store-monad ((bash (environment-bash container?
|
||||
bootstrap?
|
||||
system))
|
||||
(prof-drv (manifest->derivation
|
||||
manifest system bootstrap?))
|
||||
(profile -> (derivation->output-path prof-drv))
|
||||
(gc-root -> (assoc-ref opts 'gc-root)))
|
||||
;; Use the bootstrap Guile when requested.
|
||||
(parameterize ((%graft? (assoc-ref opts 'graft?))
|
||||
(%guile-for-build
|
||||
(package-derivation
|
||||
store
|
||||
(if bootstrap?
|
||||
%bootstrap-guile
|
||||
(canonical-package guile-2.2)))))
|
||||
(run-with-store store
|
||||
;; Containers need a Bourne shell at /bin/sh.
|
||||
(mlet* %store-monad ((bash (environment-bash container?
|
||||
bootstrap?
|
||||
system))
|
||||
(prof-drv (manifest->derivation
|
||||
manifest system bootstrap?))
|
||||
(profile -> (derivation->output-path prof-drv))
|
||||
(gc-root -> (assoc-ref opts 'gc-root)))
|
||||
|
||||
;; First build the inputs. This is necessary even for
|
||||
;; --search-paths. Additionally, we might need to build bash for
|
||||
;; a container.
|
||||
(mbegin %store-monad
|
||||
(build-environment (if (derivation? bash)
|
||||
(list prof-drv bash)
|
||||
(list prof-drv))
|
||||
opts)
|
||||
(mwhen gc-root
|
||||
(register-gc-root profile gc-root))
|
||||
;; First build the inputs. This is necessary even for
|
||||
;; --search-paths. Additionally, we might need to build bash for
|
||||
;; a container.
|
||||
(mbegin %store-monad
|
||||
(build-environment (if (derivation? bash)
|
||||
(list prof-drv bash)
|
||||
(list prof-drv))
|
||||
opts)
|
||||
(mwhen gc-root
|
||||
(register-gc-root profile gc-root))
|
||||
|
||||
(cond
|
||||
((assoc-ref opts 'dry-run?)
|
||||
(return #t))
|
||||
((assoc-ref opts 'search-paths)
|
||||
(show-search-paths profile manifest #:pure? pure?)
|
||||
(return #t))
|
||||
(container?
|
||||
(let ((bash-binary
|
||||
(if bootstrap?
|
||||
bash
|
||||
(string-append (derivation->output-path bash)
|
||||
"/bin/sh"))))
|
||||
(launch-environment/container #:command command
|
||||
#:bash bash-binary
|
||||
#:user user
|
||||
#:user-mappings mappings
|
||||
#:profile profile
|
||||
#:manifest manifest
|
||||
#:link-profile? link-prof?
|
||||
#:network? network?)))
|
||||
(else
|
||||
(return
|
||||
(exit/status
|
||||
(launch-environment/fork command profile manifest
|
||||
#:pure? pure?)))))))))))))
|
||||
(cond
|
||||
((assoc-ref opts 'dry-run?)
|
||||
(return #t))
|
||||
((assoc-ref opts 'search-paths)
|
||||
(show-search-paths profile manifest #:pure? pure?)
|
||||
(return #t))
|
||||
(container?
|
||||
(let ((bash-binary
|
||||
(if bootstrap?
|
||||
bash
|
||||
(string-append (derivation->output-path bash)
|
||||
"/bin/sh"))))
|
||||
(launch-environment/container #:command command
|
||||
#:bash bash-binary
|
||||
#:user user
|
||||
#:user-mappings mappings
|
||||
#:profile profile
|
||||
#:manifest manifest
|
||||
#:link-profile? link-prof?
|
||||
#:network? network?)))
|
||||
(else
|
||||
(return
|
||||
(exit/status
|
||||
(launch-environment/fork command profile manifest
|
||||
#:pure? pure?))))))))))))))
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#:use-module (guix gexp)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix status)
|
||||
#:use-module (guix grafts)
|
||||
#:use-module (guix monads)
|
||||
#:use-module (guix modules)
|
||||
|
@ -538,6 +539,8 @@ please email '~a'~%")
|
|||
(substitutes? . #t)
|
||||
(build-hook? . #t)
|
||||
(graft? . #t)
|
||||
(print-build-trace? . #t)
|
||||
(print-extended-build-trace? . #t)
|
||||
(verbosity . 0)
|
||||
(symlinks . ())
|
||||
(compressor . ,(first %compressors))))
|
||||
|
@ -684,72 +687,73 @@ Create a bundle of PACKAGE.\n"))
|
|||
|
||||
(with-error-handling
|
||||
(with-store store
|
||||
;; Set the build options before we do anything else.
|
||||
(set-build-options-from-command-line store opts)
|
||||
(with-status-report print-build-event
|
||||
;; Set the build options before we do anything else.
|
||||
(set-build-options-from-command-line store opts)
|
||||
|
||||
(parameterize ((%graft? (assoc-ref opts 'graft?))
|
||||
(%guile-for-build (package-derivation
|
||||
store
|
||||
(if (assoc-ref opts 'bootstrap?)
|
||||
%bootstrap-guile
|
||||
(canonical-package guile-2.2))
|
||||
(assoc-ref opts 'system)
|
||||
#:graft? (assoc-ref opts 'graft?))))
|
||||
(let* ((dry-run? (assoc-ref opts 'dry-run?))
|
||||
(relocatable? (assoc-ref opts 'relocatable?))
|
||||
(manifest (let ((manifest (manifest-from-args store opts)))
|
||||
;; Note: We cannot honor '--bootstrap' here because
|
||||
;; 'glibc-bootstrap' lacks 'libc.a'.
|
||||
(if relocatable?
|
||||
(map-manifest-entries wrapped-package manifest)
|
||||
manifest)))
|
||||
(pack-format (assoc-ref opts 'format))
|
||||
(name (string-append (symbol->string pack-format)
|
||||
"-pack"))
|
||||
(target (assoc-ref opts 'target))
|
||||
(bootstrap? (assoc-ref opts 'bootstrap?))
|
||||
(compressor (if bootstrap?
|
||||
bootstrap-xz
|
||||
(assoc-ref opts 'compressor)))
|
||||
(archiver (if (equal? pack-format 'squashfs)
|
||||
squashfs-tools-next
|
||||
(if bootstrap?
|
||||
%bootstrap-coreutils&co
|
||||
tar)))
|
||||
(symlinks (assoc-ref opts 'symlinks))
|
||||
(build-image (match (assq-ref %formats pack-format)
|
||||
((? procedure? proc) proc)
|
||||
(#f
|
||||
(leave (G_ "~a: unknown pack format~%")
|
||||
pack-format))))
|
||||
(localstatedir? (assoc-ref opts 'localstatedir?)))
|
||||
(run-with-store store
|
||||
(mlet* %store-monad ((profile (profile-derivation
|
||||
manifest
|
||||
#:relative-symlinks? relocatable?
|
||||
#:hooks (if bootstrap?
|
||||
'()
|
||||
%default-profile-hooks)
|
||||
#:locales? (not bootstrap?)
|
||||
#:target target))
|
||||
(drv (build-image name profile
|
||||
#:target
|
||||
target
|
||||
#:compressor
|
||||
compressor
|
||||
#:symlinks
|
||||
symlinks
|
||||
#:localstatedir?
|
||||
localstatedir?
|
||||
#:archiver
|
||||
archiver)))
|
||||
(mbegin %store-monad
|
||||
(show-what-to-build* (list drv)
|
||||
#:use-substitutes?
|
||||
(assoc-ref opts 'substitutes?)
|
||||
#:dry-run? dry-run?)
|
||||
(munless dry-run?
|
||||
(built-derivations (list drv))
|
||||
(return (format #t "~a~%"
|
||||
(derivation->output-path drv))))))
|
||||
#:system (assoc-ref opts 'system)))))))
|
||||
(parameterize ((%graft? (assoc-ref opts 'graft?))
|
||||
(%guile-for-build (package-derivation
|
||||
store
|
||||
(if (assoc-ref opts 'bootstrap?)
|
||||
%bootstrap-guile
|
||||
(canonical-package guile-2.2))
|
||||
(assoc-ref opts 'system)
|
||||
#:graft? (assoc-ref opts 'graft?))))
|
||||
(let* ((dry-run? (assoc-ref opts 'dry-run?))
|
||||
(relocatable? (assoc-ref opts 'relocatable?))
|
||||
(manifest (let ((manifest (manifest-from-args store opts)))
|
||||
;; Note: We cannot honor '--bootstrap' here because
|
||||
;; 'glibc-bootstrap' lacks 'libc.a'.
|
||||
(if relocatable?
|
||||
(map-manifest-entries wrapped-package manifest)
|
||||
manifest)))
|
||||
(pack-format (assoc-ref opts 'format))
|
||||
(name (string-append (symbol->string pack-format)
|
||||
"-pack"))
|
||||
(target (assoc-ref opts 'target))
|
||||
(bootstrap? (assoc-ref opts 'bootstrap?))
|
||||
(compressor (if bootstrap?
|
||||
bootstrap-xz
|
||||
(assoc-ref opts 'compressor)))
|
||||
(archiver (if (equal? pack-format 'squashfs)
|
||||
squashfs-tools-next
|
||||
(if bootstrap?
|
||||
%bootstrap-coreutils&co
|
||||
tar)))
|
||||
(symlinks (assoc-ref opts 'symlinks))
|
||||
(build-image (match (assq-ref %formats pack-format)
|
||||
((? procedure? proc) proc)
|
||||
(#f
|
||||
(leave (G_ "~a: unknown pack format~%")
|
||||
pack-format))))
|
||||
(localstatedir? (assoc-ref opts 'localstatedir?)))
|
||||
(run-with-store store
|
||||
(mlet* %store-monad ((profile (profile-derivation
|
||||
manifest
|
||||
#:relative-symlinks? relocatable?
|
||||
#:hooks (if bootstrap?
|
||||
'()
|
||||
%default-profile-hooks)
|
||||
#:locales? (not bootstrap?)
|
||||
#:target target))
|
||||
(drv (build-image name profile
|
||||
#:target
|
||||
target
|
||||
#:compressor
|
||||
compressor
|
||||
#:symlinks
|
||||
symlinks
|
||||
#:localstatedir?
|
||||
localstatedir?
|
||||
#:archiver
|
||||
archiver)))
|
||||
(mbegin %store-monad
|
||||
(show-what-to-build* (list drv)
|
||||
#:use-substitutes?
|
||||
(assoc-ref opts 'substitutes?)
|
||||
#:dry-run? dry-run?)
|
||||
(munless dry-run?
|
||||
(built-derivations (list drv))
|
||||
(return (format #t "~a~%"
|
||||
(derivation->output-path drv))))))
|
||||
#:system (assoc-ref opts 'system))))))))
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue