Merge branch 'master' into core-updates

This commit is contained in:
Marius Bakke 2019-07-19 01:15:59 +02:00
commit 2ee70a5b11
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
18 changed files with 461 additions and 136 deletions

View File

@ -21349,7 +21349,7 @@ from garbage collection for at least @var{ttl} seconds.
@item @code{port} (default: @code{8081}) @item @code{port} (default: @code{8081})
Port number used by the HTTP server. Port number used by the HTTP server.
@item --listen=@var{host} @item @code{host} (default: @code{"localhost"})
Listen on the network interface for @var{host}. The default is to Listen on the network interface for @var{host}. The default is to
accept connections from localhost. accept connections from localhost.
@ -26407,11 +26407,6 @@ gnu/packages/image.scm:312:2: openjpeg@@2.1.0: probably vulnerable to CVE-2016-1
@xref{Invoking guix lint}, for more information. @xref{Invoking guix lint}, for more information.
@quotation Note
As of version @value{VERSION}, the feature described below is considered
``beta''.
@end quotation
Guix follows a functional Guix follows a functional
package management discipline (@pxref{Introduction}), which implies package management discipline (@pxref{Introduction}), which implies
that, when a package is changed, @emph{every package that depends on it} that, when a package is changed, @emph{every package that depends on it}

View File

@ -243,6 +243,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/hugs.scm \ %D%/packages/hugs.scm \
%D%/packages/hurd.scm \ %D%/packages/hurd.scm \
%D%/packages/hyperledger.scm \ %D%/packages/hyperledger.scm \
%D%/packages/i2p.scm \
%D%/packages/ibus.scm \ %D%/packages/ibus.scm \
%D%/packages/icu4c.scm \ %D%/packages/icu4c.scm \
%D%/packages/idris.scm \ %D%/packages/idris.scm \
@ -886,7 +887,6 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-supported-locales.patch \ %D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/glibc-2.27-supported-locales.patch \ %D%/packages/patches/glibc-2.27-supported-locales.patch \
%D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \ %D%/packages/patches/glusterfs-use-PATH-instead-of-hardcodes.patch \
%D%/packages/patches/glog-gcc-5-demangling.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \ %D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnome-control-center-udisks.patch \ %D%/packages/patches/gnome-control-center-udisks.patch \

View File

@ -49,7 +49,7 @@
;;; Commentary: ;;; Commentary:
;;; ;;;
;;; This module implements remote evaluation and system deployment for ;;; This module implements remote evaluation and system deployment for
;;; machines that are accessable over SSH and have a known host-name. In the ;;; machines that are accessible over SSH and have a known host-name. In the
;;; sense of the broader "machine" interface, we describe the environment for ;;; sense of the broader "machine" interface, we describe the environment for
;;; such machines as 'managed-host. ;;; such machines as 'managed-host.
;;; ;;;
@ -351,7 +351,7 @@ environment type of 'managed-host."
(machine-remote-eval managed-host-remote-eval) (machine-remote-eval managed-host-remote-eval)
(deploy-machine deploy-managed-host) (deploy-machine deploy-managed-host)
(name 'managed-host-environment-type) (name 'managed-host-environment-type)
(description "Provisioning for machines that are accessable over SSH (description "Provisioning for machines that are accessible over SSH
and have a known host-name. This entails little more than maintaining an SSH and have a known host-name. This entails little more than maintaining an SSH
connection to the host."))) connection to the host.")))

View File

