aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/contributing.texi7
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/backup.scm4
-rw-r--r--gnu/packages/bioinformatics.scm2
-rw-r--r--gnu/packages/bootloaders.scm92
-rw-r--r--gnu/packages/calendar.scm6
-rw-r--r--gnu/packages/embedded.scm3
-rw-r--r--gnu/packages/enlightenment.scm19
-rw-r--r--gnu/packages/fonts.scm32
-rw-r--r--gnu/packages/game-development.scm32
-rw-r--r--gnu/packages/games.scm5
-rw-r--r--gnu/packages/gnucash.scm4
-rw-r--r--gnu/packages/linux.scm7
-rw-r--r--gnu/packages/maths.scm2
-rw-r--r--gnu/packages/motti.scm45
-rw-r--r--gnu/packages/mp3.scm4
-rw-r--r--gnu/packages/nim.scm19
-rw-r--r--gnu/packages/password-utils.scm38
-rw-r--r--gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch43
-rw-r--r--gnu/packages/python.scm27
-rw-r--r--gnu/packages/video.scm7
-rw-r--r--nix/libstore/build.cc11
22 files changed, 247 insertions, 164 deletions
diff --git a/doc/contributing.texi b/doc/contributing.texi
index 98971a9bbc..00edd47710 100644
--- a/doc/contributing.texi
+++ b/doc/contributing.texi
@@ -110,13 +110,10 @@ actually installing them. So that you can distinguish between your
To that end, all the command-line tools can be used even if you have not
run @code{make install}. To do that, prefix each command with
@command{./pre-inst-env} (the @file{pre-inst-env} script lives in the
-top build tree of Guix), as in@footnote{The @option{-E} flag to
-@command{sudo} guarantees that @code{GUILE_LOAD_PATH} is correctly set
-such that @command{guix-daemon} and the tools it uses can find the Guile
-modules they need.}:
+top build tree of Guix), as in:
@example
-$ sudo -E ./pre-inst-env guix-daemon --build-users-group=guixbuild
+$ sudo ./pre-inst-env guix-daemon --build-users-group=guixbuild
$ ./pre-inst-env guix build hello
@end example
diff --git a/gnu/local.mk b/gnu/local.mk
index e7a870549e..ddfe96433c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -272,6 +272,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/mingw.scm \
%D%/packages/microcom.scm \
%D%/packages/moe.scm \
+ %D%/packages/motti.scm \
%D%/packages/monitoring.scm \
%D%/packages/mono.scm \
%D%/packages/moreutils.scm \
@@ -856,7 +857,6 @@ dist_patch_DATA = \
%D%/packages/patches/node-9077.patch \
%D%/packages/patches/nss-increase-test-timeout.patch \
%D%/packages/patches/nss-pkgconfig.patch \
- %D%/packages/patches/ntfs-3g-CVE-2017-0358.patch \
%D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index 20b375abe1..157b6a7cc5 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -605,14 +605,14 @@ changes are stored.")
(define-public wimlib
(package
(name "wimlib")
- (version "1.10.0")
+ (version "1.12.0")
(source (origin
(method url-fetch)
(uri (string-append "https://wimlib.net/downloads/"
name "-" version ".tar.gz"))
(sha256
(base32
- "0mbz03smlc054i2m9q2sbqymml9m897kfs84q7g81i26y811p6wq"))))
+ "0ks6hq7vwq13ljkzxp3a490bf8dnracgl2azf57rg49ad2fzab45"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 84f070f0fd..8d508c6ce1 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -7580,7 +7580,7 @@ Stephens (1990).")
version ".tar.gz"))
(sha256
(base32
- "0479qx4bapgcp5chj10a63chk0s28x9cx1gamz3f5m3yd7jzwcf2"))))
+ "1y0nqpk8cw5a34sd9hmin3z4v7iqm6hf6l22cl81vlbxqbjibxc8"))))
(properties
`((upstream-name . "BSgenome.Hsapiens.UCSC.hg19")))
(build-system r-build-system)
diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm
index 864b1a2698..f66d0bb3f4 100644
--- a/gnu/packages/bootloaders.scm
+++ b/gnu/packages/bootloaders.scm
@@ -333,48 +333,56 @@ also initializes the boards (RAM etc).")
(define (make-u-boot-package board triplet)
"Returns a u-boot package for BOARD cross-compiled for TRIPLET."
- (package
- (inherit u-boot)
- (name (string-append "u-boot-" (string-downcase board)))
- (native-inputs
- `(("cross-gcc" ,(cross-gcc triplet))
- ("cross-binutils" ,(cross-binutils triplet))
- ,@(package-native-inputs u-boot)))
- (arguments
- `(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-system))
- #:test-target "test"
- #:make-flags
- (list "HOSTCC=gcc" (string-append "CROSS_COMPILE=" ,triplet "-"))
- #:phases
- (modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key outputs make-flags #:allow-other-keys)
- (let ((config-name (string-append ,board "_defconfig")))
- (if (file-exists? (string-append "configs/" config-name))
- (zero? (apply system* "make" `(,@make-flags ,config-name)))
- (begin
- (display "Invalid board name. Valid board names are:")
- (let ((suffix-len (string-length "_defconfig")))
- (scandir "configs"
- (lambda (file-name)
- (when (string-suffix? "_defconfig" file-name)
- (format #t
- "- ~A\n"
- (string-drop-right file-name
- suffix-len))))))
- #f)))))
- (replace 'install
- (lambda* (#:key outputs make-flags #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (libexec (string-append out "/libexec"))
- (uboot-files (find-files "." ".*\\.(bin|efi|spl)$")))
- (mkdir-p libexec)
- (for-each
- (lambda (file)
- (let ((target-file (string-append libexec "/" file)))
- (mkdir-p (dirname target-file))
- (copy-file file target-file)))
- uboot-files)))))))))
+ (let ((same-arch? (if (string-prefix? (%current-system) triplet)
+ `#t
+ `#f)))
+ (package
+ (inherit u-boot)
+ (name (string-append "u-boot-" (string-downcase board)))
+ (native-inputs
+ `(,@(if (not same-arch?)
+ `(("cross-gcc" ,(cross-gcc triplet))
+ ("cross-binutils" ,(cross-binutils triplet)))
+ '())
+ ,@(package-native-inputs u-boot)))
+ (arguments
+ `(#:modules ((ice-9 ftw) (guix build utils) (guix build gnu-build-system))
+ #:test-target "test"
+ #:make-flags
+ (list "HOSTCC=gcc"
+ ,@(if (not same-arch?)
+ `((string-append "CROSS_COMPILE=" ,triplet "-"))
+ '()))
+ #:phases
+ (modify-phases %standard-phases
+ (replace 'configure
+ (lambda* (#:key outputs make-flags #:allow-other-keys)
+ (let ((config-name (string-append ,board "_defconfig")))
+ (if (file-exists? (string-append "configs/" config-name))
+ (zero? (apply system* "make" `(,@make-flags ,config-name)))
+ (begin
+ (display "Invalid board name. Valid board names are:")
+ (let ((suffix-len (string-length "_defconfig")))
+ (scandir "configs"
+ (lambda (file-name)
+ (when (string-suffix? "_defconfig" file-name)
+ (format #t
+ "- ~A\n"
+ (string-drop-right file-name
+ suffix-len))))))
+ #f)))))
+ (replace 'install
+ (lambda* (#:key outputs make-flags #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (libexec (string-append out "/libexec"))
+ (uboot-files (find-files "." ".*\\.(bin|efi|spl)$")))
+ (mkdir-p libexec)
+ (for-each
+ (lambda (file)
+ (let ((target-file (string-append libexec "/" file)))
+ (mkdir-p (dirname target-file))
+ (copy-file file target-file)))
+ uboot-files))))))))))
(define-public u-boot-vexpress
(make-u-boot-package "vexpress_ca9x4" "arm-linux-gnueabihf"))
diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm
index b022c0efa7..74601871cc 100644
--- a/gnu/packages/calendar.scm
+++ b/gnu/packages/calendar.scm
@@ -118,8 +118,9 @@ data units.")
("python-pytest-cov" ,python-pytest-cov)
("python-setuptools-scm" ,python-setuptools-scm)
;; Required for tests
- ("tzdata" ,tzdata)
("python-freezegun" ,python-freezegun)
+ ("tzdata" ,tzdata)
+ ("vdirsyncer" ,vdirsyncer)
;; Required to build manpage
("python-sphinxcontrib-newsfeed" ,python-sphinxcontrib-newsfeed)
("python-sphinx" ,python-sphinx)))
@@ -131,8 +132,7 @@ data units.")
("python-icalendar" ,python-icalendar)
("python-tzlocal" ,python-tzlocal)
("python-urwid" ,python-urwid)
- ("python-pyxdg" ,python-pyxdg)
- ("vdirsyncer" ,vdirsyncer)))
+ ("python-pyxdg" ,python-pyxdg)))
(synopsis "Console calendar program")
(description "Khal is a standards based console calendar program,
able to synchronize with CalDAV servers through vdirsyncer.")
diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm
index 29a3e543e5..1f7176ae78 100644
--- a/gnu/packages/embedded.scm
+++ b/gnu/packages/embedded.scm
@@ -509,7 +509,8 @@ with a layered architecture of JTAG interface and TAP support.")
(origin-patches (package-source gcc-4.7))
(search-patches "gcc-4.6-gnu-inline.patch"
"gcc-cross-environment-variables.patch")))))
- (home-page "https://github.com/dbetz/propgcc-gcc"))))
+ (home-page "https://github.com/dbetz/propgcc-gcc")
+ (supported-systems (delete "aarch64-linux" %supported-systems)))))
;; Version 6 is experimental and may not work correctly. This is why we
;; default to version 4, which is also used in the binary toolchain bundle
diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm
index 512dd9b099..b42e631b98 100644
--- a/gnu/packages/enlightenment.scm
+++ b/gnu/packages/enlightenment.scm
@@ -59,7 +59,7 @@
(define-public efl
(package
(name "efl")
- (version "1.19.1")
+ (version "1.20.1")
(source (origin
(method url-fetch)
(uri (string-append
@@ -67,7 +67,7 @@
version ".tar.xz"))
(sha256
(base32
- "0fndwraca9rg0bz3al4isdprvyw56szr88qiyvglb4j8ygsylscc"))))
+ "1d1wmmwgc8pf6lk9g6lflpdxvg85wxxq650d6m30zgr85cb6d27q"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@@ -286,14 +286,17 @@ embedded systems.")
(define-public python-efl
(package
(name "python-efl")
- (version "1.19.0")
+ (version "1.20.0")
(source
(origin
(method url-fetch)
- (uri (pypi-uri "python-efl" version))
+ (uri (list
+ (pypi-uri "python-efl" version)
+ (string-append "http://download.enlightenment.org/rel/bindings/"
+ "python/python-efl-" version ".tar.gz")))
(sha256
(base32
- "0l0f9bv1134qh5376p5asycncidrhp8hdb6qwd8ybr1a61q9zq67"))))
+ "1680pgpf501nhbc9arm0nfj6rpcw17aryh0pgmmmszxlgpifpdzy"))))
(build-system python-build-system)
(arguments
'(#:phases
@@ -312,11 +315,7 @@ embedded systems.")
(lambda _
;; Some tests require write access to HOME.
(setenv "HOME" "/tmp")
- #t)))
- ;; FIXME: Some tests require a running D-Bus server or a network
- ;; connection and should be disabled. Other test failures looks
- ;; legitimate. Disabled for now, needs work!
- #:tests? #f))
+ #t)))))
(native-inputs
`(("pkg-config" ,pkg-config)
("python-cython" ,python-cython)))
diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 51073eff9f..e421b2c6ab 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016 Leo Famulari <leo@famulari.name>
-;;; Copyright © 2016, 2017 ng0 <ng0@no-reply.pragmatique.xyz>
+;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
;;; Copyright © 2016 Jookia <166291@gmail.com>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016 Dmitry Nikolaev <cameltheman@gmail.com>
@@ -1073,3 +1073,33 @@ resolutions.")
(synopsis "Fonts for MathJax")
(description "This package contains the fonts required for MathJax.")
(license license:asl2.0)))
+
+(define-public font-open-dyslexic
+ (package
+ (name "font-open-dyslexic")
+ (version "20160623")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/antijingoist/open-dyslexic/"
+ "archive/" version "-Stable.tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0al0j9kb32kfavcpq1kigsd36yzvf5yhzqhds0jkh7ngbxyxwkx4"))))
+ (build-system font-build-system)
+ (home-page "https://opendyslexic.org")
+ (synopsis "Font for dyslexics and high readability")
+ (description "OpenDyslexic is a font designed to help readability for some
+of the symptoms of dyslexia. Letters have heavy weighted bottoms to provide
+an indication of orientation to make it more difficult to confuse with other
+similar letters. Consistently weighted bottoms can also help reinforce the
+line of text. The unique shapes of each letter can help prevent flipping and
+swapping. The italic style for OpenDyslexic has been crafted to be used for
+emphasis while still being readable.")
+ (license
+ (license:fsdg-compatible
+ "https://www.gnome.org/fonts/#Final_Bitstream_Vera_Fonts"
+ "The Font Software may be sold as part of a larger software package but
+no copy of one or more of the Font Software typefaces may be sold by
+itself."))))
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 7ab9a1aefc..efd8f6d034 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -101,39 +101,17 @@ is used in some video games and movies.")
(define-public deutex
(package
(name "deutex")
- (version "4.4.902")
+ (version "5.0.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/Doom-Utils/" name
- "/archive/v" version ".tar.gz"))
- (file-name (string-append name "-" version ".tar.gz"))
+ "/releases/download/v" version "/"
+ name "-" version ".tar.xz"))
(sha256
(base32
- "0rwz1yzgd539x4h25kzhar4q02xyxjwfrcpz4m8ixi312a82p7cn"))))
+ "1jvffcpq64hk3jysz4q6zi9hqkksy151ci9553h8q7wrrkbw0i9z"))))
(build-system gnu-build-system)
- (arguments
- '(#:tests? #f ; no check target
- #:phases
- (modify-phases %standard-phases
- ;; The provided configure script takes a restricted number of arguments.
- (replace 'configure
- (lambda* (#:key outputs #:allow-other-keys)
- (zero? (system* "./configure" "--prefix"
- (assoc-ref %outputs "out")))))
- ;; "make install" is broken for this package.
- ;; Notably, the binaries overrwrite one another upon installation as
- ;; they are all installed to the "bin" file in the output directory,
- ;; and the manual page fails to install because the directory for the
- ;; manual page is not created.
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin"))
- (share (string-append out "/share")))
- (install-file "deusf" bin)
- (install-file "deutex" bin)
- (install-file "deutex.6" (string-append share "/man/man6")))
- #t)))))
+ (native-inputs `(("asciidoc" ,asciidoc)))
(home-page "https://github.com/Doom-Utils/deutex")
(synopsis "WAD file composer for Doom and related games")
(description
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 3093b77aea..408b3b46d0 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -283,7 +283,7 @@ cows can think too. All you have to do is run @code{cowthink}.")
(define-public freedoom
(package
(name "freedoom")
- (version "0.11.2")
+ (version "0.11.3")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/" name "/" name
@@ -291,7 +291,7 @@ cows can think too. All you have to do is run @code{cowthink}.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
- "0b9k61f97spivi75f76zwwg8a3bgc6iil2hidqfj8s50lhqggwbb"))))
+ "1bjijdfqhpazyifx1qda7scj7dry1azhjrnl8h8zn2vqfgdmlh0q"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags `(,(string-append "prefix=" (assoc-ref %outputs "out")))
@@ -299,7 +299,6 @@ cows can think too. All you have to do is run @code{cowthink}.")
#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
- (add-before 'unpack 'no (lambda _ #t))
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((dejavu (assoc-ref inputs "font-dejavu"))
diff --git a/gnu/packages/gnucash.scm b/gnu/packages/gnucash.scm
index b33cd26a81..ac2dce5768 100644
--- a/gnu/packages/gnucash.scm
+++ b/gnu/packages/gnucash.scm
@@ -42,7 +42,7 @@
(define-public gnucash
(package
(name "gnucash")
- (version "2.6.16")
+ (version "2.6.17")
(source
(origin
(method url-fetch)
@@ -50,7 +50,7 @@
version "/gnucash-" version ".tar.bz2"))
(sha256
(base32
- "1088rssg9xgwi3wdfrhdcga46gby6lrd9a1fvn9zq456lscn4m9c"))
+ "0g2risryfgplxh6cxpsl7fn255vipgsx38b4l081h665nqwmz5nv"))
(patches (search-patches "gnucash-price-quotes-perl.patch"))))
(build-system gnu-build-system)
(inputs
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 01b11c4ffb..5a8201e80e 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -3265,16 +3265,15 @@ from userspace.")
(define-public ntfs-3g
(package
(name "ntfs-3g")
- (version "2016.2.22")
+ (version "2017.3.23")
(source (origin
(method url-fetch)
(uri (string-append "https://tuxera.com/opensource/"
"ntfs-3g_ntfsprogs-" version ".tgz"))
(sha256
(base32
- "180y5y09h30ryf2vim8j30a2npwz1iv9ly5yjmh3wjdkwh2jrdyp"))
+ "1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy"))
(modules '((guix build utils)))
- (patches (search-patches "ntfs-3g-CVE-2017-0358.patch"))
(snippet
;; Install under $prefix.
'(substitute* '("src/Makefile.in" "ntfsprogs/Makefile.in")
@@ -3290,7 +3289,7 @@ from userspace.")
"--enable-mount-helper"
"--enable-posix-acls"
"--enable-xattr-mappings")))
- (home-page "http://www.tuxera.com/community/open-source-ntfs-3g/")
+ (home-page "https://www.tuxera.com/community/open-source-ntfs-3g/")
(synopsis "Read-write access to NTFS file systems")
(description
"NTFS-3G provides read-write access to NTFS file systems, which are
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index 45884c20ff..e29a3864df 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -3212,7 +3212,7 @@ theories} (SMT) solver. It provides a C/C++ API.")
(build-system gnu-build-system)
(native-inputs
`(("ocaml" ,ocaml)
- ("which" ,which)))
+ ("which" ,(@@ (gnu packages base) which))))
(propagated-inputs
`(("z3" ,z3)))
(arguments
diff --git a/gnu/packages/motti.scm b/gnu/packages/motti.scm
new file mode 100644
index 0000000000..59b195802b
--- /dev/null
+++ b/gnu/packages/motti.scm
@@ -0,0 +1,45 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages motti)
+ #:use-module (gnu packages)
+ #:use-module (guix build-system gnu)
+ #:use-module (guix licenses)
+ #:use-module (guix packages)
+ #:use-module (guix download))
+
+(define-public motti
+ (package
+ (name "motti")
+ (version "3.1.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append
+ "mirror://gnu/motti/motti-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0ag4gpxy42l30660b4f2lrp52xi5sik9s6frr7jfxqxjsf29lbb3"))))
+ (build-system gnu-build-system)
+ (synopsis "Multiplayer strategy game")
+ (description
+ "GNU Motti is a simple multiplayer strategy game played in a terminal.
+The objective of the game is to conquer enemy capitals by occupying and
+encircling territory.")
+ (home-page "https://www.gnu.org/software/motti")
+ (license gpl3+)))
diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm
index 37885c9e34..73e767faec 100644
--- a/gnu/packages/mp3.scm
+++ b/gnu/packages/mp3.scm
@@ -290,7 +290,7 @@ This package contains the binary.")
(define-public mpg123
(package
(name "mpg123")
- (version "1.25.2")
+ (version "1.25.4")
(source (origin
(method url-fetch)
(uri (list (string-append "mirror://sourceforge/mpg123/mpg123/"
@@ -300,7 +300,7 @@ This package contains the binary.")
version ".tar.bz2")))
(sha256
(base32
- "0f7fib7qyd9lah3fqcsjlqcni4bip4hw7iglkz3vz4fjibxv052k"))))
+ "1rxknrnl3ji5hi5rbckpzhbl1k5r8i53kcys4xdgg0xbi8765dfd"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--with-default-audio=pulse")))
(native-inputs `(("pkg-config" ,pkg-config)))
diff --git a/gnu/packages/nim.scm b/gnu/packages/nim.scm
index c249e2be93..560f10e4ad 100644
--- a/gnu/packages/nim.scm
+++ b/gnu/packages/nim.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017 José Miguel Sánchez García <jmi2k@openmailbox.org>
+;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -25,15 +26,15 @@
(define-public nim
(package
(name "nim")
- (version "0.16.0")
+ (version "0.17.0")
(source
(origin
(method url-fetch)
- (uri (string-append "http://nim-lang.org/download/"
+ (uri (string-append "https://nim-lang.org/download/"
name "-" version ".tar.xz"))
(sha256
(base32
- "0rsibhkc5n548bn9yyb9ycrdgaph5kq84sfxc9gabjs7pqirh6cy"))))
+ "16vsmk4rqnkg9lc9h9jk62ps0x778cdqg6qrs3k6fv2g73cqvq9n"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No tests.
@@ -46,11 +47,21 @@
(substitute* "install.sh"
(("1/nim") "1"))
#t)))
+ (add-after 'patch-source-shebangs 'patch-more-shebangs
+ (lambda _
+ (substitute* (append '("tests/stdlib/tosprocterminate.nim"
+ "lib/pure/osproc.nim")
+ (find-files "c_code" "stdlib_osproc.c"))
+ (("/bin/sh") (which "sh")))
+ #t))
+ (replace 'build
+ (lambda _
+ (zero? (system* "sh" "build.sh"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(zero? (system* "./install.sh" out))))))))
- (home-page "http://nim-lang.org")
+ (home-page "https://nim-lang.org")
(synopsis "Statically-typed, imperative programming language")
(description "Nim (formerly known as Nimrod) is a statically-typed,
imperative programming language that tries to give the programmer ultimate power
diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm
index 08591d1086..bde1ea8544 100644
--- a/gnu/packages/password-utils.scm
+++ b/gnu/packages/password-utils.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Steve Sprang <scs@stevesprang.com>
-;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015 Aljosha Papsch <misc@rpapsch.de>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Jessica Tallon <tsyesika@tsyesika.se>
@@ -75,6 +75,39 @@
human.")
(license license:gpl2)))
+(define-public keepassxc
+ (package
+ (name "keepassxc")
+ (version "2.2.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/keepassxreboot/" name
+ "/releases/download/" version "/keepassxc-"
+ version "-src.tar.xz"))
+ (sha256
+ (base32
+ "0nby6aq6w8g7c9slzahf7i34sbj8majf8rhmqqww87v6kaypxi3i"))))
+ (build-system cmake-build-system)
+ (inputs
+ `(("libgcrypt" ,libgcrypt)
+ ("libxi" ,libxi)
+ ("libxtst" ,libxtst)
+ ("qtbase" ,qtbase)
+ ("qtx11extras" ,qtx11extras)
+ ("zlib" ,zlib)))
+ (native-inputs
+ `(("qttools" ,qttools)))
+ (home-page "https://www.keepassxc.org")
+ (synopsis "Password manager")
+ (description "KeePassXC is a password manager or safe which helps you to
+manage your passwords in a secure way. You can put all your passwords in one
+database, which is locked with one master key or a key-file which can be stored
+on an external storage device. The databases are encrypted using the
+algorithms AES or Twofish.")
+ ;; Non functional parts use various licences.
+ (license license:gpl3)))
+
(define-public keepassx
(package
(name "keepassx")
@@ -103,7 +136,8 @@ database, which is locked with one master key or a key-file which can be stored
on an external storage device. The databases are encrypted using the
algorithms AES or Twofish.")
;; Non functional parts use various licences.
- (license license:gpl3)))
+ (license license:gpl3)
+ (properties `((superseded . ,keepassxc)))))
(define-public shroud
(package
diff --git a/gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch b/gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch
deleted file mode 100644
index 83c9dbb3d4..0000000000
--- a/gnu/packages/patches/ntfs-3g-CVE-2017-0358.patch
+++ /dev/null
@@ -1,43 +0,0 @@
-Fix CVE-2017-0358:
-http://seclists.org/oss-sec/2017/q1/259
-This patch was copied from the above URL.
-
-diff --git a/src/lowntfs-3g.c b/src/lowntfs-3g.c
-index 0bb38f9..c6d1dad 100644
---- a/src/lowntfs-3g.c
-+++ b/src/lowntfs-3g.c
-@@ -3827,13 +3827,14 @@ static fuse_fstype load_fuse_module(void)
- struct stat st;
- pid_t pid;
- const char *cmd = "/sbin/modprobe";
-+ char *env = (char*)NULL;
- struct timespec req = { 0, 100000000 }; /* 100 msec */
- fuse_fstype fstype;
-
- if (!stat(cmd, &st) && !geteuid()) {
- pid = fork();
- if (!pid) {
-- execl(cmd, cmd, "fuse", NULL);
-+ execle(cmd, cmd, "fuse", NULL, &env);
- _exit(1);
- } else if (pid != -1)
- waitpid(pid, NULL, 0);
-diff -ur ntfs-3g.old/src/ntfs-3g.c ntfs-3g/src/ntfs-3g.c
---- ntfs-3g.old/src/ntfs-3g.c 2017-02-09 15:01:04.074331542 -0500
-+++ ntfs-3g/src/ntfs-3g.c 2017-02-09 15:06:26.077252571 -0500
-@@ -3612,13 +3612,14 @@
- struct stat st;
- pid_t pid;
- const char *cmd = "/sbin/modprobe";
-+ char *env = (char*)NULL;
- struct timespec req = { 0, 100000000 }; /* 100 msec */
- fuse_fstype fstype;
-
- if (!stat(cmd, &st) && !geteuid()) {
- pid = fork();
- if (!pid) {
-- execl(cmd, cmd, "fuse", NULL);
-+ execle(cmd, cmd, "fuse", NULL, &env);
- _exit(1);
- } else if (pid != -1)
- waitpid(pid, NULL, 0);
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index d2b6c6dd59..bc00c021a1 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -9259,13 +9259,13 @@ processes across test runs.")
(define-public python-icalendar
(package
(name "python-icalendar")
- (version "3.11.5")
+ (version "3.11.6")
(source (origin
(method url-fetch)
(uri (pypi-uri "icalendar" version))
(sha256
(base32
- "0y6f2js983ag0d138xx4pzyc71gf44hyqmjsdvw6pq2xrkpj8jzk"))))
+ "1ny9mbm9zgghl612b8wc4ap52bz3kgl486d7f307gxjmlqgz3i64"))))
(build-system python-build-system)
(propagated-inputs
`(("python-dateutil" ,python-dateutil)
@@ -15871,3 +15871,26 @@ thread-local variable.")
(define-public python2-flask-principal
(package-with-python2 python-flask-principal))
+
+(define-public python-flask-httpauth
+ (package
+ (name "python-flask-httpauth")
+ (version "3.2.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "Flask-HTTPAuth" version))
+ (sha256
+ (base32
+ "13gff5w1mqpzm5nccyg02v3ifb9ifqh5k866cssjhghhg6msfjsz"))))
+ (build-system python-build-system)
+ (native-inputs
+ `(("python-flask" ,python-flask)))
+ (home-page "http://github.com/miguelgrinberg/flask-httpauth/")
+ (synopsis "Basic and Digest HTTP authentication for Flask routes")
+ (description "@code{flask_httpauth} provides Basic and Digest HTTP
+authentication for Flask routes.")
+ (license license:expat)))
+
+(define-public python2-flask-httpauth
+ (package-with-python2 python-flask-httpauth))
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 1152cdf0a0..fdb7d48aec 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1121,7 +1121,7 @@ access to mpv's powerful playback capabilities.")
(define-public youtube-dl
(package
(name "youtube-dl")
- (version "2017.07.30.1")
+ (version "2017.08.06")
(source (origin
(method url-fetch)
(uri (string-append "https://yt-dl.org/downloads/"
@@ -1129,7 +1129,7 @@ access to mpv's powerful playback capabilities.")
version ".tar.gz"))
(sha256
(base32
- "1m1n5d06xh8hnild6kssiv9yaq2sm7vy0c8h506v3nff7i9wf0a7"))))
+ "1vdfda2w1ckhqna8xcpphr5l0rp9zhs368lic4f7144rxvbydiwm"))))
(build-system python-build-system)
(arguments
;; The problem here is that the directory for the man page and completion
@@ -1615,7 +1615,8 @@ manipulation. It aims to be a modern rewrite of Avisynth, supporting
multithreading, generalized colorspaces, per frame properties, and videos with
format changes.")
;; src/core/cpufeatures only allows x86, ARM or PPC
- (supported-systems (delete "mips64el-linux" %supported-systems))
+ (supported-systems (fold delete %supported-systems
+ '("mips64el-linux" "aarch64-linux")))
;; As seen from the source files.
(license license:lgpl2.1+)))
diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc
index 693fa70c8d..63540ddfc1 100644
--- a/nix/libstore/build.cc
+++ b/nix/libstore/build.cc
@@ -26,6 +26,7 @@
#include <errno.h>
#include <stdio.h>
#include <cstring>
+#include <stdint.h>
#include <pwd.h>
#include <grp.h>
@@ -2008,11 +2009,11 @@ void DerivationGoal::startBuilder()
char stack[32 * 1024];
int flags = CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWIPC | CLONE_NEWUTS | SIGCHLD;
if (!fixedOutput) flags |= CLONE_NEWNET;
-#ifdef __aarch64__
- pid = clone(childEntry, stack + sizeof(stack) - 16, flags, this);
-#else
- pid = clone(childEntry, stack + sizeof(stack) - 8, flags, this);
-#endif
+ /* Ensure proper alignment on the stack. On aarch64, it has to be 16
+ bytes. */
+ pid = clone(childEntry,
+ (char *)(((uintptr_t)stack + sizeof(stack) - 8) & ~(uintptr_t)0xf),
+ flags, this);
if (pid == -1)
throw SysError("cloning builder process");
} else