@ -254,3 +254,38 @@ accurately in real time at any rate desired.")
(arguments (arguments
`(#:configure-flags '("-DENABLE_GTK=ON" "-DENABLE_QT=OFF") `(#:configure-flags '("-DENABLE_GTK=ON" "-DENABLE_QT=OFF")
#:tests? #f)))) #:tests? #f))))
(define-public libnova
(package
(name "libnova")
(version "0.16")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.code.sf.net/p/libnova/libnova.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0icwylwkixihzni0kgl0j8dx3qhqvym6zv2hkw2dy6v9zvysrb1b"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-git-version
(lambda _
(substitute* "./git-version-gen"
(("/bin/sh") (which "sh")))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(synopsis "Celestial mechanics, astrometry and astrodynamics library")
(description "Libnova is a general purpose, double precision, Celestial
Mechanics, Astrometry and Astrodynamics library.")
(home-page "http://libnova.sourceforge.net/")
(license (list license:lgpl2.0+
license:gpl2+)))) ; examples/transforms.c & lntest/*.c

View File

@ -36,6 +36,7 @@
#:use-module (gnu packages cups) #:use-module (gnu packages cups)
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages ghostscript) #:use-module (gnu packages ghostscript)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
@ -68,7 +69,8 @@
#:use-module (gnu packages xiph) #:use-module (gnu packages xiph)
#:use-module (gnu packages xml) #:use-module (gnu packages xml)
#:use-module (gnu packages xdisorg) #:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)) #:use-module (gnu packages xorg)
#:use-module (srfi srfi-1))
(define %preserved-third-party-files (define %preserved-third-party-files
'("base/third_party/dmg_fp" ;X11-style '("base/third_party/dmg_fp" ;X11-style
@ -191,6 +193,8 @@
"third_party/ungoogled" ;BSD-3 "third_party/ungoogled" ;BSD-3
"third_party/usb_ids" ;BSD-3 "third_party/usb_ids" ;BSD-3
"third_party/usrsctp" ;BSD-2 "third_party/usrsctp" ;BSD-2
"third_party/wayland/wayland_scanner_wrapper.py" ;BSD-3
"third_party/wayland-protocols" ;Expat
"third_party/web-animations-js" ;ASL2.0 "third_party/web-animations-js" ;ASL2.0
"third_party/webdriver" ;ASL2.0 "third_party/webdriver" ;ASL2.0
"third_party/webrtc" ;BSD-3 "third_party/webrtc" ;BSD-3
@ -777,3 +781,30 @@ disabled in order to protect the users privacy.")
(license:non-copyleft "chrome://credits" (license:non-copyleft "chrome://credits"
"See chrome://credits for more information.") "See chrome://credits for more information.")
license:lgpl2.1+)))) license:lgpl2.1+))))
(define-public ungoogled-chromium/wayland
(package/inherit ungoogled-chromium
(name "ungoogled-chromium-wayland")
(inputs
`(("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)
;; Remove inputs only needed for X11.
,@(fold alist-delete (package-inputs ungoogled-chromium)
'("libx11" "libxcb" "libxcomposite" "libxcursor"
"libxdamage" "libxext" "libxfixes" "libxi"
"libxrender" "libxtst" "libxext" "libxrandr"
"libxscrnsaver"))))
(arguments
(substitute-keyword-arguments (package-arguments ungoogled-chromium)
((#:configure-flags flags)
`(append (list "use_ozone=true"
"ozone_platform_wayland=true"
"ozone_auto_platforms=false"
"use_xkbcommon=true"
"use_system_minigbm=true"
"use_system_libwayland=true"
(string-append "system_wayland_scanner_path=\""
(assoc-ref %build-inputs "wayland")
"/bin/wayland-scanner\""))
(delete "use_vaapi=true" ,flags)))))))

View File

@ -95,7 +95,7 @@ program to exhibit a bug.")
(define-public c-reduce (define-public c-reduce
(package (package
(name "c-reduce") (name "c-reduce")
(version "2.8.0") (version "2.10.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -103,13 +103,12 @@ program to exhibit a bug.")
(string-append "http://embed.cs.utah.edu/creduce/" (string-append "http://embed.cs.utah.edu/creduce/"
"creduce-" version ".tar.gz"))) "creduce-" version ".tar.gz")))
(sha256 (sha256
(base32 (base32 "0qx0zq8jxzx2as2zf0740g7kvgq163ayn3041di4vwk77490y76v"))))
"1vqx73ymfscvlyig03972a5m7ar3gx2yv6m8c6h2mibz792j5xkp"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("astyle" ,astyle) `(("astyle" ,astyle)
("llvm" ,llvm-6) ("llvm" ,llvm)
("clang" ,clang-6) ("clang" ,clang)
("flex" ,flex) ("flex" ,flex)
("indent" ,indent) ("indent" ,indent)
("perl" ,perl) ("perl" ,perl)

View File

@ -108,7 +108,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
(define-public isc-bind (define-public isc-bind
(package (package
(name "bind") (name "bind")
(version "9.14.3") (version "9.14.4")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -116,7 +116,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
"/bind-" version ".tar.gz")) "/bind-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1ymxr38c62w6961j8g2vllnv0s72z7zk4b2j2k8ixdh1rymqm1yf")))) "0gxqws7ml15lwkjw9mdcd759gv5kk3s9m17j3vrp9448ls1gnbii"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs `("out" "utils")) (outputs `("out" "utils"))
(inputs (inputs

View File

@ -6579,14 +6579,14 @@ programming and reproducible research.")
(package (package
(inherit emacs-org) (inherit emacs-org)
(name "emacs-org-contrib") (name "emacs-org-contrib")
(version "20190402") (version "20190715")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://orgmode.org/elpa/org-plus-contrib-" (uri (string-append "https://orgmode.org/elpa/org-plus-contrib-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 (base32
"0hbrhhq6sa0gz4ylzr54raxandqs4y953894b0hlr553b8sfl1wk")))) "0yxxkcaxhp5bmjsfdd9pz79rj9s7nb4gj5ci51sh4pf8mimk9542"))))
(arguments (arguments
`(#:modules ((guix build emacs-build-system) `(#:modules ((guix build emacs-build-system)
(guix build utils) (guix build utils)
@ -13689,6 +13689,138 @@ server with @code{M-x pinentry-start}.")
viewing files with long lines.") viewing files with long lines.")
(license license:gpl3+)))) (license license:gpl3+))))
(define-public emacs-github-review
(let ((commit "9c3ffe30fba5d02e9951e76d1a5be2ed046663da")
(version "0.1")
(revision "1"))
(package
(name "emacs-github-review")
(version (git-version version revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/charignon/github-review")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"078rv6f2p3wrznhgvmkhd071bwy72007f5l2m2a0r1k2i3vbfaja"))))
(build-system emacs-build-system)
(inputs
`(("emacs-dash" ,emacs-dash)
("emacs-s" ,emacs-s)
("emacs-ghub" ,emacs-ghub)))
(home-page "https://github.com/charignon/github-review")
(synopsis "Review GitHub pull requests within Emacs")
(description "This package provides commands to pull in, comment on, and
accept and reject GitHub pull requests.")
(license license:gpl3+))))
(define-public emacs-deadgrep
(let ((commit "caeb37b8d6ab83f0eba353d6bbb29678190d4419")
(version "0.7")
(revision "1"))
(package
(name "emacs-deadgrep")
(version (git-version version revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Wilfred/deadgrep")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"158fqha8nilwfzmw15lcsq8b099j8wclzq303md0j4mfr2q2gfvs"))))
(build-system emacs-build-system)
(inputs
`(("emacs-dash" ,emacs-dash)
("emacs-s" ,emacs-s)
("emacs-spinner" ,emacs-spinner)))
(home-page "https://github.com/Wilfred/deadgrep")
(synopsis "Frontend for @code{ripgrep}")
(description "This package provides an Emacs interface for performing
searches with @code{ripgrep}.")
(license license:gpl3+))))
(define-public emacs-focus
(let ((commit "ab42b8779929beeb7878c7fb3d3ccd80d9327c7f")
(version "0.1.1")
(revision "1"))
(package
(name "emacs-focus")
(version (git-version version revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/larstvei/Focus")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"079v1syid7h2vr2ya6hs6hl0pgj60qdsw60mqw4cj2zllmkrkwj4"))))
(build-system emacs-build-system)
(home-page "https://github.com/larstvei/Focus")
(synopsis "Minor mode for focusing in on relevant text")
(description "This package provides a minor mode that dims the color of
text in neighboring sections.")
(license license:gpl3+))))
(define-public emacs-pandoc-mode
(package
(name "emacs-pandoc-mode")
(version "2.27.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/joostkremers/pandoc-mode")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"04bqc7mhgkfks3nsvimd3rrriv4nqbksmv5ahlbbd03aqa2b0vrv"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
("emacs-hydra" ,emacs-hydra)))
(home-page "https://github.com/joostkremers/pandoc-mode")
(synopsis "Minor mode for interacting with Pandoc")
(description "This package provides a Hydra menu for interacting with the
Pandoc, the document-conversion tool.")
(license license:bsd-3)))
(define-public emacs-ccls
(let ((commit "2764ddd57b03646f0327ea680a954b4a67450aef")
(version "0.1")
(revision "1"))
(package
(name "emacs-ccls")
(version (git-version version revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/MaskRay/emacs-ccls")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"16427jvzhjy8kpvlgl3qzkzppv98124hkgi8q8pv1h7m46k9lhh3"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-dash" ,emacs-dash)
("emacs-projectile" ,emacs-projectile)
("emacs-lsp-mode" ,emacs-lsp-mode)))
(home-page "https://github.com/MaskRay/emacs-ccls")
(synopsis "Emacs support for the @code{ccls} language server")
(description "This package extends @code{lsp-mode} to work with @code{C}
and @code{C++} files through the @code{ccls} language server.")
(license license:bsd-3))))
(define-public emacs-org-brain (define-public emacs-org-brain
(package (package
(name "emacs-org-brain") (name "emacs-org-brain")

View File

@ -3263,24 +3263,33 @@ tactics.")
(define-public starfighter (define-public starfighter
(package (package
(name "starfighter") (name "starfighter")
(version "1.7") (version "2.0.0.2")
;; As recommended by the upstream maintainer, use the git source code
;; instead of the released source tarball until missing files in the tarball
;; are added. The 'url-fetch' method may be appropriate again after the
;; next update. See https://github.com/pr-starfighter/starfighter/issues/1
;; for more details.
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append (uri (git-reference
"mirror://savannah/starfighter/" (url "https://github.com/pr-starfighter/starfighter")
(version-major+minor version) "/" (commit (string-append "v" version))))
"starfighter-" version "-src.tar.gz")) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1646hpjq8bz2fkfkja1dah511hn7zd2r7da4w9c9blhad3p5732v")))) "0p81ywgm2dxjbpmbsgx4f2d83sy6lv3hinrr1vzprkf9viidqnd2"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(inputs (inputs
`(("sdl2" ,sdl2) `(("pango" ,pango)
("sdl2" ,sdl2)
("sdl2-image" ,sdl2-image) ("sdl2-image" ,sdl2-image)
("sdl2-mixer" ,sdl2-mixer))) ("sdl2-mixer" ,sdl2-mixer)
(home-page "http://starfighter.nongnu.org/") ("sdl2-ttf" ,sdl2-ttf)))
(home-page "https://pr-starfighter.github.io/")
(synopsis "2D scrolling shooter game") (synopsis "2D scrolling shooter game")
(description (description
"In the year 2579, the intergalactic weapons corporation, WEAPCO, has "In the year 2579, the intergalactic weapons corporation, WEAPCO, has

View File

@ -8,6 +8,7 @@
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2018 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net> ;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -38,6 +39,7 @@
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (gnu packages astronomy)
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages boost) #:use-module (gnu packages boost)
#:use-module (gnu packages check) #:use-module (gnu packages check)
@ -45,6 +47,7 @@
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages datastructures) #:use-module (gnu packages datastructures)
#:use-module (gnu packages documentation) #:use-module (gnu packages documentation)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils) #:use-module (gnu packages fontutils)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
@ -58,6 +61,7 @@
#:use-module (gnu packages protobuf) #:use-module (gnu packages protobuf)
#:use-module (gnu packages python) #:use-module (gnu packages python)
#:use-module (gnu packages python-xyz) #:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages sqlite) #:use-module (gnu packages sqlite)
#:use-module (gnu packages web) #:use-module (gnu packages web)
#:use-module (gnu packages webkit) #:use-module (gnu packages webkit)
@ -905,3 +909,67 @@ given GPS coordinates,draws a GPS track, and points of interest on a moving
map display. Downloads map data from a number of websites, including map display. Downloads map data from a number of websites, including
@url{https://www.openstreetmap.org}.") @url{https://www.openstreetmap.org}.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public xygrib
(package
(name "xygrib")
(version "1.2.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/opengribs/XyGrib.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0qzaaavil2c7mkkai5mg54cv8r452i7psy7cg75qjja96d2d7rbd"))
(modules '((guix build utils)))
(snippet
'(begin (delete-file-recursively "data/fonts") #t))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-directories
(lambda* (#:key inputs #:allow-other-keys)
(let ((jpeg (assoc-ref inputs "openjpeg"))
(font (assoc-ref inputs "font-liberation")))
(substitute* "CMakeLists.txt"
;; Find libjpeg.
(("/usr") jpeg)
;; Fix install locations.
(("set\\(PREFIX_BIN.*") "set(PREFIX_BIN \"bin\")\n")
(("set\\(PREFIX_PKGDATA.*") "set(PREFIX_PKGDATA \"share/${PROJECT_NAME}\")\n")
;; Skip looking for the static library.
(("\"libnova.a\"") ""))
;; Don't use the bundled font-liberation.
(substitute* "src/util/Font.cpp"
(("Util::pathFonts\\(\\)\\+\"liberation-fonts/\"")
(string-append "\"" font "/share/fonts/truetype/\"")))
(substitute* "src/util/Util.h"
(("pathData\\(\\)\\+\"data/fonts/\"")
(string-append "\"" font "/share/fonts/\""))))
#t)))
#:tests? #f)) ; no tests
(native-inputs
`(("qttools" ,qttools)))
(inputs
`(("bzip2" ,bzip2)
("font-liberation" ,font-liberation)
("libnova" ,libnova)
("libpng" ,libpng)
("openjpeg" ,openjpeg)
("proj.4" ,proj.4)
("qtbase" ,qtbase)
("zlib" ,zlib)))
(synopsis "Weather Forecast Visualization")
(description
"XyGrib is a Grib file reader and visualizes meteorological data providing
an off-line capability to analyse weather forecasts or hindcasts. It is
intended to be used as a capable weather work station for anyone with a serious
interest in examining weather. This would include members of the sailing
community, private and sport aviators, farmers, weather buffs and many more.
XyGrib is the continuation of the zyGrib software package with a new team of
volunteers.")
(home-page "https://opengribs.org")
(license license:gpl3+)))

View File

@ -209,14 +209,13 @@ specifications are building blocks of S/MIME and TLS.")
(define-public npth (define-public npth
(package (package
(name "npth") (name "npth")
(version "1.5") (version "1.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://gnupg/npth/npth-" version ".tar.bz2")) (uri (string-append "mirror://gnupg/npth/npth-" version ".tar.bz2"))
(sha256 (sha256
(base32 (base32 "1lg2lkdd3z1s3rpyf88786l243adrzyk9p4q8z9n41ygmpcsp4qk"))))
"1hmkkp6vzyrh8v01c2ynzf9vwikyagp7p1lxhbnr4ysk3w66jji9"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "https://www.gnupg.org") (home-page "https://www.gnupg.org")
(synopsis "Non-preemptive thread library") (synopsis "Non-preemptive thread library")

105
gnu/packages/i2p.scm Normal file
View File

@ -0,0 +1,105 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages i2p)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages tls)
#:use-module (gnu packages upnp)
#:use-module (gnu packages web)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module ((guix licenses) #:prefix license:))
(define-public i2pd
(package
(name "i2pd")
(version "2.27.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/PurpleI2P/i2pd.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "00y0y57z84gakwa88zzm0g3ixgc6y7zm35rjiysiajzvmdq5w1wf"))))
(build-system cmake-build-system)
(inputs `(("boost" ,boost)
("miniupnpc" ,miniupnpc)
("openssl" ,openssl)
("websocketpp" ,websocketpp)
("zlib" ,zlib)))
(arguments '(#:configure-flags
(let ((source (assoc-ref %build-inputs "source")))
(list (string-append "-S" source "/build")
"-DWITH_PCH=OFF"
"-DWITH_STATIC=OFF"
"-DWITH_UPNP=ON"
"-DWITH_WEBSOCKETS=ON"
"-DWITH_LIBRARY=ON"
"-DBUILD_SHARED_LIBS=ON"
"-DWITH_BINARY=ON"))
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key
(make-flags '())
(parallel-tests? #t)
#:allow-other-keys)
(let ((source (assoc-ref %build-inputs "source")))
(copy-recursively (string-append source "/tests")
"./tests")
(with-directory-excursion "tests"
(substitute* "Makefile"
(("../libi2pd/") (string-append source "/libi2pd/")))
(apply invoke "make" "all"
`(,@(if parallel-tests?
`("-j" ,(number->string
(parallel-job-count)))
'())
,@make-flags))))))
(add-after 'install 'install-headers
(lambda* (#:key outputs #:allow-other-keys)
(let* ((install-dir (assoc-ref outputs "out"))
(src-dir (string-append install-dir "/src"))
(include-dir
(string-append install-dir "/include")))
(mkdir-p include-dir)
;; This is the only header file that's relevant to the
;; public interface.
;; <https://github.com/PurpleI2P/i2pd/issues/1378>
(install-file (string-append src-dir "/api.h")
include-dir)
#t)))
(add-after 'install-headers 'remove-source
(lambda* (#:key outputs #:allow-other-keys)
(let* ((install-dir (assoc-ref outputs "out"))
(src-dir (string-append install-dir "/src")))
(delete-file-recursively src-dir)
(delete-file (string-append install-dir
"/LICENSE"))
#t))))))
(home-page "https://i2pd.website/")
(synopsis "Router for an end-to-end encrypted and anonymous internet")
(description "i2pd is a client for the anonymous I2P network, upon which
applications for file sharing, web browsing, instant messaging, and more are
built. i2pd allows people from all around the world to communicate and share
information securely without restrictions.")
(license license:bsd-3)))

View File

@ -64,40 +64,22 @@ staying as close to their API as is reasonable.")
(define-public glog (define-public glog
(package (package
(name "glog") (name "glog")
(version "0.3.5") (version "0.4.0")
(home-page "https://github.com/google/glog") (home-page "https://github.com/google/glog")
(source (origin (source (origin
(method url-fetch) (method git-fetch)
(uri (string-append home-page "/archive/v" version ".tar.gz")) (uri (git-reference (url home-page)
(commit (string-append "v" version))))
(sha256 (sha256
(base32 (base32
"1q6ihk2asbx95a56kmyqwysq1x3grrw9jwqllafaidf0l84f903m")) "1xd3maiipfbxmhc9rrblc5x52nxvkwxp14npg31y5njqvkvzax9b"))
(file-name (string-append name "-" version ".tar.gz")) (file-name (git-file-name name version))))
(patches (search-patches "glog-gcc-5-demangling.patch"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("perl" ,perl) ;for tests `(("perl" ,perl) ;for tests
("autoconf" ,autoconf-wrapper) ("autoconf" ,autoconf-wrapper)
("automake" ,automake) ("automake" ,automake)
("libtool" ,libtool))) ("libtool" ,libtool)))
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'add-automake-files
(lambda _
;; The 'test-driver' file is a dangling symlink to
;; /usr/share/automake; replace it. We can't just run
;; 'automake -ac' because it complains about version
;; mismatch, so run the whole thing.
(delete-file "test-driver")
(delete-file "configure") ;it's read-only
(invoke "autoreconf" "-vfi")))
(add-before 'check 'disable-signal-tests
(lambda _
;; See e.g. https://github.com/google/glog/issues/219
;; and https://github.com/google/glog/issues/256
(substitute* "Makefile"
(("\tsignalhandler_unittest_sh") "\t$(EMPTY)"))
#t)))))
(synopsis "C++ logging library") (synopsis "C++ logging library")
(description (description
"Google glog is a library that implements application-level logging. "Google glog is a library that implements application-level logging.

View File

@ -1,64 +0,0 @@
Fix symbol demangling for GCC 5, as reported at:
https://github.com/google/glog/issues/14
Patch from:
https://github.com/google/glog/pull/50
From b1639e3014996fbc7635870e013559c54e7e3b2f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?David=20Mart=C3=ADnez=20Moreno?= <ender@debian.org>
Date: Thu, 13 Aug 2015 09:31:26 -0700
Subject: [PATCH] Fix ABI demangling for the GCC 5.x case.
When glog is compiled with gcc-5.2 in cxx11 ABI mode, it barfs about unmangled symbols. This patches it getting inspiration from binutils and demangle.cc itself, although it may be totally wrong or maybe have to use ParseAbiTag in more places. I haven't read the spec for the symbols, though.
This patch makes the demangle unit test pass correctly.
---
src/demangle.cc | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/src/demangle.cc b/src/demangle.cc
index e858181..0f0c831 100644
--- a/src/demangle.cc
+++ b/src/demangle.cc
@@ -439,6 +439,7 @@ static bool ParseExprPrimary(State *state);
static bool ParseLocalName(State *state);
static bool ParseDiscriminator(State *state);
static bool ParseSubstitution(State *state);
+static bool ParseAbiTag(State *state);
// Implementation note: the following code is a straightforward
// translation of the Itanium C++ ABI defined in BNF with a couple of
@@ -567,6 +568,8 @@ static bool ParseNestedName(State *state) {
static bool ParsePrefix(State *state) {
bool has_something = false;
while (true) {
+ if (ParseAbiTag(state))
+ continue;
MaybeAppendSeparator(state);
if (ParseTemplateParam(state) ||
ParseSubstitution(state) ||
@@ -585,6 +588,22 @@ static bool ParsePrefix(State *state) {
return true;
}
+// <abi-tag> ::= B <source-name>
+static bool ParseAbiTag(State *state) {
+ State copy = *state;
+
+ Append(state, "[", 1);
+ if (ParseOneCharToken(state, 'B') &&
+ ParseSourceName(state))
+ {
+ Append(state, "]", 1);
+ return true;
+ }
+
+ *state = copy;
+ return false;
+}
+
// <unqualified-name> ::= <operator-name>
// ::= <ctor-dtor-name>
// ::= <source-name>

View File

@ -4904,7 +4904,7 @@ them as the version argument or in a SCM managed file.")
`(("python-scandir" ,python-scandir) `(("python-scandir" ,python-scandir)
("python-six" ,python-six))) ("python-six" ,python-six)))
(home-page "https://pypi.python.org/pypi/pathlib2/") (home-page "https://pypi.python.org/pypi/pathlib2/")
(synopsis "Object-oriented filesystem paths") (synopsis "Object-oriented file system paths")
(description "The goal of pathlib2 is to provide a backport of the (description "The goal of pathlib2 is to provide a backport of the
standard @code{pathlib} module which tracks the standard library module, so standard @code{pathlib} module which tracks the standard library module, so
all the newest features of the standard @code{pathlib} can be used also on all the newest features of the standard @code{pathlib} can be used also on

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu> ;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -309,7 +309,7 @@ ideal (e.g. in LV2 implementations or embedded applications).")
"13fshxwpipjrvsah1m2jw1kf022z2q5vpw24bzcznglgvms13x89")))) "13fshxwpipjrvsah1m2jw1kf022z2q5vpw24bzcznglgvms13x89"))))
(build-system waf-build-system) (build-system waf-build-system)
(arguments (arguments
`(#:tests? #f ; no check target `(#:tests? #f ; no check target
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-before (add-before
@ -319,10 +319,10 @@ ideal (e.g. in LV2 implementations or embedded applications).")
(string-append "-Wl,-rpath=" (string-append "-Wl,-rpath="
(assoc-ref outputs "out") "/lib")) (assoc-ref outputs "out") "/lib"))
#t))))) #t)))))
(inputs
`(("serd" ,serd)))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config))) `(("pkg-config" ,pkg-config)))
(propagated-inputs
`(("serd" ,serd))) ; required by sord-0.pc
(home-page "https://drobilla.net/software/sord/") (home-page "https://drobilla.net/software/sord/")
(synopsis "C library for storing RDF data in memory") (synopsis "C library for storing RDF data in memory")
(description (description

View File

@ -34,6 +34,7 @@
;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot> ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2019 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2019 Jakob L. Kreuze <zerodaysfordays@sdf.lonestar.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -71,6 +72,7 @@
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (gnu packages adns) #:use-module (gnu packages adns)
#:use-module (gnu packages apr) #:use-module (gnu packages apr)
#:use-module (gnu packages boost)
#:use-module (gnu packages check) #:use-module (gnu packages check)
#:use-module (gnu packages documentation) #:use-module (gnu packages documentation)
#:use-module (gnu packages docbook) #:use-module (gnu packages docbook)
@ -855,6 +857,39 @@ for efficient socket-like bidirectional reliable communication channels.")
;; This is LGPLv2.1-only with extra exceptions specified in 'LICENSE'. ;; This is LGPLv2.1-only with extra exceptions specified in 'LICENSE'.
(license license:lgpl2.1))) (license license:lgpl2.1)))
(define-public websocketpp
(package
(name "websocketpp")
(version "0.8.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zaphoyd/websocketpp.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "12ffczcrryh74c1xssww35ic6yiy2l2xgdd30lshiq9wnzl2brgy"))))
(build-system cmake-build-system)
(inputs `(("boost" ,boost)
("openssl" ,openssl)))
(arguments '(#:configure-flags '("-DBUILD_TESTS=ON")
#:phases
(modify-phases %standard-phases
(add-after 'install 'remove-tests
(lambda* (#:key outputs #:allow-other-keys)
(let* ((install-dir (assoc-ref outputs "out"))
(bin-dir (string-append install-dir "/bin")))
(delete-file-recursively bin-dir)
#t))))))
(home-page "https://www.zaphoyd.com/websocketpp/")
(synopsis "C++ library implementing the WebSocket protocol")
(description "WebSocket++ is a C++ library that can be used to implement
WebSocket functionality. The goals of the project are to provide a WebSocket
implementation that is simple, portable, flexible, lightweight, low level, and
high performance.")
(license license:bsd-3)))
(define-public libpsl (define-public libpsl
(package (package
(name "libpsl") (name "libpsl")

View File

@ -52,6 +52,7 @@
#:use-module (srfi srfi-37) #:use-module (srfi srfi-37)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:use-module (ice-9 vlist) #:use-module (ice-9 vlist)
#:use-module (ice-9 format)
#:export (display-profile-content #:export (display-profile-content
guix-pull)) guix-pull))
@ -162,16 +163,11 @@ Download and deploy the latest version of Guix.\n"))
%standard-build-options)) %standard-build-options))
(define what-to-build
(store-lift show-what-to-build))
(define indirect-root-added
(store-lift add-indirect-root))
(define* (display-profile-news profile #:key concise? (define* (display-profile-news profile #:key concise?
current-is-newer?) current-is-newer?)
"Display what's up in PROFILE--new packages, and all that. If "Display what's up in PROFILE--new packages, and all that. If
CURRENT-IS-NEWER? is true, assume that the current process represents the CURRENT-IS-NEWER? is true, assume that the current process represents the
newest generation of PROFILE.x" newest generation of PROFILE."
(match (memv (generation-number profile) (match (memv (generation-number profile)
(reverse (profile-generations profile))) (reverse (profile-generations profile)))
((current previous _ ...) ((current previous _ ...)
@ -197,7 +193,7 @@ newest generation of PROFILE.x"
(_ #t))) (_ #t)))
(define* (build-and-install instances profile (define* (build-and-install instances profile
#:key verbose? dry-run?) #:key use-substitutes? verbose? dry-run?)
"Build the tool from SOURCE, and install it in PROFILE. When DRY-RUN? is "Build the tool from SOURCE, and install it in PROFILE. When DRY-RUN? is
true, display what would be built without actually building it." true, display what would be built without actually building it."
(define update-profile (define update-profile
@ -210,6 +206,7 @@ true, display what would be built without actually building it."
(mlet %store-monad ((manifest (channel-instances->manifest instances))) (mlet %store-monad ((manifest (channel-instances->manifest instances)))
(mbegin %store-monad (mbegin %store-monad
(update-profile profile manifest (update-profile profile manifest
#:use-substitutes? use-substitutes?
#:hooks %channel-profile-hooks #:hooks %channel-profile-hooks
#:dry-run? dry-run?) #:dry-run? dry-run?)
(munless dry-run? (munless dry-run?
@ -604,6 +601,8 @@ Use '~/.config/guix/channels.scm' instead."))
(build-and-install instances profile (build-and-install instances profile
#:dry-run? #:dry-run?
(assoc-ref opts 'dry-run?) (assoc-ref opts 'dry-run?)
#:use-substitutes?
(assoc-ref opts 'substitutes?)
#:verbose? #:verbose?
(assoc-ref opts 'verbose?)))))))))))))) (assoc-ref opts 'verbose?))))))))))))))