From 711670c04faec02f1c4cccf78a66c90bc7cdfa6e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 24 Aug 2016 22:59:16 +0200 Subject: gnu: gtk+-2: Add patch to support GUIX_GTK2_IM_MODULE_FILE. * gnu/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch: New file. * gnu/packages/gtk.scm (gtk+-2)[source]: Add it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/gtk.scm | 1 + .../patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch | 15 +++++++++++++++ 3 files changed, 17 insertions(+) create mode 100644 gnu/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch diff --git a/gnu/local.mk b/gnu/local.mk index 98c8848135..a67b00ccdf 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -550,6 +550,7 @@ dist_patch_DATA = \ %D%/packages/patches/guile-relocatable.patch \ %D%/packages/patches/guile-rsvg-pkgconfig.patch \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \ + %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \ %D%/packages/patches/gtk2-theme-paths.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 8feac11d98..e1d9cf9d6d 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -563,6 +563,7 @@ is part of the GNOME accessibility project.") (base32 "0l6aqk86aw5w132ygy6hv6nlxvd1h6xg7c85qbm60p6mnv1ww58d")) (patches (search-patches "gtk2-respect-GUIX_GTK2_PATH.patch" + "gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch" "gtk2-theme-paths.patch")))) (build-system gnu-build-system) (outputs '("out" "doc")) diff --git a/gnu/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch b/gnu/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch new file mode 100644 index 0000000000..f399024f1d --- /dev/null +++ b/gnu/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch @@ -0,0 +1,15 @@ +This patch replaces the environment variable "GTK_IM_MODULE" with +"GUIX_GTK2_IM_MODULE_FILE" to prevent this version of GTK+ from loading input +method modules for other major versions of GTK+. + +--- gtk+-2.24.30/gtk/gtkrc.c 2016-08-21 22:40:22.339660438 +0200 ++++ gtk+-2.24.30/gtk/gtkrc.c 2016-08-23 10:11:11.080822710 +0200 +@@ -439,7 +439,7 @@ + gchar * + gtk_rc_get_im_module_file (void) + { +- const gchar *var = g_getenv ("GTK_IM_MODULE_FILE"); ++ const gchar *var = g_getenv ("GUIX_GTK2_IM_MODULE_FILE"); + gchar *result = NULL; + + if (var) -- cgit v1.2.3 From 234e7980b54ef37e9a24440ec7219c81d6288a71 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 24 Aug 2016 23:01:11 +0200 Subject: gnu: gtk+: Add patch to support GUIX_GTK3_IM_MODULE_FILE. * gnu/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch: New file. * gnu/packages/gtk.scm (gtk+)[source]: Add it. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/gtk.scm | 3 ++- .../patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch | 15 +++++++++++++++ 3 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch diff --git a/gnu/local.mk b/gnu/local.mk index a67b00ccdf..a41ade7c4f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -553,6 +553,7 @@ dist_patch_DATA = \ %D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \ %D%/packages/patches/gtk2-theme-paths.patch \ %D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \ + %D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \ %D%/packages/patches/gtkglext-disable-disable-deprecated.patch \ %D%/packages/patches/hdf5-config-date.patch \ %D%/packages/patches/higan-remove-march-native-flag.patch \ diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index e1d9cf9d6d..396ff1f1d0 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -625,7 +625,8 @@ application suites.") (sha256 (base32 "157nh9gg0p2avw765hrnkvr8lsh2w811397yxgjv6q5j4fzz6d1q")) - (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch")))) + (patches (search-patches "gtk3-respect-GUIX_GTK3_PATH.patch" + "gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch")))) (propagated-inputs `(("at-spi2-atk" ,at-spi2-atk) ("atk" ,atk) diff --git a/gnu/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch b/gnu/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch new file mode 100644 index 0000000000..aa63a54402 --- /dev/null +++ b/gnu/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch @@ -0,0 +1,15 @@ +This patch replaces the environment variable "GTK_IM_MODULE" with +"GUIX_GTK3_IM_MODULE_FILE" to prevent this version of GTK+ from loading input +method modules for other major versions of GTK+. + +--- gtk+-3.20.3/gtk/deprecated/gtkrc.c 2016-08-21 22:40:48.168437905 +0200 ++++ gtk+-3.20.3/gtk/deprecated/gtkrc.c 2016-08-23 10:12:09.097070097 +0200 +@@ -768,7 +768,7 @@ + gchar * + gtk_rc_get_im_module_file (void) + { +- const gchar *var = g_getenv ("GTK_IM_MODULE_FILE"); ++ const gchar *var = g_getenv ("GUIX_GTK3_IM_MODULE_FILE"); + gchar *result = NULL; + + if (var) -- cgit v1.2.3 From 35aa90a1fd4d8f29d0c88e4a73a7971cb261c68e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 2 Sep 2016 15:35:14 +0200 Subject: gnu: Add Infernal. * gnu/packages/bioinformatics.scm (infernal): New variable. --- gnu/packages/bioinformatics.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 08c25459c0..2d76a81339 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4835,6 +4835,32 @@ data in the form of VCF files.") ;; at https://vcftools.github.io/license.html (license license:lgpl3))) +(define-public infernal + (package + (name "infernal") + (version "1.1.2") + (source (origin + (method url-fetch) + (uri (string-append "http://eddylab.org/software/infernal/" + "infernal-" version ".tar.gz")) + (sha256 + (base32 + "0sr2hiz3qxfwqpz3whxr6n82p3x27336v3f34iqznp10hks2935c")))) + (build-system gnu-build-system) + (native-inputs + `(("perl" ,perl))) ; for tests + (home-page "http://eddylab.org/infernal/") + (synopsis "Inference of RNA alignments") + (description "Infernal (\"INFERence of RNA ALignment\") is a tool for +searching DNA sequence databases for RNA structure and sequence similarities. +It is an implementation of a special case of profile stochastic context-free +grammars called @dfn{covariance models} (CMs). A CM is like a sequence +profile, but it scores a combination of sequence consensus and RNA secondary +structure consensus, so in many cases, it is more capable of identifying RNA +homologs that conserve their secondary structure more than their primary +sequence.") + (license license:bsd-3))) + (define-public r-vegan (package (name "r-vegan") -- cgit v1.2.3 From 5741e3e5520998f93b59848b3e58f99c0357e9a5 Mon Sep 17 00:00:00 2001 From: Alex Kost Date: Fri, 2 Sep 2016 20:54:21 +0300 Subject: doc: Fix typos. * doc/guix.texi: Fix typo. * doc/emacs.texi: Fix multiple typos. --- doc/emacs.texi | 6 +++--- doc/guix.texi | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/emacs.texi b/doc/emacs.texi index d124eca3cb..c7a8881ef5 100644 --- a/doc/emacs.texi +++ b/doc/emacs.texi @@ -225,7 +225,7 @@ guix pull}) from Emacs using: With @kbd{C-u}, make it verbose. @end table -Once @command{guix pull} has succeeded, the Guix REPL is restared. This +Once @command{guix pull} has succeeded, the Guix REPL is restarted. This allows you to keep using the Emacs interface with the updated Guix. @@ -266,7 +266,7 @@ Describe current mode to see all available bindings. @end table @emph{Hint:} If you need several ``list'' or ``info'' buffers, you can -simlpy @kbd{M-x clone-buffer} them, and each buffer will have its own +simply @kbd{M-x clone-buffer} them, and each buffer will have its own history. @emph{Warning:} Name/version pairs cannot be used to identify packages @@ -310,7 +310,7 @@ Mark the current package for upgrading. @item ^ Mark all obsolete packages for upgrading. @item e -Edit the definition of the curent package (go to its location). This is +Edit the definition of the current package (go to its location). This is similar to @command{guix edit} command (@pxref{Invoking guix edit}), but for opening a package recipe in the current Emacs instance. @item x diff --git a/doc/guix.texi b/doc/guix.texi index 2a7fd4d041..d6c041862d 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -8324,7 +8324,7 @@ profile, and extends polkit with the actions from @deffn {Scheme Procedure} xfce-desktop-service Return a service that adds the @code{xfce} package to the system profile, -and extends polkit with the abilit for @code{thunar} to manipulate the +and extends polkit with the ability for @code{thunar} to manipulate the file system as root from within a user session, after the user has authenticated with the administrator's password. @end deffn -- cgit v1.2.3 From abc4cb57ca6ae015e916d0218a904b250ec23659 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Sat, 3 Sep 2016 09:04:52 +0200 Subject: guix: ant-build-system: Fix pattern for collecting jar files. The former pattern included the "jar" binary. * guix/build/ant-build-system.scm (generate-classpath): Change pattern. Suggested by: Ricardo Wurmus --- guix/build/ant-build-system.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/guix/build/ant-build-system.scm b/guix/build/ant-build-system.scm index 6dc19ff2db..00a4a46d81 100644 --- a/guix/build/ant-build-system.scm +++ b/guix/build/ant-build-system.scm @@ -83,7 +83,7 @@ INPUTS." (string-join (apply append (map (match-lambda ((_ . dir) - (find-files dir "\\.*jar$"))) + (find-files dir "\\.jar$"))) inputs)) ":")) (define* (unpack #:key source #:allow-other-keys) -- cgit v1.2.3 From fd0a23e9eb3c6b2a106b8b3a95f39be63501928e Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sat, 3 Sep 2016 15:48:42 +0200 Subject: gnu: libnfsidmap: Set pluginpath at configure time. * gnu/packages/linux.scm (libnfsidmap)[arguments]: Pass --with-pluginpath= to #:configure-flags. --- gnu/packages/linux.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index aac2cd19f6..0034314601 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -212,6 +212,11 @@ (base32 "1kzgwxzh83qi97rblcm9qj80cdvnv8kml2plz0q103j0hifj8vb5")))) (build-system gnu-build-system) + (arguments + `(#:configure-flags (list + (string-append "--with-pluginpath=" + (assoc-ref %outputs "out") + "/lib/libnfsidmap")))) (home-page "http://www.citi.umich.edu/projects/nfsv4/crossrealm/libnfsidmap_config.html") (synopsis -- cgit v1.2.3 From 8c65863fb34a73cd6d52debeb9ff9ed8c99faf2f Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sat, 3 Sep 2016 12:48:36 +0200 Subject: gnu: git: Update to 2.10.0. * gnu/packages/version-control.scm (git): Update to 2.10.0. --- gnu/packages/version-control.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 34cfedf4ed..9ff9801997 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -111,14 +111,14 @@ as well as the classic centralized workflow.") (define-public git (package (name "git") - (version "2.9.3") + (version "2.10.0") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "0qzs681a64k3shh5p0rg41l1z16fbk5sj0xga45k34hp1hsp654z")))) + "1rr9zyafb6q3wixyjar6cc7z7vdh1dqa4b5irz3gz1df02n68cy7")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -131,7 +131,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "0kabsmjfbvq4y1vlwq0yl2y4033a90rnwsq01d7np3cvy55fiq0l")))))) + "1y92v1bxk67ilsizqnjba6hqvrsy2zvmipyd9nnz865s21yrj5ry")))))) (inputs `(("curl" ,curl) ("expat" ,expat) -- cgit v1.2.3 From 79518126e7724777fc99f3454f87bd51ebc31aae Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sat, 3 Sep 2016 16:25:31 +0200 Subject: Revert "gnu: yelp: Update to 3.21.3" This reverts commit 29405d882161e8bfa9aadf67bc264c2ee6c74fa4. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 5ea9714431..f4488c929b 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3711,7 +3711,7 @@ to format Docbook and Mallard documents.") (define-public yelp (package (name "yelp") - (version "3.21.3") + (version "3.20.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3719,7 +3719,7 @@ to format Docbook and Mallard documents.") name "-" version ".tar.xz")) (sha256 (base32 - "1x8la7qn0l796p4nhprvkwb6sk6yc39xhq3gabvzrhdlb6mjgmrs")))) + "1hh8yqbv0scn9nksk9mq94cb4sdczlzxplclv2wqr41jmm8v186x")))) (build-system glib-or-gtk-build-system) (native-inputs `(("glib:bin" ,glib "bin") ; for glib-genmarshal, etc. -- cgit v1.2.3 From db8b5f5262d668fab6ca3b157e1b2af0126b2cf9 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sat, 3 Sep 2016 18:00:25 +0200 Subject: gnu: rpcbind: Enable warm starts * gnu/packages/onc-rpc.scm (rpcbind)[arguments]: Pass --enable-warmstarts to #:configure-flags. --- gnu/packages/onc-rpc.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/onc-rpc.scm b/gnu/packages/onc-rpc.scm index 549b82307b..0bcc885c39 100644 --- a/gnu/packages/onc-rpc.scm +++ b/gnu/packages/onc-rpc.scm @@ -71,7 +71,7 @@ IPv4 and IPv6. ONC RPC is notably used by the network file system (NFS).") (build-system gnu-build-system) (arguments `(#:configure-flags - `("--with-systemdsystemunitdir=no"))) + `("--with-systemdsystemunitdir=no" "--enable-warmstarts"))) (inputs `(("libtirpc" ,libtirpc))) (native-inputs -- cgit v1.2.3 From 217e0edfdc0ea33ecd78f59221239ee980cf15d4 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 3 Sep 2016 22:50:59 +0300 Subject: gnu: mpv: Update to 0.20.0. * gnu/packages/video.scm (mpv): Update to 0.20.0. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 8d500729e4..5ec1424b22 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -790,7 +790,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") (define-public mpv (package (name "mpv") - (version "0.19.0") + (version "0.20.0") (source (origin (method url-fetch) (uri (string-append @@ -798,7 +798,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") ".tar.gz")) (sha256 (base32 - "1qk7blpg64v47qfnvpgnbf413v5gzn900wmlivs727fd88cq3x9x")) + "0mibhjg5skcwcfpg6dx7yi2gj14xawnq2jzmcfwq9knmvv9cjvpy")) (file-name (string-append name "-" version ".tar.gz")))) (build-system waf-build-system) (native-inputs -- cgit v1.2.3 From df9010661004de19f89f777e2941b9fd35d05ed8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 3 Sep 2016 23:48:46 +0300 Subject: gnu: aria2: Update to 1.26.1. * gnu/packages/bittorrent.scm (aria2): Update to 1.26.1. --- gnu/packages/bittorrent.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index 51248508ff..bed9a014b2 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -207,7 +207,7 @@ interface, for the Transmission BitTorrent daemon.") (define-public aria2 (package (name "aria2") - (version "1.26.0") + (version "1.26.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/tatsuhiro-t/aria2/" @@ -215,7 +215,7 @@ interface, for the Transmission BitTorrent daemon.") name "-" version ".tar.xz")) (sha256 (base32 - "1388qswa0in7kb1dx7qb10wp60p58zvvpys7jwim3clsbqvz6a68")))) + "00d8r631w4g05jf202arhn0c3jsszb2m0apfw471qpmgajblxrpl")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-libaria2" -- cgit v1.2.3 From 37355498e677fbb5f736e825b7e8f5055e7496b4 Mon Sep 17 00:00:00 2001 From: doncatnip Date: Thu, 1 Sep 2016 03:15:01 +0200 Subject: gnu: gtk: Add clipit. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gtk.scm (clipit): New variable. Co-authored-by: 宋文武 --- gnu/packages/gtk.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 396ff1f1d0..74c4ed36a9 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -1333,3 +1333,29 @@ glass artworks done by Venicians glass blowers.") "GtkSpell provides word-processor-style highlighting and replacement of misspelled words in a GtkTextView widget.") (license license:gpl2+))) + +(define-public clipit + (package + (name "clipit") + (version "1.4.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/downloads/ClipIt/clipit-" + version ".tar.gz")) + (sha256 + (base32 + "0jrwn8qfgb15rwspdp1p8hb1nc0ngmpvgr87d4k3lhlvqg2cfqva")))) + (build-system gnu-build-system) + (native-inputs + `(("intltool" ,intltool) + ("pkg-config" ,pkg-config))) + (inputs + `(("gtk+" ,gtk+-2))) + (home-page "https://github.com/CristianHenzel/ClipIt") + (synopsis "Lightweight GTK+ clipboard manager") + (description + "ClipIt is a clipboard manager with features such as a history, search +thereof, global hotkeys and clipboard item actions. It was forked from +Parcellite and adds bugfixes and features.") + (license license:gpl2+))) -- cgit v1.2.3 From c4dd0defe16fbee282a31a8d8d0d399bc4bd9baa Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 20 Aug 2016 20:56:46 +0000 Subject: gnu: awesome: Shorten the description. * gnu/packages/wm.scm (awesome)[description]: Shorten. Signed-off-by: Alex Kost --- gnu/packages/wm.scm | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 2cc9f44cdc..6275e6fea0 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2016 Al McElrath ;;; Copyright © 2016 Carlo Zancanaro ;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -452,16 +453,7 @@ experience.") (zero? (system* "../build/awesome" "-v"))))))) (synopsis "Highly configurable window manager") (description - "awesome is a window manager for X. It manages windows in different -layouts, like floating or tiled. Any layout can be applied dynamically, -optimizing the environment for the application in use and the task currently -being performed. - -In a tiled layout, windows are managed in a master and stacking area. In a -floating layout windows can be resized and moved freely. Dialog windows are -always managed as floating, regardless of the layout currently applied. - -Windows are grouped by tags in awesome. Each window can be tagged with one or -more tags. Selecting certain tags displays all windows with these tags.") + "Awesome has been designed as a framework window manager. It is fast, small, +dynamic and extensible using the Lua programming language.") (license license:gpl2+) (home-page "https://awesome.naquadah.org/"))) -- cgit v1.2.3 From dddcb25c7f99ff229c5d5b0f7cbba4dc0ba78971 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 17 Aug 2016 17:45:24 +0100 Subject: gnu: Add python-odfpy. * gnu/packages/python.scm (python-odfpy, python2-odfpy): New variables. Signed-off-by: Alex Kost --- gnu/packages/python.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8b52548065..33674fa9d9 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -26,6 +26,7 @@ ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Dylan Jeffers ;;; Copyright © 2016 David Craven +;;; Copyright © 2016 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -10241,3 +10242,39 @@ time by mocking the datetime module.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-odfpy + (package + (name "python-odfpy") + (version "1.3.3") + (source (origin + (method url-fetch) + (uri (pypi-uri "odfpy" version)) + (sha256 + (base32 + "1a6ms0w9zfhhkqhvrnynwwbxrivw6hgjc0s5k7j06npc7rq0blxw")))) + (arguments + `(#:modules ((srfi srfi-1) + (guix build python-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (replace 'check + ;; The test runner invokes python2 and python3 for test*.py. + ;; To avoid having both in inputs, we replicate it here. + (lambda _ + (every (lambda (test-file) + (zero? (system* "python" test-file))) + (find-files "tests" "^test.*\\.py$"))))))) + (build-system python-build-system) + (home-page "https://github.com/eea/odfpy") + (synopsis "Python API and tools to manipulate OpenDocument files") + (description "Collection of libraries and utility programs written in +Python to manipulate OpenDocument 1.2 files.") + (license + ;; The software is mainly dual GPL2+ and ASL2.0, but includes a + ;; number of files with other licenses. + (list license:gpl2+ license:asl2.0 license:lgpl2.1+ license:cc-by-sa3.0)))) + +(define-public python2-odfpy + (package-with-python2 python-odfpy)) -- cgit v1.2.3 From 48409ef26934cd8a2e692718b06d7853859f7e36 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 4 Sep 2016 12:43:10 +0300 Subject: gnu: infernal: Limit to i686 and x86_64 systems. * gnu/packages/bioinformatics.scm (infernal)[supported-systems]: The package requires VMX or SSE capability for parallel instructions, so limit it to those supported systems. --- gnu/packages/bioinformatics.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 2d76a81339..f34acd124d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4859,6 +4859,8 @@ profile, but it scores a combination of sequence consensus and RNA secondary structure consensus, so in many cases, it is more capable of identifying RNA homologs that conserve their secondary structure more than their primary sequence.") + ;; Infernal 1.1.2 requires VMX or SSE capability for parallel instructions. + (supported-systems '("i686-linux" "x86_64-linux")) (license license:bsd-3))) (define-public r-vegan -- cgit v1.2.3 From 7b39b7eb91112616a26a7b5de1d0d4782c83add9 Mon Sep 17 00:00:00 2001 From: Julian Graham Date: Sat, 3 Sep 2016 13:08:37 -0400 Subject: gnu: gzochi: Update to 0.10.1. * gnu/packages/game-development.scm (gzochi): Update to 0.10.1. Signed-off-by: David Craven --- gnu/packages/game-development.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm index d544a7294d..5e6cf0b234 100644 --- a/gnu/packages/game-development.scm +++ b/gnu/packages/game-development.scm @@ -93,14 +93,14 @@ is used in some video games and movies.") (define-public gzochi (package (name "gzochi") - (version "0.10") + (version "0.10.1") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/gzochi/gzochi-" version ".tar.gz")) (sha256 (base32 - "055m7ywgl48ljwxf0kjhl76ldck890y5afdwjhk5s3p65xyaxh0k")))) + "166rawdal45kvanhvi0bkzy1d2pwf1p0lzslb287lcnm9vdw97yy")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 8cfdd64c3797bd014ad742bd4bd994d647ced985 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Sun, 4 Sep 2016 12:50:09 +0200 Subject: gnu: dtc: Update to 1.4.2. * gnu/packages/u-boot.scm (dtc): Update to 1.4.2. Delete patch. * gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch: Delete patch. * gnu/local.mk (dist_patch_DATA): Delete patch. Signed-off-by: David Craven --- gnu/local.mk | 1 - .../patches/dtc-add-missing-symbols-to-lds.patch | 59 ---------------------- gnu/packages/u-boot.scm | 6 +-- 3 files changed, 2 insertions(+), 64 deletions(-) delete mode 100644 gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch diff --git a/gnu/local.mk b/gnu/local.mk index 2b5e5419ad..d2e94e8d42 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -483,7 +483,6 @@ dist_patch_DATA = \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/doxygen-test.patch \ - %D%/packages/patches/dtc-add-missing-symbols-to-lds.patch \ %D%/packages/patches/duplicity-piped-password.patch \ %D%/packages/patches/duplicity-test_selection-tmp.patch \ %D%/packages/patches/elfutils-tests-ptrace.patch \ diff --git a/gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch b/gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch deleted file mode 100644 index ccece0f466..0000000000 --- a/gnu/packages/patches/dtc-add-missing-symbols-to-lds.patch +++ /dev/null @@ -1,59 +0,0 @@ -From a4b093f7366fdb429ca1781144d3985fa50d0fbb Mon Sep 17 00:00:00 2001 -From: Julien Grall -Date: Tue, 17 Mar 2015 16:00:34 +0000 -Subject: [PATCH] libfdt: Add missing functions to shared library - -The commit 4e76ec7 "libfdt: Add fdt_next_subnode() to permit easy -subnode iteration" adds new functions (fdt_{first,next}_subnode) but -forgot to mark them as 'global' in the shared library. - -Signed-off-by: Julien Grall ---- - libfdt/version.lds | 2 ++ - 1 file changed, 2 insertions(+) - -diff --git a/libfdt/version.lds b/libfdt/version.lds -index 80b322b..941208e 100644 ---- a/libfdt/version.lds -+++ b/libfdt/version.lds -@@ -54,6 +54,8 @@ LIBFDT_1.2 { - fdt_get_property_by_offset; - fdt_getprop_by_offset; - fdt_next_property_offset; -+ fdt_first_subnode; -+ fdt_next_subnode; - - local: - *; -From f58799be130e27cc729cb2d45566daa0bb3b8605 Mon Sep 17 00:00:00 2001 -From: David Gibson -Date: Tue, 1 Dec 2015 12:55:21 +1100 -Subject: [PATCH] libfdt: Add some missing symbols to version.lds - -Several functions in the header file were missing from the version.lds -script, meaning that they couldn't be used from a libfdt shared library. - -Reported by Ken Aaker, via github issue tracker. - -Signed-off-by: David Gibson ---- - libfdt/version.lds | 4 ++++ - 1 file changed, 4 insertions(+) - -diff --git a/libfdt/version.lds b/libfdt/version.lds -index f19f157..1f4e1ea 100644 ---- a/libfdt/version.lds -+++ b/libfdt/version.lds -@@ -57,6 +57,10 @@ LIBFDT_1.2 { - fdt_next_property_offset; - fdt_first_subnode; - fdt_next_subnode; -+ fdt_address_cells; -+ fdt_size_cells; -+ fdt_stringlist_contains; -+ fdt_resize; - - local: - *; --- -2.8.1 diff --git a/gnu/packages/u-boot.scm b/gnu/packages/u-boot.scm index 15b24a6056..e9a4b90941 100644 --- a/gnu/packages/u-boot.scm +++ b/gnu/packages/u-boot.scm @@ -32,7 +32,7 @@ (define-public dtc (package (name "dtc") - (version "1.4.1") + (version "1.4.2") (source (origin (method url-fetch) (uri (string-append @@ -40,9 +40,7 @@ "dtc-" version ".tar.xz")) (sha256 (base32 - "155v52palf5fwfcnq696s41whjk0a5dqx98b7maqzdn7xbc2m6bp")) - (patches - (search-patches "dtc-add-missing-symbols-to-lds.patch")))) + "1b7si8niyca4wxbfah3qw4p4wli81mc1qwfhaswvrfqahklnwi8k")))) (build-system gnu-build-system) (native-inputs `(("bison" ,bison) -- cgit v1.2.3 From f5e4229a075e7aca255ab54d4e98526409520c62 Mon Sep 17 00:00:00 2001 From: Brendan Tildesley Date: Sat, 3 Sep 2016 05:53:56 +1000 Subject: gnu: Add libicns. * gnu/packages/image.scm (libicns): New variable. Signed-off-by: David Craven --- gnu/packages/image.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 4fdc4ae252..a65bf3912d 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -147,6 +147,37 @@ maximum quality factor.") (license license:gpl2+) (home-page "http://www.kokkonen.net/tjko/projects.html#jpegoptim"))) +(define-public libicns + (package + (name "libicns") + (version "0.8.1") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/icns/" + "libicns-" version ".tar.gz")) + (sha256 + (base32 + "1hjm8lwap7bjyyxsyi94fh5817xzqhk4kb5y0b7mb6675xw10prk")))) + (build-system gnu-build-system) + (inputs + `(("libpng" ,libpng) + ("jasper" ,jasper))) + (arguments + `(#:tests? #t)) ; No tests. + (home-page "http://icns.sourceforge.net/") + (synopsis "Library for handling Mac OS icns resource files") + (description + "Libicns is a library for the manipulation of Mac OS IconFamily resource +type files (ICNS). @command{icns2png} and @command{png2icns} are provided to +convert between PNG and ICNS. @command{icns2png} will extract image files from +ICNS files under names like \"Foo_48x48x32.png\" useful for installing for use +with .desktop files. Additionally, @command{icontainer2png} is provided for +extracting icontainer icon files.") + (license (list license:lgpl2.1+ ; libicns + license:lgpl2.0+ ; src/apidocs.* + license:gpl2+)))) ; icns2png, png2icns, icontainer2png + (define-public libtiff (package (name "libtiff") -- cgit v1.2.3 From b11cf99ff5f6a02814cc6c56a248a78d5caeaaeb Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 4 Sep 2016 16:14:10 +0300 Subject: gnu: rage: Update to 0.2.1. * gnu/packages/enlightenment.scm (rage): Update to 0.2.1. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 818dbac942..d465da9d71 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -262,7 +262,7 @@ contents and more.") (define-public rage (package (name "rage") - (version "0.2.0") + (version "0.2.1") (source (origin (method url-fetch) (uri @@ -271,7 +271,7 @@ contents and more.") version ".tar.xz")) (sha256 (base32 - "07mfh0k83nrm557x72qafxawxizilqgkr6sngbia3ikprc8556zy")))) + "06kbgcnbhl9clhdl7k983m4d0n6ggsl4qvizzi1nrp8c7np87fix")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From adbd7faf412297e48931ba4f7ad9a062d852ab8a Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sat, 27 Aug 2016 06:33:26 -0400 Subject: gnu: Add p7zip. * gnu/packages/compression.scm (p7zip): New variable. * gnu/packages/patches/remove-unused-p7zip-code.patch: New patch. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/compression.scm | 67 ++ .../patches/p7zip-remove-unused-code.patch | 959 +++++++++++++++++++++ 3 files changed, 1027 insertions(+) create mode 100644 gnu/packages/patches/p7zip-remove-unused-code.patch diff --git a/gnu/local.mk b/gnu/local.mk index d2e94e8d42..9132c94717 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -705,6 +705,7 @@ dist_patch_DATA = \ %D%/packages/patches/openssl-CVE-2016-2178.patch \ %D%/packages/patches/orpheus-cast-errors-and-includes.patch \ %D%/packages/patches/ots-no-include-missing-file.patch \ + %D%/packages/patches/p7zip-remove-unused-code.patch \ %D%/packages/patches/patchelf-page-size.patch \ %D%/packages/patches/patchelf-rework-for-arm.patch \ %D%/packages/patches/patchutils-xfail-gendiff-tests.patch \ diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index c239d16638..0040e45892 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2016 Danny Milosavljevic ;;; Copyright © 2016 Tobias Geerinckx-Rice ;;; Copyright © 2016 David Craven +;;; Copyright © 2016 Kei Kebreau ;;; ;;; This file is part of GNU Guix. ;;; @@ -895,3 +896,69 @@ compared to the fastest mode of zlib, Snappy is an order of magnitude faster for most inputs, but the resulting compressed files are anywhere from 20% to 100% bigger.") (license license:asl2.0))) + +(define-public p7zip + (package + (name "p7zip") + (version "16.02") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/" name "/" name "/" + version "/" name "_" version + "_src_all.tar.bz2")) + (sha256 + (base32 + "07rlwbbgszq8i7m8jh3x6j2w2hc9a72dc7fmqawnqkwlwb00mcjy")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove non-free source files + (for-each delete-file + (append + (find-files "CPP/7zip/Compress" "Rar.*") + (find-files "CPP/7zip/Crypto" "Rar.*") + (find-files "DOC/unRarLicense.txt") + (find-files "Utils/file_Codecs_Rar_so.py"))) + (delete-file-recursively "CPP/7zip/Archive/Rar") + (delete-file-recursively "CPP/7zip/Compress/Rar") + #t)) + (patches (search-patches "p7zip-remove-unused-code.patch")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags + (list (string-append "DEST_HOME=" (assoc-ref %outputs "out")) "all3") + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key system outputs #:allow-other-keys) + (zero? (system* "cp" + (let ((system ,(or (%current-target-system) + (%current-system)))) + (cond + ((string-prefix? "x86_64" system) + "makefile.linux_amd64_asm") + ((string-prefix? "i686" system) + "makefile.linux_x86_asm_gcc_4.X") + (else + "makefile.linux_any_cpu_gcc_4.X"))) + "makefile.machine")))) + (replace 'check + (lambda _ + (and (zero? (system* "make" "test")) + (zero? (system* "make" "test_7z")) + (zero? (system* "make" "test_7zr")))))))) + (inputs + (let ((system (or (%current-target-system) + (%current-system)))) + `(,@(cond ((string-prefix? "x86_64" system) + `(("yasm" ,yasm))) + ((string-prefix? "i686" system) + `(("nasm" ,nasm))) + (else '()))))) + (home-page "http://p7zip.sourceforge.net/") + (synopsis "Command-line file archiver with high compression ratio") + (description "p7zip is a command-line port of 7-Zip, a file archiver that +handles the 7z format which features very high compression ratios.") + (license (list license:lgpl2.1+ + license:gpl2+ + license:public-domain)))) diff --git a/gnu/packages/patches/p7zip-remove-unused-code.patch b/gnu/packages/patches/p7zip-remove-unused-code.patch new file mode 100644 index 0000000000..f9c782b93e --- /dev/null +++ b/gnu/packages/patches/p7zip-remove-unused-code.patch @@ -0,0 +1,959 @@ +diff --git a/C/Sha1.c b/C/Sha1.c +index 55c1c63..48b4c5d 100644 +--- a/C/Sha1.c ++++ b/C/Sha1.c +@@ -104,39 +104,6 @@ void Sha1_GetBlockDigest(CSha1 *p, const UInt32 *data, UInt32 *destDigest) + destDigest[4] = p->state[4] + e; + } + +-void Sha1_UpdateBlock_Rar(CSha1 *p, UInt32 *data, int returnRes) +-{ +- UInt32 a, b, c, d, e; +- UInt32 W[kNumW]; +- +- a = p->state[0]; +- b = p->state[1]; +- c = p->state[2]; +- d = p->state[3]; +- e = p->state[4]; +- +- RX_15 +- +- RX_1_4(R0, R1, 15); +- +- RX_20(R2, 20); +- RX_20(R3, 40); +- RX_20(R4, 60); +- +- p->state[0] += a; +- p->state[1] += b; +- p->state[2] += c; +- p->state[3] += d; +- p->state[4] += e; +- +- if (returnRes) +- { +- unsigned i; +- for (i = 0 ; i < SHA1_NUM_BLOCK_WORDS; i++) +- data[i] = W[kNumW - SHA1_NUM_BLOCK_WORDS + i]; +- } +-} +- + #define Sha1_UpdateBlock(p) Sha1_GetBlockDigest(p, p->buffer, p->state) + + void Sha1_Update(CSha1 *p, const Byte *data, size_t size) +@@ -212,46 +179,6 @@ void Sha1_Update(CSha1 *p, const Byte *data, size_t size) + } + } + +-void Sha1_Update_Rar(CSha1 *p, Byte *data, size_t size /* , int rar350Mode */) +-{ +- int returnRes = False; +- +- unsigned pos = (unsigned)p->count & 0x3F; +- p->count += size; +- +- while (size--) +- { +- unsigned pos2 = (pos & 3); +- UInt32 v = ((UInt32)*data++) << (8 * (3 - pos2)); +- UInt32 *ref = &(p->buffer[pos >> 2]); +- pos++; +- if (pos2 == 0) +- { +- *ref = v; +- continue; +- } +- *ref |= v; +- +- if (pos == SHA1_BLOCK_SIZE) +- { +- pos = 0; +- Sha1_UpdateBlock_Rar(p, p->buffer, returnRes); +- if (returnRes) +- { +- unsigned i; +- for (i = 0; i < SHA1_NUM_BLOCK_WORDS; i++) +- { +- UInt32 d = p->buffer[i]; +- Byte *prev = data + i * 4 - SHA1_BLOCK_SIZE; +- SetUi32(prev, d); +- } +- } +- // returnRes = rar350Mode; +- returnRes = True; +- } +- } +-} +- + void Sha1_Final(CSha1 *p, Byte *digest) + { + unsigned pos = (unsigned)p->count & 0x3F; +diff --git a/C/Sha1.h b/C/Sha1.h +index aa22ec3..9c45653 100644 +--- a/C/Sha1.h ++++ b/C/Sha1.h +@@ -27,8 +27,6 @@ void Sha1_GetBlockDigest(CSha1 *p, const UInt32 *data, UInt32 *destDigest); + void Sha1_Update(CSha1 *p, const Byte *data, size_t size); + void Sha1_Final(CSha1 *p, Byte *digest); + +-void Sha1_Update_Rar(CSha1 *p, Byte *data, size_t size /* , int rar350Mode */); +- + void Sha1_32_PrepareBlock(const CSha1 *p, UInt32 *block, unsigned size); + void Sha1_32_Update(CSha1 *p, const UInt32 *data, size_t size); + void Sha1_32_Final(CSha1 *p, UInt32 *digest); +diff --git a/CPP/7zip/Archive/7z/7zUpdate.cpp b/CPP/7zip/Archive/7z/7zUpdate.cpp +index a0571e7..43ad3e9 100644 +--- a/CPP/7zip/Archive/7z/7zUpdate.cpp ++++ b/CPP/7zip/Archive/7z/7zUpdate.cpp +@@ -562,7 +562,7 @@ static int CompareEmptyItems(const unsigned *p1, const unsigned *p2, void *param + } + + static const char *g_Exts = +- " 7z xz lzma ace arc arj bz tbz bz2 tbz2 cab deb gz tgz ha lha lzh lzo lzx pak rar rpm sit zoo" ++ " 7z xz lzma ace arc arj bz tbz bz2 tbz2 cab deb gz tgz ha lha lzh lzo lzx pak rpm sit zoo" + " zip jar ear war msi" + " 3gp avi mov mpeg mpg mpe wmv" + " aac ape fla flac la mp3 m4a mp4 ofr ogg pac ra rm rka shn swa tta wv wma wav" +diff --git a/CPP/7zip/Bundles/Format7zFree/makefile.list b/CPP/7zip/Bundles/Format7zFree/makefile.list +index da2056b..1dcf1a5 100644 +--- a/CPP/7zip/Bundles/Format7zFree/makefile.list ++++ b/CPP/7zip/Bundles/Format7zFree/makefile.list +@@ -87,8 +87,6 @@ SRCS=\ + ../../../../CPP/7zip/Archive/PeHandler.cpp \ + ../../../../CPP/7zip/Archive/PpmdHandler.cpp \ + ../../../../CPP/7zip/Archive/QcowHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp \ + ../../../../CPP/7zip/Archive/RpmHandler.cpp \ + ../../../../CPP/7zip/Archive/SplitHandler.cpp \ + ../../../../CPP/7zip/Archive/SquashfsHandler.cpp \ +@@ -191,9 +189,6 @@ SRCS=\ + ../../../../CPP/7zip/Crypto/MyAesReg.cpp \ + ../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp \ + ../../../../CPP/7zip/Crypto/RandGen.cpp \ +- ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp \ +- ../../../../CPP/7zip/Crypto/Rar5Aes.cpp \ +- ../../../../CPP/7zip/Crypto/RarAes.cpp \ + ../../../../CPP/7zip/Crypto/WzAes.cpp \ + ../../../../CPP/7zip/Crypto/ZipCrypto.cpp \ + ../../../../CPP/7zip/Crypto/ZipStrong.cpp \ +@@ -485,10 +480,6 @@ PpmdHandler.o : ../../../../CPP/7zip/Archive/PpmdHandler.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/PpmdHandler.cpp + QcowHandler.o : ../../../../CPP/7zip/Archive/QcowHandler.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/QcowHandler.cpp +-RarHandler.o : ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp +-Rar5Handler.o : ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp + RpmHandler.o : ../../../../CPP/7zip/Archive/RpmHandler.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Archive/RpmHandler.cpp + SplitHandler.o : ../../../../CPP/7zip/Archive/SplitHandler.cpp +@@ -693,12 +684,6 @@ Pbkdf2HmacSha1.o : ../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp + RandGen.o : ../../../../CPP/7zip/Crypto/RandGen.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/RandGen.cpp +-Rar20Crypto.o : ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp +-Rar5Aes.o : ../../../../CPP/7zip/Crypto/Rar5Aes.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/Rar5Aes.cpp +-RarAes.o : ../../../../CPP/7zip/Crypto/RarAes.cpp +- $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/RarAes.cpp + WzAes.o : ../../../../CPP/7zip/Crypto/WzAes.cpp + $(CXX) $(CXXFLAGS) ../../../../CPP/7zip/Crypto/WzAes.cpp + ZipCrypto.o : ../../../../CPP/7zip/Crypto/ZipCrypto.cpp +@@ -869,8 +854,6 @@ OBJS=\ + PeHandler.o \ + PpmdHandler.o \ + QcowHandler.o \ +- RarHandler.o \ +- Rar5Handler.o \ + RpmHandler.o \ + SplitHandler.o \ + SquashfsHandler.o \ +@@ -973,9 +956,6 @@ OBJS=\ + MyAesReg.o \ + Pbkdf2HmacSha1.o \ + RandGen.o \ +- Rar20Crypto.o \ +- Rar5Aes.o \ +- RarAes.o \ + WzAes.o \ + ZipCrypto.o \ + ZipStrong.o \ +diff --git a/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt b/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt +index 61f41f9..adc7117 100644 +--- a/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt ++++ b/CPP/7zip/CMAKE/Format7zFree/CMakeLists.txt +@@ -126,8 +126,6 @@ add_library(7z MODULE + "../../../../CPP/7zip/Archive/PeHandler.cpp" + "../../../../CPP/7zip/Archive/PpmdHandler.cpp" + "../../../../CPP/7zip/Archive/QcowHandler.cpp" +- "../../../../CPP/7zip/Archive/Rar/RarHandler.cpp" +- "../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp" + "../../../../CPP/7zip/Archive/RpmHandler.cpp" + "../../../../CPP/7zip/Archive/SplitHandler.cpp" + "../../../../CPP/7zip/Archive/SquashfsHandler.cpp" +@@ -230,9 +228,6 @@ add_library(7z MODULE + "../../../../CPP/7zip/Crypto/MyAesReg.cpp" + "../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp" + "../../../../CPP/7zip/Crypto/RandGen.cpp" +- "../../../../CPP/7zip/Crypto/Rar20Crypto.cpp" +- "../../../../CPP/7zip/Crypto/Rar5Aes.cpp" +- "../../../../CPP/7zip/Crypto/RarAes.cpp" + "../../../../CPP/7zip/Crypto/WzAes.cpp" + "../../../../CPP/7zip/Crypto/ZipCrypto.cpp" + "../../../../CPP/7zip/Crypto/ZipStrong.cpp" +diff --git a/CPP/7zip/Crypto/Sha1Cls.h b/CPP/7zip/Crypto/Sha1Cls.h +index 71acbde..cde4a57 100644 +--- a/CPP/7zip/Crypto/Sha1Cls.h ++++ b/CPP/7zip/Crypto/Sha1Cls.h +@@ -28,7 +28,6 @@ class CContext: public CContextBase + { + public: + void Update(const Byte *data, size_t size) throw() { Sha1_Update(&_s, data, size); } +- void UpdateRar(Byte *data, size_t size /* , bool rar350Mode */) throw() { Sha1_Update_Rar(&_s, data, size /* , rar350Mode ? 1 : 0 */); } + void Final(Byte *digest) throw() { Sha1_Final(&_s, digest); } + }; + +diff --git a/CPP/7zip/Guid.txt b/CPP/7zip/Guid.txt +index 7edab6e..cc22992 100644 +--- a/CPP/7zip/Guid.txt ++++ b/CPP/7zip/Guid.txt +@@ -151,7 +151,6 @@ Handler GUIDs: + + 01 Zip + 02 BZip2 +- 03 Rar + 04 Arj + 05 Z + 06 Lzh +@@ -168,7 +167,6 @@ Handler GUIDs: + C9 VDI + CA Qcow + CB GPT +- CC Rar5 + CD IHex + CE Hxs + CF TE +diff --git a/CPP/7zip/QMAKE/Format7zFree/Format7zFree.pro b/CPP/7zip/QMAKE/Format7zFree/Format7zFree.pro +index afa36d4..93c45c7 100644 +--- a/CPP/7zip/QMAKE/Format7zFree/Format7zFree.pro ++++ b/CPP/7zip/QMAKE/Format7zFree/Format7zFree.pro +@@ -137,8 +137,6 @@ SOURCES += \ + ../../../../CPP/7zip/Archive/PeHandler.cpp \ + ../../../../CPP/7zip/Archive/PpmdHandler.cpp \ + ../../../../CPP/7zip/Archive/QcowHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp \ + ../../../../CPP/7zip/Archive/RpmHandler.cpp \ + ../../../../CPP/7zip/Archive/SplitHandler.cpp \ + ../../../../CPP/7zip/Archive/SquashfsHandler.cpp \ +@@ -241,9 +239,6 @@ SOURCES += \ + ../../../../CPP/7zip/Crypto/MyAesReg.cpp \ + ../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp \ + ../../../../CPP/7zip/Crypto/RandGen.cpp \ +- ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp \ +- ../../../../CPP/7zip/Crypto/Rar5Aes.cpp \ +- ../../../../CPP/7zip/Crypto/RarAes.cpp \ + ../../../../CPP/7zip/Crypto/WzAes.cpp \ + ../../../../CPP/7zip/Crypto/ZipCrypto.cpp \ + ../../../../CPP/7zip/Crypto/ZipStrong.cpp \ +diff --git a/CPP/7zip/QMAKE/all.pro b/CPP/7zip/QMAKE/all.pro +index a565ba8..6668619 100644 +--- a/CPP/7zip/QMAKE/all.pro ++++ b/CPP/7zip/QMAKE/all.pro +@@ -4,7 +4,6 @@ SUBDIRS = 7za \ + 7zr \ + 7z_ \ + Format7zFree \ +- Rar \ + Lzham \ + test_lib + +diff --git a/CPP/7zip/UI/Client7z/Client7z.cpp b/CPP/7zip/UI/Client7z/Client7z.cpp +index d0eca6d..7f4e6e2 100644 +--- a/CPP/7zip/UI/Client7z/Client7z.cpp ++++ b/CPP/7zip/UI/Client7z/Client7z.cpp +@@ -32,7 +32,7 @@ HINSTANCE g_hInstance = 0; + #endif + + // Tou can find the list of all GUIDs in Guid.txt file. +-// use another CLSIDs, if you want to support other formats (zip, rar, ...). ++// use another CLSIDs, if you want to support other formats (zip, ...). + // {23170F69-40C1-278A-1000-000110070000} + + DEFINE_GUID(CLSID_CFormat7z, +diff --git a/CPP/7zip/UI/Common/LoadCodecs.h b/CPP/7zip/UI/Common/LoadCodecs.h +index ac9eeac..076bd1c 100644 +--- a/CPP/7zip/UI/Common/LoadCodecs.h ++++ b/CPP/7zip/UI/Common/LoadCodecs.h +@@ -158,7 +158,6 @@ struct CArcInfoEx + void AddExts(const UString &ext, const UString &addExt); + + bool IsSplit() const { return StringsAreEqualNoCase_Ascii(Name, "Split"); } +- // bool IsRar() const { return StringsAreEqualNoCase_Ascii(Name, "Rar"); } + + CArcInfoEx(): + Flags(0), +diff --git a/CPP/7zip/UI/Common/OpenArchive.cpp b/CPP/7zip/UI/Common/OpenArchive.cpp +index 7d5b0c4..88ea5ab 100644 +--- a/CPP/7zip/UI/Common/OpenArchive.cpp ++++ b/CPP/7zip/UI/Common/OpenArchive.cpp +@@ -1063,7 +1063,6 @@ static const char * const k_Formats_with_simple_signuature[] = + { + "7z" + , "xz" +- , "rar" + , "bzip2" + , "gzip" + , "cab" +@@ -1720,29 +1719,6 @@ HRESULT CArc::OpenStream2(const COpenOptions &op) + { + // signature search was here + } +- else if (extension.IsEqualTo("000") || extension.IsEqualTo("001")) +- { +- int i = FindFormatForArchiveType(op.codecs, orderIndices, "rar"); +- if (i >= 0) +- { +- const size_t kBufSize = (1 << 10); +- byteBuffer.Alloc(kBufSize); +- size_t processedSize = kBufSize; +- RINOK(ReadStream(op.stream, byteBuffer, &processedSize)); +- if (processedSize >= 16) +- { +- const Byte *buf = byteBuffer; +- const Byte kRarHeader[] = { 0x52 , 0x61, 0x72, 0x21, 0x1a, 0x07, 0x00 }; +- if (TestSignature(buf, kRarHeader, 7) && buf[9] == 0x73 && (buf[10] & 1) != 0) +- { +- orderIndices2.Add(orderIndices[i]); +- orderIndices[i] = -1; +- if (i >= (int)numFinded) +- numFinded++; +- } +- } +- } +- } + else + { + const size_t kBufSize = (1 << 10); +diff --git a/CPP/7zip/UI/FileManager/FM_rc.cpp b/CPP/7zip/UI/FileManager/FM_rc.cpp +index 83578ed..034feed 100644 +--- a/CPP/7zip/UI/FileManager/FM_rc.cpp ++++ b/CPP/7zip/UI/FileManager/FM_rc.cpp +@@ -821,8 +821,6 @@ REGISTER_STRINGTABLE(g_stringTable) + + ///////////////////////////////////////////////////// + +-#include "res/ParentFolder.h" +- + SevenZipPanel::SevenZipPanel(MyFrame *frame, wxWindow *parent,int id,int panelIndex) : + wxPanel(parent,id) , m_frame(frame), _wList(0) + { +@@ -840,7 +838,7 @@ REGISTER_STRINGTABLE(g_stringTable) + int sizes[] = {150, 250, 350, -1}; + wxArrayString pathArray; + wxBoxSizer *pPathSizer = new wxBoxSizer(wxHORIZONTAL); +- m_pBmpButtonParentFolder = new wxBitmapButton(this, kParentFolderID, wxGetBitmapFromMemory(PARENT_FOLDER), wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW); ++ m_pBmpButtonParentFolder = new wxBitmapButton(this, kParentFolderID, wxArtProvider::GetBitmap(wxART_GO_DIR_UP, wxART_TOOLBAR, wxDefaultSize), wxDefaultPosition, wxDefaultSize, wxBU_AUTODRAW); + m_pComboBoxPath = new wxComboBox(this, _comboBoxID, wxEmptyString, wxDefaultPosition, wxSize(300,-1), pathArray, wxCB_DROPDOWN | wxCB_SORT ); + pPathSizer->Add(m_pBmpButtonParentFolder, 0, wxALL|wxEXPAND, 0); + pPathSizer->Add(m_pComboBoxPath, 1, wxALL|wxEXPAND, 5); +diff --git a/CPP/ANDROID/Format7zFree/jni/Android.mk b/CPP/ANDROID/Format7zFree/jni/Android.mk +index 7c74e73..48cb4fa 100644 +--- a/CPP/ANDROID/Format7zFree/jni/Android.mk ++++ b/CPP/ANDROID/Format7zFree/jni/Android.mk +@@ -91,8 +91,6 @@ LOCAL_SRC_FILES := \ + ../../../../CPP/7zip/Archive/PeHandler.cpp \ + ../../../../CPP/7zip/Archive/PpmdHandler.cpp \ + ../../../../CPP/7zip/Archive/QcowHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/RarHandler.cpp \ +- ../../../../CPP/7zip/Archive/Rar/Rar5Handler.cpp \ + ../../../../CPP/7zip/Archive/RpmHandler.cpp \ + ../../../../CPP/7zip/Archive/SplitHandler.cpp \ + ../../../../CPP/7zip/Archive/SquashfsHandler.cpp \ +@@ -195,9 +193,6 @@ LOCAL_SRC_FILES := \ + ../../../../CPP/7zip/Crypto/MyAesReg.cpp \ + ../../../../CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp \ + ../../../../CPP/7zip/Crypto/RandGen.cpp \ +- ../../../../CPP/7zip/Crypto/Rar20Crypto.cpp \ +- ../../../../CPP/7zip/Crypto/Rar5Aes.cpp \ +- ../../../../CPP/7zip/Crypto/RarAes.cpp \ + ../../../../CPP/7zip/Crypto/WzAes.cpp \ + ../../../../CPP/7zip/Crypto/ZipCrypto.cpp \ + ../../../../CPP/7zip/Crypto/ZipStrong.cpp \ +diff --git a/ChangeLog b/ChangeLog +index daabd8e..f2a01d6 100644 +--- a/ChangeLog ++++ b/ChangeLog +@@ -28,7 +28,6 @@ Version 16.00 (never published) + - 7z update bcj bugs were fixed. + - split (aaa.001) fixed + - iso loop fix +- - rar4 multivol -stdin kpidSize + - drag and drop 1<2.txt + - memory access violation fix + +@@ -80,11 +79,6 @@ Version 15.12 (never published) + - "There are no errors" string after "Test" operation inside archive. + - The bugs in LZMA SDK were fixed (but these bugs are not related directly to 7-Zip's code). + +- +- - From Windows version of 7-Zip 15.11 : +- - Some bugs were fixed. +- - 7-Zip 15.10 showed incorrect error message about missing volume for multivolume RAR archives. +- + - ..../LZHAM added + + +@@ -104,9 +98,6 @@ Version 15.10 beta + version (-m switch). + - Some bugs were fixed. + - extracting from solid wim archives worked incorrectly in some cases, +- - Also there are some minor changes. +- - 7-Zip can show the name of missing volume for multivolume RAR and VMDK archives. +- - Some internal changes with 7-Zip Benchmark. + + Version 15.09 beta + ================== +@@ -128,8 +119,6 @@ Version 15.08 beta + Version 15.07 beta + ================== + +- - "bin/Codecs/Rar29.so" renamed to "bin/Codecs/Rar.so" +- + - support for cygwin 64 bits + + - support for cygwin 64 bits with asm +@@ -153,15 +142,12 @@ Version 15.07 beta + + - From Windows version of 7-zip 15.06 beta: + +- - 7-Zip now can extract RAR5 archives. + - 7-Zip now doesn't sort files by type while adding to solid 7z archive. + new -mqs switch to sort files by type while adding to solid 7z archive. + - The BUG in 7-Zip File Manager was fixed: + The "Move" operation to open 7z archive didn't delete empty files. + - The BUG in 15.05 was fixed: + console version added some text to the end of stdout stream, is -so switch was used. +- - The BUG in 9.30 - 15.05 was fixed: +- 7-Zip could not open multivolume sfx RAR archive. + - Some bugs were fixed. + + - From Windows version of 7-zip 15.05 beta: +@@ -214,9 +200,6 @@ Version 9.38 + - bug #139 "password from commanline is visible in processes list" + Now the characters of the password are replaced with *. + +- - From Windows version of 7-zip +- - bug#138 If you extract the password with # program crashes +- 7z now supports long password in RAR 3 and 4. + + + +@@ -247,12 +230,6 @@ Version 9.22 + - #3283518 : Asm/x{32,64}/7zCrcT8U.asm introduces executable stack + + +-Version 9.20.1 +-============== +- +- - #3211479 "p7zip 9.20 - "unsupported method" with RAR files - " fixed +- "install.sh" installs again "bin/Codecs/Rar29.so" +- + Version 9.20 + ============ + +@@ -325,8 +302,6 @@ Version 9.13 + - Some bugs were fixed. + + +- - #2863580 "Crash in Rar decoder on a corrupted file" fixed +- + - #2860898 "Dereferencing a zero pointer in cab handler" fixed + + - #2860679 "Division by zero in cab decoder" fixed +@@ -455,7 +430,7 @@ Version 4.59 (never published) + - It's allowed to use -t switch for "list" and "extract" commands. + - Some bugs were fixed. + +- - Bug : wrong timestamp for files extracted from .zip or .rar archives ++ - Bug : wrong timestamp for files extracted from .zip archives + + + Version 4.58 +@@ -468,8 +443,6 @@ Version 4.58 + 2) -mcu switch: 7-Zip uses UTF-8, if there are non-ASCII symbols. + 3) -mcl switch: 7-Zip uses local code page. + - Now it's possible to store file creation time in 7z and ZIP archives (-mtc switch). +- - 7-Zip now can unpack multivolume RAR archives created with +- "old style volume names" scheme and names *.001, *.002, ... + - Now it's possible to use -mSW- and -mSW+ switches instead of -mSW=off and -mSW=on + - Some bugs were fixed. + +@@ -685,7 +658,7 @@ Version 4.44 + + - From Windows version of 7-zip 4.44 : + - 7za : Cab support +- - Speed optimizations for LZMA, Deflate, BZip2 and unRAR. ++ - Speed optimizations for LZMA, Deflate and BZip2. + - fix : now, updating a crypted header archive keeps the crypted header + + - fixes in the help displayed by 7za/7z/7zr. +@@ -805,8 +778,6 @@ Version 4.38 + + - patch #1465026 - Patch for install.sh for packagers + +- - DosDateTimeToFileTime fixed (rar format) +- + - contrib/VirtualFileSystemForMidnightCommander/u7z updated + (thank sgh_punk) + +@@ -923,8 +894,6 @@ Version 4.25 + - Some bugs were fixed + - DOCS/MANUAL/exit_codes.htm added + +- - new plugin for 7z : RAR format support (extracting only) +- + - better dependencies in makefile + + Version 4.23 +@@ -1112,9 +1081,6 @@ Version 4.10 + - new port of 7za from the source of 7za 4.10Beta for Windows + => p7zip now work on big endian CPU. + +- - 7z for Unix is not maintain anymore (because as the source of unrar plugin for 7z +- is not available, 7z is unless on Unix). +- + Version 0.91 + ============ + - add support for FreeBSD 5.2.1 +diff --git a/DOC/License.txt b/DOC/License.txt +index 0bcbe26..5b0dfaa 100644 +--- a/DOC/License.txt ++++ b/DOC/License.txt +@@ -5,15 +5,6 @@ + + 7-Zip Copyright (C) 1999-2016 Igor Pavlov. + +- Licenses for files are: +- +- 1) CPP/7zip/Compress/Rar* files: GNU LGPL + unRAR restriction +- 2) All other files: GNU LGPL +- +- The GNU LGPL + unRAR restriction means that you must follow both +- GNU LGPL rules and unRAR restriction rules. +- +- + GNU LGPL information + -------------------- + +@@ -33,21 +24,5 @@ + USA + + +- unRAR restriction +- ----------------- +- +- The decompression engine for RAR archives was developed using source +- code of unRAR program. +- All copyrights to original unRAR code are owned by Alexander Roshal. +- +- The license for original unRAR code has the following restriction: +- +- The unRAR sources cannot be used to re-create the RAR compression algorithm, +- which is proprietary. Distribution of modified unRAR sources in separate form +- or as a part of other software is permitted, provided that it is clearly +- stated in the documentation and source comments that the code may +- not be used to develop a RAR (WinRAR) compatible archiver. +- +- + -- + Igor Pavlov +diff --git a/DOC/MANUAL/cmdline/switches/update.htm b/DOC/MANUAL/cmdline/switches/update.htm +index 27385b1..0190fc1 100644 +--- a/DOC/MANUAL/cmdline/switches/update.htm ++++ b/DOC/MANUAL/cmdline/switches/update.htm +@@ -139,7 +139,7 @@ someone in another time zone.

+
  • UTC file systems: NTFS +
  • UTC archive formats: .zip with -mtc switch, 7z, tar, gzip2, iso, wim +
  • Local time file systems : FAT, FAT32 +-
  • Local time archive formats : rar, zip, cab ++
  • Local time archive formats : zip, cab + + +

    Examples

    +diff --git a/DOC/MANUAL/general/formats.htm b/DOC/MANUAL/general/formats.htm +index 7996c5c..cd01bd6 100644 +--- a/DOC/MANUAL/general/formats.htm ++++ b/DOC/MANUAL/general/formats.htm +@@ -47,7 +47,6 @@ + NSIS nsis + NTFS ntfs img + MBR mbr +- RAR rar r00 + RPM rpm + PPMD ppmd + QCOW2 qcow qcow2 qcow2c +diff --git a/DOC/Methods.txt b/DOC/Methods.txt +index 1a1c54c..daa94e2 100644 +--- a/DOC/Methods.txt ++++ b/DOC/Methods.txt +@@ -97,12 +97,6 @@ List of defined IDs + 02 - + 02 - BZip2 + +- 03 - [Rar] +- 01 - Rar1 +- 02 - Rar2 +- 03 - Rar3 +- 05 - Rar5 +- + 04 - [Arj] + 01 - Arj(1,2,3) + 02 - Arj4 +@@ -146,10 +140,6 @@ List of defined IDs + 01 - [Zip] + 01 - ZipCrypto (Main Zip crypto algo) + +- 03 - [RAR] +- 02 - +- 03 - Rar29AES (AES-128 + modified SHA-1) +- + 07 - [7z] + 01 - 7zAES (AES-256 + SHA-256) + +diff --git a/DOC/readme.txt b/DOC/readme.txt +index 4a6998c..00591d4 100644 +--- a/DOC/readme.txt ++++ b/DOC/readme.txt +@@ -9,30 +9,9 @@ + License Info + ------------ + +-7-Zip is free software distributed under the GNU LGPL +-(except for unRar code). ++7-Zip is free software distributed under the GNU LGPL. + read License.txt for more infomation about license. + +-Notes about unRAR license: +- +-Please check main restriction from unRar license: +- +- 2. The unRAR sources may be used in any software to handle RAR +- archives without limitations free of charge, but cannot be used +- to re-create the RAR compression algorithm, which is proprietary. +- Distribution of modified unRAR sources in separate form or as a +- part of other software is permitted, provided that it is clearly +- stated in the documentation and source comments that the code may +- not be used to develop a RAR (WinRAR) compatible archiver. +- +-In brief it means: +-1) You can compile and use compiled files under GNU LGPL rules, since +- unRAR license almost has no restrictions for compiled files. +- You can link these compiled files to LGPL programs. +-2) You can fix bugs in source code and use compiled fixed version. +-3) You can not use unRAR sources to re-create the RAR compression algorithm. +- +- + LZMA SDK + -------- + +@@ -96,7 +75,6 @@ DOC Documentation + --- + 7zFormat.txt - 7z format description + copying.txt - GNU LGPL license +- unRarLicense.txt - License for unRAR part of source code + src-history.txt - Sources history + Methods.txt - Compression method IDs + readme.txt - Readme file +diff --git a/DOC/src-history.txt b/DOC/src-history.txt +index 6b48c80..dda8057 100644 +--- a/DOC/src-history.txt ++++ b/DOC/src-history.txt +@@ -188,8 +188,6 @@ HISTORY of the 7-Zip source code + - 7-Zip now has 128 MB dictionary limit for 32-bit version: + It's for speed optimization: kNumLogBits = 9 + sizeof(size_t) / 2; + - TAR: 'D' link flag support. +-- 7-Zip now can unpack multivolume RAR archives created with +- "old style volume names" scheme (-vn switch) and names *.001, *.002, ... + - Fixed bugs: + - 7-Zip FM could not copy / move files to root network folders like \\COMPNAME\FOLDERNAME\ + In case of move it removed original files. +@@ -200,8 +198,6 @@ HISTORY of the 7-Zip source code + 7-zip tries to delete all extra fileds (except for WzAES). + And that code could hang. + - 7-Zip GUI didn't suggest BZip2 dictionary size used in previous run. +- - If creation time stamp was included in .RAR archive, 7-zip used creation time stamp +- as modification time stamp. + + 4.58 alpha 2 2007-12-31 + ------------------------- +@@ -251,7 +247,6 @@ HISTORY of the 7-Zip source code + stratup code, or you must add CPP/Common/CRC.cpp to your project. + - Method ID in .7z now is 63-bit integer (UInt64). + - Open error messages +-- unRar 1.5 fixed + - unShrink fixed + - BUG of 4.43 beta and 4.44 beta was fixed. + 7-Zip compressing to .zip in multi-threading mode didn't work in some cases. +@@ -433,11 +428,6 @@ HISTORY of the 7-Zip source code + contains common resurces + + +-2.30 Beta 19 2002-04-11 +-------------------------- +-- SDK/Archive/Rar/Handler.cpp +- supporting RAR29 +- + 2.30 Beta 18 2002-03-25 + ------------------------- + - SDK/Archive/Cab/MSZipDecoder.cpp +diff --git a/GUI/Contents/Info.plist b/GUI/Contents/Info.plist +index 71650e1..d60b262 100644 +--- a/GUI/Contents/Info.plist ++++ b/GUI/Contents/Info.plist +@@ -311,24 +311,6 @@ + + CFBundleTypeExtensions + +- rar +- RAR +- .r00 +- +- CFBundleTypeIconFile +- p7zip +- CFBundleTypeName +- Rar +- CFBundleTypeRole +- Viewer +- LSTypeIsPackage +- +- NSPersistentStoreTypeKey +- XML +- +- +- CFBundleTypeExtensions +- + ace + ACE + .c00 +diff --git a/README b/README +index b76407f..c03917b 100644 +--- a/README ++++ b/README +@@ -8,7 +8,7 @@ p7zip is a port of the Windows programs 7z.exe and 7za.exe provided by 7-zip. + 7-zip is a file archiver with the highest compression ratio. + Homepage : www.7-zip.org + +- 7z uses plugins (7z.so and Codecs/Rar.so) to handle archives. ++ 7z uses plugins (7z.so) to handle archives. + 7za is a stand-alone executable (7za handles less archive formats than 7z). + 7zr is a light stand-alone executable that supports only 7z/LZMA/BCJ/BCJ2. + +@@ -63,7 +63,6 @@ BUILD : + make sfx : to build bin/7zCon.sfx (7za can now create SFX archive) + make 7z : to build bin/7z and its plugins : + - "bin/7z.so" (GNU LGPL + AES code license) +- - "bin/Codecs/Rar.so" (GNU LGPL + unRAR restriction) + make 7zr : to build bin/7zr + make all : to build bin/7za and bin/7zCon.sfx + make all2 : to build bin/7za, bin/7z (with its plugins) and bin/7zCon.sfx +@@ -74,7 +73,6 @@ BUILD : + + make 7zG : to build bin/7zG and its plugins : + - "bin/7z.so" (GNU LGPL + AES code license) +- - "bin/Codecs/Rar.so" (GNU LGPL + unRAR restriction) + make test_7zG : to test bin/7zG (extracting, archiving, ...) + + +diff --git a/Utils/bin_to_sources.py b/Utils/bin_to_sources.py +index 1be72ec..7da359a 100644 +--- a/Utils/bin_to_sources.py ++++ b/Utils/bin_to_sources.py +@@ -13,9 +13,6 @@ file0='Utils/file_7zCon_sfx.py' + dir0='CPP/7zip/UI/Console' + file0='Utils/file_7z.py' + +-dir0='CPP/7zip/Compress/Rar' +-file0='Utils/file_Codecs_Rar_so.py' +- + dir0='CPP/7zip/Bundles/Format7zFree' + file0='Utils/file_7z_so.py' + +diff --git a/Utils/file_7z_so.py b/Utils/file_7z_so.py +index 7ca9fff..43edb87 100644 +--- a/Utils/file_7z_so.py ++++ b/Utils/file_7z_so.py +@@ -111,8 +111,6 @@ files_cpp=[ + 'CPP/7zip/Archive/PeHandler.cpp', + 'CPP/7zip/Archive/PpmdHandler.cpp', + 'CPP/7zip/Archive/QcowHandler.cpp', +- 'CPP/7zip/Archive/Rar/RarHandler.cpp', +- 'CPP/7zip/Archive/Rar/Rar5Handler.cpp', + 'CPP/7zip/Archive/RpmHandler.cpp', + 'CPP/7zip/Archive/SplitHandler.cpp', + 'CPP/7zip/Archive/SquashfsHandler.cpp', +@@ -215,9 +213,6 @@ files_cpp=[ + 'CPP/7zip/Crypto/MyAesReg.cpp', + 'CPP/7zip/Crypto/Pbkdf2HmacSha1.cpp', + 'CPP/7zip/Crypto/RandGen.cpp', +- 'CPP/7zip/Crypto/Rar20Crypto.cpp', +- 'CPP/7zip/Crypto/Rar5Aes.cpp', +- 'CPP/7zip/Crypto/RarAes.cpp', + 'CPP/7zip/Crypto/WzAes.cpp', + 'CPP/7zip/Crypto/ZipCrypto.cpp', + 'CPP/7zip/Crypto/ZipStrong.cpp', +diff --git a/Utils/generate.py b/Utils/generate.py +index 132024a..62c0456 100755 +--- a/Utils/generate.py ++++ b/Utils/generate.py +@@ -281,7 +281,6 @@ import file_7zr + import file_7zG + import file_7zFM + import file_7z_so +-import file_Codecs_Rar_so + import file_Codecs_Lzham_so + import file_LzmaCon + import file_Client7z +@@ -440,43 +439,6 @@ LOCAL_CFLAGS := -DANDROID_NDK -fexceptions \ + -I../../../include_windows + ''') + +-project_Codecs_Rar=Structure(name="Rar",name2="Rar", +- type=TYPE_DLL, +- need_AES=False, +- includedirs=includedirs_7za, +- defines=[ "EXTERNAL_CODECS", "_FILE_OFFSET_BITS=64", "_LARGEFILE_SOURCE", "_REENTRANT", "ENV_UNIX", "BREAK_HANDLER", "UNICODE", "_UNICODE", "UNIX_USE_WIN_FILE" ], +- files_c=file_Codecs_Rar_so.files_c, +- files_cpp=file_Codecs_Rar_so.files_cpp, +- cmake_end=''' +- +-find_library(DL_LIB dl) +- +-link_directories(${DL_LIB_PATH}) +- +-IF(APPLE) +- TARGET_LINK_LIBRARIES(Rar ${COREFOUNDATION_LIBRARY} ${CMAKE_THREAD_LIBS_INIT}) +-ELSE(APPLE) +- IF(HAVE_PTHREADS) +- TARGET_LINK_LIBRARIES(Rar ${CMAKE_THREAD_LIBS_INIT} dl) +- ENDIF(HAVE_PTHREADS) +-ENDIF(APPLE) +- +-''', +-android_header=r''' +-LOCAL_CFLAGS := -DANDROID_NDK -fexceptions \ +- -DNDEBUG -D_REENTRANT -DENV_UNIX \ +- -DEXTERNAL_CODECS \ +- -DBREAK_HANDLER \ +- -DUNICODE -D_UNICODE -DUNIX_USE_WIN_FILE \ +- -I../../../Windows \ +- -I../../../Common \ +- -I../../../../C \ +--I../../../myWindows \ +--I../../../ \ +--I../../../include_windows +-''') +- +- + + project_Codecs_Lzham=Structure(name="Lzham",name2="Lzham", + type=TYPE_DLL, +@@ -762,7 +724,6 @@ generate_makefile_list('../CPP/7zip/Bundles/Alone/makefile.list',project_7za) + generate_makefile_list('../CPP/7zip/Bundles/Alone7z/makefile.list',project_7zr) + generate_makefile_list('../CPP/7zip/UI/Console/makefile.list',project_7z) + generate_makefile_list('../CPP/7zip/Bundles/Format7zFree/makefile.list',project_Format7zFree) +-generate_makefile_list('../CPP/7zip/Compress/Rar/makefile.list',project_Codecs_Rar,'../../../../bin/Codecs') + generate_makefile_list('../CPP/7zip/Compress/Lzham/makefile.list',project_Codecs_Lzham,'../../../../bin/Codecs') + generate_makefile_list('../CPP/7zip/Bundles/SFXCon/makefile.list',project_7zCon_sfx) + generate_makefile_list('../CPP/7zip/UI/GUI/makefile.list',project_7zG) +@@ -776,7 +737,6 @@ generate_pro('../CPP/7zip/QMAKE/7za/7za.pro',project_7za) + generate_pro('../CPP/7zip/QMAKE/7zr/7zr.pro',project_7zr) + generate_pro('../CPP/7zip/QMAKE/7z_/7z_.pro',project_7z) + generate_pro('../CPP/7zip/QMAKE/Format7zFree/Format7zFree.pro',project_Format7zFree) +-generate_pro('../CPP/7zip/QMAKE/Rar/Rar.pro',project_Codecs_Rar) + generate_pro('../CPP/7zip/QMAKE/Lzham/Lzham.pro',project_Codecs_Lzham) + + generate_premake4('../CPP/7zip/PREMAKE/premake4.lua',project_7za) +diff --git a/contrib/qnx630sp3/qnx630sp3-shared b/contrib/qnx630sp3/qnx630sp3-shared +index 6f5481f..ea07114 100644 +--- a/contrib/qnx630sp3/qnx630sp3-shared ++++ b/contrib/qnx630sp3/qnx630sp3-shared +@@ -8,7 +8,7 @@ mv ./bin/7z ../${BIN} && mv ./bin/7za ../${BIN} && mv ./bin/7zr ../${BIN} && mv + make clean && \ + cp makefile.qnx_shared.so makefile.machine && \ + make 7z && \ +-mv ./bin/7z.so ../${BIN} && mv ./bin/Codecs/Rar.so ../${BIN}/Codecs && \ ++mv ./bin/7z.so ../${BIN} && \ + make clean && \ + mv makefile.machine.bak makefile.machine + echo "All done - look for binaries in ../${BIN}" +diff --git a/makefile b/makefile +index 745c8ed..f8e8e33 100644 +--- a/makefile ++++ b/makefile +@@ -31,7 +31,6 @@ depend: + $(MAKE) -C CPP/7zip/UI/Client7z depend + $(MAKE) -C CPP/7zip/UI/Console depend + $(MAKE) -C CPP/7zip/Bundles/Format7zFree depend +- $(MAKE) -C CPP/7zip/Compress/Rar depend + $(MAKE) -C CPP/7zip/UI/GUI depend + $(MAKE) -C CPP/7zip/UI/FileManager depend + +@@ -42,7 +41,6 @@ sfx: common + common7z:common + $(MKDIR) bin/Codecs + $(MAKE) -C CPP/7zip/Bundles/Format7zFree all +- $(MAKE) -C CPP/7zip/Compress/Rar all + + lzham:common + $(MKDIR) bin/Codecs +@@ -67,7 +65,6 @@ clean_C: + $(MAKE) -C CPP/7zip/UI/FileManager clean + $(MAKE) -C CPP/7zip/UI/GUI clean + $(MAKE) -C CPP/7zip/Bundles/Format7zFree clean +- $(MAKE) -C CPP/7zip/Compress/Rar clean + $(MAKE) -C CPP/7zip/Compress/Lzham clean + $(MAKE) -C CPP/7zip/Bundles/LzmaCon clean2 + $(MAKE) -C CPP/7zip/Bundles/AloneGCOV clean +diff --git a/makefile.oldmake b/makefile.oldmake +index afc681c..690af08 100644 +--- a/makefile.oldmake ++++ b/makefile.oldmake +@@ -31,7 +31,6 @@ depend: + cd CPP/7zip/UI/Client7z ; $(MAKE) depend + cd CPP/7zip/UI/Console ; $(MAKE) depend + cd CPP/7zip/Bundles/Format7zFree ; $(MAKE) depend +- cd CPP/7zip/Compress/Rar ; $(MAKE) depend + cd CPP/7zip/UI/GUI ; $(MAKE) depend + cd CPP/7zip/UI/FileManager ; $(MAKE) depend + +@@ -42,7 +41,6 @@ sfx: common + common7z:common + $(MKDIR) bin/Codecs + cd CPP/7zip/Bundles/Format7zFree ; $(MAKE) all +- cd CPP/7zip/Compress/Rar ; $(MAKE) all + + lzham:common + $(MKDIR) bin/Codecs +@@ -67,7 +65,6 @@ clean_C: + cd CPP/7zip/UI/FileManager ; $(MAKE) clean + cd CPP/7zip/UI/GUI ; $(MAKE) clean + cd CPP/7zip/Bundles/Format7zFree ; $(MAKE) clean +- cd CPP/7zip/Compress/Rar ; $(MAKE) clean + cd CPP/7zip/Compress/Lzham ; $(MAKE) clean + cd CPP/7zip/Bundles/LzmaCon ; $(MAKE) clean2 + cd CPP/7zip/Bundles/AloneGCOV ; $(MAKE) clean +diff --git a/makefile.qnx_shared.so b/makefile.qnx_shared.so +index abd1caf..cff5485 100644 +--- a/makefile.qnx_shared.so ++++ b/makefile.qnx_shared.so +@@ -1,5 +1,5 @@ + ################################################### +-# makefile.machine for "7z.so , Codecs/Rar.so" : ++# makefile.machine for "7z.so" : + # tested with p7zip-4.47_beta on qnx-6.3.0 sp3 x86 target + + OPTFLAGS=-O -s -- cgit v1.2.3 From 696cb41be78e514797c26d9c416c15c66f548364 Mon Sep 17 00:00:00 2001 From: Stefan Reichoer Date: Sun, 4 Sep 2016 01:09:48 +0200 Subject: gnu: Add remind. * gnu/packages/calendar.scm (remind): New variable. --- gnu/packages/calendar.scm | 34 +++++++++++++++++++++++++++++++++- 1 file changed, 33 insertions(+), 1 deletion(-) diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index 7f3d05d08e..cf858996e6 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Kei Kebreau ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Troy Sankey +;;; Copyright © 2016 Stefan Reichoer ;;; ;;; This file is part of GNU Guix. ;;; @@ -26,6 +27,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build utils) + #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system python) #:use-module (gnu packages base) @@ -34,7 +36,8 @@ #:use-module (gnu packages freedesktop) #:use-module (gnu packages icu4c) #:use-module (gnu packages perl) - #:use-module (gnu packages python)) + #:use-module (gnu packages python) + #:use-module (srfi srfi-26)) (define-public libical (package @@ -134,3 +137,32 @@ data units.") able to synchronize with CalDAV servers through vdirsyncer.") (home-page "http://lostpackets.de/khal/") (license expat))) + +(define-public remind + (package + (name "remind") + (version "3.1.15") + (source + (origin + (method url-fetch) + (uri (string-append "https://www.roaringpenguin.com/files/download/" + "remind-" + (string-join (map (cut string-pad <> 2 #\0) + (string-split version #\.)) + ".") + ".tar.gz")) + (sha256 + (base32 + "1hcfcxz5fjzl7606prlb7dgls5kr8z3wb51h48s6qm8ang0b9nla")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f)) ;no "check" target + (home-page "http://www.roaringpenguin.com/products/remind/") + (synopsis "Sophisticated calendar and alarm program") + (description + "Remind allows you to remind yourself of upcoming events and appointments. +Each reminder or alarm can consist of a message sent to standard output, or a +program to be executed. It also features: sophisticated date calculation, +moon phases, sunrise/sunset, Hebrew calendar, alarms, PostScript output and +proper handling of holidays.") + (license gpl2))) -- cgit v1.2.3 From f7c9b01f29a3e7a347b9b47db06a7cf1746df521 Mon Sep 17 00:00:00 2001 From: Rene Saavedra Date: Sun, 4 Sep 2016 00:05:11 -0500 Subject: gnu: nano: Update to 2.7.0. * gnu/packages/nano.scm (nano): Update to 2.7.0. Signed-off-by: Leo Famulari --- gnu/packages/nano.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/nano.scm b/gnu/packages/nano.scm index eabfaa5c96..3c4c699983 100644 --- a/gnu/packages/nano.scm +++ b/gnu/packages/nano.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012 Nikita Karetnikov ;;; Copyright © 2015, 2016 Efraim Flashner +;;; Copyright © 2016 Rene Saavedra ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,7 +29,7 @@ (define-public nano (package (name "nano") - (version "2.5.3") + (version "2.7.0") (source (origin (method url-fetch) @@ -36,7 +37,7 @@ version ".tar.gz")) (sha256 (base32 - "1vhjrcydcfxqq1719vcsvqqnbjbq2523m00dhzag5vwzkc961c5j")))) + "1hzazcrbwjqiw89jjvlj97q0wf385qqkzcm0870pdrixiv7yklax")))) (build-system gnu-build-system) (inputs `(("gettext" ,gnu-gettext) -- cgit v1.2.3 From 14d5ca2e2e57643b6b4acfb980b18b7474c27e7b Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 3 Sep 2016 00:17:27 +0200 Subject: ui: Initialize %FILE-PORT-NAME-CANONICALIZATION to #f. This avoids loads of needless 'stat' calls due to the default 'relative setting and the 'canonicalize-path' calls it leads to. This was especially visible when 'guix substitute' access files in /var/guix/substitute/cache. * guix/ui.scm (run-guix-command): Set %FILE-PORT-NAME-CANONICALIZATION to #f. --- guix/ui.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/guix/ui.scm b/guix/ui.scm index 906b349845..452d16308e 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -1187,7 +1187,9 @@ found." (let ((command-main (module-ref module (symbol-append 'guix- command)))) (parameterize ((program-name command)) - (apply command-main args)))) + ;; Disable canonicalization so we don't don't stat unreasonably. + (with-fluids ((%file-port-name-canonicalization #f)) + (apply command-main args))))) (define (run-guix . args) "Run the 'guix' command defined by command line ARGS. -- cgit v1.2.3 From 2ff0da025745dd4ddce45d34c89fdf39190f9104 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 4 Sep 2016 23:39:17 +0200 Subject: file-systems: Always use (guix build syscalls). * gnu/build/file-systems.scm: Use (guix build syscalls) unconditionally. Override the 'mount' and 'umount' bindings when (guile) provides them. (MS_RDONLY, MS_NOSUID, MS_NODEV, MS_NOEXEC, MS_REMOUNT) (MS_BIND, MS_MOVE): Remove. * guix/build/syscalls.scm (%libc-errno-pointer): Add 'false-if-exception' around 'dynamic-func'. --- gnu/build/file-systems.scm | 34 ++++++++++++---------------------- guix/build/syscalls.scm | 3 ++- 2 files changed, 14 insertions(+), 23 deletions(-) diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index f277cbfa34..f1fccbdf2e 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -19,6 +19,7 @@ (define-module (gnu build file-systems) #:use-module (guix build utils) #:use-module (guix build bournish) + #:use-module (guix build syscalls) #:use-module (rnrs io ports) #:use-module (rnrs bytevectors) #:use-module (ice-9 match) @@ -41,17 +42,16 @@ uuid->string string->uuid - MS_RDONLY - MS_NOSUID - MS_NODEV - MS_NOEXEC - MS_BIND - MS_MOVE bind-mount mount-flags->bit-mask check-file-system - mount-file-system)) + mount-file-system) + #:re-export (mount + umount + MS_BIND + MS_MOVE + MS_RDONLY)) ;;; Commentary: ;;; @@ -61,21 +61,11 @@ ;;; Code: ;; 'mount' is already defined in the statically linked Guile used for initial -;; RAM disks, but in all other cases the (guix build syscalls) module contains -;; the mount binding. -(eval-when (expand load eval) - (unless (defined? 'mount) - (module-use! (current-module) - (resolve-interface '(guix build syscalls))))) - -;; Linux mount flags, from libc's . -(define MS_RDONLY 1) -(define MS_NOSUID 2) -(define MS_NODEV 4) -(define MS_NOEXEC 8) -(define MS_REMOUNT 32) -(define MS_BIND 4096) -(define MS_MOVE 8192) +;; RAM disks, in which case the bindings in (guix build syscalls) do not work +;; (the FFI bindings do not work there). Override them in that case. +(when (module-defined? the-scm-module 'mount) + (set! mount (@ (guile) mount)) + (set! umount (@ (guile) umount))) (define (bind-mount source target) "Bind-mount SOURCE at TARGET." diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm index c663899160..e5315ed6f3 100644 --- a/guix/build/syscalls.scm +++ b/guix/build/syscalls.scm @@ -283,7 +283,8 @@ given TYPES. READ uses WRAP-FIELDS to return its value." (define %libc-errno-pointer ;; Glibc's 'errno' pointer. - (let ((errno-loc (dynamic-func "__errno_location" (dynamic-link)))) + (let ((errno-loc (false-if-exception + (dynamic-func "__errno_location" (dynamic-link))))) (and errno-loc (let ((proc (pointer->procedure '* errno-loc '()))) (proc))))) -- cgit v1.2.3 From 7ca87354db53fd1e1a7a3dfeddb9a598ea064bbe Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 4 Sep 2016 23:41:53 +0200 Subject: Add (guix modules). * guix/modules.scm, tests/modules.scm: New files. * Makefile.am (MODULES, SCM_TESTS): Add them. * doc/guix.texi (G-Expressions): Add an example of 'source-module-closure'. --- Makefile.am | 2 + doc/guix.texi | 22 ++++++++ guix/modules.scm | 155 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ tests/modules.scm | 45 ++++++++++++++++ 4 files changed, 224 insertions(+) create mode 100644 guix/modules.scm create mode 100644 tests/modules.scm diff --git a/Makefile.am b/Makefile.am index 165dfe9727..1a34e0d5ca 100644 --- a/Makefile.am +++ b/Makefile.am @@ -41,6 +41,7 @@ MODULES = \ guix/combinators.scm \ guix/utils.scm \ guix/sets.scm \ + guix/modules.scm \ guix/download.scm \ guix/git-download.scm \ guix/hg-download.scm \ @@ -222,6 +223,7 @@ SCM_TESTS = \ tests/pk-crypto.scm \ tests/pki.scm \ tests/sets.scm \ + tests/modules.scm \ tests/gnu-maintenance.scm \ tests/substitute.scm \ tests/builders.scm \ diff --git a/doc/guix.texi b/doc/guix.texi index d6c041862d..b6ca34a2f3 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3825,6 +3825,28 @@ In this example, the @code{(guix build utils)} module is automatically pulled into the isolated build environment of our gexp, such that @code{(use-modules (guix build utils))} works as expected. +@cindex module closure +@findex source-module-closure +Usually you want the @emph{closure} of the module to be imported---i.e., +the module itself and all the modules it depends on---rather than just +the module; failing to do that, attempts to use the module will fail +because of missing dependent modules. The @code{source-module-closure} +procedure computes the closure of a module by looking at its source file +headers, which comes in handy in this case: + +@example +(use-modules (guix modules)) ;for 'source-module-closure' + +(with-imported-modules (source-module-closure + '((guix build utils) + (gnu build vm))) + (gexp->derivation "something-with-vms" + #~(begin + (use-modules (guix build utils) + (gnu build vm)) + @dots{}))) +@end example + The syntactic form to construct gexps is summarized below. @deffn {Scheme Syntax} #~@var{exp} diff --git a/guix/modules.scm b/guix/modules.scm new file mode 100644 index 0000000000..24f613ff4e --- /dev/null +++ b/guix/modules.scm @@ -0,0 +1,155 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Ludovic Courtès +;;; +;;; 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 . + +(define-module (guix modules) + #:use-module ((guix utils) #:select (memoize)) + #:use-module (guix sets) + #:use-module (srfi srfi-26) + #:use-module (ice-9 match) + #:export (source-module-closure + live-module-closure + guix-module-name?)) + +;;; Commentary: +;;; +;;; This module provides introspection tools for Guile modules at the source +;;; level. Namely, it allows you to determine the closure of a module; it +;;; does so just by reading the 'define-module' clause of the module and its +;;; dependencies. This is primarily useful as an argument to +;;; 'with-imported-modules'. +;;; +;;; Code: + +(define (colon-symbol? obj) + "Return true if OBJ is a symbol that starts with a colon." + (and (symbol? obj) + (string-prefix? ":" (symbol->string obj)))) + +(define (colon-symbol->keyword symbol) + "Convert SYMBOL to a keyword after stripping its initial ':'." + (symbol->keyword + (string->symbol (string-drop (symbol->string symbol) 1)))) + +(define (extract-dependencies clauses) + "Return the list of modules imported according to the given 'define-module' +CLAUSES." + (let loop ((clauses clauses) + (result '())) + (match clauses + (() + (reverse result)) + ((#:use-module (module (or #:select #:hide #:prefix #:renamer) _) + rest ...) + (loop rest (cons module result))) + ((#:use-module module rest ...) + (loop rest (cons module result))) + ((#:autoload module _ rest ...) + (loop rest (cons module result))) + (((or #:export #:re-export #:export-syntax #:re-export-syntax + #:replace #:version) + _ rest ...) + (loop rest result)) + (((or #:pure #:no-backtrace) rest ...) + (loop rest result)) + (((? colon-symbol? symbol) rest ...) + (loop (cons (colon-symbol->keyword symbol) rest) + result))))) + +(define module-file-dependencies + (memoize + (lambda (file) + "Return the list of the names of modules that the Guile module in FILE +depends on." + (call-with-input-file file + (lambda (port) + (match (read port) + (('define-module name clauses ...) + (extract-dependencies clauses)) + ;; XXX: R6RS 'library' form is ignored. + (_ + '()))))))) + +(define (module-name->file-name module) + "Return the file name for MODULE." + (string-append (string-join (map symbol->string module) "/") + ".scm")) + +(define (guix-module-name? name) + "Return true if NAME (a list of symbols) denotes a Guix or GuixSD module." + (match name + (('guix _ ...) #t) + (('gnu _ ...) #t) + (_ #f))) + +(define* (source-module-dependencies module #:optional (load-path %load-path)) + "Return the modules used by MODULE by looking at its source code." + ;; The (system syntax) module is a special-case because it has no + ;; corresponding source file (as of Guile 2.0.) + (if (equal? module '(system syntax)) + '() + (module-file-dependencies + (search-path load-path + (module-name->file-name module))))) + +(define* (module-closure modules + #:key + (select? guix-module-name?) + (dependencies source-module-dependencies)) + "Return the closure of MODULES, calling DEPENDENCIES to determine the list +of modules used by a given module. MODULES and the result are a list of Guile +module names. Only modules that match SELECT? are considered." + (let loop ((modules modules) + (result '()) + (visited (set))) + (match modules + (() + (reverse result)) + ((module rest ...) + (cond ((set-contains? visited module) + (loop rest result visited)) + ((select? module) + (loop (append (dependencies module) rest) + (cons module result) + (set-insert module visited))) + (else + (loop rest result visited))))))) + +(define* (source-module-closure modules + #:optional (load-path %load-path) + #:key (select? guix-module-name?)) + "Return the closure of MODULES by reading 'define-module' forms in their +source code. MODULES and the result are a list of Guile module names. Only +modules that match SELECT? are considered." + (module-closure modules + #:dependencies (cut source-module-dependencies <> load-path) + #:select? select?)) + +(define* (live-module-closure modules + #:key (select? guix-module-name?)) + "Return the closure of MODULES, determined by looking at live (loaded) +module information. MODULES and the result are a list of Guile module names. +Only modules that match SELECT? are considered." + (define (dependencies module) + (map module-name + (delq the-scm-module (module-uses (resolve-module module))))) + + (module-closure modules + #:dependencies dependencies + #:select? select?)) + +;;; modules.scm ends here diff --git a/tests/modules.scm b/tests/modules.scm new file mode 100644 index 0000000000..04945e531b --- /dev/null +++ b/tests/modules.scm @@ -0,0 +1,45 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Ludovic Courtès +;;; +;;; 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 . + +(define-module (test-modules) + #:use-module (guix modules) + #:use-module ((guix build-system gnu) #:select (%gnu-build-system-modules)) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-64)) + +(test-begin "modules") + +(test-assert "closure of (guix build gnu-build-system)" + (lset= equal? + (live-module-closure '((guix build gnu-build-system))) + (source-module-closure '((guix build gnu-build-system))) + %gnu-build-system-modules + (source-module-closure %gnu-build-system-modules) + (live-module-closure %gnu-build-system-modules))) + +(test-assert "closure of (gnu build install)" + (lset= equal? + (live-module-closure '((gnu build install))) + (source-module-closure '((gnu build install))))) + +(test-assert "closure of (gnu build vm)" + (lset= equal? + (live-module-closure '((gnu build vm))) + (source-module-closure '((gnu build vm))))) + +(test-end) -- cgit v1.2.3 From 239c6e276214813f59f761c9dc5cc0e9d266b49b Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 4 Sep 2016 23:42:50 +0200 Subject: system: Use 'source-module-closure' where needed. * gnu/system/vm.scm (%vm-module-closure): Remove. (expression->derivation-in-linux-vm): Use 'source-module-closure' instead of %VM-MODULE-CLOSURE. (qemu-image): Likewise. * gnu/system/linux-initrd.scm (expression->initrd): Likewise. (flat-linux-module-directory, base-initrd): Likewise. * gnu/system/mapped-devices.scm (open-luks-device): Likewise. --- gnu/system/linux-initrd.scm | 25 +++++++++++-------------- gnu/system/mapped-devices.scm | 5 +++-- gnu/system/vm.scm | 22 +++++----------------- 3 files changed, 19 insertions(+), 33 deletions(-) diff --git a/gnu/system/linux-initrd.scm b/gnu/system/linux-initrd.scm index bbaa5c0f89..174239a566 100644 --- a/gnu/system/linux-initrd.scm +++ b/gnu/system/linux-initrd.scm @@ -27,6 +27,7 @@ #:select (%store-prefix)) #:use-module ((guix derivations) #:select (derivation->output-path)) + #:use-module (guix modules) #:use-module (gnu packages compression) #:use-module (gnu packages linux) #:use-module (gnu packages guile) @@ -66,10 +67,8 @@ the derivations referenced by EXP are automatically copied to the initrd." (mlet %store-monad ((init (gexp->script "init" exp #:guile guile))) (define builder - (with-imported-modules '((guix cpio) - (guix build utils) - (guix build store-copy) - (gnu build linux-initrd)) + (with-imported-modules (source-module-closure + '((gnu build linux-initrd))) #~(begin (use-modules (gnu build linux-initrd)) @@ -88,9 +87,9 @@ the derivations referenced by EXP are automatically copied to the initrd." "Return a flat directory containing the Linux kernel modules listed in MODULES and taken from LINUX." (define build-exp - (with-imported-modules '((guix build utils) - (guix elf) - (gnu build linux-modules)) + (with-imported-modules (source-module-closure + '((guix build utils) + (gnu build linux-modules))) #~(begin (use-modules (ice-9 match) (ice-9 regex) (srfi srfi-1) @@ -223,13 +222,11 @@ loaded at boot time in the order in which they appear." (mlet %store-monad ((kodir (flat-linux-module-directory linux linux-modules))) (expression->initrd - (with-imported-modules '((guix build bournish) - (guix build utils) - (guix build syscalls) - (gnu build linux-boot) - (gnu build linux-modules) - (gnu build file-systems) - (guix elf)) + (with-imported-modules (source-module-closure + '((gnu build linux-boot) + (guix build utils) + (guix build bournish) + (gnu build file-systems))) #~(begin (use-modules (gnu build linux-boot) (guix build utils) diff --git a/gnu/system/mapped-devices.scm b/gnu/system/mapped-devices.scm index 7b91fcfc41..2ce35eaa07 100644 --- a/gnu/system/mapped-devices.scm +++ b/gnu/system/mapped-devices.scm @@ -20,6 +20,7 @@ (define-module (gnu system mapped-devices) #:use-module (guix gexp) #:use-module (guix records) + #:use-module (guix modules) #:use-module (gnu services) #:use-module (gnu services shepherd) #:autoload (gnu packages cryptsetup) (cryptsetup) @@ -95,8 +96,8 @@ (define (open-luks-device source target) "Return a gexp that maps SOURCE to TARGET as a LUKS device, using 'cryptsetup'." - (with-imported-modules '((gnu build file-systems) - (guix build bournish)) + (with-imported-modules (source-module-closure + '((gnu build file-systems))) #~(let ((source #$source)) ;; XXX: 'use-modules' should be at the top level. (use-modules (rnrs bytevectors) ;bytevector? diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index c31e3a80ef..4c53edc0cf 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -26,6 +26,7 @@ #:use-module (guix packages) #:use-module (guix monads) #:use-module (guix records) + #:use-module (guix modules) #:use-module ((gnu build vm) #:select (qemu-command)) @@ -90,21 +91,6 @@ (options "trans=virtio") (check? #f)))) -(define %vm-module-closure - ;; The closure of (gnu build vm), roughly. - ;; FIXME: Compute it automatically. - '((gnu build vm) - (gnu build install) - (gnu build linux-boot) - (gnu build linux-modules) - (gnu build file-systems) - (guix elf) - (guix records) - (guix build utils) - (guix build syscalls) - (guix build bournish) - (guix build store-copy))) - (define* (expression->derivation-in-linux-vm name exp #:key (system (%current-system)) @@ -148,7 +134,8 @@ made available under the /xchg CIFS share." (define builder ;; Code that launches the VM that evaluates EXP. - (with-imported-modules %vm-module-closure + (with-imported-modules (source-module-closure '((guix build utils) + (gnu build vm))) #~(begin (use-modules (guix build utils) (gnu build vm)) @@ -205,7 +192,8 @@ register INPUTS in the store database of the image so that Guix can be used in the image." (expression->derivation-in-linux-vm name - (with-imported-modules %vm-module-closure + (with-imported-modules (source-module-closure '((gnu build vm) + (guix build utils))) #~(begin (use-modules (gnu build vm) (guix build utils)) -- cgit v1.2.3 From e49e74f5c43572628ed903b9ddbe208a006a68da Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 5 Sep 2016 10:47:15 +0300 Subject: gnu: bitcoin-core: Update to 0.13.0. * gnu/packages/finance.scm (bitcoin-core): Update to 0.13.0. [native-inputs]: Use python-3 over python-2. --- gnu/packages/finance.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 21a22768fd..57c9f60bac 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -46,7 +46,7 @@ (define-public bitcoin-core (package (name "bitcoin-core") - (version "0.12.1") + (version "0.13.0") (source (origin (method url-fetch) (uri @@ -54,11 +54,11 @@ version "/bitcoin-" version ".tar.gz")) (sha256 (base32 - "16g1cnasy24275kxrs0cg48nbx1dk54xvxm1pdsvk7y30mn3pz08")))) + "1nhw2s8p1hg6715l6kc1c7psqhkzfwhfrrgiar17zccvd14p0z8c")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) - ("python" ,python-2) ; for the tests + ("python" ,python) ; for the tests ("util-linux" ,util-linux))) ; provides the hexdump command for tests (inputs `(("bdb" ,bdb-5.3) ; with 6.2.23, there is an error: ambiguous overload -- cgit v1.2.3 From d84a5861de97856ad18cf8939eab86cbfab1eb93 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 5 Sep 2016 11:19:20 +0300 Subject: gnu: libvpx: Update to 1.6.0. * gnu/packages/video.scm (libvpx): Update to 1.6.0. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 5ec1424b22..864e691666 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -887,7 +887,7 @@ access to mpv's powerful playback capabilities.") (define-public libvpx (package (name "libvpx") - (version "1.5.0") + (version "1.6.0") (source (origin (method url-fetch) (uri (string-append "http://storage.googleapis.com/" @@ -895,7 +895,7 @@ access to mpv's powerful playback capabilities.") name "-" version ".tar.bz2")) (sha256 (base32 - "15v7qw0ydyxn08ksb6lxn1l51pxgpwgshdwd3275yrr5hs86fv9h")) + "1basd6dda5di9p7jhc0f4f52wzm9c3hsravqspw6ibpcn5gbpbyh")) (patches (search-patches "libvpx-CVE-2016-2818.patch")))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From 818db70872312c128b1a69466919b6dd8ec890b1 Mon Sep 17 00:00:00 2001 From: "John J. Foerch" Date: Wed, 3 Aug 2016 21:36:52 -0500 Subject: gnu: Add ola. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/ola.scm (ola): New variable. Signed-off-by: Ludovic Courtès --- gnu/local.mk | 1 + gnu/packages/lighting.scm | 75 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 76 insertions(+) create mode 100644 gnu/packages/lighting.scm diff --git a/gnu/local.mk b/gnu/local.mk index 9132c94717..50363ef026 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -213,6 +213,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/libusb.scm \ %D%/packages/libunwind.scm \ %D%/packages/libupnp.scm \ + %D%/packages/lighting.scm \ %D%/packages/links.scm \ %D%/packages/linux.scm \ %D%/packages/lirc.scm \ diff --git a/gnu/packages/lighting.scm b/gnu/packages/lighting.scm new file mode 100644 index 0000000000..5101fba208 --- /dev/null +++ b/gnu/packages/lighting.scm @@ -0,0 +1,75 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 John J. Foerch +;;; +;;; 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 . + +(define-module (gnu packages lighting) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (gnu packages bison) + #:use-module (gnu packages check) + #:use-module (gnu packages compression) + #:use-module (gnu packages gnunet) + #:use-module (gnu packages flex) + #:use-module (gnu packages libftdi) + #:use-module (gnu packages libusb) + #:use-module (gnu packages linux) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages protobuf)) + +(define-public ola + (package + (name "ola") + (version "0.10.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/OpenLightingProject/ola/releases/download/" + version "/ola-" version ".tar.gz")) + (sha256 + (base32 + "09zx1c8nkj29shfdzkahrh9397m3mwnsy0gj7jrb63f89f3n2vlq")))) + (build-system gnu-build-system) + (native-inputs + `(("bison" ,bison) + ("cppunit" ,cppunit) + ("flex" ,flex) + ("pkg-config" ,pkg-config))) + (inputs + `(("libftdi" ,libftdi) + ("libmicrohttpd" ,libmicrohttpd) + ("libusb" ,libusb) + ("libuuid" ,util-linux) + ("zlib" ,zlib))) + (propagated-inputs + `(("protobuf" ,protobuf))) ;; for pkg-config --libs libola + (arguments + `(;; G++ >= 4.8 macro expansion tracking requires lots of memory, causing + ;; build to fail on low memory systems. We disable that with the + ;; following configure flags. + #:configure-flags (list "CXXFLAGS=-ftrack-macro-expansion=0"))) + (synopsis "Framework for controlling entertainment lighting equipment") + (description "The Open Lighting Architecture is a framework for lighting +control information. It supports a range of protocols and over a dozen USB +devices. It can run as a standalone service, which is useful for converting +signals between protocols, or alternatively using the OLA API, it can be used +as the backend for lighting control software. OLA runs on many different +platforms including ARM, which makes it a perfect fit for low cost Ethernet to +DMX gateways.") + (home-page "https://www.openlighting.org/ola") + (license license:lgpl2.1+))) -- cgit v1.2.3 From 24262239da96eeabb0840c178ac6c80792e405c5 Mon Sep 17 00:00:00 2001 From: Clément Lassieur Date: Sun, 4 Sep 2016 22:42:35 +0200 Subject: gnu: Add mb2md. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mail.scm (mb2md): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/mail.scm | 52 +++++++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 50 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c07bc529d0..3c29a9558a 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2016 Alex Kost ;;; Copyright © 2016 Troy Sankey ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -77,14 +78,16 @@ #:use-module (gnu packages xorg) #:use-module ((guix licenses) #:select (gpl2 gpl2+ gpl3 gpl3+ lgpl2.1 lgpl2.1+ lgpl3+ - non-copyleft (expat . license:expat) bsd-3)) + non-copyleft (expat . license:expat) bsd-3 + public-domain)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix utils) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) - #:use-module (guix build-system python)) + #:use-module (guix build-system python) + #:use-module (guix build-system trivial)) (define-public mailutils (package @@ -1308,3 +1311,48 @@ Khard can also be used from within the email client @command{mutt}.") (description "Mail::SPF is the Sender Policy Framework implemented in Perl.") (license bsd-3))) + +(define-public mb2md + (package + (name "mb2md") + (version "3.20") + (source (origin + (method url-fetch) + (uri (string-append + "http://batleth.sapienti-sat.org/projects/mb2md/mb2md-" + version ".pl.gz")) + (sha256 + (base32 + "0bvkky3c90738h3skd2f1b2yy5xzhl25cbh9w2dy97rs86ssjidg")))) + (build-system trivial-build-system) + (arguments + '(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((source (assoc-ref %build-inputs "source")) + (out (assoc-ref %outputs "out")) + (bin (string-append out "/bin")) + (perl (assoc-ref %build-inputs "perl")) + (gzip (assoc-ref %build-inputs "gzip")) + (perl-timedate (assoc-ref %build-inputs "perl-timedate")) + (perl5lib (string-append perl-timedate "/lib/perl5/site_perl"))) + (mkdir-p bin) + (with-directory-excursion bin + (copy-file source "mb2md.gz") + (system* (string-append gzip "/bin/gzip") "-d" "mb2md.gz") + (substitute* "mb2md" + (("#!/usr/bin/perl") + (string-append "#!/usr/bin/perl -I " perl5lib))) + (patch-shebang "mb2md" (list (string-append perl "/bin"))) + (chmod "mb2md" #o555)) + #t)))) + (native-inputs `(("gzip", gzip))) + (inputs `(("perl" ,perl) + ("perl-timedate" ,perl-timedate))) + (home-page "http://batleth.sapienti-sat.org/projects/mb2md/") + (synopsis "Mbox to maildir converter") + (description + "Mb2md is a Perl script that takes one or more mbox format files and +converts them to maildir format directories.") + (license public-domain))) -- cgit v1.2.3 From 35b380648b063db9a8b11352b1ae85d8f1ff7c70 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 5 Sep 2016 13:13:30 +0300 Subject: gnu: Remove elementary, evas-generic-loaders, emotion-generic-players. * gnu/packages/enlightenment.scm (elementary, evas-generic-loaders) (emotion-generic-players): Remove variables. These packages were absorbed by efl-1.18.0. --- gnu/packages/enlightenment.scm | 84 ------------------------------------------ 1 file changed, 84 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index d465da9d71..7cd11b59a2 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -149,90 +149,6 @@ removable devices or support for multimedia.") ;; Different parts are under different licenses. (license (list license:bsd-2 license:lgpl2.1 license:zlib)))) -(define-public elementary - (package - (name "elementary") - (version "1.17.1") - (source (origin - (method url-fetch) - (uri - (string-append "https://download.enlightenment.org/rel/libs/" - "elementary/elementary-" version ".tar.xz")) - (sha256 - (base32 - "149xjq4z71l44w1kd8zks9b2g0wjc9656w46hzd27b58afj1dqc5")))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) - (propagated-inputs - `(("efl" ,efl))) ; elementary.pc, elementary-cxx.pc - (home-page "https://www.enlightenment.org") - (synopsis "Widget library of Enlightenment world") - (description - "Elementary is a widget library/toolkit, part of the Enlightenment -Foundation Libraries. It is build upon Edje and Evas libraries and uses -full capabilities of EFL.") - (license license:lgpl2.1))) - -(define-public evas-generic-loaders - (package - (name "evas-generic-loaders") - (version "1.17.0") - (source (origin - (method url-fetch) - (uri - (string-append - "https://download.enlightenment.org/rel/libs/" - "evas_generic_loaders/evas_generic_loaders-" - version ".tar.xz")) - (sha256 - (base32 - "0ynq1nx0bfgg19p4vki1fap36yyip53zaxpzncx2slr6jcx1kxf2")))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) - (inputs - `(("efl" ,efl) - ("gstreamer" ,gstreamer) - ("gst-plugins-base" ,gst-plugins-base) - ("librsvg" ,librsvg) - ("libspectre" ,libspectre) - ("poppler" ,poppler))) - (home-page "https://www.enlightenment.org") - (synopsis "Plugins for integration of various file types into Evas") - (description - "Evas-generic-loaders is a collection of interfaces to outside libraries -and applications allowing to natively open pictures, documents and media -files in Evas (EFL canvas library).") - (license license:gpl2+))) - -(define-public emotion-generic-players - (package - (name "emotion-generic-players") - (version "1.17.0") - (source (origin - (method url-fetch) - (uri - (string-append "https://download.enlightenment.org/rel/libs/" - "emotion_generic_players/emotion_generic_players" - "-" version ".tar.xz")) - (sha256 - (base32 - "03kaql95mk0c5j50v3c5i5lmlr3gz7xlh8p8q87xz8zf9j5h1pp7")))) - (build-system gnu-build-system) - (native-inputs - `(("pkg-config" ,pkg-config))) - (inputs - `(("efl" ,efl) - ("vlc" ,vlc))) - (home-page "https://www.enlightenment.org") - (synopsis "Plugins for integrating media players in EFL based applications") - (description - "Emotion-generic-players is a collection of interfaces to outside libraries -and applications allowing to natively play video files through Emotion. -The only supported now is VLC.") - (license license:bsd-2))) - (define-public terminology (package (name "terminology") -- cgit v1.2.3 From f99cfc19a2f0617c2d438044bfc1431b1854c125 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 5 Sep 2016 15:23:11 +0300 Subject: gnu: borg: Rebuild generated C files. * gnu/packages/backup.scm (borg)[source]: Remove generated '.c' files. [native-inputs]: Add python-cython. --- gnu/packages/backup.scm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index dcab95fa28..4678b9b91f 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -410,10 +410,13 @@ detection, and lossless compression.") (source (origin (method url-fetch) (uri (pypi-uri "borgbackup" version)) - (sha256 (base32 - "1l9iw55w5x51yxl3q89cf6avg80lajxvc8qz584hrsmnk6i56cr0")))) + "1l9iw55w5x51yxl3q89cf6avg80lajxvc8qz584hrsmnk6i56cr0")) + (modules '((guix build utils))) + (snippet + '(for-each + delete-file (find-files "borg" "^(c|h|p).*\\.c$"))))) (build-system python-build-system) (arguments `(#:phases @@ -437,7 +440,8 @@ detection, and lossless compression.") (install-file "docs/_build/man/borg.1" man) #t)))))))) (native-inputs - `(("python-setuptools-scm" ,python-setuptools-scm) + `(("python-cython" ,python-cython) + ("python-setuptools-scm" ,python-setuptools-scm) ;; For generating the documentation. ("python-sphinx" ,python-sphinx) ("python-sphinx-rtd-theme" ,python-sphinx-rtd-theme))) -- cgit v1.2.3 From ddfd10c88449d096cdd23a9220cc02544c56e0ad Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 5 Sep 2016 17:49:33 +0300 Subject: gnu: font-gnu-unifont: Update to 9.0.02. * gnu/packages/fonts.scm (font-gnu-unifont): Update to 9.0.02. --- gnu/packages/fonts.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 9b2281ad20..fe6c227029 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -601,7 +601,7 @@ languages, plus Greek and Cyrillic.") (define-public font-gnu-unifont (package (name "font-gnu-unifont") - (version "9.0.01") + (version "9.0.02") (source (origin (method url-fetch) (uri (string-append @@ -609,7 +609,7 @@ languages, plus Greek and Cyrillic.") version ".tar.gz")) (sha256 (base32 - "14z4lx6asa94i73m19lsdgzqjn9xzi8320h3dafvzq9ima94pm9b")))) + "1ss6cp2bs8mzz3jqjbmmi877jfdb1jjcd29dvyk3i8qy7r0d44qm")))) (build-system gnu-build-system) (outputs '("out" ; TrueType version "pcf" ; PCF (bitmap) version -- cgit v1.2.3 From 105d4ee2dfa2297482f4a2503802b79d679675c7 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 12:42:12 +0000 Subject: gnu: Add perl-uri-template. * gnu/packages/web.scm (perl-uri-template): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/web.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index e004062fba..22d7384c75 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2964,6 +2964,30 @@ URI::Find::Schemeless. For a command-line interface, urifind is provided.") methods for WebSocket URIs as it does for HTTP URIs.") (license (package-license perl)))) +(define-public perl-uri-template + (package + (name "perl-uri-template") + (version "0.22") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/B/BR/BRICAS/URI-Template-" + version ".tar.gz")) + (sha256 + (base32 + "08kjjb4c0v9gqfrfnj1wkivylxl05finn11ra64dj136fhmnyrbg")))) + (build-system perl-build-system) + (inputs + `(("perl-uri" ,perl-uri))) + (native-inputs + `(("perl-test-pod-coverage" ,perl-test-pod-coverage) + ("perl-test-pod" ,perl-test-pod) + ("perl-json" ,perl-json))) + (home-page "http://search.cpan.org/dist/URI-Template") + (synopsis "Object for handling URI templates") + (description "This perl module provides a wrapper around URI templates as described in +RFC 6570.") + (license (package-license perl)))) + (define-public perl-www-curl (package (name "perl-www-curl") -- cgit v1.2.3 From ba24828805a3904b141a1afb5a5bb1b13b668f22 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 13:02:00 +0000 Subject: gnu: Add perl-class-errorhandler. * gnu/packages/perl.scm (perl-class-errorhandler): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index aef92f4b79..4e3d1fa8d0 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -700,6 +700,27 @@ subclasses and can be overridden.") type for perl.") (license (package-license perl)))) +(define-public perl-class-errorhandler + (package + (name "perl-class-errorhandler") + (version "0.04") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/T/TO/TOKUHIROM/" + "Class-ErrorHandler-" version ".tar.gz")) + (sha256 + (base32 + "00j5f0z4riyq7i95jww291dpmbn0hmmvkcbrh7p0p8lpqz7jsb9l")))) + (build-system perl-build-system) + (home-page "http://search.cpan.org/dist/Class-ErrorHandler") + (synopsis "Base class for error handling") + (description + "@code{Class::ErrorHandler} provides an error-handling mechanism that is generic +enough to be used as the base class for a variety of OO classes. Subclasses inherit +its two error-handling methods, error and errstr, to communicate error messages back +to the calling program.") + (license (package-license perl)))) + (define-public perl-class-factory-util (package (name "perl-class-factory-util") -- cgit v1.2.3 From 951e924c9b0f34ed57d7676b2f67d520b05b8482 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 13:13:18 +0000 Subject: gnu: Add perl-datetime-format-mail. * gnu/packages/perl.scm (perl-datetime-format-mail): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/perl.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 4e3d1fa8d0..db941fbf09 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1792,6 +1792,27 @@ to create DateTime objects, with some custom tweaks to smooth out the rough edges (mainly concerning timezone detection and selection).") (license (package-license perl)))) +(define-public perl-datetime-format-mail + (package + (name "perl-datetime-format-mail") + (version "0.403") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/B/BO/BOOK/" + "DateTime-Format-Mail-" version ".tar.gz")) + (sha256 + (base32 + "1c7wapbi9g9p2za52l3skhh31vg4da5kx2yfqzsqyf3p8iff7y4d")))) + (build-system perl-build-system) + (inputs + `(("perl-datetime" ,perl-datetime) + ("perl-params-validate" ,perl-params-validate))) + (home-page "http://search.cpan.org/dist/DateTime-Format-Mail") + (synopsis "Convert between DateTime and RFC2822/822 formats") + (description "RFCs 2822 and 822 specify date formats to be used by email. +This module parses and emits such dates.") + (license (package-license perl)))) + (define-public perl-devel-caller (package (name "perl-devel-caller") -- cgit v1.2.3 From 8a0773a2b4e4f3d7f3536a0c5746e2258cbc9a09 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 13:24:11 +0000 Subject: gnu: Add perl-datetime-format-w3cdtf. * gnu/packages/perl.scm (perl-datetime-format-w3cdtf): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/perl.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index db941fbf09..78c4a9a5db 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -1813,6 +1813,32 @@ edges (mainly concerning timezone detection and selection).") This module parses and emits such dates.") (license (package-license perl)))) +(define-public perl-datetime-format-w3cdtf + (package + (name "perl-datetime-format-w3cdtf") + (version "0.06") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/G/GW/GWILLIAMS/" + "DateTime-Format-W3CDTF-" version ".tar.gz")) + (sha256 + (base32 + "0ymxizwd2zfx8b4bmrmv4k439qwfwf2522jrvn4hlay5v6z459dr")))) + (build-system perl-build-system) + (inputs + `(("perl-datetime" ,perl-datetime))) + (native-inputs + `(("perl-test-pod" ,perl-test-pod) + ("perl-test-pod-coverage" ,perl-test-pod-coverage))) + (home-page "http://search.cpan.org/dist/DateTime-Format-W3CDTF") + (synopsis "Parse and format W3CDTF datetime strings") + (description + "This module understands the W3CDTF date/time format, an ISO 8601 profile, +defined at https://www.w3.org/TR/NOTE-datetime. This format is the native date +format of RSS 1.0. It can be used to parse these formats in order to create +the appropriate objects.") + (license (package-license perl)))) + (define-public perl-devel-caller (package (name "perl-devel-caller") -- cgit v1.2.3 From 46173a0d10d83c4b3714a38632df5d8c93f4f642 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 13:45:37 +0000 Subject: gnu: Add perl-feed-find. * gnu/packages/web.scm (perl-feed-find): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/web.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 22d7384c75..3822d7fe0d 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -1789,6 +1789,33 @@ by calling Encode::encode(locale => $bytes) and converted back again with Encode::decode(locale => $string).") (home-page "http://search.cpan.org/~gaas/Encode-Locale/"))) +(define-public perl-feed-find + (package + (name "perl-feed-find") + (version "0.07") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/B/BT/BTROTT/" + "Feed-Find-" version ".tar.gz")) + (sha256 + (base32 + "0sa33cm8ww55cymnl8j7b5yspi2y5xkkkgqqa4h6fs3wdqylz600")))) + (build-system perl-build-system) + (arguments + ;; Tests expect to query files at http://stupidfool.org/perl/feeds/ + `(#:tests? #f)) + (inputs + `(("perl-class-errorhandler" ,perl-class-errorhandler) + ("perl-html-parser" ,perl-html-parser) + ("perl-libwww" ,perl-libwww) + ("perl-uri" ,perl-uri))) + (home-page "http://search.cpan.org/dist/Feed-Find") + (synopsis "Syndication feed auto-discovery") + (description "@code{Feed::Find} implements feed auto-discovery for finding +syndication feeds, given a URI. It will discover the following feed formats: +RSS 0.91, RSS 1.0, RSS 2.0, Atom.") + (license (package-license perl)))) + (define-public perl-file-listing (package (name "perl-file-listing") -- cgit v1.2.3 From b51b2bf3a41dc8b4ef48f41f1862a2cfe33aedd3 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 13:55:21 +0000 Subject: gnu: Add perl-uri-fetch. * gnu/packages/web.scm (perl-uri-fetch): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/web.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 3822d7fe0d..e0b649f5ac 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2945,6 +2945,31 @@ represent \"Uniform Resource Identifier references\" as specified in RFC 2396 and updated by RFC 2732.") (home-page "http://search.cpan.org/dist/URI/"))) +(define-public perl-uri-fetch + (package + (name "perl-uri-fetch") + (version "0.13") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/N/NE/NEILB/" + "URI-Fetch-" version ".tar.gz")) + (sha256 + (base32 + "0rw6xiqm70s218aii9id3hf8j3pz6n22xnwd8v9m1ff2bnh63c0d")))) + (build-system perl-build-system) + (arguments + `(#:tests? #f)) ; Tests require internet connection to succeed + (inputs + `(("perl-class-errorhandler" ,perl-class-errorhandler) + ("perl-libwww" ,perl-libwww) + ("perl-uri" ,perl-uri))) + (home-page "http://search.cpan.org/dist/URI-Fetch") + (synopsis "Smart URI fetching/caching") + (description "@code{URI::Fetch} is a smart client for fetching HTTP pages, +notably syndication feeds (RSS, Atom, and others), in an intelligent, bandwidth- +and time-saving way.") + (license (package-license perl)))) + (define-public perl-uri-find (package (name "perl-uri-find") -- cgit v1.2.3 From 3cf17446cf2a67b2de81617dd07b07baf24693e6 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 14:12:25 +0000 Subject: gnu: Add perl-unicode-utf8. * gnu/packages/perl.scm (perl-unicode-utf8): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/perl.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 78c4a9a5db..6192dae3d8 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -6679,6 +6679,30 @@ described in Unicode Standard Annex #14. The @code{East_Asian_Width} property defined by Annex #11 is used to determine breaking positions.") (license (package-license perl)))) +(define-public perl-unicode-utf8 + (package + (name "perl-unicode-utf8") + (version "0.60") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/C/CH/CHANSEN/" + "Unicode-UTF8-" version ".tar.gz")) + (sha256 + (base32 + "1g3fp47slsk7wbz3189kpg342lfs7lpsy570jxnx7s9v59dg5k7n")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-fatal" ,perl-test-fatal) + ("perl-test-leaktrace" ,perl-test-leaktrace) + ("perl-variable-magic" ,perl-variable-magic) + ("perl-test-pod" ,perl-test-pod))) + (home-page "http://search.cpan.org/dist/Unicode-UTF8") + (synopsis "Encoding and decoding of UTF-8 encoding form") + (description + "This module provides functions to encode and decode UTF-8 encoding form +as specified by Unicode and ISO/IEC 10646:2011.") + (license (package-license perl)))) + (define-public perl-universal-can (package (name "perl-universal-can") -- cgit v1.2.3 From 428e4463c3352ede41e8ccbe69b681054a4f90fa Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 14:21:09 +0000 Subject: gnu: Add perl-path-tiny. * gnu/packages/perl.scm (perl-path-tiny): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/perl.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 6192dae3d8..0f9ecdd9b3 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -4634,6 +4634,31 @@ up inheritance from those modules at the same time.") directory specifications in a cross-platform manner.") (license (package-license perl)))) +(define-public perl-path-tiny + (package + (name "perl-path-tiny") + (version "0.096") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/" + "Path-Tiny-" version ".tar.gz")) + (sha256 + (base32 + "08dmr6ijjg3dp7h9dxix0nmad0fw16c6qzs4qc0hdz500gd64sr2")))) + (build-system perl-build-system) + (arguments + `(#:tests? #f)) ; Tests require additional test modules to be packaged + ;; (native-inputs + ;; `(("perl-test-failwarnings" ,perl-test-failwarnings) + ;; ("perl-test-mockrandom" ,perl-test-mockrandom))) + (inputs + `(("perl-unicode-utf8" ,perl-unicode-utf8))) + (home-page "http://search.cpan.org/dist/Path-Tiny") + (synopsis "File path utility") + (description "This module provides a small, fast utility for working +with file paths.") + (license asl2.0))) + (define-public perl-perlio-utf8_strict (package (name "perl-perlio-utf8-strict") -- cgit v1.2.3 From 0c1bab36a99b7e5658a775d49df30a78a6295c46 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 14:37:34 +0000 Subject: gnu: Add perl-xml-xpath. * gnu/packages/xml.scm (perl-xml-xpath): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/xml.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index a478599fe6..52578693fa 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2016 Ben Woodcroft ;;; Copyright © 2016 Jan Nieuwenhuizen +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -563,6 +564,30 @@ encoding of the message to be send into XML, sending the message to the server, collect the answer, and finally decoding the XML to Perl.") (license (package-license perl)))) +(define-public perl-xml-xpath + (package + (name "perl-xml-xpath") + (version "1.37") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/" + "XML-XPath-" version ".tar.gz")) + (sha256 + (base32 + "0997l8vjgq8p7d1irvp6amqyrv24x7f8hybjm4l4ayag32b13bmq")))) + (build-system perl-build-system) + (native-inputs + `(("perl-path-tiny" ,perl-path-tiny))) + (inputs + `(("perl-xml-parser" ,perl-xml-parser))) + (home-page "http://search.cpan.org/dist/XML-XPath") + (synopsis "Parse and evaluate XPath statements") + (description + "This module aims to comply exactly to the @url{XPath specification, +https://www.w3.org/TR/xpath} and yet allow extensions to be added in +the form of functions.") + (license (package-license perl)))) + (define-public pugixml (package (name "pugixml") -- cgit v1.2.3 From b2696a58b3c601abf02ff40cd915c4f6b195743b Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 14:50:00 +0000 Subject: gnu: Add perl-xml-atom. * gnu/packages/xml.scm (perl-xml-atom): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/xml.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 52578693fa..f2fa725b87 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -186,6 +186,38 @@ which read a graph file and create an instance of the Graph class. the @code{Graph} class and write it out in a specific file format.") (license (package-license perl)))) +(define-public perl-xml-atom + (package + (name "perl-xml-atom") + (version "0.41") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/M/MI/MIYAGAWA/" + "XML-Atom-" version ".tar.gz")) + (sha256 + (base32 + "17lnkb9ymrhk2z642bhj5i2bv3q1da3kpp2lvsl0yhqshk3wdjj8")))) + (build-system perl-build-system) + (native-inputs + `(("perl-datetime" ,perl-datetime) + ;; TODO package: perl-datetime-format-atom + ("perl-xml-xpath" ,perl-xml-xpath))) + (inputs + `(("perl-class-data-inheritable" ,perl-class-data-inheritable) + ("perl-datetime" ,perl-datetime) + ("perl-datetime-timezone" ,perl-datetime-timezone) + ("perl-digest-sha1" ,perl-digest-sha1) + ("perl-libwww" ,perl-libwww) + ("perl-uri" ,perl-uri) + ("perl-xml-libxml" ,perl-xml-libxml) + ("perl-xml-xpath" ,perl-xml-xpath))) + (home-page "http://search.cpan.org/dist/XML-Atom") + (synopsis "Atom feed and API implementation") + (description + "Atom is a syndication, API, and archiving format for weblogs and other data. +@code{XML::Atom} implements the feed format as well as a client for the API.") + (license (package-license perl)))) + (define-public perl-xml-parser (package (name "perl-xml-parser") -- cgit v1.2.3 From 60e8c2ae2c5262e9be4d3c0bdda1b62e86d18dbb Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 15:05:30 +0000 Subject: gnu: Add perl-test-manifest. * gnu/packages/perl.scm (perl-test-manifest): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/perl.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 0f9ecdd9b3..309deb5e42 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -5773,6 +5773,29 @@ string comparison functions of Test::More, but which are more suitable when you test against long strings.") (license (package-license perl)))) +(define-public perl-test-manifest + (package + (name "perl-test-manifest") + (version "2.02") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/B/BD/BDFOY/" + "Test-Manifest-" version ".tar.gz")) + (sha256 + (base32 + "15ik52l9macrrfizf4y6wj71d4lx7w590h2dfajnkmbxmz786iq6")))) + (build-system perl-build-system) + (native-inputs + `(("perl-test-pod" ,perl-test-pod) + ("perl-test-pod-coverage" ,perl-test-pod-coverage))) + (home-page "http://search.cpan.org/dist/Test-Manifest") + (synopsis "Interact with a t/test_manifest file") + (description "@code{Test::Manifest} overrides the default test file order. Instead of +running all of the t/*.t files in ASCII-betical order, it looks in the t/test_manifest +file to find out which tests you want to run and the order in which you want to run them. +It constructs the right value for the build system to do the right thing.") + (license (package-license perl)))) + (define-public perl-test-mockobject (package (name "perl-test-mockobject") -- cgit v1.2.3 From a022b23fa94f200a6c3e3cf9d7d05cdd704b7ab9 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 15:14:05 +0000 Subject: gnu: Add perl-xml-rss. * gnu/packages/xml.scm (perl-xml-rss): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/xml.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index f2fa725b87..b2f51bd2ba 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -340,6 +340,41 @@ maintain a prefix to namespace URI map, and provides a number of basic checks.") (license (package-license perl)))) +(define-public perl-xml-rss + (package + (name "perl-xml-rss") + (version "1.59") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/S/SH/SHLOMIF/" + "XML-RSS-" version ".tar.gz")) + (sha256 + (base32 + "0v6vfizn2psy6av057kp7fv3z3y73s6b3w56jm3zr6hlq48llsx2")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build) + ("perl-test-manifest" ,perl-test-manifest) + ("perl-test-differences" ,perl-test-differences) + ("perl-test-pod" ,perl-test-pod) + ("perl-test-pod-coverage" ,perl-test-pod-coverage))) + ;; XXX: The test which uses this modules does not run, even when it is included + ;; it is ignored. ("perl-test-trailingspace" ,perl-test-trailingspace) + (inputs + `(("perl-datetime" ,perl-datetime) + ("perl-datetime-format-mail" ,perl-datetime-format-mail) + ("perl-datetime-format-w3cdtf" ,perl-datetime-format-w3cdtf) + ("perl-html-parser" ,perl-html-parser) + ("perl-xml-parser" ,perl-xml-parser))) + (home-page "http://search.cpan.org/dist/XML-RSS") + (synopsis "Creates and updates RSS files") + (description + "This module provides a basic framework for creating and maintaining +RDF Site Summary (RSS) files. This distribution also contains many examples +that allow you to generate HTML from an RSS, convert between 0.9, 0.91, and +1.0 version, and more.") + (license (package-license perl)))) + (define-public perl-xml-sax (package (name "perl-xml-sax") -- cgit v1.2.3 From 246455c28701e71aa7e948859a0d3d6259596b99 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 15:36:05 +0000 Subject: gnu: Add perl-xml-feed. * gnu/packages/xml.scm (perl-xml-feed): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/xml.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index b2f51bd2ba..8e0fe01c6b 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -631,6 +631,45 @@ encoding of the message to be send into XML, sending the message to the server, collect the answer, and finally decoding the XML to Perl.") (license (package-license perl)))) +(define-public perl-xml-feed + (package + (name "perl-xml-feed") + (version "0.53") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/D/DA/DAVECROSS/" + "XML-Feed-" version ".tar.gz")) + (sha256 + (base32 + "07b165g6wk8kqwpl49r3n0kag6p2nrkyp3ch0h8qyxb6nrnkkq7c")))) + (build-system perl-build-system) + (arguments + `(#:tests? #f)) ; Tests require internet connection + (native-inputs + `(("perl-module-build" ,perl-module-build) + ("perl-uri" ,perl-uri) + ("perl-class-data-inheritable" ,perl-class-data-inheritable))) + (inputs + `(("perl-class-errorhandler" ,perl-class-errorhandler) + ("perl-datetime" ,perl-datetime) + ("perl-datetime-format-mail" ,perl-datetime-format-mail) + ("perl-datetime-format-w3cdtf" ,perl-datetime-format-w3cdtf) + ("perl-feed-find" ,perl-feed-find) + ("perl-html-parser" ,perl-html-parser) + ("perl-libwww-perl" ,perl-libwww) + ("perl-module-pluggable" ,perl-module-pluggable) + ("perl-uri-fetch" ,perl-uri-fetch) + ("perl-xml-atom" ,perl-xml-atom) + ("perl-xml-libxml" ,perl-xml-libxml) + ("perl-xml-rss" ,perl-xml-rss))) + (home-page "http://search.cpan.org/dist/XML-Feed") + (synopsis "XML Syndication Feed Support") + (description "@code{XML::Feed} is a syndication feed parser for both RSS and +Atom feeds. It also implements feed auto-discovery for finding feeds, given a URI. +@code{XML::Feed} supports the following syndication feed formats: +RSS 0.91, RSS 1.0, RSS 2.0, Atom") + (license (package-license perl)))) + (define-public perl-xml-xpath (package (name "perl-xml-xpath") -- cgit v1.2.3 From 823c82929b91727f66e684a612cb6c4f697b6dcb Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 14 Aug 2016 15:54:07 +0000 Subject: gnu: Add perl-www-opensearch. * gnu/packages/web.scm (perl-www-opensearch): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/web.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index e0b649f5ac..70bfd9e161 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3092,6 +3092,34 @@ library.") web browsing, used for automating interaction with websites.") (license (package-license perl)))) +(define-public perl-www-opensearch + (package + (name "perl-www-opensearch") + (version "0.17") + (source (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/B/BR/BRICAS/" + "WWW-OpenSearch-" version ".tar.gz")) + (sha256 + (base32 + "1yxplx1q1qk2fvnzqrbk01lz26fy1lyhay51a3ky7q3jgh9p01rb")))) + (build-system perl-build-system) + (arguments + `(#:tests? #f)) ; Tests require further modules to be packaged + (inputs + `(("perl-data-page" ,perl-data-page) + ("perl-libwww" ,perl-libwww) + ("perl-uri" ,perl-uri) + ("perl-uri-template" ,perl-uri-template) + ("perl-xml-feed" ,perl-xml-feed) + ("perl-xml-libxml" ,perl-xml-libxml))) + (home-page "http://search.cpan.org/dist/WWW-OpenSearch") + (synopsis "Search A9 OpenSearch compatible engines") + (description + "@code{WWW::OpenSearch} is a module to search @url{A9's OpenSearch, +http://opensearch.a9.com} compatible search engines.") + (license (package-license perl)))) + (define-public perl-www-robotrules (package (name "perl-www-robotrules") -- cgit v1.2.3 From 4e835710f1f45ceffb432fa19cc3cfbbdaf0919b Mon Sep 17 00:00:00 2001 From: John Darrington Date: Mon, 5 Sep 2016 14:19:05 +0200 Subject: gnu: Add git@2.9 * gnu/packages/version-control.scm (git@2.9): New variable. * gnu/packages/version-control.scm (cgit)[inputs]: Replace git with git@2.9 --- gnu/packages/version-control.scm | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 9ff9801997..d77cca0e10 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -293,6 +293,20 @@ everything from small to very large projects with speed and efficiency.") (license license:gpl2) (home-page "http://git-scm.com/"))) +;; Some dependent packages directly access internal interfaces which +;; have changed in 2.10 +(define-public git@2.9 + (package + (inherit git) + (version "2.9.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://kernel.org/software/scm/git/git-" + version ".tar.xz")) + (sha256 + (base32 + "0qzs681a64k3shh5p0rg41l1z16fbk5sj0xga45k34hp1hsp654z")))))) + (define-public libgit2 (package (name "libgit2") @@ -387,7 +401,7 @@ write native speed custom Git applications in any language with bindings.") ("xmllint" ,libxml2) ("xsltprot" ,libxslt))) (inputs - `(("git:src" ,(package-source git)) + `(("git:src" ,(package-source git@2.9)) ("openssl" ,openssl) ("zlib" ,zlib))) (home-page "https://git.zx2c4.com/cgit/") -- cgit v1.2.3 From 901c1aae0a58811dc7d4892118a38c8354c294fc Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 20 Aug 2016 22:14:17 +0000 Subject: gnu: Add libtoxcore. * gnu/packages/messaging.scm (libtoxcore): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/messaging.scm | 48 +++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index fa4515c768..b95239a748 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2015 Andreas Enge ;;; Copyright © 2015, 2016 Ricardo Wurmus ;;; Copyright © 2015 Efraim Flashner +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,6 +29,7 @@ #:use-module (guix utils) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system python) @@ -35,6 +37,7 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) #:use-module (gnu packages check) + #:use-module (gnu packages crypto) #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages databases) #:use-module (gnu packages documentation) @@ -59,7 +62,9 @@ #:use-module (gnu packages admin) #:use-module (gnu packages linux) #:use-module (gnu packages tls) - #:use-module (gnu packages icu4c)) + #:use-module (gnu packages icu4c) + #:use-module (gnu packages video) + #:use-module (gnu packages xiph)) (define-public libotr (package @@ -566,4 +571,45 @@ system on which to rapidly develop added functionality, or prototype new protocols.") (license x11))) +(define-public libtoxcore + (let ((revision "1") + (commit "755f084e8720b349026c85afbad58954cb7ff1d4")) + (package + (name "libtoxcore") + (version (string-append "0.0.0" "-" + revision "."(string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/irungentoo/toxcore.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0ap1gvlyihnfivv235dbrgsxsiiz70bhlmlr5gn1027w3h5kqz8w")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ;; TODO: Add when test suite is capable of passing. + ;; ("check" ,check) + ("pkg-config" ,pkg-config))) + (inputs + `(("libsodium" ,libsodium) + ("opus" ,opus) + ("libvpx" ,libvpx))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autoconf + (lambda _ + (zero? (system* "autoreconf" "-vfi"))))) + #:tests? #f)) ; FIXME: Testsuite fails, reasons unspecific. + (synopsis "Library for the Tox encrypted messenger protocol") + (description + "C library implementation of the Tox encrypted messenger protocol.") + (license gpl3+) + (home-page "https://tox.chat")))) + ;;; messaging.scm ends here -- cgit v1.2.3 From c2b411c288637d2877aaa2785500fea235f6fd32 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 21 Aug 2016 02:17:27 +0000 Subject: gnu: Add freealut. * gnu/packages/audio.scm (freealut): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/audio.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 67701a0f37..9f03368168 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2015, 2016 Mark H Weaver ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Alex Griffin +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -1511,6 +1512,32 @@ buffers, and audio capture.") (home-page "http://kcat.strangesoft.net/openal.html") (license license:lgpl2.0+))) +(define-public freealut + (package + (name "freealut") + (version "1.1.0") + (source (origin + (method url-fetch) + ;; Upstream url is unclear, many systems use Fedora, there is also + ;; https://github.com/vancegroup/freealut though the status of it + ;; (official? unofficial?) is not clear. + (uri (string-append + "https://pkgs.fedoraproject.org/repo/pkgs/" name "/" name "-" + version ".tar.gz" "/e089b28a0267faabdb6c079ee173664a/" name + "-" version ".tar.gz")) + (sha256 + (base32 + "0kzlil6112x2429nw6mycmif8y6bxr2cwjcvp18vh6s7g63ymlb0")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f)) ; no check target + (inputs + `(("openal" ,openal))) + (synopsis "Free implementation of OpenAL's ALUT standard") + (description "freealut is the OpenAL Utility Toolkit.") + (home-page "http://kcat.strangesoft.net/openal.html") + (license license:lgpl2.0))) + (define-public patchage (package (name "patchage") -- cgit v1.2.3 From 43bec6d06d8dcc4c0f865e492d370a8724bba2ce Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 4 Sep 2016 02:53:37 -0400 Subject: gnu: qemu: Update to 2.7.0 [fixes CVE-2016-7116]. * gnu/packages/qemu.scm (qemu): Update to 2.7.0. [arguments]: Adjust path in 'disable-test-qga' phase. --- gnu/packages/qemu.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/qemu.scm b/gnu/packages/qemu.scm index 1b9f0add25..aee6a75f0e 100644 --- a/gnu/packages/qemu.scm +++ b/gnu/packages/qemu.scm @@ -69,14 +69,14 @@ (define-public qemu (package (name "qemu") - (version "2.6.1") + (version "2.7.0") (source (origin (method url-fetch) (uri (string-append "http://wiki.qemu-project.org/download/qemu-" version ".tar.bz2")) (sha256 (base32 - "1l88iqk0swqccrnjwczgl9arqsvy77bis862zxajy7z3dqdzshj9")))) + "0lqyz01z90nvxpc3nx4djbci7hx62cwvs5zwd6phssds0sap6vij")))) (build-system gnu-build-system) (arguments '(;; Running tests in parallel can occasionally lead to failures, like: @@ -125,7 +125,7 @@ (setenv "V" "1"))) (add-before 'check 'disable-test-qga (lambda _ - (substitute* "tests/Makefile" + (substitute* "tests/Makefile.include" ;; Comment out the test-qga test, which needs /sys and ;; fails within the build environment. (("check-unit-.* tests/test-qga" all) -- cgit v1.2.3 From fea1422e273ba5ca7640ecbbfbf352703ef7cda8 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 4 Sep 2016 23:07:51 -0400 Subject: gnu: slock: Update to 1.3. * gnu/packages/suckless.scm (slock): Update to 1.3. [inputs]: Add libxrandr. --- gnu/packages/suckless.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 1f62e26248..7efa502d8f 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -106,14 +106,14 @@ numbers of user-defined menu items efficiently.") (define-public slock (package (name "slock") - (version "1.2") + (version "1.3") (source (origin (method url-fetch) (uri (string-append "http://dl.suckless.org/tools/slock-" version ".tar.gz")) (sha256 (base32 - "1crkyr4vblhciy6vnbjwwjnlkm9yg2hzq16v6hzxm20ai67na0il")))) + "065xa9hl7zn0lv2f7yjxphqsa35rg6dn9hv10gys0sh4ljpa7d5s")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests @@ -123,7 +123,8 @@ numbers of user-defined menu items efficiently.") (inputs `(("libx11" ,libx11) ("libxext" ,libxext) - ("libxinerama" ,libxinerama))) + ("libxinerama" ,libxinerama) + ("libxrandr" ,libxrandr))) (home-page "http://tools.suckless.org/slock/") (synopsis "Simple X session lock") (description -- cgit v1.2.3 From 26ffb69399752d6b2c1ea93ac8c6cf7e3d178c02 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 09:17:57 +0200 Subject: syscalls: Use #:return-errno? when it is available. * guix/build/syscalls.scm (errno): Do not export. (syscall->procedure): Change to return a procedure that returns both the value and errno. Use #:return-errno? where available. (mount, umount, swapon, swapoff, mkdtemp!, fdatasync, statfs) (clone, setns, pivot-root, fcntl-flock, network-interface-names) (network-interface-flags, set-network-interface-flags) (set-network-interface-address, network-interface-address): (network-interfaces, tcgetattr, tcsetattr, terminal-window-size): Adjust accordingly using 'let-values'. --- guix/build/syscalls.scm | 177 +++++++++++++++++++++++++----------------------- 1 file changed, 92 insertions(+), 85 deletions(-) diff --git a/guix/build/syscalls.scm b/guix/build/syscalls.scm index e5315ed6f3..2cee6544c4 100644 --- a/guix/build/syscalls.scm +++ b/guix/build/syscalls.scm @@ -24,12 +24,12 @@ #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) #:use-module (srfi srfi-9 gnu) + #:use-module (srfi srfi-11) #:use-module (ice-9 rdelim) #:use-module (ice-9 regex) #:use-module (ice-9 match) #:use-module (ice-9 ftw) - #:export (errno - MS_RDONLY + #:export (MS_RDONLY MS_NOSUID MS_NODEV MS_NOEXEC @@ -282,14 +282,14 @@ given TYPES. READ uses WRAP-FIELDS to return its value." ;;; (define %libc-errno-pointer - ;; Glibc's 'errno' pointer. + ;; Glibc's 'errno' pointer, for use with Guile < 2.0.12. (let ((errno-loc (false-if-exception (dynamic-func "__errno_location" (dynamic-link))))) (and errno-loc (let ((proc (pointer->procedure '* errno-loc '()))) (proc))))) -(define errno +(define errno ;for Guile < 2.0.12 (if %libc-errno-pointer (let ((bv (pointer->bytevector %libc-errno-pointer (sizeof int)))) (lambda () @@ -328,13 +328,26 @@ given TYPES. READ uses WRAP-FIELDS to return its value." (call-with-restart-on-EINTR (lambda () expr))) (define (syscall->procedure return-type name argument-types) - "Return a procedure that wraps the C function NAME using the dynamic FFI. + "Return a procedure that wraps the C function NAME using the dynamic FFI, +and that returns two values: NAME's return value, and errno. + If an error occurs while creating the binding, defer the error report until the returned procedure is called." (catch #t (lambda () (let ((ptr (dynamic-func name (dynamic-link)))) - (pointer->procedure return-type ptr argument-types))) + ;; The #:return-errno? facility was introduced in Guile 2.0.12. + ;; Support older versions of Guile by catching 'wrong-number-of-args'. + (catch 'wrong-number-of-args + (lambda () + (pointer->procedure return-type ptr argument-types + #:return-errno? #t)) + (lambda (key . rest) + (let ((proc (pointer->procedure return-type ptr argument-types))) + (lambda args + (let ((result (apply proc args)) + (err (errno))) + (values result err)))))))) (lambda args (lambda _ (error (format #f "~a: syscall->procedure failed: ~s" @@ -401,18 +414,18 @@ may be a bitwise-or of the MS_* constants, and OPTIONS may be a string. When FLAGS contains MS_REMOUNT, SOURCE and TYPE are ignored. When UPDATE-MTAB? is true, update /etc/mtab. Raise a 'system-error' exception on error." - (let ((ret (proc (if source - (string->pointer source) - %null-pointer) - (string->pointer target) - (if type - (string->pointer type) - %null-pointer) - flags - (if options - (string->pointer options) - %null-pointer))) - (err (errno))) + (let-values (((ret err) + (proc (if source + (string->pointer source) + %null-pointer) + (string->pointer target) + (if type + (string->pointer type) + %null-pointer) + flags + (if options + (string->pointer options) + %null-pointer)))) (unless (zero? ret) (throw 'system-error "mount" "mount ~S on ~S: ~A" (list source target (strerror err)) @@ -426,8 +439,8 @@ error." #:key (update-mtab? #f)) "Unmount TARGET. Optionally FLAGS may be one of the MNT_* or UMOUNT_* constants from ." - (let ((ret (proc (string->pointer target) flags)) - (err (errno))) + (let-values (((ret err) + (proc (string->pointer target) flags))) (unless (zero? ret) (throw 'system-error "umount" "~S: ~A" (list target (strerror err)) @@ -451,8 +464,8 @@ constants from ." (let ((proc (syscall->procedure int "swapon" (list '* int)))) (lambda* (device #:optional (flags 0)) "Use the block special device at DEVICE for swapping." - (let ((ret (proc (string->pointer device) flags)) - (err (errno))) + (let-values (((ret err) + (proc (string->pointer device) flags))) (unless (zero? ret) (throw 'system-error "swapon" "~S: ~A" (list device (strerror err)) @@ -462,8 +475,7 @@ constants from ." (let ((proc (syscall->procedure int "swapoff" '(*)))) (lambda (device) "Stop using block special device DEVICE for swapping." - (let ((ret (proc (string->pointer device))) - (err (errno))) + (let-values (((ret err) (proc (string->pointer device)))) (unless (zero? ret) (throw 'system-error "swapoff" "~S: ~A" (list device (strerror err)) @@ -499,8 +511,7 @@ user-land process." (lambda (tmpl) "Create a new unique directory in the file system using the template string TMPL and return its file name. TMPL must end with 'XXXXXX'." - (let ((result (proc (string->pointer tmpl))) - (err (errno))) + (let-values (((result err) (proc (string->pointer tmpl)))) (when (null-pointer? result) (throw 'system-error "mkdtemp!" "~S: ~A" (list tmpl (strerror err)) @@ -513,9 +524,8 @@ string TMPL and return its file name. TMPL must end with 'XXXXXX'." "Flush buffered output of PORT, an output file port, and then call fdatasync(2) on the underlying file descriptor." (force-output port) - (let* ((fd (fileno port)) - (ret (proc fd)) - (err (errno))) + (let*-values (((fd) (fileno port)) + ((ret err) (proc fd))) (unless (zero? ret) (throw 'system-error "fdatasync" "~S: ~A" (list fd (strerror err)) @@ -566,9 +576,9 @@ fdatasync(2) on the underlying file descriptor." (lambda (file) "Return a data structure describing the file system mounted at FILE." - (let* ((stat (make-bytevector sizeof-statfs)) - (ret (proc (string->pointer file) (bytevector->pointer stat))) - (err (errno))) + (let*-values (((stat) (make-bytevector sizeof-statfs)) + ((ret err) (proc (string->pointer file) + (bytevector->pointer stat)))) (if (zero? ret) (read-statfs stat) (throw 'system-error "statfs" "~A: ~A" @@ -611,11 +621,11 @@ mounted at FILE." "Create a new child process by duplicating the current parent process. Unlike the fork system call, clone accepts FLAGS that specify which resources are shared between the parent and child processes." - (let ((ret (proc syscall-id flags - %null-pointer ;child stack - %null-pointer %null-pointer ;ptid & ctid - %null-pointer)) ;unused - (err (errno))) + (let-values (((ret err) + (proc syscall-id flags + %null-pointer ;child stack + %null-pointer %null-pointer ;ptid & ctid + %null-pointer))) ;unused (if (= ret -1) (throw 'system-error "clone" "~d: ~A" (list flags (strerror err)) @@ -632,8 +642,7 @@ are shared between the parent and child processes." file descriptor obtained by opening a /proc/PID/ns/* file. NSTYPE specifies which type of namespace the current process may be reassociated with, or 0 if there is no such limitation." - (let ((ret (proc fdes nstype)) - (err (errno))) + (let-values (((ret err) (proc fdes nstype))) (unless (zero? ret) (throw 'system-error "setns" "~d ~d: ~A" (list fdes nstype (strerror err)) @@ -644,9 +653,9 @@ there is no such limitation." (lambda (new-root put-old) "Change the root file system to NEW-ROOT and move the current root file system to PUT-OLD." - (let ((ret (proc (string->pointer new-root) - (string->pointer put-old))) - (err (errno))) + (let-values (((ret err) + (proc (string->pointer new-root) + (string->pointer put-old)))) (unless (zero? ret) (throw 'system-error "pivot_root" "~S ~S: ~A" (list new-root put-old (strerror err)) @@ -717,12 +726,12 @@ exception if it's already taken." ;; XXX: 'fcntl' is a vararg function, but here we happily use the ;; standard ABI; crossing fingers. - (let ((ret (proc fd - (if wait? - F_SETLKW ; lock & wait - F_SETLK) ; non-blocking attempt - (bytevector->pointer bv))) - (err (errno))) + (let-values (((ret err) + (proc fd + (if wait? + F_SETLKW ;lock & wait + F_SETLK) ;non-blocking attempt + (bytevector->pointer bv)))) (unless (zero? ret) ;; Presumably we got EAGAIN or so. (throw 'flock-error err)))))) @@ -857,19 +866,19 @@ to interfaces that are currently up." (len (* ifreq-struct-size 10)) (reqs (make-bytevector len)) (conf (make-c-struct ifconf-struct - (list len (bytevector->pointer reqs)))) - (ret (%ioctl (fileno sock) SIOCGIFCONF conf)) - (err (errno))) - (when close? - (close-port sock)) - (if (zero? ret) - (bytevector->string-list reqs ifreq-struct-size - (match (parse-c-struct conf ifconf-struct) - ((len . _) len))) - (throw 'system-error "network-interface-list" - "network-interface-list: ~A" - (list (strerror err)) - (list err))))) + (list len (bytevector->pointer reqs))))) + (let-values (((ret err) + (%ioctl (fileno sock) SIOCGIFCONF conf))) + (when close? + (close-port sock)) + (if (zero? ret) + (bytevector->string-list reqs ifreq-struct-size + (match (parse-c-struct conf ifconf-struct) + ((len . _) len))) + (throw 'system-error "network-interface-list" + "network-interface-list: ~A" + (list (strerror err)) + (list err)))))) (define %interface-line ;; Regexp matching an interface line in Linux's /proc/net/dev. @@ -897,9 +906,9 @@ interface NAME." (let ((req (make-bytevector ifreq-struct-size))) (bytevector-copy! (string->utf8 name) 0 req 0 (min (string-length name) (- IF_NAMESIZE 1))) - (let* ((ret (%ioctl (fileno socket) SIOCGIFFLAGS - (bytevector->pointer req))) - (err (errno))) + (let-values (((ret err) + (%ioctl (fileno socket) SIOCGIFFLAGS + (bytevector->pointer req)))) (if (zero? ret) ;; The 'ifr_flags' field is IF_NAMESIZE bytes after the beginning of @@ -927,9 +936,9 @@ interface NAME." ;; Set the 'ifr_flags' field. (bytevector-uint-set! req IF_NAMESIZE flags (native-endianness) (sizeof short)) - (let* ((ret (%ioctl (fileno socket) SIOCSIFFLAGS - (bytevector->pointer req))) - (err (errno))) + (let-values (((ret err) + (%ioctl (fileno socket) SIOCSIFFLAGS + (bytevector->pointer req)))) (unless (zero? ret) (throw 'system-error "set-network-interface-flags" "set-network-interface-flags on ~A: ~A" @@ -943,9 +952,9 @@ interface NAME." (min (string-length name) (- IF_NAMESIZE 1))) ;; Set the 'ifr_addr' field. (write-socket-address! sockaddr req IF_NAMESIZE) - (let* ((ret (%ioctl (fileno socket) SIOCSIFADDR - (bytevector->pointer req))) - (err (errno))) + (let-values (((ret err) + (%ioctl (fileno socket) SIOCSIFADDR + (bytevector->pointer req)))) (unless (zero? ret) (throw 'system-error "set-network-interface-address" "set-network-interface-address on ~A: ~A" @@ -958,9 +967,9 @@ the same type as that returned by 'make-socket-address'." (let ((req (make-bytevector ifreq-struct-size))) (bytevector-copy! (string->utf8 name) 0 req 0 (min (string-length name) (- IF_NAMESIZE 1))) - (let* ((ret (%ioctl (fileno socket) SIOCGIFADDR - (bytevector->pointer req))) - (err (errno))) + (let-values (((ret err) + (%ioctl (fileno socket) SIOCGIFADDR + (bytevector->pointer req)))) (if (zero? ret) (read-socket-address req IF_NAMESIZE) (throw 'system-error "network-interface-address" @@ -1076,9 +1085,10 @@ return the list of resulting objects." (lambda () "Return a list of objects, each denoting a configured network interface. This is implemented using the 'getifaddrs' libc function." - (let* ((ptr (bytevector->pointer (make-bytevector (sizeof* '*)))) - (ret (proc ptr)) - (err (errno))) + (let*-values (((ptr) + (bytevector->pointer (make-bytevector (sizeof* '*)))) + ((ret err) + (proc ptr))) (if (zero? ret) (let* ((ptr (dereference-pointer ptr)) (result (unfold-interface-list ptr))) @@ -1181,9 +1191,8 @@ given an integer, returns the list of names of the constants that are or'd." (let ((proc (syscall->procedure int "tcgetattr" (list int '*)))) (lambda (fd) "Return the structure for the tty at FD." - (let* ((bv (make-bytevector sizeof-termios)) - (ret (proc fd (bytevector->pointer bv))) - (err (errno))) + (let*-values (((bv) (make-bytevector sizeof-termios)) + ((ret err) (proc fd (bytevector->pointer bv)))) (if (zero? ret) (read-termios bv) (throw 'system-error "tcgetattr" "~A" @@ -1206,8 +1215,7 @@ produced by 'tcsetattr-action'; see tcsetattr(3) for details." (match/write input-flags output-flags control-flags local-flags line-discipline control-chars input-speed output-speed)) - (let ((ret (proc fd actions (bytevector->pointer bv))) - (err (errno))) + (let-values (((ret err) (proc fd actions (bytevector->pointer bv)))) (unless (zero? ret) (throw 'system-error "tcgetattr" "~A" (list (strerror err)) @@ -1238,10 +1246,9 @@ produced by 'tcsetattr-action'; see tcsetattr(3) for details." "Return a structure describing the terminal at PORT, or raise a 'system-error' if PORT is not backed by a terminal. This procedure corresponds to the TIOCGWINSZ ioctl." - (let* ((size (make-bytevector sizeof-winsize)) - (ret (%ioctl (fileno port) TIOCGWINSZ - (bytevector->pointer size))) - (err (errno))) + (let*-values (((size) (make-bytevector sizeof-winsize)) + ((ret err) (%ioctl (fileno port) TIOCGWINSZ + (bytevector->pointer size)))) (if (zero? ret) (read-winsize size) (throw 'system-error "terminal-window-size" "~A" -- cgit v1.2.3 From 0c90ed5505e04540b1982c04993369fb9706a916 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 09:23:43 +0200 Subject: gnupg: Honor $GUIX_GPG_COMMAND and default to 'gpg'. * guix/gnupg.scm (%gpg-command): Change to "gpg" or $GUIX_GPG_COMMAND. --- guix/gnupg.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/guix/gnupg.scm b/guix/gnupg.scm index d1d8b377e1..ef8f9000dc 100644 --- a/guix/gnupg.scm +++ b/guix/gnupg.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2010, 2011, 2013, 2014 Ludovic Courtès +;;; Copyright © 2010, 2011, 2013, 2014, 2016 Ludovic Courtès ;;; Copyright © 2013 Nikita Karetnikov ;;; ;;; This file is part of GNU Guix. @@ -40,7 +40,7 @@ (define %gpg-command ;; The GnuPG 2.x command-line program name. - (make-parameter "gpg2")) + (make-parameter (or (getenv "GUIX_GPG_COMMAND") "gpg"))) (define %openpgp-key-server ;; The default key server. Note that keys.gnupg.net appears to be -- cgit v1.2.3 From c6f0b0f603540c2be9694ebcbaa4b65b103847bc Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 6 Sep 2016 06:54:20 +0300 Subject: gnu: orc: Update to 0.4.26. * gnu/packages/gstreamer.scm (orc): Update to 0.4.26. --- gnu/packages/gstreamer.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 651186ab8a..08bd679d37 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -63,14 +63,14 @@ (define-public orc (package (name "orc") - (version "0.4.25") + (version "0.4.26") (source (origin (method url-fetch) (uri (string-append "https://gstreamer.freedesktop.org/data/src/" "orc/orc-" version ".tar.xz")) (sha256 (base32 - "1lak3hyvvb0w9avzmf0a8vayb7vqhj4m709q1czlhvgjb15dbcf1")))) + "0jd69ynvr3k70mlxxgbsk047l1rd63m1wkj3qdcq7644xy0gllkx")))) (build-system gnu-build-system) (arguments `(#:phases (alist-cons-before -- cgit v1.2.3 From 462b567650e6fbe25a562b5e13dfbaa5ee4c55a9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 6 Sep 2016 08:47:22 +0300 Subject: gnu: orc: Use 'modify-phases'. * gnu/packages/gstreamer.scm (orc)[arguments]: Use the 'modify-phases' syntax. --- gnu/packages/gstreamer.scm | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index 08bd679d37..e5078233a9 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -72,18 +72,18 @@ (base32 "0jd69ynvr3k70mlxxgbsk047l1rd63m1wkj3qdcq7644xy0gllkx")))) (build-system gnu-build-system) - (arguments `(#:phases - (alist-cons-before - 'check 'disable-faulty-test - (lambda _ - ;; XXX Disable the 'test-limits' and 'exec_opcodes_sys' - ;; tests, which fail on some machines. See: - ;; https://bugzilla.gnome.org/show_bug.cgi?id=735273 - (substitute* '("testsuite/test-limits.c" - "testsuite/exec_opcodes_sys.c") - (("if \\(error\\) return 1;") - "if (error) return 77;"))) - %standard-phases))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'disable-faulty-test + (lambda _ + ;; XXX Disable the 'test-limits' and 'exec_opcodes_sys' + ;; tests, which fail on some machines. See: + ;; https://bugzilla.gnome.org/show_bug.cgi?id=735273 + (substitute* '("testsuite/test-limits.c" + "testsuite/exec_opcodes_sys.c") + (("if \\(error\\) return 1;") + "if (error) return 77;"))))))) (home-page "http://code.entropywave.com/orc/") (synopsis "Oil runtime compiler") (description -- cgit v1.2.3 From 5e50f846b5b3e07798553fed5fac6be6aea6088c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 6 Sep 2016 09:01:23 +0300 Subject: gnu: gst-plugins-base: Add opus support. * gnu/packages/gstreamer.scm (gst-plugins-base)[inputs]: Add opus. --- gnu/packages/gstreamer.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index e5078233a9..ba162c6601 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -160,6 +160,7 @@ This package provides the core library and elements.") `(("gstreamer" ,gstreamer))) ; required by gstreamer-plugins-base-1.0.pc (inputs `(("cdparanoia" ,cdparanoia) + ("opus" ,opus) ("orc" ,orc) ("pango" ,pango) ("libogg" ,libogg) -- cgit v1.2.3 From 58458a65ec1faba205299b10c443e8de4234ea2c Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 6 Sep 2016 09:49:38 +0300 Subject: gnu: gst-plugins-ugly: Add mpg123 support. * gnu/packages/gstreamer.scm (gst-plugins-ugly)[inputs]: Add mpg123. --- gnu/packages/gstreamer.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index ba162c6601..cc874a2f18 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -357,6 +357,7 @@ par compared to the rest.") ("libmpeg2" ,libmpeg2) ("libdvdread" ,libdvdread) ("libx264" ,libx264) + ("mpg123" ,mpg123) ;; TODO: ;; * opencore-amr (for the AMR-NB decoder and encoder and the ;; AMR-WB decoder) -- cgit v1.2.3 From 6779b9322253ba232d5d07e337d2d0933ecfdf2f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 6 Sep 2016 13:06:10 +0300 Subject: gnu: gst-plugins-bad: Remove unreferenced qt input. * gnu/packages/gstreamer.scm (gst-plugins-bad)[inputs]: Remove qtbase. --- gnu/packages/gstreamer.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm index cc874a2f18..b1785e95c9 100644 --- a/gnu/packages/gstreamer.scm +++ b/gnu/packages/gstreamer.scm @@ -324,7 +324,9 @@ developers consider to have good quality code and correct functionality.") ("openssl" ,openssl) ("opus" ,opus) ("orc" ,orc) - ("qtbase" ,qtbase) + ;("qtbase" ,qtbase) + ;("qtdeclarative" ,qtdeclarative) + ;("qtx11extras" ,qtx11extras) ("soundtouch" ,soundtouch) ("wayland" ,wayland))) (home-page "http://gstreamer.freedesktop.org/") -- cgit v1.2.3 From 83723949a4e5f90176f8863dd08fd9c7f36bce75 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 6 Sep 2016 15:53:57 +0300 Subject: gnu: Fix pre-2.7.0 qemu builds. This is a follow-up to 43bec6d0. * gnu/packages/debug.scm (qemu-2.3.0), gnu/packages/grub.scm (qemu-for-tests)[arguments]: Remove the 'disable-test-qga phase. --- gnu/packages/debug.scm | 5 ++++- gnu/packages/grub.scm | 8 +++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index 9da8885fb3..82a8090d0c 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -161,7 +161,10 @@ tools that process C/C++ code.") ;; XXX: Disable tests because of GTester's rejection of duplicate test ;; names, which wasn't addressed in this version of QEMU. `(#:tests? #f - ,@(package-arguments qemu-minimal))))) + ,@(substitute-keyword-arguments (package-arguments qemu-minimal) + ((#:phases phases) + ;; We disable the tests so we skip the phase disabling the qga test. + `(modify-phases ,phases (delete 'disable-test-qga)))))))) (define-public american-fuzzy-lop (let ((machine (match (or (%current-target-system) diff --git a/gnu/packages/grub.scm b/gnu/packages/grub.scm index 3229b868c5..302fd0e1ae 100644 --- a/gnu/packages/grub.scm +++ b/gnu/packages/grub.scm @@ -22,6 +22,7 @@ (define-module (gnu packages grub) #:use-module (guix download) #:use-module (guix packages) + #:use-module (guix utils) #:use-module ((guix licenses) #:select (gpl3+)) #:use-module (guix build-system gnu) #:use-module (gnu packages) @@ -58,7 +59,12 @@ ;; ERROR:tests/rtc-test.c:176:check_time: assertion failed (ABS(t - s) <= wiggle): (382597824 <= 2) ;; Simply disable the tests. (arguments `(#:tests? #f - ,@(package-arguments qemu-minimal))) + ,@(substitute-keyword-arguments (package-arguments qemu-minimal) + ((#:phases phases) + ;; We disable the tests so we also skip the phase disabling + ;; the qga test, which fails due to changes in QEMU + `(modify-phases ,phases + (delete 'disable-test-qga)))))) ;; The manual fails to build with Texinfo 5.x. (native-inputs (alist-delete "texinfo" (package-native-inputs qemu))))) -- cgit v1.2.3 From 5e814f63a41390868ed36ce4e8380334f5537921 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 5 Sep 2016 15:28:07 +0200 Subject: gnu: btrfs-progs: Update to 4.7.2. * gnu/packages/linux.scm (btrfs-progs): Update to 4.7.2. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 0034314601..030e35e638 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2631,7 +2631,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "4.7.1") + (version "4.7.2") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -2639,7 +2639,7 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "15jsa12ijc6z49v1csc62x9zidrgcf307lwy1rbffdwk3gsrczww")))) + "03z6zgvjb94jk0q1xx2hicznfxj5c8xyyw5xqmh05rpz8ghwk6zl")))) (build-system gnu-build-system) (outputs '("out" "static")) ; static versions of binaries in "out" (~16MiB!) -- cgit v1.2.3 From f2e7be4e29fb847207ebdc86023b9283700de42f Mon Sep 17 00:00:00 2001 From: David Craven Date: Fri, 26 Aug 2016 21:48:36 +0200 Subject: system: vm: Remove -net user flag. * gnu/system/vm.scm (common-qemu-options): Remove -net user flag. --- gnu/system/vm.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 4c53edc0cf..03f7d6c913 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -450,7 +450,6 @@ with '-virtfs' options for the host file systems listed in SHARED-FS." "") " -no-reboot -net nic,model=virtio \ " #$@(map virtfs-option shared-fs) " \ - -net user \ -vga std \ -drive file=" #$image ",if=virtio,cache=writeback,werror=report,readonly \ -- cgit v1.2.3 From 6526d43ea4fb0cd151a0d5e9a072c651c1c963d1 Mon Sep 17 00:00:00 2001 From: David Craven Date: Fri, 26 Aug 2016 21:45:57 +0200 Subject: activation: Allow home directories to be created under /var/lib. * gnu/build/activation.scm (activate-user+groups): Make sure /var/lib exists. --- gnu/build/activation.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 10aa58d85c..7dc40b0961 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -233,6 +233,9 @@ numeric gid or #f." ;; 'groupadd' aborts if the file doesn't already exist. (touch "/etc/group") + ;; Allow home directories to be created under /var/lib. + (mkdir "/var/lib") + ;; Create the root account so we can use 'useradd' and 'groupadd'. (activate-user (find (match-lambda ((name (? zero?) _ ...) #t) -- cgit v1.2.3 From f2901d824adf8b384f80766e99b0a9a90753abfa Mon Sep 17 00:00:00 2001 From: David Craven Date: Sat, 27 Aug 2016 15:45:15 +0200 Subject: services: Export initrc. * gnu/services/xorg.scm (define-module): Export initrc. --- gnu/services/xorg.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 4e311deb84..87c4487037 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -42,6 +42,8 @@ #:export (xorg-configuration-file %default-xorg-modules xorg-start-command + xinitrc + %default-slim-theme %default-slim-theme-name slim-configuration -- cgit v1.2.3 From ec2e2f6ce2f808de20f4770748db43aefd46f0bf Mon Sep 17 00:00:00 2001 From: David Craven Date: Sat, 27 Aug 2016 15:38:55 +0200 Subject: services: syslog: Use syslog-configuration. * gnu/services/base.scm (): New variable. (syslog-service-type): Use . (syslog-service): Use . * gnu/tests/base.scm (%avahi-os): Use . * doc/guix.texi (syslog-configuration-type): Add @deftp. (syslog-service): Update @deffn. --- doc/guix.texi | 21 ++++++++++++++++----- gnu/services/base.scm | 29 +++++++++++++++++++++-------- gnu/tests/base.scm | 9 ++++++--- 3 files changed, 43 insertions(+), 16 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index b6ca34a2f3..2abb7b231a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -7719,12 +7719,23 @@ privacy---often the result of host name lookups is in local cache, so external name servers do not even need to be queried. @end defvr +@anchor{syslog-configuration-type} +@deftp {Data Type} syslog-configuration +This data type represents the configuration of the syslog daemon. -@deffn {Scheme Procedure} syslog-service @ - [#:config-file @var{%default-syslog.conf}] -Return a service that runs @command{syslogd}. If the configuration file -name @var{config-file} is not specified, use some reasonable default -settings. +@table @asis +@item @code{syslogd} (default: @code{#~(string-append #$inetutils "/libexec/syslogd")}) +The syslog daemon to use. + +@item @code{config-file} (default: @code{%default-syslog.conf}) +The syslog configuration file to use. + +@end table +@end deftp + +@anchor{syslog-service} +@deffn {Scheme Procedure} syslog-service @var{config} +Return a service that runs a syslog daemon according to @var{config}. @xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more information on the configuration file syntax. diff --git a/gnu/services/base.scm b/gnu/services/base.scm index f3f6408687..2c2962cd8c 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -82,6 +82,9 @@ nscd-service-type nscd-service + + syslog-configuration + syslog-configuration? syslog-service syslog-service-type %default-syslog.conf @@ -885,17 +888,27 @@ given @var{config}---an @code{} object. @xref{Name Service Switch}, for an example." (service nscd-service-type config)) + +(define-record-type* + syslog-configuration make-syslog-configuration + syslog-configuration? + (syslogd syslog-configuration-syslogd + (default #~(string-append #$inetutils "/libexec/syslogd"))) + (config-file syslog-configuration-config-file + (default %default-syslog.conf))) + (define syslog-service-type (shepherd-service-type 'syslog - (lambda (config-file) + (lambda (config) (shepherd-service (documentation "Run the syslog daemon (syslogd).") (provision '(syslogd)) (requirement '(user-processes)) (start #~(make-forkexec-constructor - (list (string-append #$inetutils "/libexec/syslogd") - "--no-detach" "--rcfile" #$config-file))) + (list #$(syslog-configuration-syslogd config) + "--no-detach" + "--rcfile" #$(syslog-configuration-config-file config)))) (stop #~(make-kill-destructor)))))) ;; Snippet adapted from the GNU inetutils manual. @@ -921,14 +934,14 @@ Service Switch}, for an example." mail.* /var/log/maillog ")) -(define* (syslog-service #:key (config-file %default-syslog.conf)) - "Return a service that runs @command{syslogd}. If configuration file -name @var{config-file} is not specified, use some reasonable default -settings. +(define* (syslog-service #:optional (config (syslog-configuration))) + "Return a service that runs @command{syslogd} and takes +@var{} as a parameter. @xref{syslogd invocation,,, inetutils, GNU Inetutils}, for more information on the configuration file syntax." - (service syslog-service-type config-file)) + (service syslog-service-type config)) + (define pam-limits-service-type (let ((security-limits diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 41f50c0e7a..5c2af5b6d4 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -384,9 +384,12 @@ functionality tests.") (log-file "/dev/console"))) (syslog-service-type config => - (plain-file - "syslog.conf" - "*.* /dev/console\n"))))))) + (syslog-configuration + (inherit config) + (config-file + (plain-file + "syslog.conf" + "*.* /dev/console\n"))))))))) (define (run-nss-mdns-test) ;; Test resolution of '.local' names via libc. Start the marionette service -- cgit v1.2.3 From 99c53e226ee95f2ee7f58a2704e2c5051af6aaef Mon Sep 17 00:00:00 2001 From: David Craven Date: Sun, 28 Aug 2016 16:26:28 +0200 Subject: gnu: Add prefix to license imports in (gnu packages display-managers). * gnu/packages/display-managers.scm: Import (guix licenses) with prefix "license:". --- gnu/packages/display-managers.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm index 579b149a0c..3f3c6dba5c 100644 --- a/gnu/packages/display-managers.scm +++ b/gnu/packages/display-managers.scm @@ -19,7 +19,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages display-managers) - #:use-module ((guix licenses) #:prefix l:) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system cmake) @@ -92,4 +92,4 @@ fonts, External themes support, Configurable runtime options: X server -- login / shutdown / reboot commands, Single (GDM-like) or double (XDM-like) input control, Can load predefined user at startup, Configurable welcome / shutdown messages, Random theme selection.") - (license l:gpl2))) + (license license:gpl2))) -- cgit v1.2.3 From 901385ca026bde2a6d4bfeccf8251d8875ab1453 Mon Sep 17 00:00:00 2001 From: David Craven Date: Sun, 28 Aug 2016 17:07:57 +0200 Subject: gnu: Add greenisland. * gnu/packages/display-managers.scm (greenisland): New variable. --- gnu/packages/display-managers.scm | 92 +++++++++++++++++++++++++++++++++++++-- 1 file changed, 89 insertions(+), 3 deletions(-) diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm index 3f3c6dba5c..74a607a870 100644 --- a/gnu/packages/display-managers.scm +++ b/gnu/packages/display-managers.scm @@ -25,12 +25,98 @@ #:use-module (guix build-system cmake) #:use-module (guix packages) #:use-module (gnu packages) + #:use-module (gnu packages fontutils) + #:use-module (gnu packages freedesktop) #:use-module (gnu packages gl) - #:use-module (gnu packages xorg) + #:use-module (gnu packages glib) #:use-module (gnu packages image) - #:use-module (gnu packages fontutils) + #:use-module (gnu packages kde-frameworks) + #:use-module (gnu packages linux) #:use-module (gnu packages pkg-config) - #:use-module (gnu packages linux)) + #:use-module (gnu packages qt) + #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xorg)) + +(define-public greenisland + (package + (name "greenisland") + (version "0.8.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/greenisland/greenisland" + "/releases/download/v" version "/" + "greenisland-" version ".tar.xz")) + (sha256 + (base32 + "1c9rlq7fqrsd5nb37anjvnp9xspqjz1kc0fvydv5xdy3abg8mw40")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("dbus" ,dbus) + ("glib:bin" ,glib "bin") + ("pkg-config" ,pkg-config) + ("xorg-server" ,xorg-server))) + (inputs + `(("elogind" ,elogind) + ("eudev" ,eudev) + ("fontconfig" ,fontconfig) + ("freetype" ,freetype) + ("glib" ,glib) + ("libdrm" ,libdrm) + ("libinput" ,libinput-minimal) + ("libxcursor" ,libxcursor) + ("libxkbcommon" ,libxkbcommon) + ("libx11" ,libx11) + ("mesa" ,mesa) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) + ("xcb-util-cursor" ,xcb-util-cursor))) + (arguments + `(#:configure-flags + (list (string-append "-DPLUGIN_INSTALL_DIR=" + (assoc-ref %outputs "out") "/plugins") + (string-append "-DQML_INSTALL_DIR=" + (assoc-ref %outputs "out") "/qml")) + #:modules ((guix build cmake-build-system) + (guix build qt-utils) + (guix build utils)) + #:imported-modules (,@%cmake-build-system-modules + (guix build qt-utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-udev-tests + (lambda _ ; FIXME: Build env doesn't contain /dev/sda + (substitute* "tests/auto/platform/tst_udev.cpp" + (("QVERIFY") "// QVERIFY") + (("QCOMPARE") "// QCOMPARE")))) + (replace 'check + (lambda _ + (setenv "DBUS_FATAL_WARNINGS" "0") + (zero? (system* "dbus-launch" "ctest" ".")))) + (add-before 'check 'check-setup + (lambda _ + (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; Enable debug output + (setenv "QT_QPA_PLATFORM" "offscreen") + (setenv "XDG_RUNTIME_DIR" (getcwd)) + #t)) + (add-after 'install 'wrap-programs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-qt-program out "greenisland") + (wrap-qt-program out "greenisland-launcher") + (wrap-qt-program out "greenisland-screencaster") + (wrap-qt-program out "greenisland-wayland-scanner") + #t)))))) + (synopsis "QtQuick Wayland compositor and shell for desktop and mobile") + (description "Green Island provides a full blown Wayland compositor for +QtQuick as well as pluggable hardware abstraction, extensions, tools and a +Qt-style API for Wayland clients.") + (home-page "http://hawaiios.org") + ;; Choice of license at the user's opinion. + (license (list license:gpl2 license:gpl3 license:lgpl2.1 license:lgpl3)))) (define-public slim (package -- cgit v1.2.3 From 15791fa53512b50796b36b9ca0fe780260262d9d Mon Sep 17 00:00:00 2001 From: David Craven Date: Sun, 28 Aug 2016 17:09:16 +0200 Subject: gnu: Add sddm. * gnu/packages/display-managers.scm (sddm): New variable. --- gnu/packages/display-managers.scm | 68 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 68 insertions(+) diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm index 74a607a870..1371bb5f39 100644 --- a/gnu/packages/display-managers.scm +++ b/gnu/packages/display-managers.scm @@ -25,6 +25,7 @@ #:use-module (guix build-system cmake) #:use-module (guix packages) #:use-module (gnu packages) + #:use-module (gnu packages admin) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages gl) @@ -118,6 +119,73 @@ Qt-style API for Wayland clients.") ;; Choice of license at the user's opinion. (license (list license:gpl2 license:gpl3 license:lgpl2.1 license:lgpl3)))) +(define-public sddm + (package + (name "sddm") + (version "0.14.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/sddm/sddm" + "/releases/download/v" version "/" + "sddm-" version ".tar.xz")) + (sha256 + (base32 + "0y3pn8g2qj7q20zkmbasrfsj925lfzizk63sfrvzf84bc5c84d3y")))) + (build-system cmake-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("pkg-config" ,pkg-config) + ("qttools" ,qttools))) + (inputs + `(("glib" ,glib) + ("greenisland" ,greenisland) + ("libxcb" ,libxcb) + ("libxkbcommon" ,libxkbcommon) + ("linux-pam" ,linux-pam) + ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) + ("shadow" ,shadow) + ("wayland" ,wayland))) + (arguments + `(#:configure-flags + (list + ;; Currently doesn't do anything + ;; Option added by enable wayland greeters PR + "-DENABLE_WAYLAND=ON" + "-DENABLE_PAM=ON" + "-DCONFIG_FILE=/etc/sddm.conf" + ;; Set path to /etc/login.defs + ;; Alternatively use -DUID_MIN and -DUID_MAX + (string-append "-DLOGIN_DEFS_PATH=" + (assoc-ref %build-inputs "shadow") + "/etc/login.defs") + (string-append "-DQT_IMPORTS_DIR=" + (assoc-ref %outputs "out") "/qml") + (string-append "-DCMAKE_INSTALL_SYSCONFDIR=" + (assoc-ref %outputs "out") "/etc")) + #:modules ((guix build cmake-build-system) + (guix build qt-utils) + (guix build utils)) + #:imported-modules (,@%cmake-build-system-modules + (guix build qt-utils)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-programs + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-qt-program out "sddm") + (wrap-qt-program out "sddm-greeter") + #t)))))) + (synopsis "QML based X11 and Wayland display manager") + (description "SDDM is a display manager for X11 and Wayland aiming to be +fast, simple and beautiful. SDDM is themeable and puts no restrictions on the +user interface design. It uses QtQuick which gives the designer the ability to +create smooth, animated user interfaces.") + (home-page "https://github.com/sddm/sddm") + ;; QML files are MIT licensed and images are CC BY 3.0. + (license (list license:gpl2+ license:expat license:cc-by3.0)))) + (define-public slim (package (name "slim") -- cgit v1.2.3 From 935644c01ade149f33e1eeea9ed8647f229aa4d6 Mon Sep 17 00:00:00 2001 From: David Craven Date: Wed, 20 Jul 2016 13:17:48 +0200 Subject: services: Add sddm service. * gnu/services/sddm.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (@deftp, @deffn): Add documentation. --- doc/guix.texi | 103 ++++++++++++++++ gnu/local.mk | 1 + gnu/services/sddm.scm | 318 ++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 422 insertions(+) create mode 100644 gnu/services/sddm.scm diff --git a/doc/guix.texi b/doc/guix.texi index 2abb7b231a..59bc5d8ee0 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -8226,6 +8226,109 @@ Xorg---is provided by the @code{(gnu services xorg)} module. Note that there is no @code{xorg-service} procedure. Instead, the X server is started by the @dfn{login manager}, currently SLiM. +@deftp {Data Type} sddm-configuration +This is the data type representing the sddm service configuration. + +@table @asis +@item @code{display-server} (default: "x11") +Select display server to use for the greeter. Valid values are "x11" +or "wayland". + +@item @code{numlock} (default: "on") +Valid values are "on", "off" or "none". + +@item @code{halt-command} (default @code{#~(string-apppend #$shepherd "/sbin/halt")}) +Command to run when halting. + +@item @code{reboot-command} (default @code{#~(string-append #$shepherd "/sbin/reboot")}) +Command to run when rebooting. + +@item @code{theme} (default "maldives") +Theme to use. Default themes provided by SDDM are "elarun" or "maldives". + +@item @code{themes-directory} (default "/run/current-system/profile/share/sddm/themes") +Directory to look for themes. + +@item @code{faces-directory} (default "/run/current-system/profile/share/sddm/faces") +Directory to look for faces. + +@item @code{default-path} (default "/run/current-system/profile/bin") +Default PATH to use. + +@item @code{minimum-uid} (default 1000) +Minimum UID to display in SDDM. + +@item @code{maximum-uid} (default 2000) +Maximum UID to display in SDDM + +@item @code{remember-last-user?} (default #t) +Remember last user. + +@item @code{remember-last-session?} (default #t) +Remember last session. + +@item @code{hide-users} (default "") +Usernames to hide from SDDM greeter. + +@item @code{hide-shells} (default @code{#~(string-append #$shadow "/sbin/nologin")}) +Users with shells listed will be hidden from the SDDM greeter. + +@item @code{session-command} (default @code{#~(string-append #$sddm "/share/sddm/scripts/wayland-session")}) +Script to run before starting a wayland session. + +@item @code{sessions-directory} (default "/run/current-system/profile/share/wayland-sessions") +Directory to look for desktop files starting wayland sessions. + +@item @code{xorg-server-path} (default @code{xorg-start-command}) +Path to xorg-server. + +@item @code{xauth-path} (default @code{#~(string-append #$xauth "/bin/xauth")}) +Path to xauth. + +@item @code{xephyr-path} (default @code{#~(string-append #$xorg-server "/bin/Xephyr")}) +Path to Xephyr. + +@item @code{xdisplay-start} (default @code{#~(string-append #$sddm "/share/sddm/scripts/Xsetup")}) +Script to run after starting xorg-server. + +@item @code{xdisplay-stop} (default @code{#~(string-append #$sddm "/share/sddm/scripts/Xstop")}) +Script to run before stopping xorg-server. + +@item @code{xsession-command} (default: @code{xinitr }) +Script to run before starting a X session. + +@item @code{xsessions-directory} (default: "/run/current-system/profile/share/xsessions") +Directory to look for desktop files starting X sessions. + +@item @code{minimum-vt} (default: 7) +Minimum VT to use. + +@item @code{xserver-arguments} (default "-nolisten tcp") +Arguments to pass to xorg-server. + +@item @code{auto-login-user} (default "") +User to use for auto-login. + +@item @code{auto-login-session} (default "") +Desktop file to use for auto-login. + +@item @code{relogin?} (default #f) +Relogin after logout. + +@end table +@end deftp + +@deffn {Scheme Procedure} sddm-service config +Return a service that spawns the SDDM graphical login manager for config of +type @code{}. + +@example + (sddm-service (sddm-configuration + (auto-login-user "Alice") + (auto-login-session "xfce.desktop"))) +@end example +@end deffn + @deffn {Scheme Procedure} slim-service [#:allow-empty-passwords? #f] @ [#:auto-login? #f] [#:default-user ""] [#:startx] @ [#:theme @var{%default-slim-theme}] @ diff --git a/gnu/local.mk b/gnu/local.mk index 50363ef026..0a9b831aa1 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -391,6 +391,7 @@ GNU_SYSTEM_MODULES = \ %D%/services/networking.scm \ %D%/services/shepherd.scm \ %D%/services/herd.scm \ + %D%/services/sddm.scm \ %D%/services/spice.scm \ %D%/services/ssh.scm \ %D%/services/web.scm \ diff --git a/gnu/services/sddm.scm b/gnu/services/sddm.scm new file mode 100644 index 0000000000..ab6672b0e5 --- /dev/null +++ b/gnu/services/sddm.scm @@ -0,0 +1,318 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 David Craven +;;; +;;; 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 . + +(define-module (gnu services sddm) + #:use-module (gnu packages admin) + #:use-module (gnu packages display-managers) + #:use-module (gnu packages freedesktop) + #:use-module (gnu packages xorg) + #:use-module (gnu services) + #:use-module (gnu services shepherd) + #:use-module (gnu services xorg) + #:use-module (gnu system pam) + #:use-module (gnu system shadow) + #:use-module (guix gexp) + #:use-module (guix records) + #:export (sddm-configuration + sddm-confiugration? + sddm-service-type + sddm-service)) + +(define-record-type* + sddm-configuration make-sddm-configuration + sddm-configuration? + (sddm sddm-configuration-sddm + (default sddm)) + + ;; [General] + ;; valid values are x11 and wayland + ;; currently doesn't do anything is enabled by wayland greeter PR + (display-server sddm-configuration-display-server + (default "x11")) + ;; valid values are on, off or none + (numlock sddm-configuration-numlock + (default "on")) + (halt-command sddm-configuration-halt-command + (default #~(string-append #$shepherd "/sbin/halt"))) + (reboot-command sddm-configuration-reboot-command + (default #~(string-append #$shepherd "/sbin/reboot"))) + + ;; [Theme] + ;; valid values are elarun or maldives + (theme sddm-configuration-theme + (default "maldives")) + (themes-directory sddm-configuration-themes-directory + (default "/run/current-system/profile/share/sddm/themes")) + (faces-directory sddm-configuration-faces-directory + (default "/run/current-system/profile/share/sddm/faces")) + + ;; [Users] + (default-path sddm-configuration-default-path + (default "/run/current-system/profile/bin")) + (minimum-uid sddm-configuration-minimum-uid + (default 1000)) + (maximum-uid sddm-configuration-maximum-uid + (default 2000)) + (remember-last-user? sddm-configuration-remember-last-user? + (default #t)) + (remember-last-session? sddm-configuration-remember-last-session? + (default #t)) + (hide-users sddm-configuration-hide-users + (default "")) + (hide-shells sddm-configuration-hide-shells + (default #~(string-append #$shadow "/sbin/nologin"))) + + ;; [Wayland] + (session-command sddm-configuration-session-command + (default #~(string-append #$sddm "/share/sddm/scripts/wayland-session"))) + (sessions-directory sddm-configuration-sessions-directory + (default "/run/current-system/profile/share/wayland-sessions")) + ;; [X11] + (xorg-server-path sddm-configuration-xorg-server-path + (default (xorg-start-command))) + (xauth-path sddm-configuration-xauth-path + (default #~(string-append #$xauth "/bin/xauth"))) + (xephyr-path sddm-configuration-xephyr-path + (default #~(string-append #$xorg-server "/bin/Xephyr"))) + (xdisplay-start sddm-configuration-xdisplay-start + (default #~(string-append #$sddm "/share/sddm/scripts/Xsetup"))) + (xdisplay-stop sddm-configuration-xdisplay-stop + (default #~(string-append #$sddm "/share/sddm/scripts/Xstop"))) + (xsession-command sddm-configuration-xsession-command + (default (xinitrc))) + (xsessions-directory sddm-configuration-xsessions-directory + (default "/run/current-system/profile/share/xsessions")) + (minimum-vt sddm-configuration-minimum-vt + (default 7)) + (xserver-arguments sddm-configuration-xserver-arguments + (default "-nolisten tcp")) + + ;; [Autologin] + (auto-login-user sddm-configuration-auto-login-user + (default "")) + ;; valid values are xfce.desktop gnome.desktop weston.desktop hawaii.desktop + (auto-login-session sddm-configuration-auto-login-session + (default "")) + (relogin? sddm-configuration-relogin? + (default #f))) + +(define (sddm-configuration-file config) + (mixed-text-file "sddm.conf" " +[General] +DisplayServer=" (sddm-configuration-display-server config) " +Numlock=" (sddm-configuration-numlock config) " +HaltCommand=" (sddm-configuration-halt-command config) " +RebootCommand=" (sddm-configuration-reboot-command config) " + +[Users] +DefaultPath=" (sddm-configuration-default-path config) " +MinimumUid=" (number->string (sddm-configuration-minimum-uid config))" +MaximumUid=" (number->string (sddm-configuration-maximum-uid config))" +RememberLastUser=" (if (sddm-configuration-remember-last-user? config) + "true" "false") " +RememberLastSession=" (if (sddm-configuration-remember-last-session? config) + "true" "false") " +HideUsers=" (sddm-configuration-hide-users config) " +Hideshells=" (sddm-configuration-hide-shells config) " + +[Theme] +Current=" (sddm-configuration-theme config) " +ThemeDir=" (sddm-configuration-themes-directory config) " +FacesDir=" (sddm-configuration-faces-directory config) " + +[Wayland] +SessionCommand=" (sddm-configuration-session-command config) " +SessionDir=" (sddm-configuration-sessions-directory config) " + +[X11] +ServerPath=" (sddm-configuration-xorg-server-path config) " +XauthPath=" (sddm-configuration-xauth-path config) " +XephyrPath=" (sddm-configuration-xephyr-path config) " +DisplayCommand=" (sddm-configuration-xdisplay-start config) " +DisplayStopCommand=" (sddm-configuration-xdisplay-stop config) " +SessionCommand=" (sddm-configuration-xsession-command config) " +SessionDir=" (sddm-configuration-xsessions-directory config) " +MinimumVT=" (number->string (sddm-configuration-minimum-vt config)) " +ServerArguments=" (sddm-configuration-xserver-arguments config) " + +[Autologin] +User=" (sddm-configuration-auto-login-user config) " +Session=" (sddm-configuration-auto-login-session config) " +Relogin=" (if (sddm-configuration-relogin? config) + "true" "false") " +")) + +(define (sddm-shepherd-service config) + "Return a for sddm with CONFIG." + + (define sddm-command + #~(list (string-append #$(sddm-configuration-sddm config) "/bin/sddm"))) + + (list (shepherd-service + (documentation "SDDM display manager.") + (requirement '(user-processes)) + (provision '(display-manager)) + (start #~(make-forkexec-constructor #$sddm-command)) + (stop #~(make-kill-destructor))))) + +(define (sddm-etc-service config) + (list `("sddm.conf" ,(sddm-configuration-file config)))) + +(define (sddm-pam-service) + "Return a PAM service for @command{sddm}." + (pam-service + (name "sddm") + (auth + (list + (pam-entry + (control "requisite") + (module "pam_nologin.so")) + (pam-entry + (control "required") + (module "pam_env.so")) + (pam-entry + (control "required") + (module "pam_succeed_if.so") + (arguments (list "uid >= 1000" "quiet"))) + ;; should be factored out into system-auth + (pam-entry + (control "required") + (module "pam_unix.so")))) + (account + (list + ;; should be factored out into system-account + (pam-entry + (control "required") + (module "pam_unix.so")))) + (password + (list + ;; should be factored out into system-password + (pam-entry + (control "required") + (module "pam_unix.so") + (arguments (list "sha512" "shadow" "try_first_pass"))))) + (session + (list + ;; lfs has a required pam_limits.so + ;; should be factored out into system-session + (pam-entry + (control "required") + (module "pam_unix.so")))))) + +(define (sddm-greeter-pam-service) + "Return a PAM service for @command{sddm-greeter}." + (pam-service + (name "sddm-greeter") + (auth + (list + ;; Load environment form /etc/environment and ~/.pam_environment + (pam-entry + (control "required") + (module "pam_env.so")) + ;; Always let the greeter start without authentication + (pam-entry + (control "required") + (module "pam_permit.so")))) + (account + (list + ;; No action required for account management + (pam-entry + (control "required") + (module "pam_permit.so")))) + (password + (list + ;; Can't change password + (pam-entry + (control "required") + (module "pam_deny.so")))) + (session + (list + ;; Setup session + (pam-entry + (control "required") + (module "pam_unix.so")))))) + +(define (sddm-autologin-pam-service) + "Return a PAM service for @command{sddm-autologin}" + (pam-service + (name "sddm-autologin") + (auth + (list + (pam-entry + (control "requisite") + (module "pam_nologin.so")) + (pam-entry + (control "required") + (module "pam_succeed_if.so") + (arguments (list "uid >= 1000" "quiet"))) + (pam-entry + (control "required") + (module "pam_permit.so")))) + (account + (list + (pam-entry + (control "include") + (module "sddm")))) + (password + (list + (pam-entry + (control "required") + (module "pam_deny.so")))) + (session + (list + (pam-entry + (control "include") + (module "sddm")))))) + +(define (sddm-pam-services config) + (list (sddm-pam-service) + (sddm-greeter-pam-service) + (sddm-autologin-pam-service))) + +(define %sddm-accounts + (list (user-group (name "sddm") (system? #t)) + (user-account + (name "sddm") + (group "sddm") + (system? #t) + (comment "SDDM user") + (home-directory "/var/lib/sddm") + (shell #~(string-append #$shadow "/sbin/nologin"))))) + +;; Add default themes to profile +(define sddm-profile-service + (compose list sddm-configuration-sddm)) + +(define sddm-service-type + (service-type (name 'sddm) + (extensions + (list (service-extension shepherd-root-service-type + sddm-shepherd-service) + (service-extension etc-service-type + sddm-etc-service) + (service-extension pam-root-service-type + sddm-pam-services) + (service-extension account-service-type + (const %sddm-accounts)) + (service-extension profile-service-type + sddm-profile-service))))) + +(define* (sddm-service #:optional (config (sddm-configuration))) + "Run the @uref{https://github.com/sddm/sddm,SSDM display manager} +with the given @var{config}, a @code{} object." + (service sddm-service-type config)) -- cgit v1.2.3 From 40b3f52399feeca34e20796c22776f6c462e42c0 Mon Sep 17 00:00:00 2001 From: David Craven Date: Sun, 4 Sep 2016 15:20:24 +0200 Subject: gnu: Add cairo-xcb. * gnu/packages/gtk.scm (cairo-xcb): New variable. --- gnu/packages/gtk.scm | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 74c4ed36a9..5f55c1ee6f 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -149,6 +149,19 @@ affine transformation (scale, rotation, shear, etc.).") (license license:lgpl2.1) ; or Mozilla Public License 1.1 (home-page "http://cairographics.org/"))) +(define-public cairo-xcb + (package + (inherit cairo) + (name "cairo-xcb") + (inputs + `(("mesa" ,mesa) + ,@(package-inputs cairo))) + (arguments + `(#:tests? #f + #:configure-flags + '("--enable-xlib-xcb" "--enable-gl" "--enable-egl"))) + (synopsis "2D graphics library (with X11 support)"))) + (define-public harfbuzz (package (name "harfbuzz") -- cgit v1.2.3 From dfe05a514c192034fd65c7b5ca7e4d576b10ab4f Mon Sep 17 00:00:00 2001 From: David Craven Date: Sun, 4 Sep 2016 15:28:55 +0200 Subject: gnu: Add xorg-server-xwayland. * gnu/packages/xorg.scm (xorg-server-xwayland): New variable. --- gnu/packages/xorg.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index fe14b1c6d4..0d3cdce37c 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Alex Kost +;;; Copyright © 2016 David Craven ;;; ;;; This file is part of GNU Guix. ;;; @@ -32,6 +33,7 @@ #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) + #:use-module (guix utils) #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages bison) @@ -5155,6 +5157,23 @@ communicates with the user via graphical controls such as buttons and draggable titlebars and borders.") (license license:x11))) +(define-public xorg-server-xwayland + (package + (inherit xorg-server) + (name "xorg-server-xwayland") + (inputs + `(("libepoxy" ,libepoxy) + ("wayland" ,wayland) + ,@(package-inputs xorg-server))) + (arguments + (substitute-keyword-arguments (package-arguments xorg-server) + ((#:configure-flags flags) + `(cons* "--enable-xwayland" "--disable-xorg" + "--disable-docs" "--disable-devel-docs" + "--disable-xvfb" "--disable-xnest" + "--disable-xquartz" "--disable-xwin" + ,flags)))) + (synopsis "Xorg server with wayland backend"))) ;; packages of height 4 in the propagated-inputs tree -- cgit v1.2.3 From 24e051cb5f201765dee7f1c44bf8d496f91798de Mon Sep 17 00:00:00 2001 From: David Craven Date: Wed, 20 Jul 2016 13:16:49 +0200 Subject: gnu: Add weston. * gnu/packages/freedesktop.scm (weston): New variable. --- gnu/packages/freedesktop.scm | 75 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 2032dce66a..84154b309b 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -36,6 +36,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages autotools) #:use-module (gnu packages gettext) + #:use-module (gnu packages gl) #:use-module (gnu packages gperf) #:use-module (gnu packages graphviz) #:use-module (gnu packages gtk) @@ -49,6 +50,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages documentation) #:use-module (gnu packages libffi) + #:use-module (gnu packages libunwind) #:use-module (gnu packages acl) #:use-module (gnu packages admin) #:use-module (gnu packages polkit) @@ -318,6 +320,79 @@ applications, X servers (rootless or fullscreen) or other display servers.") (home-page "https://wayland.freedesktop.org") (license license:expat))) +(define-public weston + (package + (name "weston") + (version "1.11.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://wayland.freedesktop.org/releases/" + "weston-" version ".tar.xz")) + (sha256 + (base32 + "09biddxw3ar797kxf9mywjkb2iwky6my39gpp51ni846y7lqdq05")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("xorg-server" ,xorg-server))) + (inputs + `(("cairo" ,cairo-xcb) + ("dbus" ,dbus) + ("elogind" ,elogind) + ("libinput" ,libinput-minimal) + ("libunwind" ,libunwind) + ("libxcursor" ,libxcursor) + ("libxkbcommon" ,libxkbcommon) + ("mesa" ,mesa) + ("mtdev" ,mtdev) + ("linux-pam" ,linux-pam) + ("wayland" ,wayland) + ("wayland-protocols" ,wayland-protocols) + ("xorg-server-xwayland" ,xorg-server-xwayland))) + (arguments + `(#:configure-flags + (list "--disable-setuid-install" + "--enable-systemd-login" + (string-append "--with-xserver-path=" + (assoc-ref %build-inputs "xorg-server-xwayland") + "/bin/Xwayland")) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'use-elogind + (lambda _ + ;; Use elogind instead of systemd + (substitute* "configure" + (("libsystemd-login >= 198") "libelogind")) + (substitute* '("src/launcher-logind.c" "src/weston-launch.c") + (("#include ") + "#include ")))) + (add-after 'configure 'patch-confdefs.h + (lambda _ + (system "echo \"#define HAVE_SYSTEMD_LOGIN_209 1\" >> confdefs.h"))) + (add-before 'check 'setup + (lambda _ + (setenv "HOME" (getcwd)) + (setenv "XDG_RUNTIME_DIR" (getcwd)) + #t)) + (add-before 'check 'start-xorg-server + (lambda* (#:key inputs #:allow-other-keys) + ;; The test suite requires a running X server. + (system (string-append (assoc-ref inputs "xorg-server") + "/bin/Xvfb :1 &")) + (setenv "DISPLAY" ":1") + #t))))) + (home-page "https://wayland.freedesktop.org") + (synopsis "Reference implementation of a Wayland compositor") + (description "Weston is the reference implementation of a Wayland +compositor, and a useful compositor in its own right. + +A Wayland compositor allows applications to render to a shared offscreen +buffer using OpenGL ES. The compositor then culls the hidden parts and +composes the final output. A Wayland compositor is essentially a +multiplexer to the KMS/DRM Linux kernel devices.") + (license license:expat))) + (define-public exempi (package (name "exempi") -- cgit v1.2.3 From 274563e1f4b3ff89ad628e6318c43d3e8bc1aa66 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sat, 3 Sep 2016 22:21:04 +0200 Subject: gnu: Add ding. * gnu/packages/dictionaries.scm (ding): New variable. --- gnu/packages/dictionaries.scm | 64 ++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 63 insertions(+), 1 deletion(-) diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index 931db626d8..0c47585fe7 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -26,7 +26,9 @@ #:use-module (guix build-system trivial) #:use-module (gnu packages base) #:use-module (gnu packages texinfo) - #:use-module (gnu packages compression)) + #:use-module (gnu packages compression) + #:use-module (gnu packages tcl)) + (define-public vera (package @@ -138,3 +140,63 @@ body of text. Style instead analyzes surface aspects of a written work, such as sentence length and other readability measures.") (home-page "https://www.gnu.org/software/diction/") (license gpl3+))) + +(define-public ding + (package + (name "ding") + (version "1.8") + (source (origin + (method url-fetch) + (uri (string-append "http://ftp.tu-chemnitz.de/pub/Local/urz/" name + "/" name "-" version ".tar.gz")) + (sha256 + (base32 + "00z97ndwmzsgig9q6y98y8nbxy76pyi9qyj5qfpbbck24gakpz5l")))) + (build-system gnu-build-system) + (inputs `(("tk" ,tk))) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (delete 'build) + (delete 'check) + (replace + 'install + (lambda _ + (let ((bindir (string-append + (assoc-ref %outputs "out") "/bin")) + (wish (string-append + (assoc-ref %build-inputs "tk") + "/bin/wish8.6")) + (sharedir (string-append + (assoc-ref %outputs "out") + "/share/applications")) + (libdir (string-append + (assoc-ref %outputs "out") "/lib"))) + (mkdir-p bindir) + (mkdir-p libdir) + (mkdir-p sharedir) + + (substitute* "ding.desktop" + (("Exec=/usr/bin/ding") + (string-append "Exec=" bindir "/ding"))) + (with-fluids ((%default-port-encoding "ISO-8859-1")) + (substitute* "ding" (("exec wish") (string-append "exec " wish)))) + (substitute* "install.sh" + (("/bin/cp") "cp") + (("/bin/mv") "mv") + (("NEEDPROG=\"wish\"") + (string-append "NEEDPROG=\"" wish "\"")) + (("DEFBINDIR=\"/usr/local/bin\"") + (string-append "DEFBINDIR=\"" bindir "\"")) + (("DEFLIBDIR=\"/usr/local/lib\"") + (string-append "DEFLIBDIR=\"" libdir "\""))) + (install-file "ding.desktop" sharedir) + (install-file "ding.png" sharedir) + (zero? + (system* "./install.sh")))))))) + (synopsis "Dictionary lookup program with a German-English dictionary") + (description "Ding is a dictionary lookup program for the X window system. +It comes with a German-English dictionary with approximately 270,000 entries.") + (home-page "http://www-user.tu-chemnitz.de/~fri/ding/") + (license gpl2+))) -- cgit v1.2.3 From 83457fe00efc12120fb2a41398b136353e0dcb51 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Mon, 5 Sep 2016 00:26:26 +0200 Subject: gnu: Add teximpatient. * gnu/packages/tex.scm (teximpatient): New variable. --- gnu/packages/tex.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 9dde8a9eab..c8114c2077 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -28,7 +28,9 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) #:use-module (guix utils) + #:use-module (guix git-download) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages fontutils) @@ -446,3 +448,44 @@ PDF documents.") (description "Texmaker is a program that integrates many tools needed to develop documents with LaTeX, in a single application.") (license license:gpl2+))) + + +(define-public teximpatient + (package + (name "teximpatient") + (version "2.4") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/" name "/" name "-" + version ".tar.gz")) + (sha256 + (base32 + "0h56w22d99dh4fgld4ssik8ggnmhmrrbnrn1lnxi1zr0miphn1sd")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'check) + ;; Unfortunately some mistakes have been made in packaging. + ;; Work around them here ... + (replace 'unpack + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((srcdir "teximpatient-2.4")) + (system* "tar" "-xzf" (assoc-ref inputs "source") + (string-append "--one-top-level=" srcdir)) + (delete-file (string-append srcdir "/book.pdf")) + (install-file (car + (find-files + (assoc-ref inputs "automake") + "^install-sh$")) + srcdir) + (chdir srcdir))))))) + (native-inputs + `(("texlive" ,texlive) + ("automake" ,automake))) + (home-page "http://www.gnu.org/software/teximpatient") + (synopsis "Book on TeX, plain TeX and Eplain") + (description "@i{TeX for the Impatient} is a ~350 page book on TeX, +plain TeX, and Eplain, originally written by Paul Abrahams, Kathryn Hargreaves, +and Karl Berry.") + (license license:fdl1.3+))) -- cgit v1.2.3 From 763899f0db923478c8b1b068fd61e06ae856c1fb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 2 Sep 2016 16:07:29 -0400 Subject: gnu: Add openssl-next. * gnu/packages/tls.scm (openssl-next): New variable. * gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + .../patches/openssl-1.1.0-c-rehash-in.patch | 19 ++++++++++++ gnu/packages/tls.scm | 35 ++++++++++++++++++++++ 3 files changed, 55 insertions(+) create mode 100644 gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch diff --git a/gnu/local.mk b/gnu/local.mk index 0a9b831aa1..bcd96ae0d6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -702,6 +702,7 @@ dist_patch_DATA = \ %D%/packages/patches/openjpeg-CVE-2015-6581.patch \ %D%/packages/patches/openjpeg-use-after-free-fix.patch \ %D%/packages/patches/openssl-runpath.patch \ + %D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \ %D%/packages/patches/openssl-c-rehash-in.patch \ %D%/packages/patches/openssl-CVE-2016-2177.patch \ %D%/packages/patches/openssl-CVE-2016-2178.patch \ diff --git a/gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch b/gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch new file mode 100644 index 0000000000..e3a982b7a8 --- /dev/null +++ b/gnu/packages/patches/openssl-1.1.0-c-rehash-in.patch @@ -0,0 +1,19 @@ +This patch removes the explicit reference to the 'perl' binary, +such that OpenSSL does not retain a reference to Perl. + +The 'c_rehash' program is seldom used, but it is used nonetheless +to create symbolic links to certificates, for instance in the 'nss-certs' +package. + +diff --git a/tools/c_rehash.in b/tools/c_rehash.in +index 2fef627..9d40eae 100644 +--- a/tools/c_rehash.in ++++ b/tools/c_rehash.in +@@ -1,4 +1,6 @@ +-#!{- $config{hashbangperl} -} ++eval '(exit $?0)' && eval 'exec perl -wS "$0" ${1+"$@"}' ++ & eval 'exec perl -wS "$0" $argv:q' ++ if 0; + + # {- join("\n# ", @autowarntext) -} + # Copyright 1999-2016 The OpenSSL Project Authors. All Rights Reserved. diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 4b87150615..efc1190980 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -323,6 +323,41 @@ required structures.") (license license:openssl) (home-page "http://www.openssl.org/"))) +(define-public openssl-next + (package + (inherit openssl) + (name "openssl") + (version "1.1.0") + (source (origin + (method url-fetch) + (uri (list (string-append "ftp://ftp.openssl.org/source/" + name "-" version ".tar.gz") + (string-append "ftp://ftp.openssl.org/source/old/" + (string-trim-right version char-set:letter) + "/" name "-" version ".tar.gz"))) + (patches (search-patches "openssl-1.1.0-c-rehash-in.patch")) + (sha256 + (base32 + "10lcpmnxap9nw8ymdglys93cgkwd1lf1rz4fhq5whwhlmkwrzipm")))) + (outputs '("out" + "doc" ;1.3MiB of man3 pages + "static")) ; 5.5MiB of .a files + (arguments + (substitute-keyword-arguments (package-arguments openssl) + ((#:phases phases) + `(modify-phases ,phases + (delete 'patch-tests) ; These two phases are not needed by + (delete 'patch-Makefile.org) ; OpenSSL 1.1.0. + + (add-after 'configure 'patch-runpath + (lambda* (#:key outputs #:allow-other-keys) + (let ((lib (string-append (assoc-ref outputs "out") "/lib"))) + (substitute* "Makefile.shared" + (("\\$\\$\\{SHAREDCMD\\} \\$\\$\\{SHAREDFLAGS\\}") + (string-append "$${SHAREDCMD} $${SHAREDFLAGS}" + " -Wl,-rpath," lib))) + #t))))))))) + (define-public libressl (package (name "libressl") -- cgit v1.2.3 From 7247ecda0e32387b86bf820fcaeb0a4cb7087189 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Tue, 6 Sep 2016 17:09:07 +0200 Subject: gnu: scribus: Update to 1.5.2. * gnu/packages/scribus.scm (scribus): Update to 1.5.2. Signed-off-by: Efraim Flashner --- gnu/packages/scribus.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/scribus.scm b/gnu/packages/scribus.scm index 72f3c57612..d48051ee33 100644 --- a/gnu/packages/scribus.scm +++ b/gnu/packages/scribus.scm @@ -40,14 +40,14 @@ (define-public scribus (package (name "scribus") - (version "1.5.1") + (version "1.5.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/scribus/scribus-devel/" version "/scribus-" version ".tar.xz")) (sha256 (base32 - "0f2adwg58w37sdi3xrk8xqw486p3pcfjaypcsswjl76r2f3yd0hq")))) + "1xbl7h4x32y2nfhn57ivjziyvlnwadcbizqwfqx5srfsmqiyqppc")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no test target -- cgit v1.2.3 From a7199b7d994433eaabb989690887b921d053d761 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 6 Sep 2016 14:39:35 -0400 Subject: activation: Don't fail if /var/lib exists. This is a followup to commit 6526d43ea4fb0cd151a0d5e9a072c651c1c963d1. * gnu/build/activation.scm (activate-user+groups): Use mkdir-p to create /var/lib. --- gnu/build/activation.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/build/activation.scm b/gnu/build/activation.scm index 7dc40b0961..1b31dc1538 100644 --- a/gnu/build/activation.scm +++ b/gnu/build/activation.scm @@ -234,7 +234,7 @@ numeric gid or #f." (touch "/etc/group") ;; Allow home directories to be created under /var/lib. - (mkdir "/var/lib") + (mkdir-p "/var/lib") ;; Create the root account so we can use 'useradd' and 'groupadd'. (activate-user (find (match-lambda -- cgit v1.2.3 From 3ed3c105e3aef11f21d2e50a529389c0e5aa5555 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 6 Sep 2016 14:02:20 -0400 Subject: gnu: slock: Fix CVE-2016-6866. * gnu/packages/patches/slock-CVE-2016-6866.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/suckless.scm (slock): Use it. --- gnu/local.mk | 1 + gnu/packages/patches/slock-CVE-2016-6866.patch | 51 ++++++++++++++++++++++++++ gnu/packages/suckless.scm | 1 + 3 files changed, 53 insertions(+) create mode 100644 gnu/packages/patches/slock-CVE-2016-6866.patch diff --git a/gnu/local.mk b/gnu/local.mk index bcd96ae0d6..69e516cea3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -790,6 +790,7 @@ dist_patch_DATA = \ %D%/packages/patches/slim-session.patch \ %D%/packages/patches/slim-config.patch \ %D%/packages/patches/slim-sigusr1.patch \ + %D%/packages/patches/slock-CVE-2016-6866.patch \ %D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \ %D%/packages/patches/soprano-find-clucene.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ diff --git a/gnu/packages/patches/slock-CVE-2016-6866.patch b/gnu/packages/patches/slock-CVE-2016-6866.patch new file mode 100644 index 0000000000..2f94b8c1a9 --- /dev/null +++ b/gnu/packages/patches/slock-CVE-2016-6866.patch @@ -0,0 +1,51 @@ +Fix CVE-2016-6866. + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-6866 +https://security-tracker.debian.org/tracker/CVE-2016-6866 + +Copied from upstream source repository: +http://git.suckless.org/slock/commit/?id=d8bec0f6fdc8a246d78cb488a0068954b46fcb29 + +From d8bec0f6fdc8a246d78cb488a0068954b46fcb29 Mon Sep 17 00:00:00 2001 +From: Markus Teich +Date: Tue, 30 Aug 2016 22:59:06 +0000 +Subject: fix CVE-2016-6866 + +--- +diff --git a/slock.c b/slock.c +index 847b328..8ed59ca 100644 +--- a/slock.c ++++ b/slock.c +@@ -123,7 +123,7 @@ readpw(Display *dpy) + readpw(Display *dpy, const char *pws) + #endif + { +- char buf[32], passwd[256]; ++ char buf[32], passwd[256], *encrypted; + int num, screen; + unsigned int len, color; + KeySym ksym; +@@ -159,7 +159,11 @@ readpw(Display *dpy, const char *pws) + #ifdef HAVE_BSD_AUTH + running = !auth_userokay(getlogin(), NULL, "auth-slock", passwd); + #else +- running = !!strcmp(crypt(passwd, pws), pws); ++ errno = 0; ++ if (!(encrypted = crypt(passwd, pws))) ++ fprintf(stderr, "slock: crypt: %s\n", strerror(errno)); ++ else ++ running = !!strcmp(encrypted, pws); + #endif + if (running) { + XBell(dpy, 100); +@@ -312,6 +316,8 @@ main(int argc, char **argv) { + + #ifndef HAVE_BSD_AUTH + pws = getpw(); ++ if (strlen(pws) < 2) ++ die("slock: failed to get user password hash.\n"); + #endif + + if (!(dpy = XOpenDisplay(NULL))) +-- +cgit v0.9.0.3-65-g4555 diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index 7efa502d8f..820d550d6e 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -111,6 +111,7 @@ numbers of user-defined menu items efficiently.") (method url-fetch) (uri (string-append "http://dl.suckless.org/tools/slock-" version ".tar.gz")) + (patches (search-patches "slock-CVE-2016-6866.patch")) (sha256 (base32 "065xa9hl7zn0lv2f7yjxphqsa35rg6dn9hv10gys0sh4ljpa7d5s")))) -- cgit v1.2.3 From 751c70404b176082e20f6bcc4d014227ccfe2f7d Mon Sep 17 00:00:00 2001 From: ng0 Date: Mon, 8 Aug 2016 19:54:50 +0000 Subject: gnu: Add tintin++. * gnu/packages/games.scm (tintin++): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/games.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 88330c7293..d386e2c99f 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -101,6 +101,8 @@ #:use-module (gnu packages xml) #:use-module (gnu packages tcl) #:use-module (gnu packages xdisorg) + #:use-module (gnu packages tls) + #:use-module (gnu packages pcre) #:use-module (guix build-system gnu) #:use-module (guix build-system haskell) #:use-module (guix build-system python) @@ -2736,6 +2738,42 @@ the GNU GPL.") (home-page "https://supertuxproject.org/") (license license:gpl3+))) +(define-public tintin++ + (package + (name "tintin++") + (version "2.01.1") + (source (origin + (method url-fetch) + (uri (string-append "https://sourceforge.net/projects/tintin" + "/files/TinTin++ Source Code/" version + "/tintin" "-" version ".tar.gz")) + (sha256 + (base32 + "195wrfcys8yy953gdrl1gxryhjnx9lg1vqgxm3dyzm8bi18aa2yc")))) + (inputs + `(("gnutls" ,gnutls) + ("pcre" ,pcre) + ("readline" ,readline) + ("zlib" ,zlib))) + (arguments + '(#:tests? #f ; no test suite + #:phases + (modify-phases %standard-phases + ;; The source is in tt/src. + (add-before 'configure 'chdir + (lambda _ + (chdir "src") + #t))))) + (build-system gnu-build-system) + (home-page "http://tintin.sourceforge.net/") + (synopsis "MUD client") + (description + "TinTin++ is a MUD client which supports MCCP (Mud Client Compression Protocol), +MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used by MUDs, +as well as those required to login via telnet on Linux / Mac OS X servers, and an +auto mapper with a VT100 map display.") + (license license:gpl2+))) + (define-public laby (package (name "laby") -- cgit v1.2.3 From a287fafef283de47fcc39338b1d343e221220ac7 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 16 Aug 2016 20:05:12 +0200 Subject: gnu: lua-5.1: install pkg-config file. * gnu/packages/patches/lua51-pkgconfig.patch: New file. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/lua.scm (lua-5.1)[source]: Add it. Signed-off-by: Efraim Flashner --- gnu/local.mk | 1 + gnu/packages/lua.scm | 3 +- gnu/packages/patches/lua51-pkgconfig.patch | 101 +++++++++++++++++++++++++++++ 3 files changed, 104 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/lua51-pkgconfig.patch diff --git a/gnu/local.mk b/gnu/local.mk index 69e516cea3..12578cad64 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -660,6 +660,7 @@ dist_patch_DATA = \ %D%/packages/patches/lua-CVE-2014-5461.patch \ %D%/packages/patches/lua-pkgconfig.patch \ %D%/packages/patches/lua51-liblua-so.patch \ + %D%/packages/patches/lua51-pkgconfig.patch \ %D%/packages/patches/lua52-liblua-so.patch \ %D%/packages/patches/luajit-no_ldconfig.patch \ %D%/packages/patches/luajit-symlinks.patch \ diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index 8bd67c594d..274330fd3d 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -84,7 +84,8 @@ for configuration, scripting, and rapid prototyping.") (sha256 (base32 "0cskd4w0g6rdm2q8q3i4n1h3j8kylhs3rq8mxwl9vwlmlxbgqh16")) (patches (search-patches "lua51-liblua-so.patch" - "lua-CVE-2014-5461.patch")))))) + "lua-CVE-2014-5461.patch" + "lua51-pkgconfig.patch")))))) (define-public luajit (package diff --git a/gnu/packages/patches/lua51-pkgconfig.patch b/gnu/packages/patches/lua51-pkgconfig.patch new file mode 100644 index 0000000000..5b03adaaaa --- /dev/null +++ b/gnu/packages/patches/lua51-pkgconfig.patch @@ -0,0 +1,101 @@ +Enables generating Lua's pkg-config file. + +http://lua-users.org/lists/lua-l/2015-03/msg00338.html + +--- a/Makefile 2016-08-16 19:44:27.363614964 +0200 ++++ b/Makefile 2016-08-16 19:49:22.623070005 +0200 +@@ -13,6 +13,7 @@ + INSTALL_BIN= $(INSTALL_TOP)/bin + INSTALL_INC= $(INSTALL_TOP)/include + INSTALL_LIB= $(INSTALL_TOP)/lib ++INSTALL_PC= $(INSTALL_LIB)/pkgconfig + INSTALL_MAN= $(INSTALL_TOP)/man/man1 + # + # You probably want to make INSTALL_LMOD and INSTALL_CMOD consistent with +@@ -41,9 +42,12 @@ + PLATS= aix ansi bsd freebsd generic linux macosx mingw posix solaris + + # What to install. +-TO_BIN= lua luac ++INTERPRETER= lua ++COMPILER= luac ++TO_BIN= $(INTERPRETER) $(COMPILER) + TO_INC= lua.h luaconf.h lualib.h lauxlib.h ../etc/lua.hpp + TO_LIB= liblua.a liblua.so liblua.so.${V} ++TO_PC= lua-$(V).pc + TO_MAN= lua.1 luac.1 + + # Lua version and release. +@@ -52,17 +56,22 @@ + + all: $(PLAT) + +-$(PLATS) clean: ++$(PLATS): + cd src && $(MAKE) $@ V=$(V) R=$(R) + ++clean: ++ cd src && $(MAKE) $@ ++ $(RM) $(TO_PC) ++ + test: dummy + src/lua test/hello.lua + +-install: dummy +- cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) ++install: dummy $(TO_PC) ++ cd src && $(MKDIR) $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB) $(INSTALL_PC) $(INSTALL_MAN) $(INSTALL_LMOD) $(INSTALL_CMOD) + cd src && $(INSTALL_EXEC) $(TO_BIN) $(INSTALL_BIN) + cd src && $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC) + cd src && $(INSTALL_DATA) $(TO_LIB) $(INSTALL_LIB) ++ cd src && $(INSTALL_DATA) ../$(TO_PC) $(INSTALL_PC) + cd doc && $(INSTALL_DATA) $(TO_MAN) $(INSTALL_MAN) + + ranlib: +@@ -95,6 +104,7 @@ + @echo "INSTALL_BIN = $(INSTALL_BIN)" + @echo "INSTALL_INC = $(INSTALL_INC)" + @echo "INSTALL_LIB = $(INSTALL_LIB)" ++ @echo "INSTALL_PC = $(INSTALL_PC)" + @echo "INSTALL_MAN = $(INSTALL_MAN)" + @echo "INSTALL_LMOD = $(INSTALL_LMOD)" + @echo "INSTALL_CMOD = $(INSTALL_CMOD)" +@@ -111,6 +121,7 @@ + @echo "TO_BIN = $(TO_BIN)" + @echo "TO_INC = $(TO_INC)" + @echo "TO_LIB = $(TO_LIB)" ++ @echo "TO_PC = $(TO_PC)" + @echo "TO_MAN = $(TO_MAN)" + + # echo config parameters as Lua code +@@ -122,7 +133,29 @@ + @$(MAKE) echo | grep = | sed -e 's/= /= "/' -e 's/$$/"/' #-e 's/""/nil/' + @echo "-- EOF" + ++pc: ++ @echo 'prefix=$(INSTALL_TOP)' ++ @echo 'libdir=$(INSTALL_LIB)' ++ @echo 'includedir=$(INSTALL_INC)' ++ @echo 'bindir=$(INSTALL_BIN)' ++ @echo ++ @echo 'INSTALL_LMOD=$(INSTALL_LMOD)' ++ @echo 'INSTALL_CMOD=$(INSTALL_CMOD)' ++ @echo 'INTERPRETER=$${bindir}/$(INTERPRETER)' ++ @echo 'COMPILER=$${bindir}/$(COMPILER)' ++ @echo ++ @echo 'Name: Lua' ++ @echo 'Description: A powerful, fast, lightweight, embeddable scripting language' ++ @echo 'Version: $(R)' ++ @echo ++ @echo 'Libs: -L$${libdir} -llua -lm' ++ @echo 'Cflags: -I$${includedir}' ++ ++pkg-config: $(TO_PC) ++$(TO_PC): ++ @$(MAKE) -s pc > $@ ++ + # list targets that do not create files (but not all makes understand .PHONY) +-.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho ++.PHONY: all $(PLATS) clean test install local none dummy echo pecho lecho pkg-config + + # (end of Makefile) -- cgit v1.2.3 From a61696216c6aded59dfb5d9fd9ab2f20aac8e095 Mon Sep 17 00:00:00 2001 From: Petter Date: Wed, 17 Aug 2016 10:27:04 -0500 Subject: gnu: go: Update to 1.7. * gnu/packages/golang.scm (go-1.6): Update to 1.7, with corresponding minor changes to prebuild phase, and rename variable to... (go-1.7): ...this new variable. (go): Inherit from new "go-1.7". Signed-off-by: Efraim Flashner --- gnu/packages/golang.scm | 18 +++++++++++------- 1 file changed, 11 insertions(+), 7 deletions(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 09d962dd1d..afa3a361b7 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Matthew Jordan ;;; Copyright © 2016 Andy Wingo ;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2016 Petter ;;; ;;; This file is an addendum GNU Guix. ;;; @@ -185,11 +186,11 @@ garbage collection, various safety features and in the style of communicating sequential processes (CSP) concurrent programming features added.") (license license:bsd-3))) -(define-public go-1.6 +(define-public go-1.7 (package (inherit go-1.4) (name "go") - (version "1.6.3") + (version "1.7") (source (origin (method url-fetch) @@ -197,7 +198,7 @@ sequential processes (CSP) concurrent programming features added.") name version ".src.tar.gz")) (sha256 (base32 - "002v6irgfd63zp9iza8nski5by0lar033j3ddpqiikw6bznsw9k3")))) + "1h712yd5wk5mrj2dixc9z2xlgksfks00yvglrkrgr488p8b0qs3j")))) (arguments (substitute-keyword-arguments (package-arguments go-1.4) ((#:phases phases) @@ -216,11 +217,14 @@ sequential processes (CSP) concurrent programming features added.") ;; Removing net/ tests, which fail when attempting to access ;; network resources not present in the build container. (for-each delete-file - '("net/listen_test.go" "net/parse_test.go")) + '("net/listen_test.go" + "net/parse_test.go" + "net/cgo_unix_test.go")) (substitute* "os/os_test.go" (("/usr/bin") (getcwd)) - (("/bin/pwd") (which "pwd"))) + (("/bin/pwd") (which "pwd")) + (("/bin/sh") (which "sh"))) ;; Add libgcc to runpath (substitute* "cmd/link/internal/ld/lib.go" @@ -275,7 +279,7 @@ sequential processes (CSP) concurrent programming features added.") ;; fix shebang for testar script ;; note the target script is generated at build time. - (substitute* "../misc/cgo/testcarchive/test.bash" + (substitute* "../misc/cgo/testcarchive/carchive_test.go" (("#!/usr/bin/env") (string-append "#!" (which "env")))) (substitute* "net/lookup_unix.go" @@ -336,4 +340,4 @@ sequential processes (CSP) concurrent programming features added.") `(("go" ,go-1.4) ,@(package-native-inputs go-1.4))))) -(define-public go go-1.6) +(define-public go go-1.7) -- cgit v1.2.3 From 618089f951efcefa380fa779018483fde062b93f Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 12 Aug 2016 02:29:51 +0100 Subject: gnu: Add gzstream. * gnu/packages/compression.scm (gzstream): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/compression.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 0040e45892..aaa0c99e88 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2016 Tobias Geerinckx-Rice ;;; Copyright © 2016 David Craven ;;; Copyright © 2016 Kei Kebreau +;;; Copyright © 2016 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -962,3 +963,41 @@ handles the 7z format which features very high compression ratios.") (license (list license:lgpl2.1+ license:gpl2+ license:public-domain)))) + +(define-public gzstream + (package + (name "gzstream") + (version "1.5") + (source (origin + (method url-fetch) + (uri + ;; No versioned URL, but last release was in 2003. + "http://www.cs.unc.edu/Research/compgeom/gzstream/gzstream.tgz") + (file-name (string-append name "-" version ".tgz")) + (sha256 + (base32 + "00y19pqjsdj5zcrx4p9j56pl73vayfwnb7y2hvp423nx0cwv5b4r")) + (modules '((guix build utils))) + (snippet + ;; Remove pre-compiled object. + '(delete-file "gzstream.o")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (lib (string-append out "/lib")) + (include (string-append out "/include"))) + (install-file "libgzstream.a" lib) + (install-file "gzstream.h" include) + #t)))))) + (propagated-inputs `(("zlib" ,zlib))) + (home-page "http://www.cs.unc.edu/Research/compgeom/gzstream/") + (synopsis "Compressed C++ iostream") + (description "gzstream is a small library for providing zlib +functionality in a C++ iostream.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From 6fabb196e39496ad4facb9e0e6dcbe23d55a2e0a Mon Sep 17 00:00:00 2001 From: ng0 Date: Fri, 26 Aug 2016 15:41:33 +0000 Subject: gnu: Add eschalot. * gnu/packages/crypto.scm (eschalot): New variable. Signed-off-by: Leo Famulari --- gnu/packages/crypto.scm | 60 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 5dad97c72f..055551f10f 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2016 Lukas Gradl ;;; Copyright © 2016 Tobias Geerinckx-Rice +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -37,6 +38,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu)) (define-public libsodium @@ -263,3 +265,61 @@ gain and retain the authorization and encryption keys required to perform secure operations. ") (license (list license:lgpl2.1+ ; the files keyutils.* license:gpl2+)))) ; the rest + +;; There is no release candidate but commits point out a version number, +;; furthermore no tarball exists. +(define-public eschalot + (let ((commit "0bf31d88a11898c19b1ed25ddd2aff7b35dbac44") + (revision "1")) + (package + (name "eschalot") + (version (string-append "1.2.0-" revision "." (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/schnabear/eschalot") + (commit commit))) + (file-name (string-append name "-" version)) + (sha256 + (base32 + "0lj38ldh8vzi11wp4ghw4k0fkwp0s04zv8k8d473p1snmbh7mx98")))) + (inputs + `(("openssl" ,openssl))) ; It needs: openssl/{bn,pem,rsa,sha}.h + (build-system gnu-build-system) + (arguments + `(#:make-flags (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out")) + (string-append "INSTALL=" "install")) + ;; XXX: make test would run a !VERY! long hashing of names with the use + ;; of a wordlist, the amount of computing time this would waste on build + ;; servers is in no relation to the size or importance of this small + ;; application, therefore we run our own tests on eschalot and worgen. + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + (lambda _ + (and + (zero? (system* "./worgen" "8-12" "top1000.txt" "3-10" "top400nouns.txt" + "3-6" "top150adjectives.txt" "3-6")) + (zero? (system* "./eschalot" "-r" "^guix|^guixsd")) + (zero? (system* "./eschalot" "-r" "^gnu|^free")) + (zero? (system* "./eschalot" "-r" "^cyber|^hack")) + (zero? (system* "./eschalot" "-r" "^troll"))))) + ;; Make install can not create the bin dir, create it. + (add-before 'install 'create-bin-dir + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (mkdir-p bin) + #t)))))) + (home-page "https://github.com/schnabear/eschalot") + (synopsis "Tor hidden service name generator") + (description + "Eschalot is a tor hidden service name generator, it allows one to +produce customized vanity .onion addresses using a brute-force method. Searches +for valid names can be run with regular expressions and wordlists. For the +generation of wordlists the included tool @code{worgen} can be used. There is +no man page, refer to the home page for usage details.") + (license (list license:isc license:expat))))) -- cgit v1.2.3 From dd72173455b31aeddb4a691285bd5c0702c75d34 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 19:27:27 +0200 Subject: guix package: Clarify upgrade code. * guix/scripts/package.scm (upgradeable?): Rename to... (upgraded-manifest-entry): ... this. Change to take a and to return a . (options->installable)[to-upgrade]: Adjust accordingly. --- guix/scripts/package.scm | 45 ++++++++++++++++++++++----------------------- 1 file changed, 22 insertions(+), 23 deletions(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index fd42cdb36e..14a0895b43 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -261,19 +261,25 @@ synopsis or description matches all of REGEXPS." ((<) #t) (else #f))))) -(define (upgradeable? name current-version current-path) - "Return #t if there's a version of package NAME newer than CURRENT-VERSION, -or if the newest available version is equal to CURRENT-VERSION but would have -an output path different than CURRENT-PATH." - (match (vhash-assoc name (find-newest-available-packages)) - ((_ candidate-version pkg . rest) - (case (version-compare candidate-version current-version) - ((>) #t) - ((<) #f) - ((=) (let ((candidate-path (derivation->output-path - (package-derivation (%store) pkg)))) - (not (string=? current-path candidate-path)))))) - (#f #f))) +(define (upgraded-manifest-entry entry) + "Return either a corresponding to an upgrade of ENTRY, or +#f if no upgrade was found." + (match entry + (($ name version output (? string? path)) + (match (vhash-assoc name (find-newest-available-packages)) + ((_ candidate-version pkg . rest) + (case (version-compare candidate-version version) + ((>) + (package->manifest-entry pkg output)) + ((<) + #f) + ((=) + (let ((candidate-path (derivation->output-path + (package-derivation (%store) pkg)))) + (and (not (string=? path candidate-path)) + (package->manifest-entry pkg output)))))) + (#f + #f))))) ;;; @@ -560,16 +566,9 @@ return the new list of manifest entries." (options->upgrade-predicate opts)) (define to-upgrade - (filter-map (match-lambda - (($ name version output path _) - (and (upgrade? name) - (upgradeable? name version path) - (let ((output (or output "out"))) - (call-with-values - (lambda () - (specification->package+output name output)) - package->manifest-entry)))) - (_ #f)) + (filter-map (lambda (entry) + (and (upgrade? (manifest-entry-name entry)) + (upgraded-manifest-entry entry))) (manifest-entries manifest))) (define to-install -- cgit v1.2.3 From c8c25704aeb2e5fa4feb6a86235f9565738eea99 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 20:19:21 +0200 Subject: profiles: Add manifest-transaction helper procedures. * guix/profiles.scm (manifest-transaction-install-entry) (manifest-transaction-remove-pattern) (manifest-transaction-null?): New procedures. * tests/profiles.scm ("manifest-transaction-null?"): New test. --- guix/profiles.scm | 27 ++++++++++++++++++++++++++- tests/profiles.scm | 3 +++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/guix/profiles.scm b/guix/profiles.scm index cd448e3f25..ac2fa051b2 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -78,6 +78,9 @@ manifest-transaction? manifest-transaction-install manifest-transaction-remove + manifest-transaction-install-entry + manifest-transaction-remove-pattern + manifest-transaction-null? manifest-perform-transaction manifest-transaction-effects @@ -383,6 +386,28 @@ no match.." (remove manifest-transaction-remove ; list of (default '()))) +(define (manifest-transaction-install-entry entry transaction) + "Augment TRANSACTION's set of installed packages with ENTRY, a +." + (manifest-transaction + (inherit transaction) + (install + (cons entry (manifest-transaction-install transaction))))) + +(define (manifest-transaction-remove-pattern pattern transaction) + "Add PATTERN to TRANSACTION's list of packages to remove." + (manifest-transaction + (inherit transaction) + (remove + (cons pattern (manifest-transaction-remove transaction))))) + +(define (manifest-transaction-null? transaction) + "Return true if TRANSACTION has no effect---i.e., it neither installs nor +remove software." + (match transaction + (($ () ()) #t) + (($ _ _) #f))) + (define (manifest-transaction-effects manifest transaction) "Compute the effect of applying TRANSACTION to MANIFEST. Return 4 values: the list of packages that would be removed, installed, upgraded, or downgraded @@ -424,7 +449,7 @@ replace it." downgrade))))))) (define (manifest-perform-transaction manifest transaction) - "Perform TRANSACTION on MANIFEST and return new manifest." + "Perform TRANSACTION on MANIFEST and return the new manifest." (let ((install (manifest-transaction-install transaction)) (remove (manifest-transaction-remove transaction))) (manifest-add (manifest-remove manifest remove) diff --git a/tests/profiles.scm b/tests/profiles.scm index 028d7b6fb4..f9c2f5499e 100644 --- a/tests/profiles.scm +++ b/tests/profiles.scm @@ -187,6 +187,9 @@ (and (null? remove) (null? install) (null? downgrade) (equal? (list (cons guile-2.0.9 guile-2.0.9)) upgrade))))) +(test-assert "manifest-transaction-null?" + (manifest-transaction-null? (manifest-transaction))) + (test-assertm "profile-derivation" (mlet* %store-monad ((entry -> (package->manifest-entry %bootstrap-guile)) -- cgit v1.2.3 From 5239f3d90841de767c86d0f3a7975b8d799d583d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 22:28:12 +0200 Subject: guix package: Build up the transaction incrementally. * guix/scripts/package.scm (upgraded-manifest-entry): Rename to... (transaction-upgrade-entry): ... this. Add 'transaction' parameter and return a transaction. (options->installable): Likewise. [to-upgrade]: Rename to... [upgraded]: ... this, and change to be a transaction. Return a transaction. (options->removable): Likewise. (process-actions): Adjust accordingly. * tests/packages.scm ("transaction-upgrade-entry, zero upgrades") ("transaction-upgrade-entry, one upgrade"): New tests. --- guix/scripts/package.scm | 100 +++++++++++++++++++++++++++-------------------- tests/packages.scm | 29 ++++++++++++++ 2 files changed, 87 insertions(+), 42 deletions(-) diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index 14a0895b43..dc5fcba922 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -261,25 +261,30 @@ synopsis or description matches all of REGEXPS." ((<) #t) (else #f))))) -(define (upgraded-manifest-entry entry) - "Return either a corresponding to an upgrade of ENTRY, or -#f if no upgrade was found." +(define (transaction-upgrade-entry entry transaction) + "Return a variant of TRANSACTION that accounts for the upgrade of ENTRY, a +." (match entry (($ name version output (? string? path)) (match (vhash-assoc name (find-newest-available-packages)) ((_ candidate-version pkg . rest) (case (version-compare candidate-version version) ((>) - (package->manifest-entry pkg output)) + (manifest-transaction-install-entry + (package->manifest-entry pkg output) + transaction)) ((<) - #f) + transaction) ((=) (let ((candidate-path (derivation->output-path (package-derivation (%store) pkg)))) - (and (not (string=? path candidate-path)) - (package->manifest-entry pkg output)))))) + (if (string=? path candidate-path) + transaction + (manifest-transaction-install-entry + (package->manifest-entry pkg output) + transaction)))))) (#f - #f))))) + transaction))))) ;;; @@ -559,17 +564,20 @@ upgrading, #f otherwise." (output #f) (item item)))) -(define (options->installable opts manifest) +(define (options->installable opts manifest transaction) "Given MANIFEST, the current manifest, and OPTS, the result of 'args-fold', -return the new list of manifest entries." +return an variant of TRANSACTION that accounts for the specified installations +and upgrades." (define upgrade? (options->upgrade-predicate opts)) - (define to-upgrade - (filter-map (lambda (entry) - (and (upgrade? (manifest-entry-name entry)) - (upgraded-manifest-entry entry))) - (manifest-entries manifest))) + (define upgraded + (fold (lambda (entry transaction) + (if (upgrade? (manifest-entry-name entry)) + (transaction-upgrade-entry entry transaction) + transaction)) + transaction + (manifest-entries manifest))) (define to-install (filter-map (match-lambda @@ -586,23 +594,29 @@ return the new list of manifest entries." (_ #f)) opts)) - (append to-upgrade to-install)) - -(define (options->removable options manifest) - "Given options, return the list of manifest patterns of packages to be -removed from MANIFEST." - (filter-map (match-lambda - (('remove . spec) - (call-with-values - (lambda () - (package-specification->name+version+output spec)) - (lambda (name version output) - (manifest-pattern - (name name) - (version version) - (output output))))) - (_ #f)) - options)) + (fold manifest-transaction-install-entry + upgraded + to-install)) + +(define (options->removable options manifest transaction) + "Given options, return a variant of TRANSACTION augmented with the list of +patterns of packages to remove." + (fold (lambda (opt transaction) + (match opt + (('remove . spec) + (call-with-values + (lambda () + (package-specification->name+version+output spec)) + (lambda (name version output) + (manifest-transaction-remove-pattern + (manifest-pattern + (name name) + (version version) + (output output)) + transaction)))) + (_ transaction))) + transaction + options)) (define (register-gc-root store profile) "Register PROFILE, a profile generation symlink, as a GC root, unless it @@ -813,16 +827,18 @@ processed, #f otherwise." opts) ;; Then, process normal package installation/removal/upgrade. - (let* ((manifest (profile-manifest profile)) - (install (options->installable opts manifest)) - (remove (options->removable opts manifest)) - (transaction (manifest-transaction - (install (map transform-entry install)) - (remove remove))) - (new (manifest-perform-transaction manifest transaction))) - - (unless (and (null? install) (null? remove)) - (show-manifest-transaction store manifest transaction + (let* ((manifest (profile-manifest profile)) + (step1 (options->installable opts manifest + (manifest-transaction))) + (step2 (options->removable opts manifest step1)) + (step3 (manifest-transaction + (inherit step2) + (install (map transform-entry + (manifest-transaction-install step2))))) + (new (manifest-perform-transaction manifest step3))) + + (unless (manifest-transaction-null? step3) + (show-manifest-transaction store manifest step3 #:dry-run? dry-run?) (build-and-use-profile store profile new #:bootstrap? bootstrap? diff --git a/tests/packages.scm b/tests/packages.scm index daceea5d62..456e691962 100644 --- a/tests/packages.scm +++ b/tests/packages.scm @@ -49,6 +49,7 @@ #:use-module (srfi srfi-35) #:use-module (srfi srfi-64) #:use-module (rnrs io ports) + #:use-module (ice-9 vlist) #:use-module (ice-9 regex) #:use-module (ice-9 match)) @@ -83,6 +84,34 @@ (and (hidden-package? (hidden-package (dummy-package "foo"))) (not (hidden-package? (dummy-package "foo"))))) +(test-assert "transaction-upgrade-entry, zero upgrades" + (let* ((old (dummy-package "foo" (version "1"))) + (tx (mock ((gnu packages) find-newest-available-packages + (const vlist-null)) + ((@@ (guix scripts package) transaction-upgrade-entry) + (manifest-entry + (inherit (package->manifest-entry old)) + (item (string-append (%store-prefix) "/" + (make-string 32 #\e) "-foo-1"))) + (manifest-transaction))))) + (manifest-transaction-null? tx))) + +(test-assert "transaction-upgrade-entry, one upgrade" + (let* ((old (dummy-package "foo" (version "1"))) + (new (dummy-package "foo" (version "2"))) + (tx (mock ((gnu packages) find-newest-available-packages + (const (vhash-cons "foo" (list "2" new) vlist-null))) + ((@@ (guix scripts package) transaction-upgrade-entry) + (manifest-entry + (inherit (package->manifest-entry old)) + (item (string-append (%store-prefix) "/" + (make-string 32 #\e) "-foo-1"))) + (manifest-transaction))))) + (and (match (manifest-transaction-install tx) + ((($ "foo" "2" "out" item)) + (eq? item new))) + (null? (manifest-transaction-remove tx))))) + (test-assert "package-field-location" (let () (define (goto port line column) -- cgit v1.2.3 From 03763d6473bcd6c7a84bcc3a6aa7bc2d1ee1e44f Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 23:05:26 +0200 Subject: profiles: Export accessors. * guix/profiles.scm (manifest-pattern-name, manifest-pattern-version) (manifest-pattern-output): Export. --- guix/profiles.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/guix/profiles.scm b/guix/profiles.scm index ac2fa051b2..4a2ba1c2f4 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -67,6 +67,9 @@ manifest-pattern manifest-pattern? + manifest-pattern-name + manifest-pattern-version + manifest-pattern-output manifest-remove manifest-add -- cgit v1.2.3 From 01afdab89c6a91f4cd05d3c4f4ff95a0402703eb Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 23:14:07 +0200 Subject: packages: Add 'package-superseded' and associated support. This provides a way to mark a package as superseded by another one. Upgrades replace superseded packages with their replacement. * guix/packages.scm (package-superseded, deprecated-package): New procedures. * gnu/packages.scm (%find-package): Check for 'package-superseded'. * guix/scripts/package.scm (transaction-upgrade-entry)[supersede]: New procedure. Call it when 'package-superseded' is true. * tests/guix-build.sh: Add test for a superseded package. * tests/packages.scm ("package-superseded") ("transaction-upgrade-entry, superseded package"): New tests. --- gnu/packages.scm | 9 ++++++++- guix/packages.scm | 14 ++++++++++++++ guix/scripts/package.scm | 46 +++++++++++++++++++++++++++++++--------------- tests/guix-build.sh | 6 ++++++ tests/packages.scm | 30 ++++++++++++++++++++++++++++++ 5 files changed, 89 insertions(+), 16 deletions(-) diff --git a/gnu/packages.scm b/gnu/packages.scm index 68a9eef2ad..5d60423a3a 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -305,7 +305,14 @@ return its return value." (when fallback? (warning (_ "deprecated NAME-VERSION syntax; \ use NAME@VERSION instead~%"))) - pkg) + + (match (package-superseded pkg) + ((? package? new) + (info (_ "package '~a' has been superseded by '~a'~%") + (package-name pkg) (package-name new)) + new) + (#f + pkg))) (_ (if version (leave (_ "~A: package not found for version ~a~%") name version) diff --git a/guix/packages.scm b/guix/packages.scm index d544c34cf8..afbafc70a7 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -83,6 +83,8 @@ package-location hidden-package hidden-package? + package-superseded + deprecated-package package-field-location package-direct-sources @@ -306,6 +308,18 @@ user interfaces, ignores." interfaces." (assoc-ref (package-properties p) 'hidden?)) +(define (package-superseded p) + "Return the package the supersedes P, or #f if P is still current." + (assoc-ref (package-properties p) 'superseded)) + +(define (deprecated-package old-name p) + "Return a package called OLD-NAME and marked as superseded by P, a package +object." + (package + (inherit p) + (name old-name) + (properties `((superseded . ,p))))) + (define (package-field-location package field) "Return the source code location of the definition of FIELD for PACKAGE, or #f if it could not be determined." diff --git a/guix/scripts/package.scm b/guix/scripts/package.scm index dc5fcba922..b87aee0be9 100644 --- a/guix/scripts/package.scm +++ b/guix/scripts/package.scm @@ -264,25 +264,41 @@ synopsis or description matches all of REGEXPS." (define (transaction-upgrade-entry entry transaction) "Return a variant of TRANSACTION that accounts for the upgrade of ENTRY, a ." + (define (supersede old new) + (info (_ "package '~a' has been superseded by '~a'~%") + (manifest-entry-name old) (package-name new)) + (manifest-transaction-install-entry + (package->manifest-entry new (manifest-entry-output old)) + (manifest-transaction-remove-pattern + (manifest-pattern + (name (manifest-entry-name old)) + (version (manifest-entry-version old)) + (output (manifest-entry-output old))) + transaction))) + (match entry (($ name version output (? string? path)) (match (vhash-assoc name (find-newest-available-packages)) ((_ candidate-version pkg . rest) - (case (version-compare candidate-version version) - ((>) - (manifest-transaction-install-entry - (package->manifest-entry pkg output) - transaction)) - ((<) - transaction) - ((=) - (let ((candidate-path (derivation->output-path - (package-derivation (%store) pkg)))) - (if (string=? path candidate-path) - transaction - (manifest-transaction-install-entry - (package->manifest-entry pkg output) - transaction)))))) + (match (package-superseded pkg) + ((? package? new) + (supersede entry new)) + (#f + (case (version-compare candidate-version version) + ((>) + (manifest-transaction-install-entry + (package->manifest-entry pkg output) + transaction)) + ((<) + transaction) + ((=) + (let ((candidate-path (derivation->output-path + (package-derivation (%store) pkg)))) + (if (string=? path candidate-path) + transaction + (manifest-transaction-install-entry + (package->manifest-entry pkg output) + transaction)))))))) (#f transaction))))) diff --git a/tests/guix-build.sh b/tests/guix-build.sh index 6d4f97019a..9e9788bca0 100644 --- a/tests/guix-build.sh +++ b/tests/guix-build.sh @@ -93,6 +93,9 @@ cat > "$module_dir/foo.scm"<package "foo") + (and (eq? new (specification->package "foo")) + (eq? new (specification->package+output "foo"))))))) + (test-assert "transaction-upgrade-entry, zero upgrades" (let* ((old (dummy-package "foo" (version "1"))) (tx (mock ((gnu packages) find-newest-available-packages @@ -112,6 +121,27 @@ (eq? item new))) (null? (manifest-transaction-remove tx))))) +(test-assert "transaction-upgrade-entry, superseded package" + (let* ((old (dummy-package "foo" (version "1"))) + (new (dummy-package "bar" (version "2"))) + (dep (deprecated-package "foo" new)) + (tx (mock ((gnu packages) find-newest-available-packages + (const (vhash-cons "foo" (list "2" dep) vlist-null))) + ((@@ (guix scripts package) transaction-upgrade-entry) + (manifest-entry + (inherit (package->manifest-entry old)) + (item (string-append (%store-prefix) "/" + (make-string 32 #\e) "-foo-1"))) + (manifest-transaction))))) + (and (match (manifest-transaction-install tx) + ((($ "bar" "2" "out" item)) + (eq? item new))) + (match (manifest-transaction-remove tx) + (((? manifest-pattern? pattern)) + (and (string=? (manifest-pattern-name pattern) "foo") + (string=? (manifest-pattern-version pattern) "1") + (string=? (manifest-pattern-output pattern) "out"))))))) + (test-assert "package-field-location" (let () (define (goto port line column) -- cgit v1.2.3 From 967cfd18f666f24ae9cbad14ea8e6921c10cba81 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 6 Sep 2016 23:19:45 +0200 Subject: gnu: paredit: Rename to 'emacs-paredit'. * gnu/packages/emacs.scm (paredit)[name]: Change to "emacs-paredit". (paredit/old-name): New variable. --- gnu/packages/emacs.scm | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index ad51634f0c..1ec0d8f9f0 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -320,7 +320,7 @@ metadata.") (define-public paredit (package - (name "paredit") + (name "emacs-paredit") (version "24") (source (origin (method url-fetch) @@ -364,6 +364,9 @@ for those who may want transient periods of unbalanced parentheses, such as when typing parentheses directly or commenting out code line by line.") (license license:gpl3+))) +(define-public paredit/old-name + (deprecated-package "paredit" paredit)) + (define-public git-modes (package (name "git-modes") -- cgit v1.2.3 From 375cef6c6d9eb6b0c511679e17a4d16cfab70a8e Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Thu, 1 Sep 2016 17:16:12 +0200 Subject: updated: gnu: add asn1c * gnu/packages/tls.scm (asn1c): New variable. Signed-off-by: Leo Famulari --- gnu/packages/tls.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index efc1190980..64414edc1a 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2015 Leo Famulari ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Hartmut Goebel ;;; ;;; This file is part of GNU Guix. ;;; @@ -68,6 +69,33 @@ networking, allowing for formal validation of data according to some specifications.") (license license:lgpl2.0+))) +(define-public asn1c + (package + (name "asn1c") + (version "0.9.27") + (source (origin + (method url-fetch) + (uri (string-append "https://lionet.info/soft/asn1c-" + version ".tar.gz")) + (sha256 + (base32 + "17nvn2kzvlryasr9dzqg6gs27b9lvqpval0k31pb64bjqbhn8pq2")))) + (build-system gnu-build-system) + (native-inputs + `(("perl" ,perl))) + (home-page "https://lionet.info/asn1c") + (synopsis "ASN.1 to C compiler") + (description "The ASN.1 to C compiler takes ASN.1 module +files and generates C++ compatible C source code. That code can be +used to serialize the native C structures into compact and unambiguous +BER/XER/PER-based data files, and deserialize the files back. + +Various ASN.1 based formats are widely used in the industry, such as to encode +the X.509 certificates employed in the HTTPS handshake, to exchange control +data between mobile phones and cellular networks, to car-to-car communication +in intelligent transportation networks.") + (license license:bsd-2))) + (define-public p11-kit (package (name "p11-kit") -- cgit v1.2.3 From abc114bdd9f933739733fd6eecdcdb51f8725161 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Wed, 7 Sep 2016 00:57:44 -0400 Subject: gnu: webkitgtk: Update to 2.12.5. * gnu/packages/webkit.scm (webkitgtk): Update to 2.12.5. --- gnu/packages/webkit.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index 2c940285c7..4e3ceb4abb 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -53,14 +53,14 @@ (define-public webkitgtk (package (name "webkitgtk") - (version "2.12.4") + (version "2.12.5") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "0xwsc2lpb4q55vdgmwljx43219l0sa6r5mqs3bmw3fwsb5vk2ka2")))) + "0h0wig413399wws6l88mn1nnjbqb42vb55yvz8az39b4p1a7h53b")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no tests -- cgit v1.2.3 From b393a44cd030637778386f79ad444c0116ede5a9 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 23 Jul 2016 13:03:22 +0000 Subject: gnu: Add perl-curses. * gnu/packages/ncurses.scm (perl-curses): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/ncurses.scm | 48 +++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 47 insertions(+), 1 deletion(-) diff --git a/gnu/packages/ncurses.scm b/gnu/packages/ncurses.scm index 147033a7e5..97991670f3 100644 --- a/gnu/packages/ncurses.scm +++ b/gnu/packages/ncurses.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès ;;; Copyright © 2014 Mark H Weaver ;;; Copyright © 2015 Leo Famulari +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -22,7 +23,10 @@ #:use-module (guix licenses) #:use-module (guix packages) #:use-module (guix download) - #:use-module (guix build-system gnu)) + #:use-module (guix build-system gnu) + #:use-module (guix build-system perl) + #:use-module (gnu packages) + #:use-module (gnu packages perl)) (define-public ncurses (let ((patch-makefile-phase @@ -161,3 +165,45 @@ curses widgets, such as dialog boxes.") (home-page "http://invisible-island.net/dialog/dialog.html") ;; Includes the gpl3 file "config.sub" from Automake. (license (list lgpl2.1 gpl3)))) + +(define-public perl-curses + (package + (name "perl-curses") + (version "1.36") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/G/GI/GIRAFFED/" + "Curses-" version ".tar.gz")) + (sha256 + (base32 + "0r6xd9wr0c25rr28zixhqipak575zqsfb7r7f2693i9il1dpj554")))) + (build-system perl-build-system) + (inputs + `(("ncurses" ,ncurses))) + (arguments + `(#:make-maker-flags (list "PANELS" "MENUS") + #:phases + (modify-phases %standard-phases + (add-before + 'configure 'set-curses-ldflags + (lambda* (#:key inputs #:allow-other-keys) + (let* ((ncurses (assoc-ref inputs "ncurses")) + (include (string-append ncurses "/include")) + (lib (string-append ncurses "/lib"))) + (setenv "CURSES_LIBTYPE" "ncurses") + (setenv "CURSES_CFLAGS" (string-append "-I" include)) + (setenv "CURSES_PANEL_CFLAGS" (string-append "-I" include)) + (setenv "CURSES_MENU_CFLAGS" (string-append "-I" include)) + (setenv "CURSES_FORM_CFLAGS" (string-append "-I" include)) + (setenv "CURSES_LDFLAGS" (string-append "-L" lib " -lncurses")) + (setenv "CURSES_PANEL_LDFLAGS" (string-append "-L" lib " -lpanel")) + (setenv "CURSES_MENU_LDFLAGS" (string-append "-L" lib " -lmenu")) + (setenv "CURSES_FORM_LDFLAGS" (string-append "-L" lib " -lform")) + #t)))))) + (home-page "http://search.cpan.org/dist/Curses") + (synopsis "Terminal screen handling and optimization") + (description + "@code{Curses} is the interface between Perl and the curses library +of your system.") + (license (package-license perl)))) -- cgit v1.2.3 From 8dc0ecae6c92d050db2e33ab7b6e3ec6609fb321 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 10:28:05 +0200 Subject: gnu: rottlog: Use 'modify-phases'. * gnu/packages/admin.scm (rottlog)[arguments]: Use 'modify-phases'. --- gnu/packages/admin.scm | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 474c0d7556..86fa7846d1 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -735,11 +735,10 @@ over ssh connections.") (assoc-ref %outputs "out") "/etc") "--localstatedir=/var") - #:phases (alist-cons-after - 'install 'install-info - (lambda _ - (zero? (system* "make" "install-info"))) - %standard-phases))) + #:phases (modify-phases %standard-phases + (add-after 'install 'install-info + (lambda _ + (zero? (system* "make" "install-info"))))))) (native-inputs `(("texinfo" ,texinfo) ("util-linux" ,util-linux))) ; for 'cal' (home-page "http://www.gnu.org/software/rottlog/") -- cgit v1.2.3 From 11e7463482cd64789008618a647725ae0b2a81e6 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Wed, 7 Sep 2016 10:34:48 +0200 Subject: gnu: rottlog: Set default value for 'packdir'. * gnu/packages/admin.scm (rottlog)[arguments]: Add 'set-packdir' phase. --- gnu/packages/admin.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 86fa7846d1..c60ad308c1 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -736,6 +736,13 @@ over ssh connections.") "/etc") "--localstatedir=/var") #:phases (modify-phases %standard-phases + (add-after 'build 'set-packdir + (lambda _ + ;; Set a default location for archived logs. + (substitute* "rc/rc" + (("packdir=\"\"") + "packdir=\"/var/log\"")) + #t)) (add-after 'install 'install-info (lambda _ (zero? (system* "make" "install-info"))))))) -- cgit v1.2.3 From 268ad34e0eadf8a015798b5c5587aad65b9f3a61 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 10:51:56 +0200 Subject: gnu: rottlog: Read configuration files from /etc/rottlog. * gnu/packages/admin.scm (rottlog)[arguments]: Set ROTT_ETCDIR=/etc/rottlog in #:configure-flags and add #:make-flags. --- gnu/packages/admin.scm | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c60ad308c1..f64cbce8e8 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -731,10 +731,14 @@ over ssh connections.") "true"))))) (build-system gnu-build-system) (arguments - '(#:configure-flags (list (string-append "ROTT_ETCDIR=" - (assoc-ref %outputs "out") - "/etc") + '(#:configure-flags (list "ROTT_ETCDIR=/etc/rottlog" ;rc file location "--localstatedir=/var") + + ;; Install example config files in OUT/etc. + #:make-flags (list (string-append "ROTT_ETCDIR=" + (assoc-ref %outputs "out") + "/etc")) + #:phases (modify-phases %standard-phases (add-after 'build 'set-packdir (lambda _ -- cgit v1.2.3 From 309e523e8f85e97eca07bc16721235be5ba0c2c3 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 10:55:47 +0200 Subject: gnu: rottlog: Adjust the default 'weekly' config. * gnu/packages/admin.scm (rottlog)[arguments]: Add 'tweak-rc-weekly' phase. --- gnu/packages/admin.scm | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index f64cbce8e8..4e31b7c431 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -747,6 +747,15 @@ over ssh connections.") (("packdir=\"\"") "packdir=\"/var/log\"")) #t)) + (add-before 'install 'tweak-rc-weekly + (lambda _ + (substitute* "rc/weekly" + (("/bin/kill") + (which "kill")) + (("syslogd\\.pid") + ;; The file is called 'syslog.pid' (no 'd'). + "syslog.pid")) + #t)) (add-after 'install 'install-info (lambda _ (zero? (system* "make" "install-info"))))))) -- cgit v1.2.3 From e4a01b7d4d070fc54781af02b3f8583dee4d272e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 11:02:57 +0200 Subject: gnu: inetutils: Use /var as the localstatedir. * gnu/packages/admin.scm (inetutils)[arguments]: Add #:configure-flags. --- gnu/packages/admin.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 4e31b7c431..3685633f34 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -239,7 +239,9 @@ re-executing them as necessary.") (base32 "05n65k4ixl85dc6rxc51b1b732gnmm8xnqi424dy9f1nz7ppb3xy")))) (build-system gnu-build-system) - (arguments `(;; FIXME: `tftp.sh' relies on `netstat' from utils-linux, + (arguments `(#:configure-flags '("--localstatedir=/var") + + ;; FIXME: `tftp.sh' relies on `netstat' from utils-linux, ;; which is currently missing. #:tests? #f)) (inputs `(("ncurses" ,ncurses) -- cgit v1.2.3 From afa54a38b738e6ddf4fb25757410cf7b24067b39 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 11:25:00 +0200 Subject: services: syslog: Use a PID file. * gnu/services/base.scm (syslog-service-type)[start]: Remove --no-detach and use #:pid-file. --- gnu/services/base.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 2c2962cd8c..42094b5fb9 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -907,8 +907,8 @@ Service Switch}, for an example." (requirement '(user-processes)) (start #~(make-forkexec-constructor (list #$(syslog-configuration-syslogd config) - "--no-detach" - "--rcfile" #$(syslog-configuration-config-file config)))) + "--rcfile" #$(syslog-configuration-config-file config)) + #:pid-file "/var/run/syslog.pid")) (stop #~(make-kill-destructor)))))) ;; Snippet adapted from the GNU inetutils manual. -- cgit v1.2.3 From 392a4e122350367c4b4ac331db5ec28360c7f38c Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Tue, 6 Sep 2016 08:28:33 +0200 Subject: guix hash: Add --exclude-vcs option. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * guix/scripts/hash.scm (show-help): Add help text for --exclude-vcs option. (%options): Add --exclude-vcs option. (guix-hash): Handle exclude-vcs option. * doc/guix.texi ("Invoking guix hash"): Update doc. * tests/guix-hash.sh: Add test. Co-authored-by: Ludovic Courtès --- doc/guix.texi | 10 +++++++--- guix/scripts/hash.scm | 25 ++++++++++++++++++++----- tests/guix-hash.sh | 16 ++++++++++++++++ 3 files changed, 43 insertions(+), 8 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 59bc5d8ee0..655dcfa277 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -4678,7 +4678,7 @@ The general syntax is: guix hash @var{option} @var{file} @end example -@command{guix hash} has the following option: +@command{guix hash} has the following options: @table @code @@ -4706,6 +4706,11 @@ hash (@pxref{Invoking guix archive}). @c FIXME: Replace xref above with xref to an ``Archive'' section when @c it exists. +@item --exclude-vcs +@itemx -x +When combined with @option{--recursive}, exclude version control system +directories (@file{.bzr}, @file{.git}, @file{.hg}, etc.) + @vindex git-fetch As an example, here is how you would compute the hash of a Git checkout, which is useful when using the @code{git-fetch} method (@pxref{origin @@ -4714,8 +4719,7 @@ Reference}): @example $ git clone http://example.org/foo.git $ cd foo -$ rm -rf .git -$ guix hash -r . +$ guix hash -rx . @end example @end table diff --git a/guix/scripts/hash.scm b/guix/scripts/hash.scm index d44095377b..a57602ab51 100644 --- a/guix/scripts/hash.scm +++ b/guix/scripts/hash.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014 Ludovic Courtès +;;; Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès ;;; Copyright © 2013 Nikita Karetnikov +;;; Copyright © 2016 Jan Nieuwenhuizen ;;; ;;; This file is part of GNU Guix. ;;; @@ -48,6 +49,8 @@ Return the cryptographic hash of FILE. Supported formats: 'nix-base32' (default), 'base32', and 'base16' ('hex' and 'hexadecimal' can be used as well).\n")) + (format #t (_ " + -x, --exclude-vcs exclude version control directories")) (format #t (_ " -f, --format=FMT write the hash in the given format")) (format #t (_ " @@ -62,7 +65,10 @@ and 'hexadecimal' can be used as well).\n")) (define %options ;; Specification of the command-line options. - (list (option '(#\f "format") #t #f + (list (option '(#\x "exclude-vcs") #f #f + (lambda (opt name arg result) + (alist-cons 'exclude-vcs? #t result))) + (option '(#\f "format") #t #f (lambda (opt name arg result) (define fmt-proc (match arg @@ -81,7 +87,6 @@ and 'hexadecimal' can be used as well).\n")) (option '(#\r "recursive") #f #f (lambda (opt name arg result) (alist-cons 'recursive? #t result))) - (option '(#\h "help") #f #f (lambda args (show-help) @@ -107,13 +112,23 @@ and 'hexadecimal' can be used as well).\n")) (alist-cons 'argument arg result)) %default-options)) + (define (vcs-file? file stat) + (case (stat:type stat) + ((directory) + (member (basename file) '(".bzr" ".git" ".hg" ".svn" "CVS"))) + (else + #f))) + (let* ((opts (parse-options)) (args (filter-map (match-lambda (('argument . value) value) (_ #f)) (reverse opts))) - (fmt (assq-ref opts 'format))) + (fmt (assq-ref opts 'format)) + (select? (if (assq-ref opts 'exclude-vcs?) + (negate vcs-file?) + (const #t)))) (define (file-hash file) ;; Compute the hash of FILE. @@ -121,7 +136,7 @@ and 'hexadecimal' can be used as well).\n")) (with-error-handling (if (assoc-ref opts 'recursive?) (let-values (((port get-hash) (open-sha256-port))) - (write-file file port) + (write-file file port #:select? select?) (flush-output-port port) (get-hash)) (call-with-input-file file port-sha256)))) diff --git a/tests/guix-hash.sh b/tests/guix-hash.sh index 23df01d417..44213d51af 100644 --- a/tests/guix-hash.sh +++ b/tests/guix-hash.sh @@ -1,5 +1,6 @@ # GNU Guix --- Functional package management for GNU # Copyright © 2013, 2014 Ludovic Courtès +# Copyright © 2016 Jan Nieuwenhuizen # # This file is part of GNU Guix. # @@ -46,3 +47,18 @@ then false; else true; fi # the archive format doesn't support. if guix hash -r /dev/null then false; else true; fi + +# Adding a .git directory +mkdir "$tmpdir/.git" +touch "$tmpdir/.git/foo" + +# ...changes the hash +test `guix hash -r $tmpdir` = 0a50z04zyzf7pidwxv0nwbj82pgzbrhdy9562kncnvkcfvb48m59 + +# ...but remains the same when using `-x' +test `guix hash -r $tmpdir -x` = 10k1lw41wyrjf9mxydi0is5nkpynlsvgslinics4ppir13g7d74p + +# Without '-r', this should fail. +if guix hash "$tmpdir" +then false; else true; fi + -- cgit v1.2.3 From e0d7b421f6d7551c15a40e215242d3db7d30682c Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Tue, 6 Sep 2016 11:04:54 +0530 Subject: gnu: Add mpop. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/mail.scm (mpop): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/mail.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 3c29a9558a..c2fc1a9a0c 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -17,6 +17,7 @@ ;;; Copyright © 2016 Troy Sankey ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Clément Lassieur +;;; Copyright © 2016 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -1356,3 +1357,34 @@ in Perl.") "Mb2md is a Perl script that takes one or more mbox format files and converts them to maildir format directories.") (license public-domain))) + +(define-public mpop + (package + (name "mpop") + (version "1.2.5") + (source + (origin + (method url-fetch) + (uri (string-append "http://downloads.sourceforge.net/mpop/mpop-" + version ".tar.xz")) + (sha256 + (base32 + "0n0ij258kn8lfa6nyr6l6plc4hf1wvyf1hkwicvdbjqdqrgjnq81")))) + (build-system gnu-build-system) + (inputs + `(("gnutls" ,gnutls) + ("libidn" ,libidn))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:configure-flags (list "--with-tls=gnutls"))) + (home-page "http://mpop.sourceforge.net/") + (synopsis "POP3 mail client") + (description "mpop is a small and fast POP3 client suitable as a +fetchmail replacement. + +mpop supports multiple accounts, header based mail filtering, delivery +to mbox files, maildir folders or a Mail Delivery Agent (MDA), +TLS/SSL, several authentication methods, Internationalized Domain +Names (IDN) and SOCKS proxies.") + (license gpl3+))) -- cgit v1.2.3 From 96dbc93089723cece1241e51c657f596adf6d3d5 Mon Sep 17 00:00:00 2001 From: Eric Le Bihan Date: Wed, 7 Sep 2016 07:57:38 +0200 Subject: Add Zsh completion file. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * etc/completion/zsh/_guix: New file. * Makefile.am (dist_zshcompletion_DATA): New variable. * configure.ac: Add --with-zsh-completion-dir. Signed-off-by: Ludovic Courtès --- Makefile.am | 3 + configure.ac | 7 + etc/completion/zsh/_guix | 456 +++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 466 insertions(+) create mode 100644 etc/completion/zsh/_guix diff --git a/Makefile.am b/Makefile.am index 1a34e0d5ca..f9fe14166b 100644 --- a/Makefile.am +++ b/Makefile.am @@ -344,6 +344,9 @@ dist_pkgdata_DATA = hydra.gnu.org.pub # Bash completion file. dist_bashcompletion_DATA = etc/completion/bash/guix +# Zsh completion file. +dist_zshcompletion_DATA = etc/completion/zsh/_guix + EXTRA_DIST = \ HACKING \ ROADMAP \ diff --git a/configure.ac b/configure.ac index 13a9b6e19f..84287e4289 100644 --- a/configure.ac +++ b/configure.ac @@ -41,6 +41,13 @@ AC_ARG_WITH([bash-completion-dir], [bashcompletiondir='${sysconfdir}/bash_completion.d']) AC_SUBST([bashcompletiondir]) +AC_ARG_WITH([zsh-completion-dir], + AC_HELP_STRING([--with-zsh-completion-dir=DIR], + [name of the Zsh completion directory]), + [zshcompletiondir="$withval"], + [zshcompletiondir='${datadir}/zsh/site-functions']) +AC_SUBST([zshcompletiondir]) + dnl Better be verbose. AC_MSG_CHECKING([for the store directory]) AC_MSG_RESULT([$storedir]) diff --git a/etc/completion/zsh/_guix b/etc/completion/zsh/_guix new file mode 100644 index 0000000000..3760bb629b --- /dev/null +++ b/etc/completion/zsh/_guix @@ -0,0 +1,456 @@ +#compdef guix +# +# GNU Guix --- Functional package management for GNU +# Copyright © 2016 Eric Le Bihan +# +# 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 . + + +_guix_caching_policy() +{ + local -a old_policy + old_policy=( "$1"(Nmh+24) ) + (( $#old_policy )) +} + +_guix_list_actions() +{ + _guix_actions=( $(guix system --help | sed -n 's/^ \([a-z-]\+\)\s\+.\+/\1/p') ) +} + +_guix_list_checkers() +{ + _guix_checkers=( $(guix lint -l | sed -n 's/^- \(.\+\): .\+/\1/p') ) +} + +_guix_list_graph_types() +{ + _guix_graph_types=( $(guix graph --list-types | sed -n 's/^ - \(.\+\): .\+/\1/p') ) +} + +_guix_list_importers() +{ + _guix_importers=( $(guix import --help | sed -n 's/^\s\+\([a-z]\+\)$/\1/p') ) +} + +_guix_list_updaters() +{ + _guix_updaters=( $(guix lint -l | sed -n 's/^- \(.\+\): .\+/\1/p') ) +} + +_guix_list_available_packages() +{ + if ( [[ ${+_guix_available_packages} -eq 0 ]] || _cache_invalid GUIX_AVAILABLE_PACKAGES ) \ + && ! _retrieve_cache GUIX_AVAILABLE_PACKAGES; then + _guix_available_packages=(${${(f)"$(guix package -A | cut -f1)"}}) + _store_cache GUIX_AVAILABLE_PACKAGES _guix_available_packages + fi +} + +_guix_list_installed_packages() +{ + _guix_installed_packages=( $(guix package -I "^${prefix}" | cut -f1) ) +} + +(( $+functions[_guix_build] )) || _guix_build() +{ + _arguments \ + '--expression=[build the package matching EXPR]:EXPR' \ + '--file=[build the package matching code evaluated from FILE]:FILE:_files' \ + '--source[build the packages source derivations]' \ + '--sources=[build source derivations]:TYPE:(all package transitive)' \ + '--system=[attempt to build for SYSTEM (e.g. "i686-linux")]:SYSTEM' \ + '--target=[cross-build for TRIPLET (e.g. "armel-linux-gnu")]:TRIPLET' \ + '--derivations[return the derivation paths of the given packages]' \ + '--check[rebuild items to check for non-determinism issues]' \ + '--root=[symlink result to FILE and register it as GC root]:FILE:_files' \ + '--quiet[do not show the build log]' \ + '--log-file[return the log file names for the given derivations]' \ + '--load-path=[prepend DIR to the package module search path]:DIR:_dirs' \ + '--keep-failed[keep build tree of failed builds]' \ + '--keep-going[keep going when some of the derivations fail]' \ + '--dry-run[do not build the derivations]' \ + '--fallback[fall back to building when the substituter fails]' \ + '--no-substitutes[build instead of resorting to pre-built substitutes]' \ + '--substitute-urls=[fetch substitute from URLS if they are authorized]:URLS:_urls' \ + '--no-grafts[do not graft packages]' \ + '--no-build-hook[do not attempt to offload builds via the build hook]' \ + '--max-silent-time=[mark the build as failed after SECONDS of silence]:SECONDS' \ + '--timeout=[mark the build as failed after SECONDS of activity]:SECONDS' \ + '--verbosity=[use the given verbosity LEVEL]:LEVEL' \ + '--rounds=[build N times in a row to detect non-determinism]:N' \ + '--cores=[allow the use of up to N CPU cores for the build]:N' \ + '--max-jobs=[allow at most N build jobs]:N' \ + '--with-source=[use SOURCE when building the corresponding package]:SOURCE' \ + '--with-input=[replace dependency PACKAGE by REPLACEMENT]:PACKAGE=REPLACEMENT' \ + '*:package:->packages' + + if [[ "$state" = packages ]]; then + _guix_list_available_packages + compadd -a -- _guix_available_packages + fi +} + +(( $+functions[_guix_challenge] )) || _guix_challenge() +{ + _arguments \ + '--substitute-urls=[fetch substitute from URLS if they are authorized]:URL:_urls' \ + '*:package:->packages' + + if [[ "$state" = packages ]]; then + _guix_list_available_packages + compadd -a -- _guix_available_packages + fi +} + +(( $+functions[_guix_container] )) || _guix_container() +{ + _arguments \ + ':action:(exec)' \ + '*:args' +} + +(( $+functions[_guix_download] )) || _guix_download() +{ + _arguments \ + '--format=[write the hash in the given format]:FMT:(nix-base32 base16 base32 hex)' \ + '1:URL:_urls' +} + +(( $+functions[_guix_edit] )) || _guix_edit() +{ + _guix_list_available_packages + compadd -a -- _guix_available_packages +} + +(( $+functions[_guix_environment] )) || _guix_environment() +{ + _arguments \ + '--expression=[create environment for the package evaluated from EXPR]:EXPR' \ + '--load=[create environment for the package evaluated from FILE]:FILE:_files' \ + '--ad-hoc[include all specified packages, not only their inputs]' \ + '--pure[unset existing environment variables]' \ + '--search-paths[display needed environment variable definitions]' \ + '--system=[attempt to build for SYSTEM (e.g. "i686-linux")]:SYSTEM' \ + '--container[run command within an isolated container]' \ + '--network[allow containers to access the network]' \ + '--share=[share writable host file system according to SPEC]:SPEC' \ + '--expose=[expose read-only host file system according to SPEC]:SPEC' \ + '--bootstrap[use bootstrap binaries to build the environment]' \ + '--load-path=[prepend DIR to the package module search path]:DIR:_dirs' \ + '--keep-failed[keep build tree of failed builds]' \ + '--keep-going[keep going when some of the derivations fail]' \ + '--dry-run[do not build the derivations]' \ + '--fallback[fall back to building when the substituter fails]' \ + '--no-substitutes[build instead of resorting to pre-built substitutes]' \ + '--substitute-urls=[fetch substitute from URLS if they are authorized]:URLS:_urls' \ + '--no-grafts[do not graft packages]' \ + '--no-build-hook[do not attempt to offload builds via the build hook]' \ + '--max-silent-time=[mark the build as failed after SECONDS of silence]:SECONDS' \ + '--timeout=[mark the build as failed after SECONDS of activity]:SECONDS' \ + '--verbosity=[use the given verbosity LEVEL]:LEVEL' \ + '--rounds=[build N times in a row to detect non-determinism]:N' \ + '--cores=[allow the use of up to N CPU cores for the build]:N' \ + '--max-jobs=[allow at most N build jobs]:N' \ + '*:package:->packages' + + if [[ "$state" = packages ]]; then + _guix_list_available_packages + compadd -a -- _guix_available_packages + fi + +} + +(( $+functions[_guix_gc] )) || _guix_gc() +{ + _arguments \ + '--collect-garbage=[collect at least MIN bytes of garbage]:MIN' \ + '--free-space=[attempt to reach FREE available space in the store]:FREE' \ + '--delete[attempt to delete PATHS]' \ + '--optimize[optimize the store by deduplicating identical files]' \ + '--list-dead[list dead paths]' \ + '--list-live[list live paths]' \ + '--references[list the references of PATHS]' \ + '--requisites[list the requisites of PATHS]' \ + '--referrers[list the referrers of PATHS]' \ + '--verify=[verify the integrity of the store]:OPTS:(contents repair)' \ + '--list-failures[list cached build failures]' \ + '--clear-failures[remove PATHS from the set of cached failures]' \ + '1:PATH:_dirs' +} + +(( $+functions[_guix_graph] )) || _guix_graph() +{ + _arguments \ + '--type=[represent nodes of the given TYPE]:TYPE:->types' \ + '--list-types[list the available graph types]' \ + '--expression=[consider the package EXPR evaluates to]:EXPR' \ + '1:PACKAGE:->packages' + + case "$state" in + types) + _guix_list_graph_types + compadd -a -- _guix_graph_types + ;; + packages) + _guix_list_available_packages + compadd -a -- _guix_available_packages + ;; + esac + +} + +(( $+functions[_guix_hash] )) || _guix_hash() +{ + _arguments \ + '--format=[write the hash in the given format]:FMT:(nix-base32 base16 base32 hex)' \ + '--recursive[compute the hash on FILE recursively]'\ + '1:FILE:_files' +} + +(( $+functions[_guix_import] )) || _guix_import() +{ + _arguments \ + '1:IMPORTER:->importer' \ + '*:args:' + + if [[ "$state" = importer ]]; then + _guix_list_importers + compadd -a -- _guix_importers + fi +} + +(( $+functions[_guix_lint] )) || _guix_lint() +{ + _arguments \ + '--checkers=[only run the specified checkers]:CHECKERS:->checkers' \ + '--list-checkers[display the list of available lint checkers]' \ + '1:PACKAGE:->packages' + + case "$state" in + checkers) + _guix_list_checkers + compadd -a -- _guix_checkers + ;; + packages) + _guix_list_available_packages + compadd -a -- _guix_available_packages + ;; + esac +} + +(( $+functions[_guix_package] )) || _guix_package() +{ + _arguments \ + '--install[install one or more packages]: :->install' \ + '--install-from-expression=[install the package EXP evaluates to]:EXP' \ + '--install-from-file=[install the package evaluated from FILE]:FILE:_files' \ + '--remove[remove one or more packages]: :->remove' \ + '--upgrade=[upgrade all the installed packages matching REGEXP]:REGEXP' \ + '--manifest=[create a new profile generation from FILE]:FILE:_files' \ + '--do-not-upgrade=[do not upgrade any packages matching REGEXP]:REGEXP' \ + '--roll-back[roll back to the previous generation]' \ + '--search-paths=[display needed environment variable definitions]:KINDS' \ + '--list-generations=[list generations matching PATTERN]:PATTERN' \ + '--delete-generations=[delete generations matching PATTERN]:PATTERN' \ + '--switch-generation=[switch to a generation matching PATTERN]:PATTERN' \ + '--profile=[use PROFILE instead of the default profile]:PROFILE' \ + '--bootstrap[use the bootstrap Guile to build the profile]' \ + '--verbose[produce verbose output]' \ + '--search=[search in synopsis and description using REGEXP]:REGEXP' \ + '--list-installed=[list installed packages matching REGEXP]:REGEXP' \ + '--list-available=[list available packages matching REGEXP]:REGEXP' \ + '--show=[show details about a package]: :->show' \ + '--load-path=[prepend DIR to the package module search path]:DIR:_dirs' \ + '--keep-failed[keep build tree of failed builds]' \ + '--keep-going[keep going when some of the derivations fail]' \ + '--dry-run[do not build the derivations]' \ + '--fallback[fall back to building when the substituter fails]' \ + '--no-substitutes[build instead of resorting to pre-built substitutes]' \ + '--substitute-urls=[fetch substitute from URLS if they are authorized]:URLS:_urls' \ + '--no-grafts[do not graft packages]' \ + '--no-build-hook[do not attempt to offload builds via the build hook]' \ + '--max-silent-time=[mark the build as failed after SECONDS of silence]:SECONDS' \ + '--timeout=[mark the build as failed after SECONDS of activity]:SECONDS' \ + '--verbosity=[use the given verbosity LEVEL]:LEVEL' \ + '--rounds=[build N times in a row to detect non-determinism]:N' \ + '--cores=[allow the use of up to N CPU cores for the build]:N' \ + '--max-jobs=[allow at most N build jobs]:N' \ + '--with-source=[use SOURCE when building the corresponding package]:SOURCE' \ + '--with-input=[replace dependency PACKAGE by REPLACEMENT]:PACKAGE=REPLACEMENT' + + case "$state" in + install|show) + _guix_list_available_packages + compadd -a -- _guix_available_packages + ;; + remove) + _guix_list_installed_packages + compadd -a -- _guix_installed_packages + ;; + esac +} + +(( $+functions[_guix_publish] )) || _guix_publish() +{ + _arguments \ + '--port=[listen on PORT]:PORT:' \ + '--listen=[listen on the network interface for HOST]:HOST:_hosts' \ + '--user=[change privileges to USER as soon as possible]:USER:_users' \ + '--compression=[compress archives at LEVEL]:LEVEL' \ + '--ttl=[announce narinfos can be cached for TTL seconds]:TTL' \ + '--repl=[spawn REPL server on PORT]:PORT' +} + +(( $+functions[_guix_pull] )) || _guix_pull() +{ + _arguments \ + '--verbose[produce verbose output]' \ + '--url=[download the Guix tarball from URL]:URL:_urls' \ + '--bootstrap[use the bootstrap Guile to build the new Guix]' +} + +(( $+functions[_guix_refresh] )) || _guix_refresh() +{ + _arguments \ + '--expression=[consider the package EXPR evaluates to]:EXPR' \ + '--update[update source files in place]' \ + '--select=[select all the packages in SUBSET]:SUBSET:(core non-core)' \ + '--type=[restrict to updates from the specified updaters]:UPDATER:->updaters' \ + '--list-updaters[list available updaters and exit]' \ + '--list-dependent[list top-level dependent packages]' \ + '--key-server=[use HOST as the OpenPGP key server]:HOST:_hosts' \ + '--gpg=[use COMMAND as the GnuPG 2.x command]:COMMAND' \ + '--key-download=[policy to handle missing OpenPGP keys]:POLICY:(always interactive never)' \ + '*:package:->packages' + + case "$state" in + updaters) + _guix_list_updaters + compadd -a -- _guix_updaters + ;; + packages) + _guix_list_available_packages + compadd -a -- _guix_available_packages + ;; + esac +} + +(( $+functions[_guix_size] )) || _guix_size() +{ + _arguments \ + '--substitute-urls=[fetch substitute from URLS if they are authorized]:URL:_urls' \ + '-system=[consider packages for SYSTEM--e.g., "i686-linux"]:SYSTEM' \ + '--map-file=[write to FILE a graphical map of disk usage]:FILE:_files' \ + '*:package:->packages' + + if [[ "$state" = packages ]]; then + _guix_list_available_packages + compadd -a -- _guix_available_packages + fi +} + +(( $+functions[_guix_system] )) || _guix_system() +{ + _arguments \ + '--load-path=[prepend DIR to the package module search path]:DIR:_dirs' \ + '--keep-failed[keep build tree of failed builds]' \ + '--keep-going[keep going when some of the derivations fail]' \ + '--dry-run[do not build the derivations]' \ + '--fallback[fall back to building when the substituter fails]' \ + '--no-substitutes[build instead of resorting to pre-built substitutes]' \ + '--substitute-urls=[fetch substitute from URLS if they are authorized]:URL:_urls' \ + '--no-grafts[do not graft packages]' \ + '--no-build-hook[do not attempt to offload builds via the build hook]' \ + '--max-silent-time=[mark the build as failed after SECONDS of silence]:SECONDS' \ + '--timeout=[mark the build as failed after SECONDS of activity]:SECONDS' \ + '--verbosity=[use the given verbosity LEVEL]:LEVEL' \ + '--rounds=[build N times in a row to detect non-determinism]:N' \ + '--cores=[allow the use of up to N CPU cores for the build]:N' \ + '--max-jobs=[allow at most N build jobs]:N' \ + '--derivation[return the derivation of the given system]' \ + '--on-error=[apply STRATEGY when an error occurs while reading FILE]:STRATEGY' \ + '--image-size=[for "vm-image", produce an image of SIZE]:SIZE' \ + '--no-grub[for "init", do not install GRUB]' \ + '--share=[for "vm", share host file system according to SPEC]:SPEC' \ + '--expose=[for "vm", expose host file system according to SPEC]:SPEC' \ + '--full-boot[for "vm", make a full boot sequence]' \ + '1:action:->actions' \ + '*:file:_files' + + if [[ "$state" = actions ]]; then + _guix_list_actions + compadd -a -- _guix_actions + fi +} + +(( $+functions[_guix_command] )) || _guix_command() +{ + local -a _guix_cmds + _guix_cmds=( + "archive:Export/import one or more packages from/to the store" + "build:Build a given package" + "challenge:Challenge the substitutes for a package" + "container:Build and manipulate Linux containers" + "download:Download the file at given URL and add it to the store" + "edit:Edit the definitions of a package" + "environment:Build an environment with a package and its dependencies" + "gc:Invoke the garbage collector" + "graph:Emit a DOT representation of the dependencies of a package" + "hash:Return the cryptographic hash of a file" + "import:Run an importer" + "lint:Run a set of checkers on a package" + "package:Install, remove, or upgrade packages" + "publish:Publish /gnu/store over HTTP." + "pull:Download and deploy the latest version of Guix" + "refresh:Update package definitions to match the latest version" + "size:Report the size of a package and its dependencies" + "system:Build the operating system" + ) + + if (( CURRENT == 1 )); then + _describe -t commands 'guix command' _guix_cmds || compadd "$@" + else + local curcontext="$curcontext" + + cmd="${${_guix_cmds[(r)$words[1]:*]%%:*}}" + + if (( $#cmd )); then + local cache_policy + + zstyle -s ":completion:${curcontext}:" cache-policy cache_policy + if [[ -z "$cache_policy" ]]; then + zstyle ":completion:${curcontext}:" cache-policy _guix_caching_policy + fi + + curcontext="${curcontext%:*:*}:guix-${cmd}:" + + _call_function ret _guix_${cmd} || _message 'no more arguments' + else + _message "unknown guix command: $words[1]" + fi + return ret + fi +} + +_arguments \ + '(--version)--version[Display version information and exit]' \ + '*::guix command:_guix_command' + +# vim: ts=4 sts=4 sw=4 et ai +# Local variables: +# mode: sh +# End: -- cgit v1.2.3 From e9006d06a04e60db1ca78283b6c7e951d5a477fd Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 16:22:25 +0200 Subject: bash completion: Redirect 'guix' stderr to /dev/null. This avoids spurious messages when pressing TAB. * etc/completion/bash/guix (_guix_complete_available_package) (_guix_complete_installed_package, _guix_complete_option) (_guix_complete): Redirect stderr to /dev/null when running 'guix'. --- etc/completion/bash/guix | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix index 807a0b2e1f..b38c319cce 100644 --- a/etc/completion/bash/guix +++ b/etc/completion/bash/guix @@ -1,5 +1,5 @@ # GNU Guix --- Functional package management for GNU -# Copyright © 2015 Ludovic Courtès +# Copyright © 2015, 2016 Ludovic Courtès # # This file is part of GNU Guix. # @@ -27,7 +27,8 @@ _guix_complete_available_package () then # Cache the complete list because it rarely changes and makes # completion much faster. - _guix_available_packages="$(${COMP_WORDS[0]} package -A | cut -f1)" + _guix_available_packages="$(${COMP_WORDS[0]} package -A 2> /dev/null \ + | cut -f1)" fi COMPREPLY=($(compgen -W "$_guix_available_packages" -- "$prefix")) } @@ -37,15 +38,16 @@ _guix_complete_installed_package () # Here we do not cache the list of installed packages because that # may change over time and the list is relatively small anyway. local prefix="$1" - local packages="$(${COMP_WORDS[0]} package -I "^$prefix" | cut -f1)" + local packages="$(${COMP_WORDS[0]} package -I "^$prefix" 2> /dev/null \ + | cut -f1)" COMPREPLY=($(compgen -W "$packages" -- "$prefix")) } _guix_complete_option () { - local options="$(${COMP_WORDS[0]} ${COMP_WORDS[1]} --help \ + local options="$(${COMP_WORDS[0]} ${COMP_WORDS[1]} --help 2> /dev/null \ | grep '^ \+-' \ - | sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g' )" + | sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')" compopt -o nospace COMPREPLY=($(compgen -W "$options" -- "${COMP_WORDS[$word_count - 1]}")) } @@ -119,7 +121,8 @@ _guix_complete () if [ -z "$_guix_subcommands" ] then # Cache the list of subcommands to speed things up. - _guix_subcommands="$(guix --help | grep '^ ' | cut -c 2-)" + _guix_subcommands="$(guix --help 2> /dev/null \ + | grep '^ ' | cut -c 2-)" fi COMPREPLY=($(compgen -W "$_guix_subcommands" -- "$word_at_point")) ;; -- cgit v1.2.3 From f07f7d86145c10539709ca43cb0c201b6f935005 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 17:33:48 +0200 Subject: bash completion: Complete subcommands and their options. * etc/completion/bash/guix (_guix_complete_subcommand): New function. (_guix_complete_option): Allow completion of subcommand options. (_guix_complete): Use '_guix_complete_subcommand' for "system" and "import". --- etc/completion/bash/guix | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/etc/completion/bash/guix b/etc/completion/bash/guix index b38c319cce..c92f8915c9 100644 --- a/etc/completion/bash/guix +++ b/etc/completion/bash/guix @@ -20,6 +20,15 @@ declare _guix_available_packages +_guix_complete_subcommand () +{ + local command="${COMP_WORDS[1]}" + local subcommands="$(${COMP_WORDS[0]} $command --help 2> /dev/null \ + | grep '^ [a-z]' \ + | sed -e's/^ \+\([a-z-]\+\).*$/\1/g')" + COMPREPLY=($(compgen -W "$subcommands" -- "${COMP_WORDS[${#COMP_WORDS[*]} - 1]}")) +} + _guix_complete_available_package () { local prefix="$1" @@ -45,11 +54,16 @@ _guix_complete_installed_package () _guix_complete_option () { - local options="$(${COMP_WORDS[0]} ${COMP_WORDS[1]} --help 2> /dev/null \ + local subcommand + case "${COMP_WORDS[2]}" in + -*) subcommand="";; + [a-z]*) subcommand="${COMP_WORDS[2]}";; + esac + local options="$(${COMP_WORDS[0]} ${COMP_WORDS[1]} $subcommand --help 2> /dev/null \ | grep '^ \+-' \ | sed -e's/^.*--\([a-zA-Z0-9_-]\+\)\(=\?\).*/--\1\2/g')" compopt -o nospace - COMPREPLY=($(compgen -W "$options" -- "${COMP_WORDS[$word_count - 1]}")) + COMPREPLY=($(compgen -W "$options" -- "${COMP_WORDS[${#COMP_WORDS[*]} - 1]}")) } _guix_is_command () @@ -140,13 +154,13 @@ _guix_complete () fi elif _guix_is_command "system" then - _guix_complete_file # TODO: complete sub-commands - elif _guix_is_command "hash" + _guix_complete_subcommand + elif _guix_is_command "import" then - _guix_complete_file - elif _guix_is_command "import" # TODO: complete sub-commands + _guix_complete_subcommand + elif _guix_is_command "hash" then - _guix_complete_file + _guix_complete_file else _guix_complete_available_package "$word_at_point" fi -- cgit v1.2.3 From c4947d0e1b3c5c46049943504a1a3975fbe46be6 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Wed, 7 Sep 2016 18:36:56 +0200 Subject: gnu: Add tcp-wrappers. * gnu/packages/networking.scm (tcp-wrappers): New variable. --- gnu/packages/networking.scm | 78 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 78 insertions(+) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 07f0b9d957..c4edbc319a 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -135,6 +135,84 @@ establish a relatively secure environment (su and chroot) for running client or server shell scripts with network connections.") (license license:gpl2))) +(define-public tcp-wrappers + (package + (name "tcp-wrappers") + (version "7.6") + (source (origin + (method url-fetch) + (uri (string-append + "ftp://ftp.porcupine.org/pub/security/tcp_wrappers_" + version ".tar.gz")) + (sha256 + (base32 + "0p9ilj4v96q32klavx0phw9va21fjp8vpk11nbh6v2ppxnnxfhwm")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) ; there is no configure script + (delete 'check) ; there are no tests + (replace 'build + (lambda _ + (chmod "." #o755) + ;; Upstream doesn't generate a shared library. So we have to do it. + (setenv "CC" "gcc -fno-builtin -fPIC") + (substitute* "Makefile" + (("^(all[^\n]*)" line) (string-append line " libwrap.so\n +libwrap.so: $(LIB_OBJ)\n +\tgcc -shared $^ -o $@\n"))) + ;; Deal with some gcc breakage. + (substitute* "percent_m.c" + (("extern char .sys_errlist.*;") "")) + (substitute* "scaffold.c" + (("extern char .malloc.*;") "")) + ;; This, believe it or not, is the recommended way to build! + (zero? (system* "make" "REAL_DAEMON_DIR=/etc" "linux")))) + ;; There is no make install stage, so we have to do it ourselves. + (replace 'install + (lambda _ + (let ((out (assoc-ref %outputs "out")) + (man-pages `("hosts_access.3" + "hosts_access.5" + "hosts_options.5" + "tcpd.8" + "tcpdchk.8" + "tcpdmatch.8")) + (libs `("libwrap.a" + "libwrap.so")) + (headers `("tcpd.h")) + (bins `("safe_finger" + "tcpd" + "tcpdchk" + "tcpdmatch" + "try-from"))) + (for-each + (lambda (x) + (install-file x (string-append out "/include"))) + headers) + (for-each + (lambda (x) + (install-file x (string-append out "/share/man/man" + (string-take-right x 1)))) + man-pages) + (for-each + (lambda (x) + (install-file x (string-append out "/lib/"))) + libs) + (for-each + (lambda (x) + (install-file x (string-append out "/bin/"))) + bins))))))) + (home-page "http://www.porcupine.org") + (synopsis "Monitor and filter incoming requests for network services") + (description "With this package you can monitor and filter incoming requests for +network services. It includes a library which may be used by daemons to +transparently check connection attempts against an access control list.") + (license (license:non-copyleft "file://DISCLAIMER" + "See the file DISCLAIMER in the distribution.")))) + + (define-public zeromq (package (name "zeromq") -- cgit v1.2.3 From 8f3afba44f2092ccb966b4f44ed7eb11c68d5f0a Mon Sep 17 00:00:00 2001 From: John Darrington Date: Wed, 7 Sep 2016 18:37:38 +0200 Subject: gnu: Enable tcp-wrappers for nrircd. * gnu/packages/messaging.scm (ngircd) [inputs]: Add tcp-wrappers. --- gnu/packages/messaging.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index b95239a748..4f7dcc7bf0 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -47,6 +47,7 @@ #:use-module (gnu packages xorg) #:use-module (gnu packages xdisorg) #:use-module (gnu packages libcanberra) + #:use-module (gnu packages networking) #:use-module (gnu packages libidn) #:use-module (gnu packages lua) #:use-module (gnu packages xml) @@ -213,8 +214,9 @@ dictionaries. HexChat can be extended with multiple addons.") (native-inputs `(("procps" ,procps) ("expect" ,expect) ("inetutils" ,inetutils))) - ;; XXX Add libident, libwrap. + ;; XXX Add libident. (inputs `(("zlib" ,zlib) + ("libwrap" ,tcp-wrappers) ("gnutls" ,gnutls) ,@(if (string-suffix? "-linux" (or (%current-target-system) @@ -223,7 +225,7 @@ dictionaries. HexChat can be extended with multiple addons.") '()))) (arguments `(#:configure-flags - '("--with-gnutls" "--with-iconv" "--enable-ipv6" + '("--with-gnutls" "--with-iconv" "--enable-ipv6" "--with-tcp-wrappers" ,@(if (string-suffix? "-linux" (or (%current-target-system) (%current-system))) -- cgit v1.2.3 From fe447664d864f3d406862e9fba681c50edf04cfb Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 18:11:30 +0200 Subject: gnu: guile-irregex: Remove hard-coded Guile effective version. * gnu/packages/guile.scm (guile-irregex)[arguments]: Add (ice-9 popen) and (ice-9 rdelim). Remove nested 'use-modules' form. Call 'open-pipe*' to determine Guile's effective version, and use it to compute MODULE-DIR. --- gnu/packages/guile.scm | 90 ++++++++++++++++++++++++++------------------------ 1 file changed, 47 insertions(+), 43 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index d09cfbfd1a..859e77a6e8 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -632,6 +632,8 @@ See http://minikanren.org/ for more on miniKanren generally.") (arguments `(#:modules ((guix build utils) (ice-9 match) + (ice-9 rdelim) + (ice-9 popen) (guix build gnu-build-system)) #:phases (modify-phases %standard-phases @@ -640,50 +642,52 @@ See http://minikanren.org/ for more on miniKanren generally.") (delete 'check) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) - (begin - (use-modules (guix build utils) - (ice-9 match)) - (let* ((out (assoc-ref outputs "out")) - (module-dir (string-append out "/share/guile/site/2.0")) - (source (assoc-ref inputs "source")) - (doc (string-append out "/share/doc/guile-irregex/")) - (guild (string-append (assoc-ref %build-inputs "guile") - "/bin/guild"))) - ;; Make installation directories. - (mkdir-p (string-append module-dir "/rx/source")) - (mkdir-p doc) - - ;; Compile .scm files and install. - (setenv "GUILE_AUTO_COMPILE" "0") - - (for-each (lambda (copy-info) - (match copy-info - ((src-file dest-file-basis) - (let* ((dest-file (string-append - module-dir dest-file-basis - ".scm")) - (go-file (string-append + (let* ((out (assoc-ref outputs "out")) + (effective (read-line + (open-pipe* OPEN_READ + "guile" "-c" + "(display (effective-version))"))) + (module-dir (string-append out "/share/guile/site/" + effective)) + (source (assoc-ref inputs "source")) + (doc (string-append out "/share/doc/guile-irregex/")) + (guild (string-append (assoc-ref %build-inputs "guile") + "/bin/guild"))) + ;; Make installation directories. + (mkdir-p (string-append module-dir "/rx/source")) + (mkdir-p doc) + + ;; Compile .scm files and install. + (setenv "GUILE_AUTO_COMPILE" "0") + + (for-each (lambda (copy-info) + (match copy-info + ((src-file dest-file-basis) + (let* ((dest-file (string-append module-dir dest-file-basis - ".go"))) - ;; Install source module. - (copy-file src-file - dest-file) - ;; Install compiled module. - (unless (zero? (system* guild "compile" - "-L" (getcwd) - "-o" go-file - src-file)) - (error (format #f "Failed to compile ~s to ~s!" - src-file dest-file))))))) - '(("irregex-guile.scm" "/rx/irregex") - ("irregex.scm" "/rx/source/irregex") - ;; Not really reachable via guile's packaging system, - ;; but nice to have around - ("irregex-utils.scm" "/rx/source/irregex-utils"))) - - ;; Also copy over the README. - (install-file "irregex.html" doc) - #t))))))) + ".scm")) + (go-file (string-append + module-dir dest-file-basis + ".go"))) + ;; Install source module. + (copy-file src-file + dest-file) + ;; Install compiled module. + (unless (zero? (system* guild "compile" + "-L" (getcwd) + "-o" go-file + src-file)) + (error (format #f "Failed to compile ~s to ~s!" + src-file dest-file))))))) + '(("irregex-guile.scm" "/rx/irregex") + ("irregex.scm" "/rx/source/irregex") + ;; Not really reachable via guile's packaging system, + ;; but nice to have around + ("irregex-utils.scm" "/rx/source/irregex-utils"))) + + ;; Also copy over the README. + (install-file "irregex.html" doc) + #t)))))) (inputs `(("guile" ,guile-2.0))) (home-page "http://synthcode.com/scheme/irregex") -- cgit v1.2.3 From 4b74a29d8fd1af870a2db19d554923263abb7657 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 18:16:49 +0200 Subject: gnu: guile-minikanren: Remove hard-coded Guile effective version. * gnu/packages/guile.scm (guile-minikanren)[arguments]: Remove (ice-9 match) from #:modules. Use 'open-pipe*' to determine the effective version of Guile, and use that to compute MODULE-DIR. --- gnu/packages/guile.scm | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 859e77a6e8..195af54c84 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -555,15 +555,22 @@ http:://json.org specification. These are the main features: "0r50jlpzi940jlmxyy3ddqqwmj5r12gb4bcv0ssini9v8km13xz6")))) (build-system trivial-build-system) (arguments - `(#:modules - ((guix build utils) - (ice-9 match)) + `(#:modules ((guix build utils)) #:builder (begin (use-modules (guix build utils) - (ice-9 match)) + (ice-9 match) + (ice-9 popen) + (ice-9 rdelim)) + (let* ((out (assoc-ref %outputs "out")) - (module-dir (string-append out "/share/guile/site/2.0")) + (guile (assoc-ref %build-inputs "guile")) + (effective (read-line + (open-pipe* OPEN_READ + (string-append guile "/bin/guile") + "-c" "(display (effective-version))"))) + (module-dir (string-append out "/share/guile/site/" + effective)) (source (assoc-ref %build-inputs "source")) (doc (string-append out "/share/doc/guile-minikanren")) (scm-files '("minikanren.scm" -- cgit v1.2.3 From ffc72ec6dfb02bca3e282ccc1b6c00da6e7fbcaf Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 18:27:11 +0200 Subject: gnu: guile-json: Remove hard-coded Guile effective version. * gnu/packages/guile.scm (guile-json)[snippet]: Modify 'ac_subst_vars' in 'configure', and use "@GUILE_EFFECTIVE_VERSION@" instead of "2.0" in 'Makefile.in'. --- gnu/packages/guile.scm | 30 +++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 195af54c84..bd9902d427 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -514,19 +514,23 @@ for Guile\".") (name "guile-json") (version "0.5.0") (source (origin - (method url-fetch) - (uri (string-append "mirror://savannah/guile-json/guile-json-" - version ".tar.gz")) - (sha256 - (base32 - "0l8a34l92nrdszy7ykycfvr8y0n0yi5qb3ccliycvpvf9mzk5n8d")) - (modules '((guix build utils))) - (snippet - ;; Make sure everything goes under .../site/2.0, like Guile's - ;; search paths expects. - '(substitute* '("Makefile.in" "json/Makefile.in") - (("moddir =.*/share/guile/site" all) - (string-append all "/2.0")))))) + (method url-fetch) + (uri (string-append "mirror://savannah/guile-json/guile-json-" + version ".tar.gz")) + (sha256 + (base32 + "0l8a34l92nrdszy7ykycfvr8y0n0yi5qb3ccliycvpvf9mzk5n8d")) + (modules '((guix build utils))) + (snippet + ;; Make sure everything goes under .../site/X.Y, like Guile's + ;; search paths expects. + '(begin + (substitute* "configure" + (("ac_subst_vars='") + "ac_subst_vars='GUILE_EFFECTIVE_VERSION\n")) + (substitute* '("Makefile.in" "json/Makefile.in") + (("moddir =.*/share/guile/site" all) + (string-append all "/@GUILE_EFFECTIVE_VERSION@"))))))) (build-system gnu-build-system) (native-inputs `(("guile" ,guile-2.0))) (home-page "http://savannah.nongnu.org/projects/guile-json/") -- cgit v1.2.3 From 757ce0f99d5ffed86ee3258eef6c8841e82e1116 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 18:33:33 +0200 Subject: gnu: guile-commonmark: Remove hard-coded "/2.0" in installation directories. * gnu/packages/guile.scm (guile-commonmark)[source]: Add 'snippet' and 'modules'. --- gnu/packages/guile.scm | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index bd9902d427..4276e34080 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -1206,7 +1206,18 @@ you send to a FIFO file.") "/" name "-" version ".tar.gz")) (sha256 (base32 - "12cb5fqvvgc87f5xp0ih5az305wnjia89l5jba83d0r2p8bfy0b0")))) + "12cb5fqvvgc87f5xp0ih5az305wnjia89l5jba83d0r2p8bfy0b0")) + (modules '((guix build utils))) + (snippet + ;; Use the real effective version of Guile in directory names + ;; instead of a hard-coded "/2.0". + '(begin + (substitute* "configure" + (("ac_subst_vars='") + "ac_subst_vars='GUILE_EFFECTIVE_VERSION\n")) + (substitute* "Makefile.in" + (("/site/2.0") + "/site/@GUILE_EFFECTIVE_VERSION@")))))) (build-system gnu-build-system) (inputs `(("guile" ,guile-2.0))) -- cgit v1.2.3 From 947a5d47a50252cb0b87b78a8f83f274dec593e2 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 18:39:44 +0200 Subject: gnu: Add 'package-for-guile-2.2' procedure and use it. * gnu/packages/guile.scm (guile-2.2-package-name) (package-for-guile-2.2): New procedures. * gnu/packages/guile.scm (guile2.2-json, guile2.2-minikanren) (guile2.2-irregex, guile2.2-commonmark): New variables. --- gnu/packages/guile.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 4276e34080..2f6ae30aab 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -229,6 +229,21 @@ without requiring the source code to be rewritten.") (files '("lib/guile/2.2/ccache" "share/guile/site/2.2"))))))) +(define (guile-2.2-package-name name) + "Return NAME with a \"guile2.2-\" prefix instead of \"guile-\", when +applicable." + (if (string-prefix? "guile-" name) + (string-append "guile2.2-" + (string-drop name + (string-length "guile-"))) + name)) + +(define package-for-guile-2.2 + ;; A procedure that rewrites the dependency tree of the given package to use + ;; GUILE-NEXT instead of GUILE-2.0. + (package-input-rewriting `((,guile-2.0 . ,guile-next)) + guile-2.2-package-name)) + (define-public guile-for-guile-emacs (package (inherit guile-next) (name "guile-for-guile-emacs") @@ -544,6 +559,9 @@ http:://json.org specification. These are the main features: - Allows JSON pretty printing.") (license lgpl3+))) +(define-public guile2.2-json + (package-for-guile-2.2 guile-json)) + (define-public guile-minikanren (package (name "guile-minikanren") @@ -627,6 +645,9 @@ slightly from miniKanren mainline. See http://minikanren.org/ for more on miniKanren generally.") (license expat))) +(define-public guile2.2-minikanren + (package-for-guile-2.2 guile-minikanren)) + (define-public guile-irregex (package (name "guile-irregex") @@ -709,6 +730,9 @@ string-based regular expressions. It implements SRFI 115 and is deeply inspired by the SCSH regular expression system.") (license bsd-3))) +(define-public guile2.2-irregex + (package-for-guile-2.2 guile-irregex)) + ;; There are two guile-gdbm packages, one using the FFI and one with ;; direct C bindings, hence the verbose name. @@ -1231,4 +1255,7 @@ is no support for parsing block and inline level HTML.") (home-page "https://github.com/OrangeShark/guile-commonmark") (license lgpl3+))) +(define-public guile2.2-commonmark + (package-for-guile-2.2 guile-commonmark)) + ;;; guile.scm ends here -- cgit v1.2.3 From d6a07ee6751cdd414d702194dbeb0fd71f0781c9 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sat, 3 Sep 2016 08:26:05 +0200 Subject: gnu: Add rpc-daemon service * gnu/services/nfs.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- doc/guix.texi | 26 +++++++++++++++++++++++++ gnu/local.mk | 1 + gnu/services/nfs.scm | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 81 insertions(+) create mode 100644 gnu/services/nfs.scm diff --git a/doc/guix.texi b/doc/guix.texi index 655dcfa277..fb7284eb2f 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -25,6 +25,7 @@ Copyright @copyright{} 2015, 2016 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016 Chris Marusich@* Copyright @copyright{} 2016 Efraim Flashner@* +Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016 ng0 Permission is granted to copy, distribute and/or modify this document @@ -10093,6 +10094,31 @@ directories are created when the service is activated. @node Various Services @subsubsection Various Services + +@subsubheading RPC Bind Service +@cindex rpcbind + +The @code{(gnu services nfs)} module provides the following: + +@defvr {Scheme Variable} rpcbind-service-type +A service type for the RPC portmapper daemon. +@end defvr + + +@deftp {Data Type} rpcbind-configuration +Data type representing the configuration of the RPC Bind Service. +This type has the following parameters: +@table @asis +@item @code{rpcbind} (default: @code{rpcbind}) +The rpcbind package to use. + +@item @code{warm-start?} (default: @code{#t}) +If this parameter is @code{#t}, then the daemon will read a +state file on startup thus reloading state information saved by a previous +instance. +@end table +@end deftp + @cindex lirc @subsubheading Lirc Service diff --git a/gnu/local.mk b/gnu/local.mk index 12578cad64..8b042d5971 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -389,6 +389,7 @@ GNU_SYSTEM_MODULES = \ %D%/services/mail.scm \ %D%/services/mcron.scm \ %D%/services/networking.scm \ + %D%/services/nfs.scm \ %D%/services/shepherd.scm \ %D%/services/herd.scm \ %D%/services/sddm.scm \ diff --git a/gnu/services/nfs.scm b/gnu/services/nfs.scm new file mode 100644 index 0000000000..82713d8133 --- /dev/null +++ b/gnu/services/nfs.scm @@ -0,0 +1,54 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 John Darrington +;;; +;;; 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 . + +(define-module (gnu services nfs) + #:use-module (gnu) + #:use-module (gnu services shepherd) + #:use-module (gnu packages onc-rpc) + #:use-module (guix) + #:use-module (guix records) + #:export (rpcbind-service-type + rpcbind-configuration + rpcbind-configuration?)) + +(define-record-type* + rpcbind-configuration make-rpcbind-configuration + rpcbind-configuration? + (rpcbind rpcbind-configuration-rpcbind + (default rpcbind)) + (warm-start? rpcbind-configuration-warm-start? + (default #t))) + +(define rpcbind-service-type + (shepherd-service-type + 'rpcbind + (lambda (config) + (define pkg + (rpcbind-configuration-rpcbind config)) + + (define rpcbind-command + #~(list (string-append #$pkg "/bin/rpcbind") "-f" + #$@(if (rpcbind-configuration-warm-start? config) '("-w") '()))) + + (shepherd-service + (documentation "Start the RPC bind daemon.") + (requirement '(networking)) + (provision '(rpcbind-daemon)) + + (start #~(make-forkexec-constructor #$rpcbind-command)) + (stop #~(make-kill-destructor)))))) -- cgit v1.2.3 From e79b3c37e3f3a00241e7a980b45eb0e30f942b94 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 7 Sep 2016 10:25:42 +0200 Subject: gnu: man-db: Use modify-phases syntax. * gnu/packages/man.scm (man-db)[arguments]: Use modify-phases syntax. --- gnu/packages/man.scm | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index 9ffbba9de9..a5ee2d3121 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2014, 2015 Ludovic Courtès ;;; Copyright © 2014 David Thompson -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2016 Ricardo Wurmus ;;; Copyright © 2015 Alex Kost ;;; Copyright © 2015, 2016 Efraim Flashner ;;; @@ -69,18 +69,17 @@ a flexible and convenient way.") (build-system gnu-build-system) (arguments '(#:phases - (alist-cons-after - 'patch-source-shebangs 'patch-test-shebangs - (lambda* (#:key outputs #:allow-other-keys) - ;; Patch shebangs in test scripts. - (let ((out (assoc-ref outputs "out"))) - (for-each (lambda (file) - (substitute* file - (("#! /bin/sh") - (string-append "#!" (which "sh"))))) - (remove file-is-directory? - (find-files "src/tests" ".*"))))) - %standard-phases) + (modify-phases %standard-phases + (add-after 'patch-source-shebangs 'patch-test-shebangs + (lambda* (#:key outputs #:allow-other-keys) + ;; Patch shebangs in test scripts. + (let ((out (assoc-ref outputs "out"))) + (for-each (lambda (file) + (substitute* file + (("#! /bin/sh") + (string-append "#!" (which "sh"))))) + (remove file-is-directory? + (find-files "src/tests" ".*"))))))) #:configure-flags (let ((groff (assoc-ref %build-inputs "groff")) (less (assoc-ref %build-inputs "less")) -- cgit v1.2.3 From ea55a39530d6604cde07d5b23ba529a07a76ea7b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 7 Sep 2016 10:44:24 +0200 Subject: gnu: man-db: Patch path to iconv. * gnu/packages/man.scm (man-db)[arguments]: Add phase "patch-iconv-path". Fixes . --- gnu/packages/man.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index a5ee2d3121..865851982f 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -79,7 +79,13 @@ a flexible and convenient way.") (("#! /bin/sh") (string-append "#!" (which "sh"))))) (remove file-is-directory? - (find-files "src/tests" ".*"))))))) + (find-files "src/tests" ".*")))))) + (add-after 'unpack 'patch-iconv-path + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/man.c" + (("\"iconv\"") + (string-append "\"" (which "iconv") "\""))) + #t))) #:configure-flags (let ((groff (assoc-ref %build-inputs "groff")) (less (assoc-ref %build-inputs "less")) -- cgit v1.2.3 From 29e53b95f7db941296f7ff8f05e7525010362af6 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 7 Sep 2016 22:55:43 +0200 Subject: doc: Update package count. * doc/guix.texi (Limitations): Update package count. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index fb7284eb2f..3923627c79 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -6156,7 +6156,7 @@ Few system services are currently supported out-of-the-box (@pxref{Services}). @item -More than 3,200 packages are available, but you may +More than 4,000 packages are available, but you may occasionally find that a useful package is missing. @item -- cgit v1.2.3 From 23c43e55acec39e6562aafa11ff1d2173e25e079 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 7 Sep 2016 17:26:00 -0400 Subject: gnu: imagemagick: Update to 6.9.5-9. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.5-9. --- gnu/packages/imagemagick.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index f824abf3f4..94ba2e2189 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -41,14 +41,14 @@ (define-public imagemagick (package (name "imagemagick") - (version "6.9.5-8") + (version "6.9.5-9") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "0ds21sk1pczf2cwi62rqp6b8x2m24sb6xn82ivzh13m42phzigav")))) + "10y1bfx70k6q0fi9zmccdw3miab1jdpqfyb7yjyacrg1m86k0kww")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") -- cgit v1.2.3 From c0bc4b8c7da48dc5f3df6d3526eb1432ee1bbdcb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 7 Sep 2016 17:26:28 -0400 Subject: gnu: graphicsmagick: Update to 1.3.25 [fixes CVE-2016-2317]. * gnu/packages/imagemagick.scm (graphicsmagick): Update to 1.3.25. --- gnu/packages/imagemagick.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 94ba2e2189..5d72cf291b 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -155,7 +155,7 @@ script.") (define-public graphicsmagick (package (name "graphicsmagick") - (version "1.3.24") + (version "1.3.25") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.graphicsmagick.org/pub/" @@ -163,7 +163,7 @@ script.") "/GraphicsMagick-" version ".tar.xz")) (sha256 (base32 - "1q40w5hcl8rcpszm0r7rpr3a9lj390p39zfvavkvlgxyyk7bmgsj")))) + "17xcc7pfcmiwpfr1g8ys5a7bdnvqzka53vg3kkzhwwz0s99gljyn")))) (build-system gnu-build-system) (arguments `(#:configure-flags -- cgit v1.2.3 From 9e258dc24978c8d8544a471ae35156ab3001dd20 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 7 Sep 2016 21:02:28 +0300 Subject: gnu: lightweight-desktop.tmpl: Fix typo. * gnu/system/examples/lightweight-desktop.tmpl: While it is currently unknown if Bob has a brother, it is sufficiently documented that Alice is, in fact, Bob's sister. --- gnu/system/examples/lightweight-desktop.tmpl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/system/examples/lightweight-desktop.tmpl b/gnu/system/examples/lightweight-desktop.tmpl index 7cb461f2b9..91e7d0b562 100644 --- a/gnu/system/examples/lightweight-desktop.tmpl +++ b/gnu/system/examples/lightweight-desktop.tmpl @@ -24,7 +24,7 @@ (users (cons (user-account (name "alice") - (comment "Bob's brother") + (comment "Bob's sister") (group "users") (supplementary-groups '("wheel" "netdev" "audio" "video")) -- cgit v1.2.3 From a232d2c6a81d19b2389efef549954111e20926e5 Mon Sep 17 00:00:00 2001 From: Erik Edrosa Date: Wed, 7 Sep 2016 21:00:00 -0400 Subject: gnu: openal: Update to 1.17.2. * gnu/packages/audio.scm (openal): Update to 1.17.2. Signed-off-by: Efraim Flashner --- gnu/packages/audio.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 9f03368168..40cc029424 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -1468,7 +1468,7 @@ lv2-c++-tools.") (define-public openal (package (name "openal") - (version "1.15.1") + (version "1.17.2") (source (origin (method url-fetch) (uri (string-append @@ -1476,7 +1476,7 @@ lv2-c++-tools.") version ".tar.bz2")) (sha256 (base32 - "0mmhdqiyb3c9dzvxspm8h2v8jibhi8pfjxnf6m0wn744y1ia2a8f")))) + "051k5fy8pk4fd9ha3qaqcv08xwbks09xl5qs4ijqq2qz5xaghhd3")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; no check target -- cgit v1.2.3 From 7fb461d2feec88de0f0cc713acf79300c7d6c3ae Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 7 Sep 2016 17:45:46 -0400 Subject: gnu: curl: Update replacement to 7.50.2 [fixes CVE-2016-7141]. * gnu/packages/curl.scm (curl)[replacement]: Update to 7.50.2 (curl-7.50.1): Replace with ... (curl-7.50.2): ... this. --- gnu/packages/curl.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index a250bb17d3..f3c0ade824 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -40,7 +40,7 @@ (define-public curl (package (name "curl") - (replacement curl-7.50.1) + (replacement curl-7.50.2) (version "7.47.0") (source (origin (method url-fetch) @@ -125,15 +125,15 @@ tunneling, and so on.") "See COPYING in the distribution.")) (home-page "http://curl.haxx.se/"))) -(define curl-7.50.1 +(define curl-7.50.2 (package (inherit curl) (source - (let ((version "7.50.1")) + (let ((version "7.50.2")) (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" version ".tar.lzma")) (sha256 (base32 - "0qc3qp3h18v24irzw7dgg1jf39v4hnz8irv83v9lbn9rxzrpdcdj"))))))) + "0d5ly1xms0hh5zkv0m77d50c1816ywmbvmi1m158jyl70ndi9gby"))))))) -- cgit v1.2.3 From 1c6c0ad067b558fcbebd87e8cb51d342d808163e Mon Sep 17 00:00:00 2001 From: John Darrington Date: Mon, 5 Sep 2016 13:53:39 +0200 Subject: services: ntpd: Use a dedicated directory for drift file. Fixes . Drift file now resides in a dedicated directory owned by the daemon. * gnu/services/networking.scm (ntp-service-activation): New procedure, (ntp-service-type): Add new service-extension. --- gnu/services/networking.scm | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index 71f49a03a5..dee1b74d81 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -2,6 +2,7 @@ ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016 John Darrington ;;; ;;; This file is part of GNU Guix. ;;; @@ -272,7 +273,7 @@ Protocol (DHCP) client, on all the non-loopback network interfaces." (let () ;; TODO: Add authentication support. (define config - (string-append "driftfile /var/run/ntp.drift\n" + (string-append "driftfile /var/run/ntpd/ntp.drift\n" (string-join (map (cut string-append "server " <>) servers) "\n") @@ -307,13 +308,27 @@ restrict -6 ::1\n")) (home-directory "/var/empty") (shell #~(string-append #$shadow "/sbin/nologin"))))) + +(define (ntp-service-activation config) + "Return the activation gexp for CONFIG." + (with-imported-modules '((guix build utils)) + #~(begin + (define %user + (getpw "ntpd")) + + (let ((directory "/var/run/ntpd")) + (mkdir-p directory) + (chown directory (passwd:uid %user) (passwd:gid %user)))))) + (define ntp-service-type (service-type (name 'ntp) (extensions (list (service-extension shepherd-root-service-type ntp-shepherd-service) (service-extension account-service-type - (const %ntp-accounts)))))) + (const %ntp-accounts)) + (service-extension activation-service-type + ntp-service-activation))))) (define* (ntp-service #:key (ntp ntp) (servers %ntp-servers)) -- cgit v1.2.3 From fdf14c64f1dc7526e84b7e0ce41bf99e5b31c3f8 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Thu, 8 Sep 2016 14:56:14 +0200 Subject: gnu: Add edit warning to generated grub.cfg files * gnu/services/grub.scm (grub-configuration-file): Add code to emit warning. --- gnu/system/grub.scm | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/gnu/system/grub.scm b/gnu/system/grub.scm index 45b46cae6f..aa93c0f454 100644 --- a/gnu/system/grub.scm +++ b/gnu/system/grub.scm @@ -270,6 +270,10 @@ corresponding to old generations of the system." (define builder #~(call-with-output-file #$output (lambda (port) + (format port + "# This file was generated from your GuixSD configuration. Any changes +# will be lost upon reconfiguration. +") #$sugar (format port " set default=~a -- cgit v1.2.3 From e56e5b129cc8259c9fa794471d57580219e295a0 Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 6 Sep 2016 10:40:37 +0000 Subject: gnu: Add surfraw. * gnu/packages/web.scm (surfraw): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/web.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 70bfd9e161..20c7d12205 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3609,3 +3609,27 @@ tools they trust (e.g. wget).") rendering engine entirely written from scratch. It is small and capable of handling many of the web standards in use today.") (license l:gpl2+))) + +(define-public surfraw + (package + (name "surfraw") + (version "2.2.9") + (source (origin + (method url-fetch) + (uri (string-append "https://surfraw.alioth.debian.org/dist/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "1fy4ph5h9kp0jzj1m6pfylxnnmgdk0mmdppw76z9jhna4jndk5xa")))) + (build-system gnu-build-system) + (inputs + `(("perl" ,perl) + ("perl-www-opensearch" ,perl-www-opensearch) + ("perl-html-parser" ,perl-html-parser) + ("perl-libwww" ,perl-libwww))) + (synopsis "Unix command line interface to the www") + (description "Surfraw (Shell Users' Revolutionary Front Rage Against the Web) +provides a unix command line interface to a variety of popular www search engines +and similar services.") + (home-page "https://surfraw.alioth.debian.org/") + (license l:public-domain))) -- cgit v1.2.3 From d443199308a6451b8753cb1f4668b2a2d47af923 Mon Sep 17 00:00:00 2001 From: Clément Lassieur Date: Thu, 8 Sep 2016 14:28:44 +0200 Subject: gnu: Add python-git-review. * gnu/packages/openstack.scm (python-git-review) (python2-git-review): New variables. Signed-off-by: Efraim Flashner --- gnu/packages/openstack.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 8474904265..4cb38a9fc8 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Cyril Roelandt ;;; Copyright © 2015, 2016 Efraim Flashner +;;; Copyright © 2016 Clément Lassieur ;;; ;;; This file is part of GNU Guix. ;;; @@ -20,6 +21,7 @@ (define-module (gnu packages openstack) #:use-module (gnu packages python) #:use-module (gnu packages tls) + #:use-module (gnu packages version-control) #:use-module (guix build-system python) #:use-module (guix download) #:use-module ((guix licenses) @@ -781,3 +783,35 @@ permanence.") ("python2-oslosphinx" ,python2-oslosphinx) ,@(fold alist-delete (package-native-inputs swiftclient) '("python-keystoneclient" "python-oslosphinx"))))))) + +(define-public python-git-review + (package + (name "python-git-review") + (version "1.25.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "git-review" version)) + (sha256 + (base32 + "07d1jn9ryff5j5ic6qj5pbk10m1ccmpllj0wyalrcms1q9yhlzh8")))) + (build-system python-build-system) + (arguments `(#:tests? #f)) ; tests require a running Gerrit server + (native-inputs + `(("python-pbr" ,python-pbr))) + (inputs + `(("python-requests" ,python-requests) + ("git" ,git))) + (home-page "http://docs.openstack.org/infra/git-review/") + (synopsis "Command-line tool for Gerrit") + (description + "Git-review is a command-line tool that helps submitting Git branches to +Gerrit for review, or fetching existing ones.") + (license asl2.0))) + +(define-public python2-git-review + (let ((base (package-with-python2 (strip-python2-variant python-git-review)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From 78325fa8085279422053d7241fc93fcc7c558390 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 00:01:19 +0200 Subject: gnu: kmscon: Clarify synopsis, description, and supported systems. * gnu/packages/terminals.scm (kmscon)[synopsis, description]: Clarify. [supported-systems]: New field. --- gnu/packages/terminals.scm | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 7837723e39..b6d99fda7a 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -41,7 +41,8 @@ #:use-module (gnu packages ncurses) #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) - #:use-module (gnu packages xdisorg)) + #:use-module (gnu packages xdisorg) + #:use-module (srfi srfi-26)) (define-public tilda (package @@ -217,10 +218,13 @@ compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.") ("mesa" ,mesa) ("pango" ,pango) ("udev" ,eudev))) - (synopsis "Simple terminal emulator") - (description "Kmscon is a simple terminal emulator based on linux kernel -mode setting (KMS). It is an attempt to replace the in-kernel VT implementation -with a userspace console. See kmscon(1) man-page for usage information.") + (synopsis "Linux KMS-based terminal emulator") + (description "Kmscon is a terminal emulator based on Linux's @dfn{kernel +mode setting} (KMS). It can replace the in-kernel virtual terminal (VT) +implementation with a user-space console. Compared to the Linux console, +kmscon provides enhanced features including XKB-compatible internationalized +keyboard support, UTF-8 input/font support, hardware-accelerated rendering, +multi-seat support, a replacement for @command{mingetty}, and more.") (home-page "https://www.freedesktop.org/wiki/Software/kmscon") ;; Hash table implementation is lgpl2.1+ licensed. ;; The wcwidth implementation in external/wcwidth.{h,c} uses a license @@ -229,4 +233,7 @@ with a userspace console. See kmscon(1) man-page for usage information.") ;; under the bsd 2 license. ;; Unifont-Font is from http://unifoundry.com/unifont.html and licensed ;; under the terms of the GNU GPL. - (license (list license:expat license:lgpl2.1+ license:bsd-2 license:gpl2+)))) + (license (list license:expat license:lgpl2.1+ license:bsd-2 + license:gpl2+)) + (supported-systems (filter (cut string-suffix? "-linux" <>) + %supported-systems)))) -- cgit v1.2.3 From 7326944b5c6ff850b83f8b7d737d0bb2f5a97c42 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 00:07:03 +0200 Subject: gnu: kmscon: Build the man page. * gnu/packages/terminals.scm (kmscon)[native-inputs]: Add LIBXSLT, LIBXML2, and DOCBOOK-XSL. --- gnu/packages/terminals.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index b6d99fda7a..89ccaa6701 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Mckinley Olsen ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016 David Craven +;;; Copyright © 2016 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,6 +43,8 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages gnome) #:use-module (gnu packages xdisorg) + #:use-module (gnu packages xml) + #:use-module (gnu packages docbook) #:use-module (srfi srfi-26)) (define-public tilda @@ -209,7 +212,10 @@ compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.") "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a")))) (build-system gnu-build-system) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config) + ("libxslt" ,libxslt) ;to build the man page + ("libxml2" ,libxml2) ;for XML_CATALOG_FILES + ("docbook-xsl" ,docbook-xsl))) (inputs `(("libdrm" ,libdrm) ("libtsm" ,libtsm) -- cgit v1.2.3 From 5acf00f99072cd4da8d3ba064f19cc819288d68b Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 00:17:22 +0200 Subject: gnu: kmscon: Enable elogind support. * gnu/packages/terminals.scm (kmscon)[source]: Add 'modules' and 'snippet'. --- gnu/packages/terminals.scm | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 89ccaa6701..d5c24d2455 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -209,7 +209,23 @@ compatibility to existing emulators like xterm, gnome-terminal, konsole, etc.") "kmscon-" version ".tar.xz")) (sha256 (base32 - "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a")))) + "0axfwrp3c8f4gb67ap2sqnkn75idpiw09s35wwn6kgagvhf1rc0a")) + (modules '((guix build utils))) + (snippet + ;; Use elogind instead of systemd. + '(begin + (substitute* "configure" + (("libsystemd-daemon libsystemd-login") + "libelogind")) + (substitute* "src/uterm_systemd.c" + (("#include ") + "#include ") + ;; We don't have this header. + (("#include ") + "") + ;; Replace the call to 'sd_booted' by the truth value. + (("sd_booted\\(\\)") + "1")))))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) -- cgit v1.2.3 From 585b72c6f00aff61ff7a89b3159c605b230b88c3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 8 Sep 2016 13:37:07 +0300 Subject: gnu: Add libhdate. * gnu/packages/calendar.scm (libhdate): New variable. --- gnu/packages/calendar.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index cf858996e6..0c37caa8e8 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -166,3 +166,24 @@ program to be executed. It also features: sophisticated date calculation, moon phases, sunrise/sunset, Hebrew calendar, alarms, PostScript output and proper handling of holidays.") (license gpl2))) + +(define-public libhdate + (package + (name "libhdate") + (version "1.6.02") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/libhdate/libhdate/libhdate-" + version "/" name "-" version ".tar.bz2")) + (sha256 + (base32 + "0qkpq412p78znw8gckwcx3l0wcss9s0dgw1pvjb1ih2pxf6hm4rw")))) + (build-system gnu-build-system) + (home-page "http://libhdate.sourceforge.net/") + (synopsis "Library to use Hebrew dates") + (description "LibHdate is a small library for the Hebrew calendar and times +of day, written in C, and including bindings for C++, pascal, perl, php, python, +and ruby. It includes two illustrative command-line programs, @code{hcal} and +@code{hdate}, and some snippets and scripts written in the binding languages.") + (license gpl3+))) -- cgit v1.2.3 From 96262573a34f70291608c5ab1f3cff2a9d9b685e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 9 Sep 2016 07:20:31 +0200 Subject: gnu: ardour: Update to 5.3. * gnu/packages/audio.scm (ardour): Update to 5.3. --- gnu/packages/audio.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 40cc029424..cad6ad4d32 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -178,7 +178,7 @@ streams from live audio.") (define-public ardour (package (name "ardour") - (version "5.0") + (version "5.3") (source (origin (method git-fetch) (uri (git-reference @@ -192,10 +192,10 @@ streams from live audio.") "libs/ardour/revision.cc" (lambda (port) (format port "#include \"ardour/revision.h\" -namespace ARDOUR { const char* revision = \"5.0-10-g23d1d1f\" ; }")))) +namespace ARDOUR { const char* revision = \"5.3\" ; }")))) (sha256 (base32 - "0ihd6zxha1vvp4jy5s49pqyw09qxxjgrdlslrkz6ll59zdh6x7am")) + "0xdyc3syxg4drg7rafadhlrn6nycg169ay6q5xhga19kcwy6qmqm")) (file-name (string-append name "-" version)))) (build-system waf-build-system) (arguments -- cgit v1.2.3 From e0479f522390d5952d9547f71c33afe9f9c30403 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 01:24:39 -0400 Subject: gnu: file-roller: Update to 3.20.3 [fixes CVE-2016-7162]. * gnu/packages/gnome.scm (file-roller): Update to 3.20.3. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index f4488c929b..42b0ccadc6 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3887,7 +3887,7 @@ share them with others via social networking and more.") (define-public file-roller (package (name "file-roller") - (version "3.20.1") + (version "3.20.3") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3895,7 +3895,7 @@ share them with others via social networking and more.") name "-" version ".tar.xz")) (sha256 (base32 - "0cx3d8mp0pxz9wcsb2ph7g1zy22m8z5x0a4f5vgfzl0jmrcxpcy8")))) + "1sa46vjx78d670m6bikpibgz39a5zb6ri8yjmj632lmxqvj2sp3b")))) (build-system glib-or-gtk-build-system) (native-inputs `(("intltool" ,intltool) -- cgit v1.2.3 From b9b3440b1f326eea441360253c8b767eb4c129b7 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 17 May 2016 18:38:22 -0500 Subject: gnu: Add mlocate. * gnu/packages/search.scm (mlocate): New variable. --- gnu/packages/search.scm | 27 +++++++++++++++++++++++++-- 1 file changed, 25 insertions(+), 2 deletions(-) diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 9b01909753..9a7bc76463 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Mark H Weaver -;;; Copyright © 2015 Eric Bavier +;;; Copyright © 2015, 2016 Eric Bavier ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,7 +19,7 @@ (define-module (gnu packages search) #:use-module ((guix licenses) - #:select (gpl2+ gpl3+ bsd-3 x11)) + #:select (gpl2 gpl2+ gpl3+ bsd-3 x11)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) @@ -148,4 +148,27 @@ accounting for new lines and paragraph changes. It also has robust support for parsing HTML files.") (license gpl3+))) +(define-public mlocate + (package + (name "mlocate") + (version "0.26") + (source (origin + (method url-fetch) + (uri (string-append "https://fedorahosted.org/releases/m/l/" + "mlocate/mlocate-" version ".tar.xz")) + (sha256 + (base32 + "0gi6y52gkakhhlnzy0p6izc36nqhyfx5830qirhvk3qrzrwxyqrh")))) + (build-system gnu-build-system) + (home-page "https://fedorahosted.org/mlocate/") + (synopsis "Locate files on the filesystem") + (description + "mlocate is a locate/updatedb implementation. The 'm' stands for +\"merging\": @code{updatedb} reuses the existing database to avoid rereading +most of the file system, which makes it faster and does not trash the system +caches as much. The locate(1) utility is intended to be completely compatible +with slocate, and attempts to be compatible to GNU locate when it does not +conflict with slocate compatibility.") + (license gpl2))) + ;;; search.scm ends here -- cgit v1.2.3 From 1fa3e33604f859a760c6b7605ff2cd725b609c30 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 17 May 2016 21:23:21 -0500 Subject: gnu: Add steghide. * gnu/packages/image.scm (steghide): New variable. * gnu/packages/patches/steghide-fixes.patch: New patch. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/image.scm | 36 ++++++++++++++++ gnu/packages/patches/steghide-fixes.patch | 71 +++++++++++++++++++++++++++++++ 3 files changed, 108 insertions(+) create mode 100644 gnu/packages/patches/steghide-fixes.patch diff --git a/gnu/local.mk b/gnu/local.mk index 8b042d5971..45a4009859 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -795,6 +795,7 @@ dist_patch_DATA = \ %D%/packages/patches/slock-CVE-2016-6866.patch \ %D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \ %D%/packages/patches/soprano-find-clucene.patch \ + %D%/packages/patches/steghide-fixes.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ %D%/packages/patches/synfig-build-fix.patch \ %D%/packages/patches/t1lib-CVE-2010-2642.patch \ diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index a65bf3912d..2a2a77eb77 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2016 Leo Famulari ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Tobias Geerinckx-Rice +;;; Copyright © 2016 Eric Bavier ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,10 +34,12 @@ #:use-module (gnu packages compression) #:use-module (gnu packages documentation) #:use-module (gnu packages fontutils) + #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) #:use-module (gnu packages graphics) #:use-module (gnu packages maths) + #:use-module (gnu packages mcrypt) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -882,3 +885,36 @@ whether they look alike. It uses a computational model of the human visual system to detect similarities. This allows it too see beyond irrelevant differences in file encoding, image quality, and other small variations.") (license license:gpl2+))) + +(define-public steghide + (package + (name "steghide") + (version "0.5.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/steghide/steghide/" + version "/steghide-" version ".tar.bz2")) + (sha256 + (base32 + "18bxlhbdc3zsmxj84i417xjh0q28kv26q449k23n0a72ldwziix2")) + (patches (list (search-patch "steghide-fixes.patch"))))) + (build-system gnu-build-system) + (native-inputs + `(("gettext" ,gnu-gettext) + ("libtool" ,libtool) + ("perl" ,perl))) ;for tests + (inputs + `(("libmhash" ,libmhash) + ("libmcrypt" ,libmcrypt) + ("libjpeg" ,libjpeg) + ("zlib" ,zlib))) + (arguments + `(#:make-flags '("CXXFLAGS=-fpermissive"))) ;required for MHashPP.cc + (home-page "http://steghide.sourceforge.net") + (synopsis "Image and audio steganography") + (description + "Steghide is a steganography program that is able to hide data in various +kinds of image- and audio-files. The color- respectivly sample-frequencies +are not changed thus making the embedding resistant against first-order +statistical tests.") + (license license:gpl2+))) diff --git a/gnu/packages/patches/steghide-fixes.patch b/gnu/packages/patches/steghide-fixes.patch new file mode 100644 index 0000000000..4e7f447f9a --- /dev/null +++ b/gnu/packages/patches/steghide-fixes.patch @@ -0,0 +1,71 @@ +--- steghide-0.5.1/src/AuData.h ++++ steghide-0.5.1/src/AuData.h +@@ -26,22 +26,22 @@ + + // AuMuLawAudioData + typedef AudioDataImpl AuMuLawAudioData ; +-inline BYTE AuMuLawAudioData::readValue (BinaryIO* io) const { return (io->read8()) ; } +-inline void AuMuLawAudioData::writeValue (BinaryIO* io, BYTE v) const { io->write8(v) ; } ++template<> inline BYTE AuMuLawAudioData::readValue (BinaryIO* io) const { return (io->read8()) ; } ++template<> inline void AuMuLawAudioData::writeValue (BinaryIO* io, BYTE v) const { io->write8(v) ; } + + // AuPCM8AudioData + typedef AudioDataImpl AuPCM8AudioData ; +-inline SBYTE AuPCM8AudioData::readValue (BinaryIO* io) const { return ((SBYTE) io->read8()) ; } +-inline void AuPCM8AudioData::writeValue (BinaryIO* io, SBYTE v) const { io->write8((BYTE) v) ; } ++template<> inline SBYTE AuPCM8AudioData::readValue (BinaryIO* io) const { return ((SBYTE) io->read8()) ; } ++template<> inline void AuPCM8AudioData::writeValue (BinaryIO* io, SBYTE v) const { io->write8((BYTE) v) ; } + + // AuPCM16AudioData + typedef AudioDataImpl AuPCM16AudioData ; +-inline SWORD16 AuPCM16AudioData::readValue (BinaryIO* io) const { return ((SWORD16) io->read16_be()) ; } +-inline void AuPCM16AudioData::writeValue (BinaryIO* io, SWORD16 v) const { io->write16_be((UWORD16) v) ; } ++template<> inline SWORD16 AuPCM16AudioData::readValue (BinaryIO* io) const { return ((SWORD16) io->read16_be()) ; } ++template<> inline void AuPCM16AudioData::writeValue (BinaryIO* io, SWORD16 v) const { io->write16_be((UWORD16) v) ; } + + // AuPCM32AudioData + typedef AudioDataImpl AuPCM32AudioData ; +-inline SWORD32 AuPCM32AudioData::readValue (BinaryIO* io) const { return ((SWORD32) io->read32_be()) ; } +-inline void AuPCM32AudioData::writeValue (BinaryIO* io, SWORD32 v) const { io->write32_be((UWORD32) v) ; } ++template<> inline SWORD32 AuPCM32AudioData::readValue (BinaryIO* io) const { return ((SWORD32) io->read32_be()) ; } ++template<> inline void AuPCM32AudioData::writeValue (BinaryIO* io, SWORD32 v) const { io->write32_be((UWORD32) v) ; } + + #endif // ndef SH_AUDATA_H +--- steghide-0.5.1/src/AuSampleValues.cc ++++ steghide-0.5.1/src/AuSampleValues.cc +@@ -21,17 +21,17 @@ + #include "AuSampleValues.h" + + // AuMuLawSampleValue +-const BYTE AuMuLawSampleValue::MinValue = 0 ; +-const BYTE AuMuLawSampleValue::MaxValue = BYTE_MAX ; ++template<> const BYTE AuMuLawSampleValue::MinValue = 0 ; ++template<> const BYTE AuMuLawSampleValue::MaxValue = BYTE_MAX ; + + // AuPCM8SampleValue +-const SBYTE AuPCM8SampleValue::MinValue = SBYTE_MIN ; +-const SBYTE AuPCM8SampleValue::MaxValue = SBYTE_MAX ; ++template<> const SBYTE AuPCM8SampleValue::MinValue = SBYTE_MIN ; ++template<> const SBYTE AuPCM8SampleValue::MaxValue = SBYTE_MAX ; + + // AuPCM16SampleValue +-const SWORD16 AuPCM16SampleValue::MinValue = SWORD16_MIN ; +-const SWORD16 AuPCM16SampleValue::MaxValue = SWORD16_MAX ; ++template<> const SWORD16 AuPCM16SampleValue::MinValue = SWORD16_MIN ; ++template<> const SWORD16 AuPCM16SampleValue::MaxValue = SWORD16_MAX ; + + // AuPCM32SampleValue +-const SWORD32 AuPCM32SampleValue::MinValue = SWORD32_MIN ; +-const SWORD32 AuPCM32SampleValue::MaxValue = SWORD32_MAX ; ++template<> const SWORD32 AuPCM32SampleValue::MinValue = SWORD32_MIN ; ++template<> const SWORD32 AuPCM32SampleValue::MaxValue = SWORD32_MAX ; +--- steghide-0.5.1/src/Graph.cc ++++ steghide-0.5.1/src/Graph.cc +@@ -18,6 +18,7 @@ + * + */ + ++#include + #include + #include + #include -- cgit v1.2.3 From a2319d2c8f4507b48e40e13ab56dbcfae3b2c533 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Wed, 18 May 2016 01:02:02 -0500 Subject: gnu: Add Swish-e. * gnu/packages/search.scm (swish-e): New variable. * gnu/packages/patches/swish-e-search.patch, gnu/packages/patches/swish-e-format-security.patch: New patches. * gnu/local.mk (dist_patch_DATA): Add them. --- gnu/local.mk | 2 + gnu/packages/patches/swish-e-format-security.patch | 33 +++++++++++ gnu/packages/patches/swish-e-search.patch | 43 ++++++++++++++ gnu/packages/search.scm | 67 +++++++++++++++++++++- 4 files changed, 144 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/swish-e-format-security.patch create mode 100644 gnu/packages/patches/swish-e-search.patch diff --git a/gnu/local.mk b/gnu/local.mk index 45a4009859..7d14f8c842 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -797,6 +797,8 @@ dist_patch_DATA = \ %D%/packages/patches/soprano-find-clucene.patch \ %D%/packages/patches/steghide-fixes.patch \ %D%/packages/patches/superlu-dist-scotchmetis.patch \ + %D%/packages/patches/swish-e-search.patch \ + %D%/packages/patches/swish-e-format-security.patch \ %D%/packages/patches/synfig-build-fix.patch \ %D%/packages/patches/t1lib-CVE-2010-2642.patch \ %D%/packages/patches/t1lib-CVE-2011-0764.patch \ diff --git a/gnu/packages/patches/swish-e-format-security.patch b/gnu/packages/patches/swish-e-format-security.patch new file mode 100644 index 0000000000..be9d7cb8a9 --- /dev/null +++ b/gnu/packages/patches/swish-e-format-security.patch @@ -0,0 +1,33 @@ +Borrowed from Debian. + +--- swish-e-2.4.7/src/parser.c 2009-04-05 03:58:32.000000000 +0200 ++++ swish-e-2.4.7/src/parser.c 2013-06-11 13:53:08.196559035 +0200 +@@ -1760,7 +1760,7 @@ + va_start(args, msg); + vsnprintf(str, 1000, msg, args ); + va_end(args); +- xmlParserError(parse_data->ctxt, str); ++ xmlParserError(parse_data->ctxt, "%s", str); + } + + static void warning(void *data, const char *msg, ...) +@@ -1772,7 +1772,7 @@ + va_start(args, msg); + vsnprintf(str, 1000, msg, args ); + va_end(args); +- xmlParserWarning(parse_data->ctxt, str); ++ xmlParserWarning(parse_data->ctxt, "%s", str); + } + + +--- swish-e-2.4.7/src/result_output.c 2009-04-05 03:58:32.000000000 +0200 ++++ swish-e-2.4.7/src/result_output.c 2013-06-11 13:53:38.593550825 +0200 +@@ -752,7 +752,7 @@ + s = (char *) emalloc(MAXWORDLEN + 1); + n = strftime(s, (size_t) MAXWORDLEN, fmt, localtime(&(pv->value.v_date))); + if (n && f) +- fprintf(f, s); ++ fprintf(f, "%s", s); + efree(s); + } + break; diff --git a/gnu/packages/patches/swish-e-search.patch b/gnu/packages/patches/swish-e-search.patch new file mode 100644 index 0000000000..2a57a31a08 --- /dev/null +++ b/gnu/packages/patches/swish-e-search.patch @@ -0,0 +1,43 @@ +From http://swish-e.org/archive/2015-09/13295.html + +--- a/src/compress.c ++++ a/src/compress.c +@@ -995,7 +995,7 @@ void remove_worddata_longs(unsigned char *worddata,int *sz_worddata) + progerr("Internal error in remove_worddata_longs"); + + /* dst may be smaller than src. So move the data */ +- memcpy(dst,src,data_len); ++ memmove(dst,src,data_len); + + /* Increase pointers */ + src += data_len; +--- a/src/headers.c ++++ a/src/headers.c +@@ -280,7 +280,7 @@ static SWISH_HEADER_VALUE fetch_single_header( IndexFILE *indexf, HEADER_MAP *he + + case SWISH_NUMBER: + case SWISH_BOOL: +- value.number = *(unsigned long *) data_pointer; ++ value.number = *(unsigned int *) data_pointer; + + /* $$$ Ugly hack alert! */ + /* correct for removed files */ +--- a/src/swishspider ++++ a/src/swishspider +@@ -27,6 +27,7 @@ use LWP::UserAgent; + use HTTP::Status; + use HTML::Parser 3.00; + use HTML::LinkExtor; ++use Encode; + + if (scalar(@ARGV) != 2) { + print STDERR "Usage: $0 localpath url\n"; +@@ -94,7 +95,7 @@ use HTML::LinkExtor; + # Don't allow links above the base + $URI::ABS_REMOTE_LEADING_DOTS = 1; + +- $p->parse( $$content_ref ); ++ $p->parse( decode_utf8 $$content_ref ); + close( LINKS ); + + exit; diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 9a7bc76463..60f902f96a 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -23,10 +23,14 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) + #:use-module (gnu packages) #:use-module (gnu packages compression) #:use-module (gnu packages check) #:use-module (gnu packages databases) - #:use-module (gnu packages linux)) + #:use-module (gnu packages linux) + #:use-module (gnu packages perl) + #:use-module (gnu packages web) + #:use-module (gnu packages xml)) (define-public xapian (package @@ -171,4 +175,65 @@ with slocate, and attempts to be compatible to GNU locate when it does not conflict with slocate compatibility.") (license gpl2))) +(define-public swish-e + (package + (name "swish-e") + (version "2.4.7") + (source (origin + (method url-fetch) + (uri (list (string-append "http://swish-e.org/distribution/" + "swish-e-" version ".tar.gz") + ;; The upstream swish-e.org appears to be down... so + ;; use debian's copy as a fallback. + (string-append "http://http.debian.net/debian/pool/" + "main/s/swish-e/swish-e_" version + ".orig.tar.gz"))) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0qkrk7z25yp9hynj21vxkyn7yi8gcagcfxnass5cgczcz0gm9pax")) + (patches (search-patches "swish-e-search.patch" + "swish-e-format-security.patch")))) + (build-system gnu-build-system) + ;; Several other packages and perl modules may be installed alongside + ;; swish-e to extend its features at runtime, but are not required for + ;; building: xpdf, catdoc, MP3::Tag, Spreadsheet::ParseExcel, + ;; HTML::Entities. + (inputs + `(("libxml" ,libxml2) + ("zlib" ,zlib) + ("perl" ,perl) + ("perl-uri" ,perl-uri) + ("perl-html-parser" ,perl-html-parser) + ("perl-html-tagset" ,perl-html-tagset) + ("perl-mime-types" ,perl-mime-types))) + (arguments + `(#:phases (modify-phases %standard-phases + (add-after 'install 'wrap-programs + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out"))) + (for-each + (lambda (program) + (wrap-program program + `("PERL5LIB" ":" prefix + ,(map (lambda (i) + (string-append (assoc-ref inputs i) + "/lib/perl5/site_perl")) + ;; These perl modules have no propagated + ;; inputs, so no further analysis needed. + '("perl-uri" + "perl-html-parser" + "perl-html-tagset" + "perl-mime-types"))))) + (list (string-append out "/lib/swish-e/swishspider") + (string-append out "/bin/swish-filter-test"))) + #t)))))) + (home-page "http://swish-e.org") + (synopsis "Web indexing system") + (description + "Swish-e is Simple Web Indexing System for Humans - Enhanced. Swish-e +can quickly and easily index directories of files or remote web sites and +search the generated indexes.") + (license gpl2+))) ;with exception + ;;; search.scm ends here -- cgit v1.2.3 From 2e3f18511884782fca9a29de7ffd543df5e25e47 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Tue, 23 Aug 2016 00:35:43 -0500 Subject: gnu: Add Tomb. * gnu/packages/crypto.scm (tomb): New variable. --- gnu/packages/crypto.scm | 76 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 055551f10f..4cf472fe5c 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Lukas Gradl ;;; Copyright © 2016 Tobias Geerinckx-Rice ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Eric Bavier ;;; ;;; This file is part of GNU Guix. ;;; @@ -23,9 +24,14 @@ (define-module (gnu packages crypto) #:use-module (gnu packages) + #:use-module (gnu packages admin) + #:use-module (gnu packages aidc) #:use-module (gnu packages autotools) #:use-module (gnu packages boost) + #:use-module (gnu packages cryptsetup) #:use-module (gnu packages gettext) + #:use-module (gnu packages gnupg) + #:use-module (gnu packages image) #:use-module (gnu packages pkg-config) #:use-module (gnu packages libbsd) #:use-module (gnu packages linux) @@ -33,8 +39,10 @@ #:use-module (gnu packages password-utils) #:use-module (gnu packages perl) #:use-module (gnu packages readline) + #:use-module (gnu packages search) #:use-module (gnu packages serialization) #:use-module (gnu packages tls) + #:use-module (gnu packages zsh) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) @@ -323,3 +331,71 @@ for valid names can be run with regular expressions and wordlists. For the generation of wordlists the included tool @code{worgen} can be used. There is no man page, refer to the home page for usage details.") (license (list license:isc license:expat))))) + +(define-public tomb + (package + (name "tomb") + (version "2.2") + (source (origin + (method url-fetch) + (uri (string-append "https://files.dyne.org/tomb/" + "tomb-" version ".tar.gz")) + (sha256 + (base32 + "11msj38fdmymiqcmwq1883kjqi5zr01ybdjj58rfjjrw4zw2w5y0")))) + (build-system gnu-build-system) + (inputs + `(("zsh" ,zsh) + ("sudo" ,sudo) + ("gnupg" ,gnupg) + ("cryptsetup" ,cryptsetup) + ("e2fsprogs" ,e2fsprogs) ;for mkfs.ext4 + ("gettext" ,gnu-gettext) ;used at runtime + ("mlocate" ,mlocate) + ("pinentry" ,pinentry) + ("qrencode" ,qrencode) + ("steghide" ,steghide) + ("swish-e" ,swish-e))) + (arguments + `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))) + ;; TODO: Build and install gtk and qt trays + #:phases + (modify-phases %standard-phases + (delete 'configure) ;no configuration to be done + (add-after 'install 'i18n + (lambda* (#:key make-flags #:allow-other-keys) + (zero? (apply system* + "make" "-C" "extras/translations" + "install" make-flags)))) + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/tomb") + `("PATH" ":" prefix + (,(string-append (assoc-ref inputs "mlocate") "/bin") + ,@(map (lambda (program) + (or (and=> (which program) dirname) + (error "program not found:" program))) + '("seq" "mkfs.ext4" "pinentry" "sudo" + "gpg" "cryptsetup" "gettext" + "qrencode" "steghide" "swish-e"))))) + #t))) + (delete 'check) + (add-after 'wrap 'check + (lambda* (#:key outputs #:allow-other-keys) + ;; Running the full tests requires sudo/root access for + ;; cryptsetup, which is not available in the build environment. + ;; But we can run `tomb dig` without root, so make sure that + ;; works. TODO: It Would Be Nice to check the expected "index", + ;; "search", "bury", and "exhume" features are available by + ;; querying `tomb -h`. + (let ((tomb (string-append (assoc-ref outputs "out") + "/bin/tomb"))) + (zero? (system* tomb "dig" "-s" "10" "secrets.tomb")))))))) + (home-page "http://www.dyne.org/software/tomb") + (synopsis "File encryption for secret data") + (description + "Tomb is an application to manage the creation and access of encrypted +storage files: it can be operated from commandline and it can integrate with a +user's graphical desktop.") + (license license:gpl3+))) -- cgit v1.2.3 From b5fc72ff571e05c52af38cd0b04aeae8a90ba5c4 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 9 Sep 2016 07:55:00 +0200 Subject: gnu: ardour: Do not contact ardour.org on start. * gnu/packages/audio.scm (ardour)[arguments]: Add configure flag "--no-phone-home". --- gnu/packages/audio.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index cad6ad4d32..3070fc8f30 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -199,7 +199,8 @@ namespace ARDOUR { const char* revision = \"5.3\" ; }")))) (file-name (string-append name "-" version)))) (build-system waf-build-system) (arguments - `(#:configure-flags '("--cxx11") ; required by gtkmm + `(#:configure-flags '("--cxx11" ; required by gtkmm + "--no-phone-home") ; don't contact ardour.org #:phases (modify-phases %standard-phases (add-after -- cgit v1.2.3 From 31769b9f95582f6503696876ee4312adcf91e360 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 11:03:13 +0200 Subject: gnu: guile: Search for .go files in "/site-ccache", not "/ccache". * gnu/packages/guile.scm (guile-next)[search-paths]: Change "2.2/ccache" to "2.2/site-ccache". (guile-for-guile-emacs)[search-paths]: Likewise. --- gnu/packages/guile.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 2f6ae30aab..2294b169b6 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -226,7 +226,7 @@ without requiring the source code to be rewritten.") (files '("share/guile/site/2.2"))) (search-path-specification (variable "GUILE_LOAD_COMPILED_PATH") - (files '("lib/guile/2.2/ccache" + (files '("lib/guile/2.2/site-ccache" "share/guile/site/2.2"))))))) (define (guile-2.2-package-name name) @@ -286,7 +286,7 @@ applicable." (files '("share/guile/site/2.0"))) (search-path-specification (variable "GUILE_LOAD_COMPILED_PATH") - (files '("lib/guile/2.0/ccache" + (files '("lib/guile/2.0/site-ccache" "share/guile/site/2.0"))))))) -- cgit v1.2.3 From 19b2ea1b60940ff1f422a3208a8df4e1ce19ff6a Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Fri, 9 Sep 2016 19:05:23 +0800 Subject: gnu: Fix wrong import of '(gnu packages zsh)'. * gnu/packages/crypot.scm: Change import of '(gnu packages zsh)' to '(gnu packages shells)'. --- gnu/packages/crypto.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 4cf472fe5c..ff5b0db5fb 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -41,8 +41,8 @@ #:use-module (gnu packages readline) #:use-module (gnu packages search) #:use-module (gnu packages serialization) + #:use-module (gnu packages shells) #:use-module (gnu packages tls) - #:use-module (gnu packages zsh) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) -- cgit v1.2.3 From 44e8559d39c388c40eafd56cb38adf6913255a4a Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Mon, 29 Aug 2016 17:19:24 -0500 Subject: gnu: llvm: propagate zlib input. * gnu/packages/llvm.scm (llvm)[inputs]: Move zlib from here... [ppropagated]: ...to here. --- gnu/packages/llvm.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index c380eba122..aa3d65bf63 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -52,8 +52,9 @@ `(("python" ,python-2) ;bytes->str conversion in clang>=3.7 needs python-2 ("perl" ,perl))) (inputs - `(("libffi" ,libffi) - ("zlib" ,zlib))) + `(("libffi" ,libffi))) + (propagated-inputs + `(("zlib" ,zlib))) ;to use output from llvm-config (arguments `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" -- cgit v1.2.3 From ab78618f07bdbba20f91b2e142389bc1215c7171 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Mon, 29 Aug 2016 17:20:16 -0500 Subject: gnu: llvm: Build shared libraries. * gnu/packages/llvm.scm (llvm)[arguments]: Add -DBUILD_SHARED_LIBS to --- gnu/packages/llvm.scm | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index aa3d65bf63..a9eba798e0 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -58,10 +58,21 @@ (arguments `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" + "-DBUILD_SHARED_LIBS:BOOL=TRUE" "-DLLVM_ENABLE_FFI:BOOL=TRUE") ;; Don't use '-g' during the build, to save space. - #:build-type "Release")) + #:build-type "Release" + #:phases (modify-phases %standard-phases + (add-before 'build 'shared-lib-workaround + ;; Even with CMAKE_SKIP_BUILD_RPATH=FALSE, llvm-tblgen + ;; doesn't seem to get the correct rpath to be able to run + ;; from the build directory. Set LD_LIBRARY_PATH as a + ;; workaround. + (lambda _ + (setenv "LD_LIBRARY_PATH" + (string-append (getcwd) "/lib")) + #t))))) (home-page "http://www.llvm.org") (synopsis "Optimizing compiler infrastructure") (description -- cgit v1.2.3 From 28f45dd7d7ab5c91b82145f6c94fe4476749f023 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Mon, 29 Aug 2016 17:21:08 -0500 Subject: gnu: c-reduce: Upgrade to 2.5.0. * gnu/packages/debug.scm (c-reduce): Upgrade to 2.5.0. [inputs]: Remove delta and perl-benchmark-timer. Add perl-term-readkey. [arguments]: Adjust wrapper libraries. --- gnu/packages/debug.scm | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/gnu/packages/debug.scm b/gnu/packages/debug.scm index 82a8090d0c..54ed5cd36a 100644 --- a/gnu/packages/debug.scm +++ b/gnu/packages/debug.scm @@ -88,7 +88,7 @@ program to exhibit a bug.") (define-public c-reduce (package (name "c-reduce") - (version "2.3.0") + (version "2.5.0") (source (origin (method url-fetch) @@ -97,26 +97,21 @@ program to exhibit a bug.") "creduce-" version ".tar.gz"))) (sha256 (base32 - "0r9lvnifjcnsrkrk8k4mha1kmmb93jya7alm523ck59y3173bpi0")) - (modules '((guix build utils))) - (snippet - '(substitute* "clang_delta/TransformationManager.cpp" - (("llvm/Config/config.h") "llvm/Config/llvm-config.h"))))) + "1r23lhzq3dz8vi2dalxk5las8bf0av2w94hxxbs61pr73m77ik9d")))) (build-system gnu-build-system) (inputs `(("astyle" ,astyle) - ("delta" ,delta) ("llvm" ,llvm) ("clang" ,clang) ("flex" ,flex) ("indent" ,indent) ("perl" ,perl) - ("benchmark-timer" ,perl-benchmark-timer) ("exporter-lite" ,perl-exporter-lite) ("file-which" ,perl-file-which) ("getopt-tabular" ,perl-getopt-tabular) ("regex-common" ,perl-regexp-common) - ("sys-cpu" ,perl-sys-cpu))) + ("sys-cpu" ,perl-sys-cpu) + ("term-readkey" ,perl-term-readkey))) (arguments `(#:phases (alist-cons-after 'install 'set-load-paths @@ -131,7 +126,7 @@ program to exhibit a bug.") (string-append (assoc-ref inputs p) "/lib/perl5/site_perl/" ,(package-version perl))) - '("benchmark-timer" "exporter-lite" + '("term-readkey" "exporter-lite" "file-which" "getopt-tabular" "regex-common" "sys-cpu")))))) %standard-phases))) -- cgit v1.2.3 From c2783e2b94ae3f6f35ae7cfaa52904c98d6453a3 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 17:14:34 -0400 Subject: gnu: geoclue: Update to 2.4.4. * gnu/packages/gnome.scm (geoclue): Update to 2.4.4. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 42b0ccadc6..3151fe2699 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2423,7 +2423,7 @@ output devices.") (define-public geoclue (package (name "geoclue") - (version "2.4.3") + (version "2.4.4") (source (origin (method url-fetch) @@ -2432,7 +2432,7 @@ output devices.") name "-" version ".tar.xz")) (sha256 (base32 - "0pk07k65dlw37nz8z5spksivsv5nh96xmbi336rf2yfxf2ldpadd")) + "0p1ibjf5vzjsahw5xif2si3lj6a00sxhll008jk7w1hj1jfznhww")) (patches (search-patches "geoclue-config.patch")))) (build-system glib-or-gtk-build-system) (arguments -- cgit v1.2.3 From b5fed903c44b27c61935a51ee1b4b866500f53c2 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 16:50:34 +0200 Subject: gexp: Remove outdated comment. * guix/gexp.scm (lower-references): Remove outdated "XXX" comment. --- guix/gexp.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/guix/gexp.scm b/guix/gexp.scm index 302879fb42..b33a3f89db 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -429,8 +429,6 @@ corresponding derivation." "Based on LST, a list of output names and packages, return a list of output names and file names suitable for the #:allowed-references argument to 'derivation'." - ;; XXX: Currently outputs other than "out" are not supported, and things - ;; other than packages aren't either. (with-monad %store-monad (define lower (match-lambda -- cgit v1.2.3 From ebdfd776f4504c456d383ee8afa59fc6fdfc6756 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 22:43:41 +0200 Subject: gexp: Compilers can now provide an "expander". * guix/gexp.scm ()[expand]: New field. (default-expander, lookup-expander): New procedures. (define-gexp-compiler): Add second pattern to allow for the definition of both a compiler and an expander. (gexp->sexp)[reference->sexp]: Call 'lookup-expander' and use its result. --- guix/gexp.scm | 74 +++++++++++++++++++++++++++++++++++++++++------------------ 1 file changed, 52 insertions(+), 22 deletions(-) diff --git a/guix/gexp.scm b/guix/gexp.scm index b33a3f89db..8d380ec95b 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -126,27 +126,46 @@ ;; Compiler for a type of objects that may be introduced in a gexp. (define-record-type - (gexp-compiler predicate lower) + (gexp-compiler predicate lower expand) gexp-compiler? (predicate gexp-compiler-predicate) - (lower gexp-compiler-lower)) + (lower gexp-compiler-lower) + (expand gexp-compiler-expand)) ;#f | DRV -> M sexp (define %gexp-compilers ;; List of . '()) +(define (default-expander thing obj output) + "This is the default expander for \"things\" that appear in gexps. It +returns its output file name of OBJ's OUTPUT." + (match obj + ((? derivation? drv) + (derivation->output-path drv output)) + ((? string? file) + file))) + (define (register-compiler! compiler) "Register COMPILER as a gexp compiler." (set! %gexp-compilers (cons compiler %gexp-compilers))) (define (lookup-compiler object) - "Search a compiler for OBJECT. Upon success, return the three argument + "Search for a compiler for OBJECT. Upon success, return the three argument procedure to lower it; otherwise return #f." (any (match-lambda (($ predicate lower) (and (predicate object) lower))) %gexp-compilers)) +(define (lookup-expander object) + "Search for an expander for OBJECT. Upon success, return the three argument +procedure to expand it; otherwise return #f." + (or (any (match-lambda + (($ predicate _ expand) + (and (predicate object) expand))) + %gexp-compilers) + default-expander)) + (define* (lower-object obj #:optional (system (%current-system)) #:key target) @@ -157,19 +176,33 @@ OBJ must be an object that has an associated gexp compiler, such as a (let ((lower (lookup-compiler obj))) (lower obj system target))) -(define-syntax-rule (define-gexp-compiler (name (param predicate) - system target) - body ...) - "Define NAME as a compiler for objects matching PREDICATE encountered in -gexps. BODY must return a derivation for PARAM, an object that matches -PREDICATE, for SYSTEM and TARGET (the latter of which is #f except when -cross-compiling.)" - (begin - (define name - (gexp-compiler predicate - (lambda (param system target) - body ...))) - (register-compiler! name))) +(define-syntax define-gexp-compiler + (syntax-rules (=> compiler expander) + "Define NAME as a compiler for objects matching PREDICATE encountered in +gexps. + +In the simplest form of the macro, BODY must return a derivation for PARAM, an +object that matches PREDICATE, for SYSTEM and TARGET (the latter of which is +#f except when cross-compiling.) + +The more elaborate form allows you to specify an expander: + + (define-gexp-compiler something something? + compiler => (lambda (param system target) ...) + expander => (lambda (param drv output) ...)) + +The expander specifies how an object is converted to its sexp representation." + ((_ (name (param predicate) system target) body ...) + (define-gexp-compiler name predicate + compiler => (lambda (param system target) body ...) + expander => default-expander)) + ((_ name predicate + compiler => compile + expander => expand) + (begin + (define name + (gexp-compiler predicate compile expand)) + (register-compiler! name))))) (define-gexp-compiler (derivation-compiler (drv derivation?) system target) ;; Derivations are the lowest-level representation, so this is the identity @@ -704,15 +737,12 @@ and in the current monad setting (system type, etc.)" (or n? native?))) refs))) (($ (? struct? thing) output n?) - (let ((target (if (or n? native?) #f target))) + (let ((target (if (or n? native?) #f target)) + (expand (lookup-expander thing))) (mlet %store-monad ((obj (lower-object thing system #:target target))) ;; OBJ must be either a derivation or a store file name. - (return (match obj - ((? derivation? drv) - (derivation->output-path drv output)) - ((? string? file) - file)))))) + (return (expand thing obj output))))) (($ x) (return x)) (x -- cgit v1.2.3 From a9e5e92f940381e3a4ee828c6d8ff22a73067e17 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 22:46:36 +0200 Subject: gexp: Add 'file-append'. * guix/gexp.scm (): New record type. (file-append): New procedure. (file-append-compiler): New gexp compiler. * tests/gexp.scm ("file-append", "file-append, output") ("file-append, nested", "gexp->file + file-append"): New tests. * doc/guix.texi (G-Expressions): Use it in 'nscd' and 'list-files' examples. Document 'file-append'. --- doc/guix.texi | 35 +++++++++++++++++++++++++++++++---- guix/gexp.scm | 29 +++++++++++++++++++++++++++++ tests/gexp.scm | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 113 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 3923627c79..6d3361878b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3985,7 +3985,7 @@ The @code{local-file}, @code{plain-file}, @code{computed-file}, these objects lead to a file in the store. Consider this G-expression: @example -#~(system* (string-append #$glibc "/sbin/nscd") "-f" +#~(system* #$(file-append glibc "/sbin/nscd") "-f" #$(local-file "/tmp/my-nscd.conf")) @end example @@ -4044,7 +4044,7 @@ command: (use-modules (guix gexp) (gnu packages base)) (gexp->script "list-files" - #~(execl (string-append #$coreutils "/bin/ls") + #~(execl #$(file-append coreutils "/bin/ls") "ls")) @end example @@ -4055,8 +4055,7 @@ executable file @file{/gnu/store/@dots{}-list-files} along these lines: @example #!/gnu/store/@dots{}-guile-2.0.11/bin/guile -ds !# -(execl (string-append "/gnu/store/@dots{}-coreutils-8.22"/bin/ls") - "ls") +(execl "/gnu/store/@dots{}-coreutils-8.22"/bin/ls" "ls") @end example @end deffn @@ -4126,6 +4125,34 @@ as in: This is the declarative counterpart of @code{text-file*}. @end deffn +@deffn {Scheme Procedure} file-append @var{obj} @var{suffix} @dots{} +Return a file-like object that expands to the concatenation of @var{obj} +and @var{suffix}, where @var{obj} is a lowerable object and each +@var{suffix} is a string. + +As an example, consider this gexp: + +@example +(gexp->script "run-uname" + #~(system* #$(file-append coreutils + "/bin/uname"))) +@end example + +The same effect could be achieved with: + +@example +(gexp->script "run-uname" + #~(system* (string-append #$coreutils + "/bin/uname"))) +@end example + +There is one difference though: in the @code{file-append} case, the +resulting script contains the absolute file name as a string, whereas in +the second case, the resulting script contains a @code{(string-append +@dots{})} expression to construct the file name @emph{at run time}. +@end deffn + + Of course, in addition to gexps embedded in ``host'' code, there are also modules containing build tools. To make it clear that they are meant to be used in the build stratum, these modules are kept in the diff --git a/guix/gexp.scm b/guix/gexp.scm index 8d380ec95b..7e2ecf6c33 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -63,6 +63,11 @@ scheme-file-name scheme-file-gexp + file-append + file-append? + file-append-base + file-append-suffix + gexp->derivation gexp->file gexp->script @@ -368,6 +373,30 @@ This is the declarative counterpart of 'gexp->file'." (($ name gexp) (gexp->file name gexp)))) +;; Appending SUFFIX to BASE's output file name. +(define-record-type + (%file-append base suffix) + file-append? + (base file-append-base) ; | | ... + (suffix file-append-suffix)) ;list of strings + +(define (file-append base . suffix) + "Return a object that expands to the concatenation of BASE and +SUFFIX." + (%file-append base suffix)) + +(define-gexp-compiler file-append-compiler file-append? + compiler => (lambda (obj system target) + (match obj + (($ base _) + (lower-object base system #:target target)))) + expander => (lambda (obj lowered output) + (match obj + (($ base suffix) + (let* ((expand (lookup-expander base)) + (base (expand base lowered output))) + (string-append base (string-concatenate suffix))))))) + ;;; ;;; Inputs & outputs. diff --git a/tests/gexp.scm b/tests/gexp.scm index 03a64fa6bb..214e7a5302 100644 --- a/tests/gexp.scm +++ b/tests/gexp.scm @@ -207,6 +207,47 @@ (e3 `(display ,txt))) (equal? `(begin ,e0 ,e1 ,e2 ,e3) (gexp->sexp* exp)))))) +(test-assert "file-append" + (let* ((drv (package-derivation %store %bootstrap-guile)) + (fa (file-append %bootstrap-guile "/bin/guile")) + (exp #~(here we go #$fa))) + (and (match (gexp->sexp* exp) + (('here 'we 'go (? string? result)) + (string=? result + (string-append (derivation->output-path drv) + "/bin/guile")))) + (match (gexp-inputs exp) + (((thing "out")) + (eq? thing fa)))))) + +(test-assert "file-append, output" + (let* ((drv (package-derivation %store glibc)) + (fa (file-append glibc "/lib" "/debug")) + (exp #~(foo #$fa:debug))) + (and (match (gexp->sexp* exp) + (('foo (? string? result)) + (string=? result + (string-append (derivation->output-path drv "debug") + "/lib/debug")))) + (match (gexp-inputs exp) + (((thing "debug")) + (eq? thing fa)))))) + +(test-assert "file-append, nested" + (let* ((drv (package-derivation %store glibc)) + (dir (file-append glibc "/bin")) + (slash (file-append dir "/")) + (file (file-append slash "getent")) + (exp #~(foo #$file))) + (and (match (gexp->sexp* exp) + (('foo (? string? result)) + (string=? result + (string-append (derivation->output-path drv) + "/bin/getent")))) + (match (gexp-inputs exp) + (((thing "out")) + (eq? thing file)))))) + (test-assert "ungexp + ungexp-native" (let* ((exp (gexp (list (ungexp-native %bootstrap-guile) (ungexp coreutils) @@ -338,6 +379,18 @@ (return (and (equal? sexp (call-with-input-file out read)) (equal? (list guile) refs))))) +(test-assertm "gexp->file + file-append" + (mlet* %store-monad ((exp -> #~#$(file-append %bootstrap-guile + "/bin/guile")) + (guile (package-file %bootstrap-guile)) + (drv (gexp->file "foo" exp)) + (out -> (derivation->output-path drv)) + (done (built-derivations (list drv))) + (refs ((store-lift references) out))) + (return (and (equal? (string-append guile "/bin/guile") + (call-with-input-file out read)) + (equal? (list guile) refs))))) + (test-assertm "gexp->derivation" (mlet* %store-monad ((file (text-file "foo" "Hello, world!")) (exp -> (gexp -- cgit v1.2.3 From 44d5f54e31039d78f156bd9562dca293124eaa76 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 23:27:00 +0200 Subject: system: grub: Allow arbitrary kernel file names in 'menu-entry'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . Reported by Tomáš Čech . * gnu/system.scm (system-linux-image-file-name) (operating-system-kernel-file): New procedures. (operating-system-grub.cfg): Use 'operating-system-kernel-file' for the 'kernel' field of 'menu-entry'. (operating-system-parameters-file): Likewise for the 'kernel' entry. (read-boot-parameters): Adjust 'kernel' field so that it contains the absolute file name of the image. * gnu/system/grub.scm (grub-configuration-file)[linux-image-name]: Remove. [entry->gexp]: Assume LINUX is the absolute file name of the kernel image. * doc/guix.texi (GRUB Configuration): Add an example, and adjust 'kernel' field documentation accordingly. --- doc/guix.texi | 22 ++++++++++++++++++++-- gnu/system.scm | 30 ++++++++++++++++++++++++++---- gnu/system/grub.scm | 13 +++---------- 3 files changed, 49 insertions(+), 16 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 6d3361878b..7ed8ee8130 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10622,9 +10622,23 @@ The @code{grub-theme} object describing the theme to use. @end deftp +@cindex dual boot +@cindex boot menu Should you want to list additional boot menu entries @i{via} the @code{menu-entries} field above, you will need to create them with the -@code{menu-entry} form: +@code{menu-entry} form. For example, imagine you want to be able to +boot another distro (hard to imagine!), you can define a menu entry +along these lines: + +@example +(menu-entry + (label "The Other Distro") + (linux "/boot/old/vmlinux-2.6.32") + (linux-arguments '("root=/dev/sda2")) + (initrd "/boot/old/initrd")) +@end example + +Details below. @deftp {Data Type} menu-entry The type of an entry in the GRUB boot menu. @@ -10635,7 +10649,11 @@ The type of an entry in the GRUB boot menu. The label to show in the menu---e.g., @code{"GNU"}. @item @code{linux} -The Linux kernel to boot. +The Linux kernel image to boot, for example: + +@example +(file-append linux-libre "/bzImage") +@end example @item @code{linux-arguments} (default: @code{()}) The list of extra Linux kernel command-line arguments---e.g., diff --git a/gnu/system.scm b/gnu/system.scm index 080201011c..18b2806fe9 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -69,6 +69,7 @@ operating-system-host-name operating-system-hosts-file operating-system-kernel + operating-system-kernel-file operating-system-kernel-arguments operating-system-initrd operating-system-users @@ -246,6 +247,19 @@ from the initrd." "Return the list of swap services for OS." (map swap-service (operating-system-swap-devices os))) +(define* (system-linux-image-file-name #:optional (system (%current-system))) + "Return the basename of the kernel image file for SYSTEM." + ;; FIXME: Evaluate the conditional based on the actual current system. + (if (string-prefix? "mips" (%current-system)) + "vmlinuz" + "bzImage")) + +(define (operating-system-kernel-file os) + "Return an object representing the absolute file name of the kernel image of +OS." + (file-append (operating-system-kernel os) + "/" (system-linux-image-file-name os))) + (define* (operating-system-directory-base-entries os #:key container?) "Return the basic entries of the 'system' directory of OS for use as the value of the SYSTEM-SERVICE-TYPE service." @@ -710,12 +724,13 @@ listed in OS. The C library expects to find it under ((system (operating-system-derivation os)) (root-fs -> (operating-system-root-file-system os)) (store-fs -> (operating-system-store-file-system os)) - (kernel -> (operating-system-kernel os)) + (label -> (kernel->grub-label (operating-system-kernel os))) + (kernel -> (operating-system-kernel-file os)) (root-device -> (if (eq? 'uuid (file-system-title root-fs)) (uuid->string (file-system-device root-fs)) (file-system-device root-fs))) (entries -> (list (menu-entry - (label (kernel->grub-label kernel)) + (label label) (linux kernel) (linux-arguments (cons* (string-append "--root=" root-device) @@ -739,7 +754,7 @@ this file is the reconstruction of GRUB menu entries for old configurations." #~(boot-parameters (version 0) (label #$label) (root-device #$(file-system-device root)) - (kernel #$(operating-system-kernel os)) + (kernel #$(operating-system-kernel-file os)) (kernel-arguments #$(operating-system-kernel-arguments os)) (initrd #$initrd)) @@ -768,7 +783,14 @@ this file is the reconstruction of GRUB menu entries for old configurations." (boot-parameters (label label) (root-device root) - (kernel linux) + + ;; In the past, we would store the directory name of the kernel instead + ;; of the absolute file name of its image. Detect that and correct it. + (kernel (if (string=? linux (direct-store-path linux)) + (string-append linux "/" + (system-linux-image-file-name)) + linux)) + (kernel-arguments (match (assq 'kernel-arguments rest) ((_ args) args) diff --git a/gnu/system/grub.scm b/gnu/system/grub.scm index aa93c0f454..4592747083 100644 --- a/gnu/system/grub.scm +++ b/gnu/system/grub.scm @@ -243,11 +243,6 @@ code." object, and where the store is available at STORE-FS, a object. OLD-ENTRIES is taken to be a list of menu entries corresponding to old generations of the system." - (define linux-image-name - (if (string-prefix? "mips" system) - "vmlinuz" - "bzImage")) - (define all-entries (append entries (grub-configuration-menu-entries config))) @@ -256,14 +251,12 @@ corresponding to old generations of the system." (($ label linux arguments initrd) #~(format port "menuentry ~s { ~a - linux ~a/~a ~a + linux ~a ~a initrd ~a }~%" #$label - #$(grub-root-search store-fs - #~(string-append #$linux "/" - #$linux-image-name)) - #$linux #$linux-image-name (string-join (list #$@arguments)) + #$(grub-root-search store-fs linux) + #$linux (string-join (list #$@arguments)) #$initrd)))) (mlet %store-monad ((sugar (eye-candy config store-fs system #~port))) -- cgit v1.2.3 From ab20d74a4638dc6295aa9b9af276d2a98f238f9d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Fri, 9 Sep 2016 23:38:24 +0200 Subject: system: Build the initrd file name with 'file-append'. * gnu/system.scm (operating-system-initrd-file) (operating-system-grub.cfg): Use 'file-append' to construct the initrd file name. --- gnu/system.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index 18b2806fe9..4c1de384fa 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -660,7 +660,7 @@ hardware-related operations as necessary when booting a Linux container." (mlet %store-monad ((initrd (make-initrd boot-file-systems #:linux (operating-system-kernel os) #:mapped-devices mapped-devices))) - (return #~(string-append #$initrd "/initrd")))) + (return (file-append initrd "/initrd")))) (define (locale-name->definition* name) "Variant of 'locale-name->definition' that raises an error upon failure." @@ -738,7 +738,7 @@ listed in OS. The C library expects to find it under #~(string-append "--load=" #$system "/boot") (operating-system-kernel-arguments os))) - (initrd #~(string-append #$system "/initrd")))))) + (initrd (file-append system "/initrd")))))) (grub-configuration-file (operating-system-bootloader os) store-fs entries #:old-entries old-entries))) -- cgit v1.2.3 From 4b6da268ff49005c84713ea35699bdd491ee29a3 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sat, 10 Sep 2016 09:23:00 +1000 Subject: gnu: bamm: Update to 1.7.3. * gnu/packages/bioinformatics.scm (bamm): Update to 1.7.3. --- gnu/packages/bioinformatics.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f34acd124d..74360832b0 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -141,17 +141,17 @@ structure of the predicted RNA.") (define-public bamm (package (name "bamm") - (version "1.7.2a") + (version "1.7.3") (source (origin (method url-fetch) ;; BamM is not available on pypi. (uri (string-append - "https://github.com/Ecogenomics/BamM/archive/v" + "https://github.com/Ecogenomics/BamM/archive/" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0nb20yml39f8fh0cahpjywsl91irh9yskig549c17xkrkl74czsq")) + "1f35yxp4pc8aadsvbpg6r4kg2jh4fkjci0iby4iyljm6980sac0s")) (modules '((guix build utils))) (snippet `(begin -- cgit v1.2.3 From 876d80d424756218626dd0f849bfe5872fd7a145 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 13:41:13 -0400 Subject: gnu: openjpeg: Update to 2.1.1. * gnu/packages/image.scm (openjpeg): Update to 2.1.1. [source]: Use GitHub URL and add file-name field. Remove "openjpeg-use-after-free-fix.patch" and "openjpeg-CVE-2015-6581.patch" from patches. --- gnu/packages/image.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 2a2a77eb77..aafe705d59 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -380,17 +380,17 @@ work.") (define-public openjpeg (package (name "openjpeg") - (version "2.1.0") + (version "2.1.1") (source (origin (method url-fetch) (uri - (string-append "mirror://sourceforge/openjpeg.mirror/" version "/" - name "-" version ".tar.gz")) + (string-append "https://github.com/uclouvain/openjpeg/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "00zzm303zvv4ijzancrsb1cqbph3pgz0nky92k9qx3fq9y0vnchj")) - (patches (search-patches "openjpeg-use-after-free-fix.patch" - "openjpeg-CVE-2015-6581.patch")))) + (base32 + "1anv0rjkbxw9kx91wvlfpb3dhppibda6kb1papny46bjzi3pzhl2")))) (build-system cmake-build-system) (arguments ;; Trying to run `$ make check' results in a no rule fault. -- cgit v1.2.3 From 0f97e7e5cdd4cbe75cdec99305a689a5f357a83a Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 01:48:50 -0400 Subject: gnu: openjpeg-2.*: Fix CVE-2016-7163. * gnu/packages/patches/openjpeg-CVE-2016-7163.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/image.scm (openjpeg, openjpeg-2.0): Use it. --- gnu/local.mk | 1 + gnu/packages/image.scm | 6 +- gnu/packages/patches/openjpeg-CVE-2016-7163.patch | 71 +++++++++++++++++++++++ 3 files changed, 76 insertions(+), 2 deletions(-) create mode 100644 gnu/packages/patches/openjpeg-CVE-2016-7163.patch diff --git a/gnu/local.mk b/gnu/local.mk index 7d14f8c842..bce0d6947b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -702,6 +702,7 @@ dist_patch_DATA = \ %D%/packages/patches/ocaml-findlib-make-install.patch \ %D%/packages/patches/openexr-missing-samples.patch \ %D%/packages/patches/openjpeg-CVE-2015-6581.patch \ + %D%/packages/patches/openjpeg-CVE-2016-7163.patch \ %D%/packages/patches/openjpeg-use-after-free-fix.patch \ %D%/packages/patches/openssl-runpath.patch \ %D%/packages/patches/openssl-1.1.0-c-rehash-in.patch \ diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index aafe705d59..be0bb6feac 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -390,7 +390,8 @@ work.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1anv0rjkbxw9kx91wvlfpb3dhppibda6kb1papny46bjzi3pzhl2")))) + "1anv0rjkbxw9kx91wvlfpb3dhppibda6kb1papny46bjzi3pzhl2")) + (patches (search-patches "openjpeg-CVE-2016-7163.patch")))) (build-system cmake-build-system) (arguments ;; Trying to run `$ make check' results in a no rule fault. @@ -427,7 +428,8 @@ error-resilience, a Java-viewer for j2k-images, ...") (sha256 (base32 "1c2xc3nl2mg511b63rk7hrckmy14681p1m44mzw3n1fyqnjm0b0z")) (patches (search-patches "openjpeg-use-after-free-fix.patch" - "openjpeg-CVE-2015-6581.patch")))))) + "openjpeg-CVE-2015-6581.patch" + "openjpeg-CVE-2016-7163.patch")))))) (define-public openjpeg-1 (package (inherit openjpeg) diff --git a/gnu/packages/patches/openjpeg-CVE-2016-7163.patch b/gnu/packages/patches/openjpeg-CVE-2016-7163.patch new file mode 100644 index 0000000000..a4a24e4ff5 --- /dev/null +++ b/gnu/packages/patches/openjpeg-CVE-2016-7163.patch @@ -0,0 +1,71 @@ +Fix CVE-2016-7613 (Integer overflow in opj_pi_create_decode allowing execution +of arbitrary code): + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-7163 +https://github.com/uclouvain/openjpeg/issues/826 +http://seclists.org/oss-sec/2016/q3/442 + +Copied from upstream repository: + +https://github.com/uclouvain/openjpeg/commit/c16bc057ba3f125051c9966cf1f5b68a05681de4 +https://github.com/uclouvain/openjpeg/commit/ef01f18dfc6780b776d0674ed3e7415c6ef54d24 + +From c16bc057ba3f125051c9966cf1f5b68a05681de4 Mon Sep 17 00:00:00 2001 +From: trylab +Date: Tue, 6 Sep 2016 13:55:49 +0800 +Subject: [PATCH] Fix an integer overflow issue (#809) + +Prevent an integer overflow issue in function opj_pi_create_decode of +pi.c. +--- + src/lib/openjp2/pi.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/src/lib/openjp2/pi.c b/src/lib/openjp2/pi.c +index cffad66..36e2ff0 100644 +--- a/src/lib/openjp2/pi.c ++++ b/src/lib/openjp2/pi.c +@@ -1237,7 +1237,13 @@ opj_pi_iterator_t *opj_pi_create_decode(opj_image_t *p_image, + l_current_pi = l_pi; + + /* memory allocation for include */ +- l_current_pi->include = (OPJ_INT16*) opj_calloc((l_tcp->numlayers +1) * l_step_l, sizeof(OPJ_INT16)); ++ /* prevent an integer overflow issue */ ++ l_current_pi->include = 00; ++ if (l_step_l <= (SIZE_MAX / (l_tcp->numlayers + 1U))) ++ { ++ l_current_pi->include = (OPJ_INT16*) opj_calloc((l_tcp->numlayers +1) * l_step_l, sizeof(OPJ_INT16)); ++ } ++ + if + (!l_current_pi->include) + { +-- +2.10.0 + +From ef01f18dfc6780b776d0674ed3e7415c6ef54d24 Mon Sep 17 00:00:00 2001 +From: Matthieu Darbois +Date: Thu, 8 Sep 2016 07:34:46 +0200 +Subject: [PATCH] Cast to size_t before multiplication + +Need to cast to size_t before multiplication otherwise overflow check is useless. +--- + src/lib/openjp2/pi.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/lib/openjp2/pi.c b/src/lib/openjp2/pi.c +index 36e2ff0..809b33d 100644 +--- a/src/lib/openjp2/pi.c ++++ b/src/lib/openjp2/pi.c +@@ -1241,7 +1241,7 @@ opj_pi_iterator_t *opj_pi_create_decode(opj_image_t *p_image, + l_current_pi->include = 00; + if (l_step_l <= (SIZE_MAX / (l_tcp->numlayers + 1U))) + { +- l_current_pi->include = (OPJ_INT16*) opj_calloc((l_tcp->numlayers +1) * l_step_l, sizeof(OPJ_INT16)); ++ l_current_pi->include = (OPJ_INT16*) opj_calloc((size_t)(l_tcp->numlayers + 1U) * l_step_l, sizeof(OPJ_INT16)); + } + + if +-- +2.10.0 + -- cgit v1.2.3 From 4ce01773f3fe4c600785e38ba2e94033e66a72ef Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 01:59:35 -0400 Subject: gnu: openjpeg: Fix CVE-2016-5157. * gnu/packages/patches/openjpeg-CVE-2016-5157.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/image.scm (openjpeg): Use it. --- gnu/local.mk | 1 + gnu/packages/image.scm | 3 +- gnu/packages/patches/openjpeg-CVE-2016-5157.patch | 96 +++++++++++++++++++++++ 3 files changed, 99 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/openjpeg-CVE-2016-5157.patch diff --git a/gnu/local.mk b/gnu/local.mk index bce0d6947b..eab58f6223 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -702,6 +702,7 @@ dist_patch_DATA = \ %D%/packages/patches/ocaml-findlib-make-install.patch \ %D%/packages/patches/openexr-missing-samples.patch \ %D%/packages/patches/openjpeg-CVE-2015-6581.patch \ + %D%/packages/patches/openjpeg-CVE-2016-5157.patch \ %D%/packages/patches/openjpeg-CVE-2016-7163.patch \ %D%/packages/patches/openjpeg-use-after-free-fix.patch \ %D%/packages/patches/openssl-runpath.patch \ diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index be0bb6feac..fe21d23d93 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -391,7 +391,8 @@ work.") (sha256 (base32 "1anv0rjkbxw9kx91wvlfpb3dhppibda6kb1papny46bjzi3pzhl2")) - (patches (search-patches "openjpeg-CVE-2016-7163.patch")))) + (patches (search-patches "openjpeg-CVE-2016-5157.patch" + "openjpeg-CVE-2016-7163.patch")))) (build-system cmake-build-system) (arguments ;; Trying to run `$ make check' results in a no rule fault. diff --git a/gnu/packages/patches/openjpeg-CVE-2016-5157.patch b/gnu/packages/patches/openjpeg-CVE-2016-5157.patch new file mode 100644 index 0000000000..f83bd9b511 --- /dev/null +++ b/gnu/packages/patches/openjpeg-CVE-2016-5157.patch @@ -0,0 +1,96 @@ +Fix CVE-2016-5157 (heap overflow in opj_dwt_interleave_v() allowing execution of +arbitrary code): + +https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-5157 +https://pdfium.googlesource.com/pdfium/+/b6befb2ed2485a3805cddea86dc7574510178ea9 +http://seclists.org/oss-sec/2016/q3/441 + +Adapted from upstream source repository: + +https://github.com/uclouvain/openjpeg/commit/e078172b1c3f98d2219c37076b238fb759c751ea + +The final hunk of the patch, affecting +'tests/nonregression/test_suite.ctest.in', had to be adjusted, since it referred +to some context that is not yet provided by a tagged release. + +From c80286a4d573ad07ccc3c8b53289c38bb8256b30 Mon Sep 17 00:00:00 2001 +From: Leo Famulari +Date: Fri, 9 Sep 2016 04:37:40 -0400 +Subject: [PATCH] CVE-2016-5157 adjusted to apply to 2.1.0. + +--- + src/lib/openjp2/tcd.c | 11 +++++++++++ + tests/compare_dump_files.c | 14 +++++++------- + tests/nonregression/test_suite.ctest.in | 2 ++ + 3 files changed, 20 insertions(+), 7 deletions(-) + +diff --git a/src/lib/openjp2/tcd.c b/src/lib/openjp2/tcd.c +index 12da05c..7a29c49 100644 +--- a/src/lib/openjp2/tcd.c ++++ b/src/lib/openjp2/tcd.c +@@ -696,9 +696,20 @@ static INLINE OPJ_BOOL opj_tcd_init_tile(opj_tcd_t *p_tcd, OPJ_UINT32 p_tile_no, + l_tx0 = l_cp->tx0 + p * l_cp->tdx; /* can't be greater than l_image->x1 so won't overflow */ + l_tile->x0 = (OPJ_INT32)opj_uint_max(l_tx0, l_image->x0); + l_tile->x1 = (OPJ_INT32)opj_uint_min(opj_uint_adds(l_tx0, l_cp->tdx), l_image->x1); ++ /* all those OPJ_UINT32 are casted to OPJ_INT32, let's do some sanity check */ ++ if ((l_tile->x0 < 0) || (l_tile->x1 <= l_tile->x0)) { ++ opj_event_msg(manager, EVT_ERROR, "Tile X coordinates are not supported\n"); ++ return OPJ_FALSE; ++ } + l_ty0 = l_cp->ty0 + q * l_cp->tdy; /* can't be greater than l_image->y1 so won't overflow */ + l_tile->y0 = (OPJ_INT32)opj_uint_max(l_ty0, l_image->y0); + l_tile->y1 = (OPJ_INT32)opj_uint_min(opj_uint_adds(l_ty0, l_cp->tdy), l_image->y1); ++ /* all those OPJ_UINT32 are casted to OPJ_INT32, let's do some sanity check */ ++ if ((l_tile->y0 < 0) || (l_tile->y1 <= l_tile->y0)) { ++ opj_event_msg(manager, EVT_ERROR, "Tile Y coordinates are not supported\n"); ++ return OPJ_FALSE; ++ } ++ + + /* testcase 1888.pdf.asan.35.988 */ + if (l_tccp->numresolutions == 0) { +diff --git a/tests/compare_dump_files.c b/tests/compare_dump_files.c +index 946c92a..7d22270 100644 +--- a/tests/compare_dump_files.c ++++ b/tests/compare_dump_files.c +@@ -118,10 +118,10 @@ int main(int argc, char **argv) + test_cmp_parameters inParam; + FILE *fbase=NULL, *ftest=NULL; + int same = 0; +- char lbase[256]; +- char strbase[256]; +- char ltest[256]; +- char strtest[256]; ++ char lbase[512]; ++ char strbase[512]; ++ char ltest[512]; ++ char strtest[512]; + + if( parse_cmdline_cmp(argc, argv, &inParam) == 1 ) + { +@@ -154,9 +154,9 @@ int main(int argc, char **argv) + + while (fgets(lbase, sizeof(lbase), fbase) && fgets(ltest,sizeof(ltest),ftest)) + { +- int nbase = sscanf(lbase, "%255[^\r\n]", strbase); +- int ntest = sscanf(ltest, "%255[^\r\n]", strtest); +- assert( nbase != 255 && ntest != 255 ); ++ int nbase = sscanf(lbase, "%511[^\r\n]", strbase); ++ int ntest = sscanf(ltest, "%511[^\r\n]", strtest); ++ assert( nbase != 511 && ntest != 511 ); + if( nbase != 1 || ntest != 1 ) + { + fprintf(stderr, "could not parse line from files\n" ); +diff --git a/tests/nonregression/test_suite.ctest.in b/tests/nonregression/test_suite.ctest.in +index d393e6c..90cfa43 100644 +--- a/tests/nonregression/test_suite.ctest.in ++++ b/tests/nonregression/test_suite.ctest.in +@@ -564,3 +564,5 @@ opj_decompress -i @INPUT_NR_PATH@/issue726.j2k -o @TEMP_PATH@/issue726.png + # issue 775 + !opj_decompress -i @INPUT_NR_PATH@/issue775.j2k -o @TEMP_PATH@/issue775.png + !opj_decompress -i @INPUT_NR_PATH@/issue775-2.j2k -o @TEMP_PATH@/issue775-2.png ++# issue 823 (yes, not a typo, test image is issue822) ++!opj_decompress -i @INPUT_NR_PATH@/issue822.jp2 -o @TEMP_PATH@/issue822.png +-- +2.10.0 + -- cgit v1.2.3 From c41d97bed6ee1765e0845567444d4d2af1a4d373 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 16:08:02 -0400 Subject: gnu: mupdf: Update to 1.9a. * gnu/packages/pdf.scm (mupdf): Update to 1.9a. [source]: Use "mupdf-build-with-openjpeg-2.1.patch". Adjust snippet to preserve bundled 'thirdparty/mujs'. [inputs]: Add harfbuzz. Replace openjpeg-2.0 with openjpeg. * gnu/packages/patches/mupdf-build-with-openjpeg-2.1.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + .../patches/mupdf-build-with-openjpeg-2.1.patch | 38 ++++++++++++++++++++++ gnu/packages/pdf.scm | 26 +++++++++++---- 3 files changed, 59 insertions(+), 6 deletions(-) create mode 100644 gnu/packages/patches/mupdf-build-with-openjpeg-2.1.patch diff --git a/gnu/local.mk b/gnu/local.mk index eab58f6223..515ca352a8 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -681,6 +681,7 @@ dist_patch_DATA = \ %D%/packages/patches/mplayer2-theora-fix.patch \ %D%/packages/patches/module-init-tools-moduledir.patch \ %D%/packages/patches/mumps-build-parallelism.patch \ + %D%/packages/patches/mupdf-build-with-openjpeg-2.1.patch \ %D%/packages/patches/mupdf-CVE-2016-6265.patch \ %D%/packages/patches/mupdf-CVE-2016-6525.patch \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \ diff --git a/gnu/packages/patches/mupdf-build-with-openjpeg-2.1.patch b/gnu/packages/patches/mupdf-build-with-openjpeg-2.1.patch new file mode 100644 index 0000000000..cd8136b701 --- /dev/null +++ b/gnu/packages/patches/mupdf-build-with-openjpeg-2.1.patch @@ -0,0 +1,38 @@ +Make it possible to build MuPDF with OpenJPEG 2.1, which is the latest +release series and contains many important bug fixes. + +Patch adapted from Debian: + +https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=745246 + +And related to this upstream commit: + +http://git.ghostscript.com/?p=mupdf.git;a=commit;h=f88bfe2e62dbadb96d4f52d7aa025f0a516078da + +diff --git a/source/fitz/load-jpx.c b/source/fitz/load-jpx.c +index 6b92e5c..72dea50 100644 +--- a/source/fitz/load-jpx.c ++++ b/source/fitz/load-jpx.c +@@ -1,13 +1,5 @@ + #include "mupdf/fitz.h" + +-/* Without the definition of OPJ_STATIC, compilation fails on windows +- * due to the use of __stdcall. We believe it is required on some +- * linux toolchains too. */ +-#define OPJ_STATIC +-#ifndef _MSC_VER +-#define OPJ_HAVE_STDINT_H +-#endif +- + #include + + static void fz_opj_error_callback(const char *msg, void *client_data) +@@ -117,7 +109,7 @@ fz_load_jpx(fz_context *ctx, unsigned char *data, int size, fz_colorspace *defcs + opj_stream_set_read_function(stream, fz_opj_stream_read); + opj_stream_set_skip_function(stream, fz_opj_stream_skip); + opj_stream_set_seek_function(stream, fz_opj_stream_seek); +- opj_stream_set_user_data(stream, &sb); ++ opj_stream_set_user_data(stream, &sb, NULL); + /* Set the length to avoid an assert */ + opj_stream_set_user_data_length(stream, size); + diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 74e89070b8..98cc92e5a8 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages tls) + #:use-module (gnu packages javascript) #:use-module (srfi srfi-1)) (define-public poppler @@ -466,29 +467,42 @@ extracting content or merging files.") (define-public mupdf (package (name "mupdf") - (version "1.8") + (version "1.9a") (source (origin (method url-fetch) (uri (string-append "http://mupdf.com/downloads/archive/" name "-" version "-source.tar.gz")) (sha256 - (base32 "01n26cy41lc2fjri63s4js23ixxb4nd37aafry3hz4i4id6wd8x2")) - (patches (search-patches "mupdf-CVE-2016-6265.patch" + (base32 + "1k64pdapyj8a336jw3j61fhn0rp4q6az7d0dqp9r5n3d9rgwa5c0")) + (patches (search-patches "mupdf-build-with-openjpeg-2.1.patch" + "mupdf-CVE-2016-6265.patch" "mupdf-CVE-2016-6525.patch")) (modules '((guix build utils))) (snippet - ;; Don't build the bundled-in third party libraries. - '(delete-file-recursively "thirdparty")))) + ;; Delete all the bundled libraries except for mujs, which is + ;; developed by the same team as mupdf and has no releases. + ;; TODO Package mujs and don't use the bundled copy. + '(for-each delete-file-recursively + '("thirdparty/curl" + "thirdparty/freetype" + "thirdparty/glfw" + "thirdparty/harfbuzz" + "thirdparty/jbig2dec" + "thirdparty/jpeg" + "thirdparty/openjpeg" + "thirdparty/zlib"))))) (build-system gnu-build-system) (inputs `(("curl" ,curl) ("freetype" ,freetype) + ("harfbuzz" ,harfbuzz) ("jbig2dec" ,jbig2dec) ("libjpeg" ,libjpeg) ("libx11" ,libx11) ("libxext" ,libxext) - ("openjpeg" ,openjpeg-2.0) + ("openjpeg" ,openjpeg) ("openssl" ,openssl) ("zlib" ,zlib))) (native-inputs -- cgit v1.2.3 From 2884c63cbc4b5254d767436a145c03a7480c9755 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 16:24:12 -0400 Subject: gnu: Remove openjpeg-2.0. * gnu/packages/image.scm (openjpeg-2.0): Remove variable. --- gnu/packages/image.scm | 16 ---------------- 1 file changed, 16 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index fe21d23d93..8d3c01f785 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -416,22 +416,6 @@ error-resilience, a Java-viewer for j2k-images, ...") (home-page "https://github.com/uclouvain/openjpeg") (license license:bsd-2))) -(define-public openjpeg-2.0 - (package (inherit openjpeg) - (name "openjpeg") - (version "2.0.1") - (source - (origin - (method url-fetch) - (uri - (string-append "mirror://sourceforge/openjpeg.mirror/" version "/" - name "-" version ".tar.gz")) - (sha256 - (base32 "1c2xc3nl2mg511b63rk7hrckmy14681p1m44mzw3n1fyqnjm0b0z")) - (patches (search-patches "openjpeg-use-after-free-fix.patch" - "openjpeg-CVE-2015-6581.patch" - "openjpeg-CVE-2016-7163.patch")))))) - (define-public openjpeg-1 (package (inherit openjpeg) (name "openjpeg") -- cgit v1.2.3 From 56ab55d1df3314e99c5cc860eb09d76cab1ff095 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 9 Sep 2016 21:25:51 -0400 Subject: gnu: letsencrypt: Superseded by certbot. * gnu/packages/tls.scm (letsencrypt)[properties]: New field. --- gnu/packages/tls.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 64414edc1a..4b04cac893 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -548,7 +548,8 @@ will be issuing browser-trusted certificates for free.") (define-public letsencrypt (package (inherit certbot) - (name "letsencrypt"))) + (name "letsencrypt") + (properties `((superseded . ,certbot))))) (define-public perl-net-ssleay (package -- cgit v1.2.3 From e71479747b3610cc7d992f2b38c6fa825ee44ad1 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 10 Sep 2016 01:14:32 -0400 Subject: gnu: pdf: Remove erroneous module import. This is a followup to commit c41d97bed6ee1765e0845567444d4d2af1a4d373. * gnu/packages/pdf.scm: Don't import (gnu packages javascript). --- gnu/packages/pdf.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 98cc92e5a8..69be8ac913 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -53,7 +53,6 @@ #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages tls) - #:use-module (gnu packages javascript) #:use-module (srfi srfi-1)) (define-public poppler -- cgit v1.2.3 From 1cdecf24f5a7d98c9564a12a2932a015cfc31b9e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 10 Sep 2016 11:57:37 +0200 Subject: gexp: Store compilers in a hash table for O(1) lookup. * guix/gexp.scm ()[predicate]: Remove. [type]: New field. (%gexp-compilers): Turn into a hash table. (register-compiler!, lookup-compiler, lookup-expander): Adjust accordingly. (define-gexp-compiler): Replace 'predicate' by 'record-type'. (derivation-compiler, local-file-compiler, plain-file-compiler) (computed-file-compiler, program-file-compiler, scheme-file-compiler) (file-append-compiler): Adjust accordingly. * guix/packages.scm (package-compiler, origin-compiler): Likewise. --- guix/gexp.scm | 48 ++++++++++++++++++++++-------------------------- guix/packages.scm | 4 ++-- 2 files changed, 24 insertions(+), 28 deletions(-) diff --git a/guix/gexp.scm b/guix/gexp.scm index 7e2ecf6c33..05178a5ecc 100644 --- a/guix/gexp.scm +++ b/guix/gexp.scm @@ -131,15 +131,15 @@ ;; Compiler for a type of objects that may be introduced in a gexp. (define-record-type - (gexp-compiler predicate lower expand) + (gexp-compiler type lower expand) gexp-compiler? - (predicate gexp-compiler-predicate) + (type gexp-compiler-type) ;record type descriptor (lower gexp-compiler-lower) - (expand gexp-compiler-expand)) ;#f | DRV -> M sexp + (expand gexp-compiler-expand)) ;#f | DRV -> sexp (define %gexp-compilers - ;; List of . - '()) + ;; 'eq?' mapping of record type descriptor to . + (make-hash-table 20)) (define (default-expander thing obj output) "This is the default expander for \"things\" that appear in gexps. It @@ -152,24 +152,20 @@ returns its output file name of OBJ's OUTPUT." (define (register-compiler! compiler) "Register COMPILER as a gexp compiler." - (set! %gexp-compilers (cons compiler %gexp-compilers))) + (hashq-set! %gexp-compilers + (gexp-compiler-type compiler) compiler)) (define (lookup-compiler object) "Search for a compiler for OBJECT. Upon success, return the three argument procedure to lower it; otherwise return #f." - (any (match-lambda - (($ predicate lower) - (and (predicate object) lower))) - %gexp-compilers)) + (and=> (hashq-ref %gexp-compilers (struct-vtable object)) + gexp-compiler-lower)) (define (lookup-expander object) "Search for an expander for OBJECT. Upon success, return the three argument procedure to expand it; otherwise return #f." - (or (any (match-lambda - (($ predicate _ expand) - (and (predicate object) expand))) - %gexp-compilers) - default-expander)) + (and=> (hashq-ref %gexp-compilers (struct-vtable object)) + gexp-compiler-expand)) (define* (lower-object obj #:optional (system (%current-system)) @@ -197,19 +193,19 @@ The more elaborate form allows you to specify an expander: expander => (lambda (param drv output) ...)) The expander specifies how an object is converted to its sexp representation." - ((_ (name (param predicate) system target) body ...) - (define-gexp-compiler name predicate + ((_ (name (param record-type) system target) body ...) + (define-gexp-compiler name record-type compiler => (lambda (param system target) body ...) expander => default-expander)) - ((_ name predicate + ((_ name record-type compiler => compile expander => expand) (begin (define name - (gexp-compiler predicate compile expand)) + (gexp-compiler record-type compile expand)) (register-compiler! name))))) -(define-gexp-compiler (derivation-compiler (drv derivation?) system target) +(define-gexp-compiler (derivation-compiler (drv ) system target) ;; Derivations are the lowest-level representation, so this is the identity ;; compiler. (with-monad %store-monad @@ -275,7 +271,7 @@ This is the declarative counterpart of the 'interned-file' monadic procedure." 'system-error' exception is raised if FILE could not be found." (force (%local-file-absolute-file-name file))) -(define-gexp-compiler (local-file-compiler (file local-file?) system target) +(define-gexp-compiler (local-file-compiler (file ) system target) ;; "Compile" FILE by adding it to the store. (match file (($ file (= force absolute) name recursive? select?) @@ -302,7 +298,7 @@ This is the declarative counterpart of 'text-file'." ;; them in a declarative context. (%plain-file name content '())) -(define-gexp-compiler (plain-file-compiler (file plain-file?) system target) +(define-gexp-compiler (plain-file-compiler (file ) system target) ;; "Compile" FILE by adding it to the store. (match file (($ name content references) @@ -324,7 +320,7 @@ to 'gexp->derivation'. This is the declarative counterpart of 'gexp->derivation'." (%computed-file name gexp options)) -(define-gexp-compiler (computed-file-compiler (file computed-file?) +(define-gexp-compiler (computed-file-compiler (file ) system target) ;; Compile FILE by returning a derivation whose build expression is its ;; gexp. @@ -346,7 +342,7 @@ GEXP. GUILE is the Guile package used to execute that script. This is the declarative counterpart of 'gexp->script'." (%program-file name gexp guile)) -(define-gexp-compiler (program-file-compiler (file program-file?) +(define-gexp-compiler (program-file-compiler (file ) system target) ;; Compile FILE by returning a derivation that builds the script. (match file @@ -366,7 +362,7 @@ This is the declarative counterpart of 'gexp->script'." This is the declarative counterpart of 'gexp->file'." (%scheme-file name gexp)) -(define-gexp-compiler (scheme-file-compiler (file scheme-file?) +(define-gexp-compiler (scheme-file-compiler (file ) system target) ;; Compile FILE by returning a derivation that builds the file. (match file @@ -385,7 +381,7 @@ This is the declarative counterpart of 'gexp->file'." SUFFIX." (%file-append base suffix)) -(define-gexp-compiler file-append-compiler file-append? +(define-gexp-compiler file-append-compiler compiler => (lambda (obj system target) (match obj (($ base _) diff --git a/guix/packages.scm b/guix/packages.scm index afbafc70a7..2264c5acef 100644 --- a/guix/packages.scm +++ b/guix/packages.scm @@ -1179,7 +1179,7 @@ cross-compilation target triplet." (define package->cross-derivation (store-lift package-cross-derivation)) -(define-gexp-compiler (package-compiler (package package?) system target) +(define-gexp-compiler (package-compiler (package ) system target) ;; Compile PACKAGE to a derivation for SYSTEM, optionally cross-compiled for ;; TARGET. This is used when referring to a package from within a gexp. (if target @@ -1210,7 +1210,7 @@ cross-compilation target triplet." #:modules modules #:guile-for-build guile))))) -(define-gexp-compiler (origin-compiler (origin origin?) system target) +(define-gexp-compiler (origin-compiler (origin ) system target) ;; Compile ORIGIN to a derivation for SYSTEM. This is used when referring ;; to an origin from within a gexp. (origin->derivation origin system)) -- cgit v1.2.3 From 9e41130b14ad32c4e1fa756f95d806703056cb60 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 10 Sep 2016 12:03:47 +0200 Subject: system: Use 'file-append' to denote file names. * gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/databases.scm, gnu/services/dbus.scm, gnu/services/desktop.scm, gnu/services/dict.scm, gnu/services/mail.scm, gnu/services/networking.scm, gnu/services/sddm.scm, gnu/services/spice.scm, gnu/services/ssh.scm, gnu/services/web.scm, gnu/services/xorg.scm, gnu/system.scm: Replace the #~(string-append #$pkg "/bin/foo") idiom with (file-append pkg "/bin/foo"). --- gnu/services/avahi.scm | 2 +- gnu/services/base.scm | 10 +++++----- gnu/services/databases.scm | 4 ++-- gnu/services/dbus.scm | 4 ++-- gnu/services/desktop.scm | 11 +++++------ gnu/services/dict.scm | 2 +- gnu/services/mail.scm | 4 ++-- gnu/services/networking.scm | 8 ++++---- gnu/services/sddm.scm | 18 +++++++++--------- gnu/services/spice.scm | 2 +- gnu/services/ssh.scm | 2 +- gnu/services/web.scm | 4 ++-- gnu/services/xorg.scm | 11 +++++------ gnu/system.scm | 24 ++++++++++++------------ 14 files changed, 52 insertions(+), 54 deletions(-) diff --git a/gnu/services/avahi.scm b/gnu/services/avahi.scm index 807cc05a22..60e9e61f94 100644 --- a/gnu/services/avahi.scm +++ b/gnu/services/avahi.scm @@ -88,7 +88,7 @@ (system? #t) (comment "Avahi daemon user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define %avahi-activation ;; Activation gexp. diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 42094b5fb9..07c08d7567 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -516,7 +516,7 @@ stopped before 'kill' is called." (define device (rngd-configuration-device config)) (define rngd-command - (list #~(string-append #$rng-tools "/sbin/rngd") + (list (file-append rng-tools "/sbin/rngd") "-f" "-r" device)) (shepherd-service @@ -893,7 +893,7 @@ Service Switch}, for an example." syslog-configuration make-syslog-configuration syslog-configuration? (syslogd syslog-configuration-syslogd - (default #~(string-append #$inetutils "/libexec/syslogd"))) + (default (file-append inetutils "/libexec/syslogd"))) (config-file syslog-configuration-config-file (default %default-syslog.conf))) @@ -1009,7 +1009,7 @@ starting at FIRST-UID, and under GID." (comment (format #f "Guix Build User ~2d" n)) (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin")))) + (shell (file-append shadow "/sbin/nologin")))) 1+ 1)) @@ -1036,7 +1036,7 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (define %default-authorized-guix-keys ;; List of authorized substitute keys. - (list #~(string-append #$guix "/share/guix/hydra.gnu.org.pub"))) + (list (file-append guix "/share/guix/hydra.gnu.org.pub"))) (define-record-type* guix-configuration make-guix-configuration @@ -1167,7 +1167,7 @@ failed to register hydra.gnu.org public key: ~a~%" status)))))))) (system? #t) (comment "guix publish user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define guix-publish-service-type (service-type (name 'guix-publish) diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm index 86847f8c50..1eed85542b 100644 --- a/gnu/services/databases.scm +++ b/gnu/services/databases.scm @@ -76,7 +76,7 @@ host all all ::1/128 trust")) (system? #t) (comment "PostgreSQL server user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define postgresql-activation (match-lambda @@ -171,7 +171,7 @@ and stores the database cluster in @var{data-directory}." (group "mysql") (system? #t) (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define mysql-configuration-file (match-lambda diff --git a/gnu/services/dbus.scm b/gnu/services/dbus.scm index 690561cccd..876f56d45f 100644 --- a/gnu/services/dbus.scm +++ b/gnu/services/dbus.scm @@ -128,13 +128,13 @@ includes the @code{etc/dbus-1/system.d} directories of each package listed in (system? #t) (comment "D-Bus system bus user") (home-directory "/var/run/dbus") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define dbus-setuid-programs ;; Return the file name of the setuid program that we need. (match-lambda (($ dbus services) - (list #~(string-append #$dbus "/libexec/dbus-daemon-launch-helper"))))) + (list (file-append dbus "/libexec/dbus-daemon-launch-helper"))))) (define (dbus-activation config) "Return an activation gexp for D-Bus using @var{config}." diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 8dacf54668..dfd1ea6e92 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -460,9 +460,8 @@ Users need to be in the @code{lp} group to access the D-Bus service. (define polkit-setuid-programs (match-lambda (($ polkit) - (list #~(string-append #$polkit - "/lib/polkit-1/polkit-agent-helper-1") - #~(string-append #$polkit "/bin/pkexec"))))) + (list (file-append polkit "/lib/polkit-1/polkit-agent-helper-1") + (file-append polkit "/bin/pkexec"))))) (define polkit-service-type (service-type (name 'polkit) @@ -522,7 +521,7 @@ the capability to suspend the system if the user is logged in locally." (system? #t) (comment "colord daemon user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define colord-service-type (service-type (name 'colord) @@ -738,8 +737,8 @@ seats.)" (define pam-elogind (pam-entry (control "required") - (module #~(string-append #$(elogind-package config) - "/lib/security/pam_elogind.so")))) + (module (file-append (elogind-package config) + "/lib/security/pam_elogind.so")))) (list (lambda (pam) (pam-service diff --git a/gnu/services/dict.scm b/gnu/services/dict.scm index b06922c911..da5d004701 100644 --- a/gnu/services/dict.scm +++ b/gnu/services/dict.scm @@ -73,7 +73,7 @@ (group "dicod") (system? #t) (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define (dicod-configuration-file config) (define database->text diff --git a/gnu/services/mail.scm b/gnu/services/mail.scm index c252d669de..46dbab6645 100644 --- a/gnu/services/mail.scm +++ b/gnu/services/mail.scm @@ -1505,7 +1505,7 @@ greyed out, instead of only later giving \"not selectable\" popup error. (system? #t) (comment "Dovecot daemon user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))) + (shell (file-append shadow "/sbin/nologin"))) (user-group (name "dovenull") (system? #t)) (user-account @@ -1514,7 +1514,7 @@ greyed out, instead of only later giving \"not selectable\" popup error. (system? #t) (comment "Dovecot daemon login user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define %dovecot-activation ;; Activation gexp. diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index dee1b74d81..7495179f8e 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -194,7 +194,7 @@ gateway." 'dhcp-client (lambda (dhcp) (define dhclient - #~(string-append #$dhcp "/sbin/dhclient")) + (file-append dhcp "/sbin/dhclient")) (define pid-file "/var/run/dhclient.pid") @@ -306,7 +306,7 @@ restrict -6 ::1\n")) (system? #t) (comment "NTP daemon user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define (ntp-service-activation config) @@ -361,7 +361,7 @@ keep the system clock synchronized with that of @var{servers}." (system? #t) (comment "Tor daemon user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define-record-type (hidden-service name mapping) @@ -554,7 +554,7 @@ project's documentation} for more information." (system? #t) (comment "BitlBee daemon user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define %bitlbee-activation ;; Activation gexp for BitlBee. diff --git a/gnu/services/sddm.scm b/gnu/services/sddm.scm index ab6672b0e5..ef1e78e9bf 100644 --- a/gnu/services/sddm.scm +++ b/gnu/services/sddm.scm @@ -48,9 +48,9 @@ (numlock sddm-configuration-numlock (default "on")) (halt-command sddm-configuration-halt-command - (default #~(string-append #$shepherd "/sbin/halt"))) + (default (file-append shepherd "/sbin/halt"))) (reboot-command sddm-configuration-reboot-command - (default #~(string-append #$shepherd "/sbin/reboot"))) + (default (file-append shepherd "/sbin/reboot"))) ;; [Theme] ;; valid values are elarun or maldives @@ -75,24 +75,24 @@ (hide-users sddm-configuration-hide-users (default "")) (hide-shells sddm-configuration-hide-shells - (default #~(string-append #$shadow "/sbin/nologin"))) + (default (file-append shadow "/sbin/nologin"))) ;; [Wayland] (session-command sddm-configuration-session-command - (default #~(string-append #$sddm "/share/sddm/scripts/wayland-session"))) + (default (file-append sddm "/share/sddm/scripts/wayland-session"))) (sessions-directory sddm-configuration-sessions-directory (default "/run/current-system/profile/share/wayland-sessions")) ;; [X11] (xorg-server-path sddm-configuration-xorg-server-path (default (xorg-start-command))) (xauth-path sddm-configuration-xauth-path - (default #~(string-append #$xauth "/bin/xauth"))) + (default (file-append xauth "/bin/xauth"))) (xephyr-path sddm-configuration-xephyr-path - (default #~(string-append #$xorg-server "/bin/Xephyr"))) + (default (file-append xorg-server "/bin/Xephyr"))) (xdisplay-start sddm-configuration-xdisplay-start - (default #~(string-append #$sddm "/share/sddm/scripts/Xsetup"))) + (default (file-append sddm "/share/sddm/scripts/Xsetup"))) (xdisplay-stop sddm-configuration-xdisplay-stop - (default #~(string-append #$sddm "/share/sddm/scripts/Xstop"))) + (default (file-append sddm "/share/sddm/scripts/Xstop"))) (xsession-command sddm-configuration-xsession-command (default (xinitrc))) (xsessions-directory sddm-configuration-xsessions-directory @@ -292,7 +292,7 @@ Relogin=" (if (sddm-configuration-relogin? config) (system? #t) (comment "SDDM user") (home-directory "/var/lib/sddm") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) ;; Add default themes to profile (define sddm-profile-service diff --git a/gnu/services/spice.scm b/gnu/services/spice.scm index 26f072e7a8..bd0a538346 100644 --- a/gnu/services/spice.scm +++ b/gnu/services/spice.scm @@ -43,7 +43,7 @@ (define spice-vdagentd-command (list - #~(string-append #$spice-vdagent "/sbin/spice-vdagentd") + (file-append spice-vdagent "/sbin/spice-vdagentd") "-x")) (list diff --git a/gnu/services/ssh.scm b/gnu/services/ssh.scm index 9a7ea0fb46..462988cc80 100644 --- a/gnu/services/ssh.scm +++ b/gnu/services/ssh.scm @@ -122,7 +122,7 @@ (define lsh-command (append - (cons #~(string-append #$lsh "/sbin/lshd") + (cons (file-append lsh "/sbin/lshd") (if daemonic? (let ((syslog (if (lsh-configuration-syslog-output? config) '() diff --git a/gnu/services/web.scm b/gnu/services/web.scm index d86aab50b5..40e4d5f46f 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -67,7 +67,7 @@ (system? #t) (comment "nginx server user") (home-directory "/var/empty") - (shell #~(string-append #$shadow "/sbin/nologin"))))) + (shell (file-append shadow "/sbin/nologin"))))) (define nginx-activation (match-lambda @@ -86,7 +86,7 @@ (define nginx-shepherd-service (match-lambda (($ nginx log-directory run-directory config-file) - (let* ((nginx-binary #~(string-append #$nginx "/sbin/nginx")) + (let* ((nginx-binary (file-append nginx "/sbin/nginx")) (nginx-action (lambda args #~(lambda _ diff --git a/gnu/services/xorg.scm b/gnu/services/xorg.scm index 87c4487037..d098d831e1 100644 --- a/gnu/services/xorg.scm +++ b/gnu/services/xorg.scm @@ -267,7 +267,7 @@ which should be passed to this script as the first argument. If not, the (define %default-slim-theme ;; Theme based on work by Felipe López. - #~(string-append #$%artwork-repository "/slim")) + (file-append %artwork-repository "/slim")) (define %default-slim-theme-name ;; This must be the name of the sub-directory in %DEFAULT-SLIM-THEME that @@ -374,8 +374,8 @@ reboot_cmd " shepherd "/sbin/reboot\n" (theme %default-slim-theme) (theme-name %default-slim-theme-name) (xauth xauth) (shepherd shepherd) (bash bash) - (auto-login-session #~(string-append #$windowmaker - "/bin/wmaker")) + (auto-login-session (file-append windowmaker + "/bin/wmaker")) (startx (xorg-start-command))) "Return a service that spawns the SLiM graphical login manager, which in turn starts the X display server with @var{startx}, a command as returned by @@ -450,14 +450,13 @@ command is @var{program}, to the set of setuid programs and add a PAM entry for it. For example: @lisp -(screen-locker-service xlockmore \"xlock\") + (screen-locker-service xlockmore \"xlock\") @end lisp makes the good ol' XlockMore usable." (service screen-locker-service-type (screen-locker program - #~(string-append #$package - #$(string-append "/bin/" program)) + (file-append package "/bin/" program) allow-empty-passwords?))) ;;; xorg.scm ends here diff --git a/gnu/system.scm b/gnu/system.scm index 4c1de384fa..7edb018f00 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -472,9 +472,9 @@ then source /run/current-system/profile/etc/profile.d/bash_completion.sh fi\n"))) (etc-service - `(("services" ,#~(string-append #$net-base "/etc/services")) - ("protocols" ,#~(string-append #$net-base "/etc/protocols")) - ("rpc" ,#~(string-append #$net-base "/etc/rpc")) + `(("services" ,(file-append net-base "/etc/services")) + ("protocols" ,(file-append net-base "/etc/protocols")) + ("rpc" ,(file-append net-base "/etc/rpc")) ("login.defs" ,#~#$login.defs) ("issue" ,#~#$issue) ("nsswitch.conf" ,#~#$nsswitch) @@ -482,8 +482,8 @@ fi\n"))) ("bashrc" ,#~#$bashrc) ("hosts" ,#~#$(or (operating-system-hosts-file os) (default-/etc/hosts (operating-system-host-name os)))) - ("localtime" ,#~(string-append #$tzdata "/share/zoneinfo/" - #$(operating-system-timezone os))) + ("localtime" ,(file-append tzdata "/share/zoneinfo/" + (operating-system-timezone os))) ("sudoers" ,(operating-system-sudoers-file os)))))) (define %root-account @@ -547,7 +547,7 @@ use 'plain-file' instead~%") @var{session-environment-service-type}, to be used in @file{/etc/environment}." `(("LANG" . ,(operating-system-locale os)) ("TZ" . ,(operating-system-timezone os)) - ("TZDIR" . ,#~(string-append #$tzdata "/share/zoneinfo")) + ("TZDIR" . ,(file-append tzdata "/share/zoneinfo")) ;; Tell 'modprobe' & co. where to look for modules. ("LINUX_MODULE_DIRECTORY" . "/run/booted-system/kernel/lib/modules") ;; These variables are honored by OpenSSL (libssl) and Git. @@ -571,12 +571,12 @@ use 'plain-file' instead~%") (define %setuid-programs ;; Default set of setuid-root programs. (let ((shadow (@ (gnu packages admin) shadow))) - (list #~(string-append #$shadow "/bin/passwd") - #~(string-append #$shadow "/bin/su") - #~(string-append #$inetutils "/bin/ping") - #~(string-append #$inetutils "/bin/ping6") - #~(string-append #$sudo "/bin/sudo") - #~(string-append #$fuse "/bin/fusermount")))) + (list (file-append shadow "/bin/passwd") + (file-append shadow "/bin/su") + (file-append inetutils "/bin/ping") + (file-append inetutils "/bin/ping6") + (file-append sudo "/bin/sudo") + (file-append fuse "/bin/fusermount")))) (define %sudoers-specification ;; Default /etc/sudoers contents: 'root' and all members of the 'wheel' -- cgit v1.2.3 From 766c1488cc697200d2c930e43fba07c7255881c6 Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 8 Sep 2016 21:03:47 +0000 Subject: gnu: glew: Update to 2.0.0. * gnu/packages/gl.scm (glew): Update to 2.0.0. Signed-off-by: Leo Famulari --- gnu/packages/gl.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 1473b44605..1aa12017c6 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -357,14 +357,14 @@ glxgears, glxheads, and glxinfo.") (define-public glew (package (name "glew") - (version "1.11.0") + (version "2.0.0") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/glew/glew/" version "/glew-" version ".tgz")) (sha256 (base32 - "1mhkllxz49l1x680dmzrv2i82qjrq017sykah3xc90f2d8qcxfv9")) + "0r37fg2s1f0jrvwh6c8cz5x6v4wqmhq42qm15cs9qs349q5c6wn5")) (modules '((guix build utils))) (snippet '(substitute* "config/Makefile.linux" -- cgit v1.2.3 From eb64bde158e7ddb2d3c4be9cf0633391a0415e99 Mon Sep 17 00:00:00 2001 From: Erik Edrosa Date: Thu, 8 Sep 2016 21:02:30 -0400 Subject: gnu: Add filteraudio. * gnu/packages/audio.scm (filteraudio): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/audio.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 3070fc8f30..d818216047 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -2484,3 +2484,35 @@ with support for HD extensions.") flavors EBU R128, ATSC A/85, and ReplayGain 2.0. It helps normalizing the loudness of audio and video files to the same level.") (license license:gpl2+))) + +(define-public filteraudio + (let ((revision "1") + (commit "2fc669581e2a0ff87fba8de85861b49133306094")) + (package + (name "filteraudio") + (version (string-append "0.0.0-" revision "." + (string-take commit 7))) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/irungentoo/filter_audio.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "0hbb290n3wb23f2k692a6bhc23nnqmxqi9sc9j15pnya8wifw64g")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (list (string-append "PREFIX=" %output) + "CC=gcc") + #:tests? #f ; No tests + #:phases + (modify-phases %standard-phases + ;; No configure script + (delete 'configure)))) + (synopsis "Lightweight audio filtering library") + (description "An easy to use audio filtering library made from webrtc +code, used in @code{libtoxcore}.") + (home-page "https://github.com/irungentoo/filter_audio") + (license license:bsd-3)))) -- cgit v1.2.3 From 3b38d78e9ff556aad62df892c7cdfb3be2003878 Mon Sep 17 00:00:00 2001 From: Erik Edrosa Date: Thu, 8 Sep 2016 21:02:31 -0400 Subject: gnu: Add utox. * gnu/packages/messaging.scm (utox): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/messaging.scm | 51 +++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 48 insertions(+), 3 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 4f7dcc7bf0..cf41d56370 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -24,8 +24,8 @@ (define-module (gnu packages messaging) #:use-module ((guix licenses) - #:select (gpl3+ gpl2+ gpl2 lgpl2.1 lgpl2.0+ bsd-2 non-copyleft - asl2.0 x11)) + #:select (gpl3+ gpl3 gpl2+ gpl2 lgpl2.1 lgpl2.0+ bsd-2 + non-copyleft asl2.0 x11)) #:use-module (guix utils) #:use-module (guix packages) #:use-module (guix download) @@ -65,7 +65,9 @@ #:use-module (gnu packages tls) #:use-module (gnu packages icu4c) #:use-module (gnu packages video) - #:use-module (gnu packages xiph)) + #:use-module (gnu packages xiph) + #:use-module (gnu packages audio) + #:use-module (gnu packages fontutils)) (define-public libotr (package @@ -614,4 +616,47 @@ protocols.") (license gpl3+) (home-page "https://tox.chat")))) +(define-public utox + (package + (name "utox") + (version "0.9.8") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/GrayHatter/uTox/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "13hfqbwzcgvfbvf9yjm62aqsvxnpqppb50c88sys43m7022yqcsy")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (list (string-append "PREFIX=" %output) + "CC=gcc") + #:tests? #f ; No tests + #:phases + (modify-phases %standard-phases + ;; No configure script + (delete 'configure)))) + (inputs + `(("dbus" ,dbus) + ("filteraudio" ,filteraudio) + ("fontconfig" ,fontconfig) + ("freetype" ,freetype) + ("libsodium" ,libsodium) + ("libtoxcore" ,libtoxcore) + ("libvpx" ,libvpx) + ("libx11" ,libx11) + ("libxext" ,libxext) + ("libxrender" ,libxrender) + ("openal" ,openal) + ("v4l-utils" ,v4l-utils))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Lightweight Tox client") + (description "A lightweight Tox client. Tox is a distributed and secure +instant messenger with audio and video chat capabilities.") + (home-page "http://utox.org/") + (license gpl3))) + ;;; messaging.scm ends here -- cgit v1.2.3 From 50feff817bd891c07549c9926a176c1fe8f85fcc Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 10 Sep 2016 22:27:09 +0300 Subject: gnu: tig: Update to 2.2. * gnu/packages/version-control.scm (tig): Update to 2.2. --- gnu/packages/version-control.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index d77cca0e10..9d9f849485 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -1049,7 +1049,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).") (define-public tig (package (name "tig") - (version "2.1.1") + (version "2.2") (source (origin (method url-fetch) (uri (string-append @@ -1057,7 +1057,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).") version ".tar.gz")) (sha256 (base32 - "0bw5wivswwh7vx897q8xc2cqgkqhdzk8gh6fnav2kf34sngigiah")))) + "0k3m894vfkgkj7xbr0j6ph91351dl6id5f0hk2ksjp5lmg9i6llg")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses))) -- cgit v1.2.3 From d0e11e8b52a27fee4c04e0e063edf54b4724b330 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 10 Sep 2016 22:29:59 +0300 Subject: gnu: tig: Add search completion and history support. * gnu/packages/version-control.scm (tig)[inputs]: Add readline. --- gnu/packages/version-control.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 9d9f849485..c342b938c2 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -59,6 +59,7 @@ #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages readline) #:use-module (gnu packages databases) #:use-module (gnu packages admin) #:use-module (gnu packages xml) @@ -1060,7 +1061,8 @@ from Subversion to any supported Distributed Version Control System (DVCS).") "0k3m894vfkgkj7xbr0j6ph91351dl6id5f0hk2ksjp5lmg9i6llg")))) (build-system gnu-build-system) (inputs - `(("ncurses" ,ncurses))) + `(("ncurses" ,ncurses) + ("readline" ,readline))) (arguments `(#:tests? #f)) ; tests require access to /dev/tty ;;`(#:test-target "test")) -- cgit v1.2.3 From 2203e4c2798b91915ec6fc34b1222f8eee9a89c7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 10 Sep 2016 22:36:51 +0300 Subject: gnu: tig: Install man pages. * gnu/packages/version-control.scm (tig)[native-inputs]: Add asciidoc, xmlto. --- gnu/packages/version-control.scm | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index c342b938c2..29559bd9b3 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -1060,11 +1060,19 @@ from Subversion to any supported Distributed Version Control System (DVCS).") (base32 "0k3m894vfkgkj7xbr0j6ph91351dl6id5f0hk2ksjp5lmg9i6llg")))) (build-system gnu-build-system) + (native-inputs + `(("asciidoc" ,asciidoc) + ("xmlto" ,xmlto))) (inputs `(("ncurses" ,ncurses) ("readline" ,readline))) (arguments - `(#:tests? #f)) ; tests require access to /dev/tty + `(#:phases + (modify-phases %standard-phases + (add-after 'install 'install-doc + (lambda _ + (zero? (system* "make" "install-doc"))))) + #:tests? #f)) ; tests require access to /dev/tty ;;`(#:test-target "test")) (home-page "http://jonas.nitro.dk/tig/") (synopsis "Ncurses-based text user interface for Git") -- cgit v1.2.3 From 0e790a7ce0410dc7f991bca4e566fb73004ddd39 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 10 Sep 2016 22:48:50 +0300 Subject: gnu: Add edi. * gnu/packages/enlightenment.scm (edi): New variable. --- gnu/packages/enlightenment.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 7cd11b59a2..9de21ad50f 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -26,6 +26,8 @@ #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages bash) + #:use-module (gnu packages check) + #:use-module (gnu packages code) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages fontutils) @@ -40,6 +42,7 @@ #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages linux) + #:use-module (gnu packages llvm) #:use-module (gnu packages lua) #:use-module (gnu packages pdf) #:use-module (gnu packages photo) @@ -275,3 +278,33 @@ Libraries stack (eo, evas, ecore, edje, emotion, ethumb and elementary).") (define-public python2-efl (package-with-python2 python-efl)) + +(define-public edi + (package + (name "edi") + (version "0.4.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/ajwillia-ms/edi/releases/" + "download/v" version "/edi-" version ".tar.bz2")) + (sha256 + (base32 + "0qczz5psryxasphg5km95845h510237rf0k1dy8f0dad52ii90j1")))) + (build-system gnu-build-system) + (arguments '(#:configure-flags '("--with-tests=coverage"))) + (native-inputs + `(("check" ,check) + ("lcov" ,lcov) + ("pkg-config" ,pkg-config))) + (inputs + `(("clang" ,clang) + ("efl" ,efl))) + (home-page "https://www.enlightenment.org/about-edi") + (synopsis "Development environment for Enlightenment") + (description "EDI is a development environment designed for and built using +the EFL. It's aim is to create a new, native development environment for Linux +that tries to lower the barrier to getting involved in Enlightenment development +and in creating applications based on the Enlightenment Foundation Library suite.") + (license (list license:public-domain ; data/extra/skeleton + license:gpl2)))) ; edi -- cgit v1.2.3 From 84be3b9920120e7cc03095baca06d61b7f3fb741 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 30 Aug 2016 18:49:21 +0100 Subject: gnu: Add mash. * gnu/packages/bioinformatics.scm (mash): New variable. Signed-off-by: Leo Famulari --- gnu/packages/bioinformatics.scm | 57 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 57 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 74360832b0..2c28ac0a24 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -76,6 +76,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (gnu packages ruby) + #:use-module (gnu packages serialization) #:use-module (gnu packages statistics) #:use-module (gnu packages tbb) #:use-module (gnu packages tex) @@ -3046,6 +3047,62 @@ sequences).") "http://mafft.cbrc.jp/alignment/software/license.txt" "BSD-3 with different formatting")))) +(define-public mash + (package + (name "mash") + (version "1.1.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/marbl/mash/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "08znbvqq5xknfhmpp3wcj574zvi4p7i8zifi67c9qw9a6ikp42fj")) + (modules '((guix build utils))) + (snippet + ;; Delete bundled kseq. + ;; TODO: Also delete bundled murmurhash and open bloom filter. + '(delete-file "src/mash/kseq.h")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; No tests. + #:configure-flags + (list + (string-append "--with-capnp=" (assoc-ref %build-inputs "capnproto")) + (string-append "--with-gsl=" (assoc-ref %build-inputs "gsl"))) + #:make-flags (list "CC=gcc") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-includes + (lambda _ + (substitute* '("src/mash/Sketch.cpp" "src/mash/CommandFind.cpp") + (("^#include \"kseq\\.h\"") + "#include \"htslib/kseq.h\"")) + #t)) + (add-before 'configure 'autoconf + (lambda _ (zero? (system* "autoconf"))))))) + (native-inputs + `(("autoconf" ,autoconf) + ;; Capnproto and htslib are statically embedded in the final + ;; application. Therefore we also list their licenses, below. + ("capnproto" ,capnproto) + ("htslib" ,htslib))) + (inputs + `(("gsl" ,gsl) + ("zlib" ,zlib))) + (supported-systems '("x86_64-linux")) + (home-page "https://mash.readthedocs.io") + (synopsis "Fast genome and metagenome distance estimation using MinHash") + (description "Mash is a fast sequence distance estimator that uses the +MinHash algorithm and is designed to work with genomes and metagenomes in the +form of assemblies or reads.") + (license (list license:bsd-3 ; Mash + license:expat ; HTSlib and capnproto + license:public-domain ; MurmurHash 3 + license:cpl1.0)))) ; Open Bloom Filter + (define-public metabat (package (name "metabat") -- cgit v1.2.3 From debf4179b4312ad3ea02f994154a2d989bc16089 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 10 Sep 2016 18:34:46 -0400 Subject: gnu: python-pillow: Update to 3.3.1. * gnu/packages/python.scm (python-pillow, python2-pillow): Update to 3.3.1. --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 33674fa9d9..0987b8fe47 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3755,14 +3755,14 @@ services for your Python modules and applications.") (define-public python-pillow (package (name "python-pillow") - (version "3.1.1") + (version "3.3.1") (source (origin (method url-fetch) (uri (pypi-uri "Pillow" version)) (sha256 (base32 - "1zwzakr5v0skdh0azp5cd6fwzbll5305dsk33k5jk570vv6lqvs8")))) + "1w9x3dfrg8b5lqhpjl0fczfyf9842wbqwgxbjjq4vfpxv5jwm49l")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools) -- cgit v1.2.3 From b30565bd8ab311e41b6169090f8cbbb61d408d36 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 10 Sep 2016 11:19:37 +0100 Subject: gnu: Add python-cachecontrol. * gnu/packages/python.scm (python-cachecontrol, python2-cachecontrol): New variables. --- gnu/packages/python.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 0987b8fe47..8c361456b6 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10278,3 +10278,52 @@ Python to manipulate OpenDocument 1.2 files.") (define-public python2-odfpy (package-with-python2 python-odfpy)) + +(define-public python-cachecontrol + (package + (name "python-cachecontrol") + (version "0.11.6") + (source + (origin + (method url-fetch) + ;; Pypi does not have tests. + (uri (string-append + "https://github.com/ionrock/cachecontrol/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0yj60d0f69a2l8p7y86k4zhzzm6rnxpq74sfl240pry9l0lfw2vw")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda _ + ;; Drop test that requires internet access. + (delete-file "tests/test_regressions.py") + (setenv "PYTHONPATH" + (string-append (getcwd) "/build/lib:" + (getenv "PYTHONPATH"))) + (zero? (system* "py.test" "-vv"))))))) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-redis" ,python-redis) + ("python-webtest" ,python-webtest) + ("python-mock" ,python-mock))) + (propagated-inputs + `(("python-requests" ,python-requests) + ("python-lockfile" ,python-lockfile))) + (home-page "https://github.com/ionrock/cachecontrol") + (synopsis "The httplib2 caching algorithms for use with requests") + (description "CacheControl is a port of the caching algorithms in +@code{httplib2} for use with @code{requests} session objects.") + (license license:asl2.0) + (properties `((python2-variant . ,(delay python2-cachecontrol))) + +(define-public python2-cachecontrol + (let ((base (package-with-python2 (strip-python2-variant python-cachecontrol)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From dd4476214c585f3ecf8157212d6eca1f637ef831 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Sun, 11 Sep 2016 11:30:54 +1000 Subject: gnu: python-cachecontrol: Correct parentheses. This commit is a follow-up to 'b30565b'. * gnu/packages/python.scm (python-cachecontrol): Correct parentheses. --- gnu/packages/python.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8c361456b6..8b9273cd41 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10319,7 +10319,7 @@ Python to manipulate OpenDocument 1.2 files.") (description "CacheControl is a port of the caching algorithms in @code{httplib2} for use with @code{requests} session objects.") (license license:asl2.0) - (properties `((python2-variant . ,(delay python2-cachecontrol))) + (properties `((python2-variant . ,(delay python2-cachecontrol)))))) (define-public python2-cachecontrol (let ((base (package-with-python2 (strip-python2-variant python-cachecontrol)))) -- cgit v1.2.3 From cab1760de21938172494a05f93f3848840717852 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Thu, 8 Sep 2016 23:25:23 +0800 Subject: gnu: icedtea-8: Hardcode dynamically loaded libraries. Fixes . * gnu/packages/java.scm (icedtea-8)[arguments]: Add 'patch-jni-libs' phase. --- gnu/packages/java.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 7387235c5b..36c10d0fd0 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -994,6 +994,33 @@ build process and its dependencies, whereas Make uses Makefile format.") (delete 'patch-paths) (delete 'set-additional-paths) (delete 'patch-patches) + (add-after 'unpack 'patch-jni-libs + ;; Hardcode dynamically loaded libraries. + (lambda _ + (let* ((library-path (search-path-as-string->list + (getenv "LIBRARY_PATH"))) + (find-library (lambda (name) + (search-path + library-path + (string-append "lib" name ".so"))))) + (for-each + (lambda (file) + (catch 'encoding-error + (lambda () + (substitute* file + (("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", \"(.*)\"\\)" + _ name version) + (format #f "\"~a\"" (find-library name))) + (("JNI_LIB_NAME\\(\"(.*)\"\\)" _ name) + (format #f "\"~a\"" (find-library name))))) + (lambda _ + ;; Those are safe to skip. + (format (current-error-port) + "warning: failed to substitute: ~a~%" + file)))) + (find-files "openjdk.src/jdk/src/solaris/native" + "\\.c|\\.h")) + #t))) ;; FIXME: This phase is needed but fails with this version of ;; IcedTea. (delete 'install-keystore) -- cgit v1.2.3 From 4bf184caa478ff574e40d6255b0f27967c72511b Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 10 Sep 2016 21:55:57 -0400 Subject: gnu: linux-libre@4.1: Update to 4.1.32. * gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.32. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 030e35e638..a2b4e9017d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -390,13 +390,13 @@ It has been modified to remove all non-free binary blobs.") (define-public linux-libre-4.1 (package (inherit linux-libre) - (version "4.1.31") + (version "4.1.32") (source (origin (method url-fetch) (uri (linux-libre-urls version)) (sha256 (base32 - "0grffah921k136w1qwcswxv6m810s8q54nr2rk7kyqka3a1b81yw")))) + "0lkksxpxsw6b8vcgbivn2kp6xbml69yx8frrsfrk49sqigz0xds6")))) (native-inputs (let ((conf (kernel-config (or (%current-target-system) (%current-system)) -- cgit v1.2.3 From 5ed67c812fe5a83f7c5c0b243258b8f88bde7822 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 10 Sep 2016 21:57:16 -0400 Subject: gnu: linux-libre@4.4: Update to 4.4.20. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.20. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a2b4e9017d..a0c5b83703 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -373,13 +373,13 @@ It has been modified to remove all non-free binary blobs.") (define-public linux-libre-4.4 (package (inherit linux-libre) - (version "4.4.19") + (version "4.4.20") (source (origin (method url-fetch) (uri (linux-libre-urls version)) (sha256 (base32 - "0nddjs7prmb0g7g3w2k4qfyq02a9szm5nvsgflxcaarbq1slibb5")))) + "1fi0pyyzcf643vdsss0d9ld6jqyxw0k76r0a5vpd4mv3dcl37yyq")))) (native-inputs (let ((conf (kernel-config (or (%current-target-system) (%current-system)) -- cgit v1.2.3 From 7c1fedd0d77d2eceb771def8292f364c47e414eb Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sat, 10 Sep 2016 21:58:25 -0400 Subject: gnu: linux-libre: Update to 4.7.3. * gnu/packages/linux.scm (linux-libre): Update to 4.7.3. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a0c5b83703..3f27add596 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -258,7 +258,7 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (search-path %load-path file))) (define-public linux-libre - (let* ((version "4.7.2") + (let* ((version "4.7.3") (build-phase '(lambda* (#:key system inputs #:allow-other-keys #:rest args) ;; Avoid introducing timestamps @@ -336,7 +336,7 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (uri (linux-libre-urls version)) (sha256 (base32 - "1rp09y2hv0hvdybm2n2im9717kzxmklpgzs8k1bmdfzqxyg8cb85")))) + "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6")))) (build-system gnu-build-system) (supported-systems '("x86_64-linux" "i686-linux")) (native-inputs `(("perl" ,perl) -- cgit v1.2.3 From 5f4d09b52c102407cfa924dda238fbce909a10ce Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 10 Sep 2016 00:36:09 -0400 Subject: gnu: go-1.7: Update to 1.7.1. * gnu/packages/golang.scm (go-1.7): Update to 1.7.1. --- gnu/packages/golang.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index afa3a361b7..6b5038cf30 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -190,7 +190,7 @@ sequential processes (CSP) concurrent programming features added.") (package (inherit go-1.4) (name "go") - (version "1.7") + (version "1.7.1") (source (origin (method url-fetch) @@ -198,7 +198,7 @@ sequential processes (CSP) concurrent programming features added.") name version ".src.tar.gz")) (sha256 (base32 - "1h712yd5wk5mrj2dixc9z2xlgksfks00yvglrkrgr488p8b0qs3j")))) + "1ls2shd8ha2dhigz8kf4j15p1l5rvfxn9jyh4rgrkdw17c9kz11b")))) (arguments (substitute-keyword-arguments (package-arguments go-1.4) ((#:phases phases) -- cgit v1.2.3 From c543b4e1d31372d8d43bdb4ffe65979ba2a62fe4 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 10 Sep 2016 12:19:03 +0000 Subject: gnu: gnurl: Update to 7.50.2-1. * gnu/packages/gnunet.scm (gnurl): Update to 7.50.2-1. [arguments]: Remove 'delete-failing-test1139 phase. Signed-off-by: Efraim Flashner --- gnu/packages/gnunet.scm | 19 +++++++------------ 1 file changed, 7 insertions(+), 12 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index cdc9872fef..60aa671c25 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -158,7 +158,7 @@ and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.50.1") + (version "7.50.2-1") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -167,7 +167,7 @@ and support for SSL3 and TLS.") name "-" version-with-underscores ".tar.bz2"))) (sha256 (base32 - "0irb8df3lqd9w1pb627q260hn448vbkh0sn4l6p6jh0q8lqscv84")))) + "0bxm2015xvcazgh103hi5rpdnl2hbipx0gd5z6a65bj6nzky0pml")))) (build-system gnu-build-system) (inputs `(("gnutls" ,gnutls) ("libidn" ,libidn) @@ -189,21 +189,16 @@ and support for SSL3 and TLS.") "--disable-telnet" "--disable-tftp" "--disable-pop3" "--disable-imap" "--disable-smtp" "--disable-gopher" "--disable-file" "--disable-ftp" "--disable-smb") - #:test-target "test" - #:parallel-tests? #f - #:phases - ;; We have to patch runtests.pl in tests/ directory + #:test-target "test" + #:parallel-tests? #f + #:phases + ;; We have to patch runtests.pl in tests/ directory (alist-cons-before 'check 'patch-runtests (lambda _ (substitute* "tests/runtests.pl" (("/bin/sh") (which "sh")))) - ;; To be discussed with upstream. - (alist-cons-before - 'check 'delete-failing-test1139 - (lambda _ - (delete-file "tests/data/test1139")) - %standard-phases)))) + %standard-phases))) (synopsis "Microfork of cURL with support for the HTTP/HTTPS/GnuTLS subset of cURL") (description "Gnurl is a microfork of cURL, a command line tool for transferring data -- cgit v1.2.3 From b9fe72bf4d0e4911d7da5c0c126b41b58c4b37f0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 09:06:02 +0300 Subject: gnu: gnurl: Use 'modify-phases'. * gnu/packages/gnunet.scm (gnurl)[arguments]: Use 'modify-phases'. --- gnu/packages/gnunet.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 60aa671c25..0083bf1fa6 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -193,12 +193,12 @@ and support for SSL3 and TLS.") #:parallel-tests? #f #:phases ;; We have to patch runtests.pl in tests/ directory - (alist-cons-before - 'check 'patch-runtests - (lambda _ - (substitute* "tests/runtests.pl" - (("/bin/sh") (which "sh")))) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'check 'patch-runtests + (lambda _ + (substitute* "tests/runtests.pl" + (("/bin/sh") (which "sh"))) + #t))))) (synopsis "Microfork of cURL with support for the HTTP/HTTPS/GnuTLS subset of cURL") (description "Gnurl is a microfork of cURL, a command line tool for transferring data -- cgit v1.2.3 From 90d8ef6bcb2b1216458ba7a99bb33947538e4461 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 09:08:10 +0300 Subject: gnu: gnunet: Use 'modify-phases'. * gnu/packages/gnunet.scm (gnunet)[arguments]: Use 'modify-phases'. --- gnu/packages/gnunet.scm | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index 0083bf1fa6..d9387b96d6 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -247,19 +247,17 @@ supports HTTP, HTTPS and GnuTLS.") ;; test_gnunet_service_arm fails; reported upstream #:tests? #f #:phases + (modify-phases %standard-phases ;; swap check and install phases and set paths to installed binaries - (alist-cons-before - 'check 'set-path-for-check - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (setenv "GNUNET_PREFIX" (string-append out "/lib")) - (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin")))) - (alist-cons-after - 'install 'check - (assoc-ref %standard-phases 'check) - (alist-delete - 'check - %standard-phases))))) + (add-before 'check 'set-path-for-check + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (setenv "GNUNET_PREFIX" (string-append out "/lib")) + (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin"))) + #t)) + (add-after 'install 'check + (assoc-ref %standard-phases 'check)) + (delete 'check)))) (synopsis "Secure, decentralized, peer-to-peer networking framework") (description "GNUnet is a framework for secure peer-to-peer networking. The -- cgit v1.2.3 From 381000d794e970446a52b1ce2d4b79bc63e06f7b Mon Sep 17 00:00:00 2001 From: Clément Lassieur Date: Sat, 10 Sep 2016 23:13:32 +0200 Subject: gnu: python-git-review: Wrap it so 'git', 'ssh' and 'scp' are found. * gnu/packages/openstack.scm (python-git-review)[arguments]: Add 'wrap-program' phase. [inputs]: Add openssh. Signed-off-by: Efraim Flashner --- gnu/packages/openstack.scm | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) diff --git a/gnu/packages/openstack.scm b/gnu/packages/openstack.scm index 4cb38a9fc8..62f1e84a3b 100644 --- a/gnu/packages/openstack.scm +++ b/gnu/packages/openstack.scm @@ -20,6 +20,7 @@ (define-module (gnu packages openstack) #:use-module (gnu packages python) + #:use-module (gnu packages ssh) #:use-module (gnu packages tls) #:use-module (gnu packages version-control) #:use-module (guix build-system python) @@ -796,12 +797,26 @@ permanence.") (base32 "07d1jn9ryff5j5ic6qj5pbk10m1ccmpllj0wyalrcms1q9yhlzh8")))) (build-system python-build-system) - (arguments `(#:tests? #f)) ; tests require a running Gerrit server + (arguments + '(#:tests? #f ; tests require a running Gerrit server + #:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (git (assoc-ref inputs "git")) + (openssh (assoc-ref inputs "openssh"))) + (wrap-program (string-append out "/bin/git-review") + `("PATH" ":" prefix + ,(map (lambda (dir) + (string-append dir "/bin")) + (list git openssh)))))))))) (native-inputs `(("python-pbr" ,python-pbr))) (inputs `(("python-requests" ,python-requests) - ("git" ,git))) + ("git" ,git) + ("openssh" ,openssh))) (home-page "http://docs.openstack.org/infra/git-review/") (synopsis "Command-line tool for Gerrit") (description -- cgit v1.2.3 From 317d3b474ab5e0e62509dd1b5b2fbbf2e27c95fe Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 6 Sep 2016 15:58:49 +0200 Subject: services: Add login-service. * gnu/services/base.scm (%default-motd, , login-pam-service, login-serivce-type, login-service): New variables. (, mingetty-shepherd-service, mingetty-serivce-type): Remove motd. Remove allow-empty-passwords?. Remove mingetty-pam-service. (%base-services): Add login-service. Remove motd. --- doc/guix.texi | 27 +++++++++-- gnu/services/base.scm | 131 ++++++++++++++++++++++++++++---------------------- 2 files changed, 96 insertions(+), 62 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 7ed8ee8130..41b8d5db0b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -6753,8 +6753,7 @@ following in your operating system declaration: (extra-options '("--gc-keep-derivations")))) (mingetty-service-type config => (mingetty-configuration - (inherit config) - (motd (plain-file "motd" "Howdy!")))))) + (inherit config))))) (operating-system ;; @dots{} @@ -7619,6 +7618,27 @@ this: Return a service that sets the host name to @var{name}. @end deffn +@deffn {Scheme Procedure} login-service @var{config} +Return a service to run login according to @var{config}, a +@code{} object, which specifies the message of the day, +among other things. +@end deffn + +@deftp {Data Type} login-configuration +This is the data type representing the configuration of login. + +@table @asis + +@item @code{motd} +A file-like object containing the ``message of the day''. + +@item @code{allow-empty-passwords?} (default: @code{#t}) +Allow empty passwords by default so that first-time users can log in when +the 'root' account has just been created. + +@end table +@end deftp + @deffn {Scheme Procedure} mingetty-service @var{config} Return a service to run mingetty according to @var{config}, a @code{} object, which specifies the tty to run, among @@ -7634,9 +7654,6 @@ implements console log-in. @item @code{tty} The name of the console this Mingetty runs on---e.g., @code{"tty1"}. -@item @code{motd} -A file-like object containing the ``message of the day''. - @item @code{auto-login} (default: @code{#f}) When true, this field must be a string denoting the user name under which the system automatically logs in. When it is @code{#f}, a diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 07c08d7567..20a9c3ae11 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -66,6 +66,11 @@ udev-service udev-rule + login-configuration + login-configuration? + login-service-type + login-service + mingetty-configuration mingetty-configuration? mingetty-service @@ -656,41 +661,55 @@ strings or string-valued gexps." ;; codepoints notably found in the UTF-8 manual. (service console-font-service-type (list tty font))) +(define %default-motd + (plain-file "motd" "This is the GNU operating system, welcome!\n\n")) + +(define-record-type* + login-configuration make-login-configuration + login-configuration? + (motd login-configuration-motd ;file-like + (default %default-motd)) + ;; Allow empty passwords by default so that first-time users can log in when + ;; the 'root' account has just been created. + (allow-empty-passwords? login-configuration-allow-empty-passwords? + (default #t))) ;Boolean + +(define (login-pam-service config) + "Return the list of PAM service needed for CONF." + ;; Let 'login' be known to PAM. + (list (unix-pam-service "login" + #:allow-empty-passwords? + (login-configuration-allow-empty-passwords? config) + #:motd + (login-configuration-motd config)))) + +(define login-service-type + (service-type (name 'login) + (extensions (list (service-extension pam-root-service-type + login-pam-service))))) + +(define* (login-service #:optional (config (login-configuration))) + "Return a service configure login according to @var{config}, which specifies +the message of the day, among other things." + (service login-service-type config)) + (define-record-type* mingetty-configuration make-mingetty-configuration mingetty-configuration? (mingetty mingetty-configuration-mingetty ; (default mingetty)) (tty mingetty-configuration-tty) ;string - (motd mingetty-configuration-motd ;file-like - (default (plain-file "motd" "Welcome.\n"))) (auto-login mingetty-auto-login ;string | #f (default #f)) (login-program mingetty-login-program ;gexp (default #f)) (login-pause? mingetty-login-pause? ;Boolean - (default #f)) - - ;; Allow empty passwords by default so that first-time users can log in when - ;; the 'root' account has just been created. - (allow-empty-passwords? mingetty-configuration-allow-empty-passwords? - (default #t))) ;Boolean - -(define (mingetty-pam-service conf) - "Return the list of PAM service needed for CONF." - ;; Let 'login' be known to PAM. All the mingetty services will have that - ;; PAM service, but that's fine because they're all identical and duplicates - ;; are removed. - (list (unix-pam-service "login" - #:allow-empty-passwords? - (mingetty-configuration-allow-empty-passwords? conf) - #:motd - (mingetty-configuration-motd conf)))) + (default #f))) (define mingetty-shepherd-service (match-lambda - (($ mingetty tty motd auto-login login-program - login-pause? allow-empty-passwords?) + (($ mingetty tty auto-login login-program + login-pause?) (list (shepherd-service (documentation "Run mingetty on an tty.") @@ -718,9 +737,7 @@ strings or string-valued gexps." (define mingetty-service-type (service-type (name 'mingetty) (extensions (list (service-extension shepherd-root-service-type - mingetty-shepherd-service) - (service-extension pam-root-service-type - mingetty-pam-service))))) + mingetty-shepherd-service))))) (define* (mingetty-service config) "Return a service to run mingetty according to @var{config}, which specifies @@ -1435,38 +1452,38 @@ This service is not part of @var{%base-services}." (define %base-services ;; Convenience variable holding the basic services. - (let ((motd (plain-file "motd" " -This is the GNU operating system, welcome!\n\n"))) - (list (console-font-service "tty1") - (console-font-service "tty2") - (console-font-service "tty3") - (console-font-service "tty4") - (console-font-service "tty5") - (console-font-service "tty6") - - (mingetty-service (mingetty-configuration - (tty "tty1") (motd motd))) - (mingetty-service (mingetty-configuration - (tty "tty2") (motd motd))) - (mingetty-service (mingetty-configuration - (tty "tty3") (motd motd))) - (mingetty-service (mingetty-configuration - (tty "tty4") (motd motd))) - (mingetty-service (mingetty-configuration - (tty "tty5") (motd motd))) - (mingetty-service (mingetty-configuration - (tty "tty6") (motd motd))) - - (static-networking-service "lo" "127.0.0.1" - #:provision '(loopback)) - (syslog-service) - (urandom-seed-service) - (guix-service) - (nscd-service) - - ;; The LVM2 rules are needed as soon as LVM2 or the device-mapper is - ;; used, so enable them by default. The FUSE and ALSA rules are - ;; less critical, but handy. - (udev-service #:rules (list lvm2 fuse alsa-utils crda))))) + (list (login-service) + + (console-font-service "tty1") + (console-font-service "tty2") + (console-font-service "tty3") + (console-font-service "tty4") + (console-font-service "tty5") + (console-font-service "tty6") + + (mingetty-service (mingetty-configuration + (tty "tty1"))) + (mingetty-service (mingetty-configuration + (tty "tty2"))) + (mingetty-service (mingetty-configuration + (tty "tty3"))) + (mingetty-service (mingetty-configuration + (tty "tty4"))) + (mingetty-service (mingetty-configuration + (tty "tty5"))) + (mingetty-service (mingetty-configuration + (tty "tty6"))) + + (static-networking-service "lo" "127.0.0.1" + #:provision '(loopback)) + (syslog-service) + (urandom-seed-service) + (guix-service) + (nscd-service) + + ;; The LVM2 rules are needed as soon as LVM2 or the device-mapper is + ;; used, so enable them by default. The FUSE and ALSA rules are + ;; less critical, but handy. + (udev-service #:rules (list lvm2 fuse alsa-utils crda)))) ;;; base.scm ends here -- cgit v1.2.3 From 46ec2707a459f376dd72ea6e545662f51157c95e Mon Sep 17 00:00:00 2001 From: David Craven Date: Wed, 20 Jul 2016 13:17:07 +0200 Subject: services: Add kmscon service. * gnu/services/base.scm (, kmscon-service-type): New variables. * doc/guix.texi (@deffn kmscon-service-type, @deftp kmscon-configuration): Add documentation. --- doc/guix.texi | 31 +++++++++++++++++++++++++++++++ gnu/services/base.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 74 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 41b8d5db0b..65cf804f1e 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -7674,6 +7674,37 @@ The Mingetty package to use. @end table @end deftp +@deffn {Scheme Procedure} kmscon-service-type @var{config} +Return a service to run @uref{https://www.freedesktop.org/wiki/Software/kmscon,kmscon} +according to @var{config}, a @code{} object, which +specifies the tty to run, among other things. +@end deffn + +@deftp {Data Type} kmscon-configuration +This is the data type representing the configuration of Kmscon, which +implements console log-in. + +@table @asis + +@item @code{virtual-terminal} +The name of the console this Kmscon runs on---e.g., @code{"tty1"}. + +@item @code{login-program} (default: @code{#~(string-append #$shadow "/bin/login")}) +A gexp denoting the name of the log-in program. The default log-in program is +@command{login} from the Shadow tool suite. + +@item @code{login-arguments} (default: @code{'("-p")}) +A list of arguments to pass to @command{login}. + +@item @code{hardware-acceleration?} (default: #f) +Whether to use hardware acceleration. + +@item @code{kmscon} (default: @var{kmscon}) +The Kmscon package to use. + +@end table +@end deftp + @cindex name service cache daemon @cindex nscd @deffn {Scheme Procedure} nscd-service [@var{config}] [#:glibc glibc] @ diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 20a9c3ae11..4c1c481453 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -39,6 +39,7 @@ #:use-module (gnu packages package-management) #:use-module (gnu packages ssh) #:use-module (gnu packages lsof) + #:use-module (gnu packages terminals) #:use-module ((gnu build file-systems) #:select (mount-flags->bit-mask)) #:use-module (guix gexp) @@ -116,6 +117,11 @@ rngd-configuration? rngd-service-type rngd-service + + kmscon-configuration + kmscon-configuration? + kmscon-service-type + pam-limits-service-type pam-limits-service @@ -1449,6 +1455,43 @@ This service is not part of @var{%base-services}." (service gpm-service-type (gpm-configuration (gpm gpm) (options options)))) +(define-record-type* + kmscon-configuration make-kmscon-configuration + kmscon-configuration? + (kmscon kmscon-configuration-kmscon + (default kmscon)) + (virtual-terminal kmscon-configuration-virtual-terminal) + (login-program kmscon-configuration-login-program + (default #~(string-append #$shadow "/bin/login"))) + (login-arguments kmscon-configuration-login-arguments + (default '("-p"))) + (hardware-acceleration? kmscon-configuration-hardware-acceleration? + (default #f))) ; #t causes failure + +(define kmscon-service-type + (shepherd-service-type + 'kmscon + (lambda (config) + (let ((kmscon (kmscon-configuration-kmscon config)) + (virtual-terminal (kmscon-configuration-virtual-terminal config)) + (login-program (kmscon-configuration-login-program config)) + (login-arguments (kmscon-configuration-login-arguments config)) + (hardware-acceleration? (kmscon-configuration-hardware-acceleration? config))) + + (define kmscon-command + #~(list + (string-append #$kmscon "/bin/kmscon") "--login" + "--vt" #$virtual-terminal + #$@(if hardware-acceleration? '("--hwaccel") '()) + "--" #$login-program #$@login-arguments)) + + (shepherd-service + (documentation "kmscon virtual terminal") + (requirement '(user-processes udev dbus-system)) + (provision (list (symbol-append 'term- (string->symbol virtual-terminal)))) + (start #~(make-forkexec-constructor #$kmscon-command)) + (stop #~(make-kill-destructor))))))) + (define %base-services ;; Convenience variable holding the basic services. -- cgit v1.2.3 From 6c86cef5d36d613be0a62f8f18e276232abf51f0 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Sun, 11 Sep 2016 11:00:37 +0100 Subject: gnu: Add sonata * gnu/packages/mpd.scm (sonata): New variable. Signed-off-by: Leo Famulari --- gnu/packages/mpd.scm | 53 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 279ec68440..8b1b071ee4 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -27,10 +27,14 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) + #:use-module ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (gnu packages avahi) #:use-module (gnu packages boost) + #:use-module (gnu packages gettext) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gtk) #:use-module (gnu packages icu4c) #:use-module (gnu packages readline) #:use-module (gnu packages compression) @@ -263,3 +267,52 @@ interface for the Music Player Daemon.") (package (inherit mpd2) (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs mpd2)))))) + +(define-public sonata + (package + (name "sonata") + (version "1.7b1") + (source (origin + (method url-fetch) + (uri + (string-append "https://github.com/multani/sonata/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "07gq2nxqwxs0qyxjbay7k5j25zd386bn7wdr2dl1gk53diwnn7s0")))) + (build-system python-build-system) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build python-build-system) + ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) + (guix build utils)) + #:imported-modules (,@%gnu-build-system-modules + (guix build python-build-system) + (guix build glib-or-gtk-build-system)) + #:phases + (modify-phases %standard-phases + (add-after 'install 'glib-or-gtk-wrap + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) + (add-after 'install 'wrap-sonata + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) + (wrap-program (string-append out "/bin/sonata") + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))) + #t))))) + (native-inputs + `(("gettext" ,gnu-gettext))) + (inputs + `(("python-mpd2" ,python-mpd2) + ("gtk+" ,gtk+) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gobject-introspection" ,gobject-introspection) + ("adwaita-icon-theme" ,adwaita-icon-theme) + ("python-pygobject" ,python-pygobject))) + (synopsis "Elegant client for the Music Player Daemon") + (description "Sonata is an elegant graphical client for the Music Player +Daemon (MPD). It supports playlists, multiple profiles (connecting to different +MPD servers, search and multimedia key support.") + (home-page "http://www.nongnu.org/sonata/") + (license license:gpl3+))) -- cgit v1.2.3 From 9f20f7f8416c79e20a9670662630711cf00760bb Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 11 Sep 2016 11:31:07 -0400 Subject: gnu: libupnp: Update to 1.6.20. * gnu/packages/libupnp.scm (libupnp): Update to 1.6.20. --- gnu/packages/libupnp.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libupnp.scm b/gnu/packages/libupnp.scm index 520bf1c297..2f9a5741d7 100644 --- a/gnu/packages/libupnp.scm +++ b/gnu/packages/libupnp.scm @@ -25,7 +25,7 @@ (define-public libupnp (package (name "libupnp") - (version "1.6.19") + (version "1.6.20") (source (origin (method url-fetch) @@ -33,7 +33,7 @@ version "/" name "-" version ".tar.bz2")) (sha256 (base32 - "0amjv4lypvclmi4vim2qdyw5xa6v4x50zjgf682vahqjc0wjn55k")))) + "0qrsdsb1qm85hc4jy04qph895613d148f0x1mmk6z99y3q43fdgf")))) (build-system gnu-build-system) (arguments ;; The tests require a network device capable of multicasting which is -- cgit v1.2.3 From 2932ab9ca44cc6a5fac6355e228cc691ef29a1a2 Mon Sep 17 00:00:00 2001 From: David Craven Date: Sun, 11 Sep 2016 18:54:13 +0200 Subject: install: Use login-service. * gnu/system/install.scm (installation-services): Use login-service. --- gnu/system/install.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/system/install.scm b/gnu/system/install.scm index 5acfa2c65b..b28925f432 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -268,21 +268,21 @@ You have been warned. Thanks for being so brave. "))) (define (normal-tty tty) (mingetty-service (mingetty-configuration (tty tty) - (motd motd) (auto-login "root") (login-pause? #t)))) (list (mingetty-service (mingetty-configuration (tty "tty1") - (motd motd) (auto-login "root"))) + (login-service (login-configuration + (motd motd))) + ;; Documentation. The manual is in UTF-8, but ;; 'console-font-service' sets up Unicode support and loads a font ;; with all the useful glyphs like em dash and quotation marks. (mingetty-service (mingetty-configuration (tty "tty2") - (motd motd) (auto-login "guest") (login-program (log-to-info)))) -- cgit v1.2.3 From cbe2cc02fb0fe8a6291e2a1e66257d3c477678ff Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 11 Sep 2016 12:26:14 -0400 Subject: gnu: jpegoptim: Update to 1.4.4. * gnu/packages/image.scm (jpegoptim): Update to 1.4.4. --- gnu/packages/image.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 8d3c01f785..47b17d49d0 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -130,13 +130,13 @@ image files in PBMPLUS PPM/PGM, GIF, BMP, and Targa file formats.") (define-public jpegoptim (package (name "jpegoptim") - (version "1.4.3") + (version "1.4.4") (source (origin (method url-fetch) (uri (string-append "http://www.kokkonen.net/tjko/src/jpegoptim-" version ".tar.gz")) (sha256 (base32 - "0k53q7dc8w5ashz8v261x2b5vvz7gdvg8w962rz9gjvkjbh4lg93")))) + "1cn1i0g1xjdwa12w0ifbnzgb1vqbpr8ji6h05vxksj79vyi3x849")))) (build-system gnu-build-system) (inputs `(("libjpeg" ,libjpeg))) (arguments -- cgit v1.2.3 From 35eade9cf3b1f50818d061c64deb628ee60918fc Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 11 Sep 2016 12:39:58 -0400 Subject: gnu: jbig2dec: Update to 0.13. * gnu/packages/image.scm (jbig2dec): Update to 0.13. [source]: Update URL. [home-page]: Update URL. * gnu/packages/patches/jbig2dec-ignore-testtest.patch: Adjust patch. --- gnu/packages/image.scm | 11 +++++----- .../patches/jbig2dec-ignore-testtest.patch | 24 ++++++++++++---------- 2 files changed, 18 insertions(+), 17 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 47b17d49d0..d7ffa99514 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -351,15 +351,14 @@ arithmetic ops.") (define-public jbig2dec (package (name "jbig2dec") - (version "0.11") + (version "0.13") (source (origin (method url-fetch) - (uri ;; The link on the homepage is dead. - (string-append "http://distfiles.gentoo.org/distfiles/" name "-" - version ".tar.gz")) + (uri (string-append "http://downloads.ghostscript.com/public/" name "/" + name "-" version ".tar.gz")) (sha256 - (base32 "1ffhgmf2fqzk0h4k736pp06z7q5y4x41fg844bd6a9vgncq86bby")) + (base32 "04akiwab8iy5iy34razcvh9mcja9wy737civ3sbjxk4j143s1b2s")) (patches (search-patches "jbig2dec-ignore-testtest.patch")))) (build-system gnu-build-system) @@ -374,7 +373,7 @@ This is a decoder only implementation, and currently is in the alpha stage, meaning it doesn't completely work yet. However, it is maintaining parity with available encoders, so it is useful for real work.") - (home-page "http://jbig2dec.sourceforge.net/") + (home-page "http://www.ghostscript.com/jbig2dec.html") (license license:gpl2+))) (define-public openjpeg diff --git a/gnu/packages/patches/jbig2dec-ignore-testtest.patch b/gnu/packages/patches/jbig2dec-ignore-testtest.patch index 1bf8f7ad76..1efde8628c 100644 --- a/gnu/packages/patches/jbig2dec-ignore-testtest.patch +++ b/gnu/packages/patches/jbig2dec-ignore-testtest.patch @@ -1,14 +1,16 @@ Do not run the "testtest script", it doesn't seem to do anything and reports failiute. TODO: Actually fix the test instead of ignoring it. ---- a/Makefile.in 2010-02-02 20:13:56.000000000 +0100 -+++ b/Makefile.in 2014-09-13 17:50:10.957816767 +0200 -@@ -181,7 +181,7 @@ - - MAINTAINERCLEANFILES = config_types.h.in - --TESTS = test_sha1 test_jbig2dec.py test_huffman test_arith -+TESTS = test_sha1 test_huffman test_arith - - test_sha1_SOURCES = sha1.c sha1.h - test_sha1_CFLAGS = -DTEST +diff --git a/Makefile.in b/Makefile.in +index 0573592..1a5de77 100644 +--- a/Makefile.in ++++ b/Makefile.in +@@ -93,7 +93,7 @@ host_triplet = @host@ + bin_PROGRAMS = jbig2dec$(EXEEXT) + noinst_PROGRAMS = test_sha1$(EXEEXT) test_huffman$(EXEEXT) \ + test_arith$(EXEEXT) +-TESTS = test_sha1$(EXEEXT) test_jbig2dec.py test_huffman$(EXEEXT) \ ++TESTS = test_sha1$(EXEEXT) test_huffman$(EXEEXT) \ + test_arith$(EXEEXT) + subdir = . + ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 -- cgit v1.2.3 From 4d4a6ed775986e50578ee8ee75a1c96ab786394d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 11 Sep 2016 12:51:22 -0400 Subject: gnu: zimg: Update to 2.2.1. * gnu/packages/image.scm (zimg): Update to 2.2.1. --- gnu/packages/image.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index d7ffa99514..1b1084673d 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -810,7 +810,7 @@ ISO/IEC 15444-1).") (define-public zimg (package (name "zimg") - (version "2.1") + (version "2.2.1") (source (origin (method url-fetch) @@ -819,7 +819,7 @@ ISO/IEC 15444-1).") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1hqp1gcsa2zhypms5dnasb1srjgxdqm7cip3w5i571kk9nxkn289")))) + "0m2gjpkb0dlg4j77nr41z284zvyfq9qg3ahsv8p1xy8jfr7h1hqa")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) -- cgit v1.2.3 From 6d8e14d0ba7b14c49159b0788165a8f28e221601 Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 23 Aug 2016 10:13:59 +0000 Subject: gnu: Add python2-pyqt-4. * gnu/packages/qt.scm (python2-pyqt-4): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/qt.scm | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index 95690fa962..a482d7572a 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015 Sou Bunnbu ;;; Copyright © 2015 Ludovic Courtès ;;; Copyright © 2015, 2016 Efraim Flashner +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -1069,6 +1070,15 @@ contain over 620 classes.") %standard-phases))) (license (list license:gpl2 license:gpl3)))) ; choice of either license +(define-public python2-pyqt-4 + (package (inherit python-pyqt-4) + (name "python2-pyqt-4") + (native-inputs + `(("python-sip" ,python2-sip) + ("qt" ,qt-4))) + (inputs + `(("python" ,python-2))))) + (define-public qtkeychain (package (name "qtkeychain") -- cgit v1.2.3 From 29e83e1c70a0738e2e4c8e55ab76a701c9fac12f Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 23 Aug 2016 11:07:17 +0000 Subject: gnu: messaging: Use license: prefix. * gnu/packages/disk.scm (define-module): Import guix licenses with a prefix. (libotr): Use the license prefix. (bitlbee): Likewise. (hexchat): Likewise. (ngircd): Likewise. (pidgin): Likewise. (pidgin-otr): Likewise. (znc): Likewise. (python-nbxmpp): Likewise. (gajim): Likewise. (prosody): Likewise. (libtoxcore): Likewise. (utox): Likewise. Signed-off-by: Efraim Flashner --- gnu/packages/messaging.scm | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index cf41d56370..9a3f4715c0 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -23,9 +23,7 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages messaging) - #:use-module ((guix licenses) - #:select (gpl3+ gpl3 gpl2+ gpl2 lgpl2.1 lgpl2.0+ bsd-2 - non-copyleft asl2.0 x11)) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix utils) #:use-module (guix packages) #:use-module (guix download) @@ -98,7 +96,7 @@ correspondent is assured the messages he sees are authentic and unmodified. (4) Perfect forward secrecy: If you lose control of your private keys, no previous conversation is compromised.") (home-page "https://otr.cypherpunks.ca/") - (license (list lgpl2.1 gpl2)))) + (license (list license:lgpl2.1 license:gpl2)))) ;; These patches together fix https://github.com/bitlbee/bitlbee/pull/55, are ;; already upstream, and should be unnecessary when the next bitlbee comes @@ -162,7 +160,7 @@ Google Talk), MSN Messenger, Yahoo! Messenger, AIM and ICQ, and the Twitter microblogging network (plus all other Twitter API compatible services like identi.ca and status.net).") (home-page "http://www.bitlbee.org/") - (license (list gpl2+ bsd-2)))) + (license (list license:gpl2+ license:bsd-2)))) (define-public hexchat (package @@ -196,7 +194,7 @@ conversation and the list of users. It uses colors to differentiate between users and to highlight messages. It checks spelling using available dictionaries. HexChat can be extended with multiple addons.") (home-page "http://hexchat.net/") - (license gpl2+))) + (license license:gpl2+))) (define-public ngircd (package @@ -262,7 +260,7 @@ dictionaries. HexChat can be extended with multiple addons.") "ngIRCd is a lightweight Internet Relay Chat server for small or private networks. It is easy to configure, can cope with dynamic IP addresses, and supports IPv6, SSL-protected connections as well as PAM for authentication.") - (license gpl2+))) + (license license:gpl2+))) (define-public pidgin (package @@ -336,14 +334,14 @@ supports IPv6, SSL-protected connections as well as PAM for authentication.") chat protocols.") (license (list - gpl2+ ; Most of the code - lgpl2.1 ; GG protocol plugin (libpurple/protocols/gg/lib) - lgpl2.0+ ; OSCAR protocol plugin (libpurple/protocols/oscar) + license:gpl2+ ; Most of the code + license:lgpl2.1 ; GG protocol plugin (libpurple/protocols/gg/lib) + license:lgpl2.0+ ; OSCAR protocol plugin (libpurple/protocols/oscar) ;; The following licenses cover the zephyr protocol plugin: - (non-copyleft + (license:non-copyleft "file://libpurple/protocols/zephyr/mit-copyright.h" "See libpurple/protocols/zephyr/mit-copyright.h in the distribution.") - (non-copyleft + (license:non-copyleft "file://libpurple/protocols/zephyr/mit-sipb-copyright.h" "See libpurple/protocols/zephyr/mit-sipb-copyright.h in the distribution."))))) @@ -383,7 +381,7 @@ you. However, during a conversation, your correspondent is assured the messages he sees are authentic and unmodified. (4) Perfect forward secrecy: If you lose control of your private keys, no previous conversation is compromised.") - (license gpl2))) + (license license:gpl2))) (define-public znc (package @@ -417,7 +415,7 @@ compromised.") client from the actual IRC server, and also from selected channels. Multiple clients from different locations can connect to a single ZNC account simultaneously and therefore appear under the same nickname on IRC.") - (license asl2.0))) + (license license:asl2.0))) (define-public python-nbxmpp (package @@ -440,7 +438,7 @@ simultaneously and therefore appear under the same nickname on IRC.") "The goal of this python library is to provide a way for Python applications to use Jabber/XMPP networks in a non-blocking way. This library was initially a fork of xmpppy, but is using non-blocking sockets.") - (license gpl3+))) + (license license:gpl3+))) (define-public python2-nbxmpp (package-with-python2 python-nbxmpp)) @@ -500,7 +498,7 @@ Among its features are: a tabbed chat window and single window modes; support for group chat (with Multi-User Chat protocol), invitation, chat to group chat transformation; audio and video conferences; file transfer; TLS, GPG and end-to-end encryption support; XML console.") - (license gpl3+))) + (license license:gpl3+))) (define-public prosody (package @@ -573,7 +571,7 @@ be easy to set up and configure, and efficient with system resources. Additionally, for developers it aims to be easy to extend and give a flexible system on which to rapidly develop added functionality, or prototype new protocols.") - (license x11))) + (license license:x11))) (define-public libtoxcore (let ((revision "1") @@ -613,7 +611,7 @@ protocols.") (synopsis "Library for the Tox encrypted messenger protocol") (description "C library implementation of the Tox encrypted messenger protocol.") - (license gpl3+) + (license license:gpl3+) (home-page "https://tox.chat")))) (define-public utox @@ -657,6 +655,6 @@ protocols.") (description "A lightweight Tox client. Tox is a distributed and secure instant messenger with audio and video chat capabilities.") (home-page "http://utox.org/") - (license gpl3))) + (license license:gpl3))) ;;; messaging.scm ends here -- cgit v1.2.3 From aeca1c0ec5cde48ebb30982b19c091a3170a279b Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 23 Aug 2016 11:51:24 +0000 Subject: gnu: Add pybitmessage. * gnu/packages/messaging.scm (pybitmessage): New variable. Signed-off-by: Efraim Flashner --- gnu/packages/messaging.scm | 98 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 98 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 9a3f4715c0..3627fecbfa 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -62,6 +62,7 @@ #:use-module (gnu packages linux) #:use-module (gnu packages tls) #:use-module (gnu packages icu4c) + #:use-module (gnu packages qt) #:use-module (gnu packages video) #:use-module (gnu packages xiph) #:use-module (gnu packages audio) @@ -657,4 +658,101 @@ instant messenger with audio and video chat capabilities.") (home-page "http://utox.org/") (license license:gpl3))) +(define-public pybitmessage + (package + (name "pybitmessage") + (version "0.6.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/Bitmessage/" + "PyBitmessage/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1ffj7raxpp277kphj98190fxrwfx16vmbspk7k3azg3bh5f5idnf")))) + (inputs + `(("python" ,python-2) + ("python:tk" ,python-2 "tk") + ("openssl" ,openssl) + ("sqlite" ,sqlite) + ("qt" ,qt-4) + ("python2-pyqt-4" ,python2-pyqt-4) + ("python2-sip" ,python2-sip) + ("python2-pysqlite" ,python2-pysqlite) + ("python2-pyopenssl" ,python2-pyopenssl))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (build-system gnu-build-system) + (arguments + `(#:imported-modules ((guix build python-build-system) + ,@%gnu-build-system-modules) + #:make-flags (list (string-append "PREFIX=" + (assoc-ref %outputs "out"))) + #:tests? #f ; no test target + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-makefile + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "Makefile" + (("mkdir -p \\$\\{DESTDIR\\}/usr") "") + (("/usr/local") "") + (("/usr") "") + (("#!/bin/sh") (string-append "#!" (which "bash"))) + (("python2") (which "python")) + (("/opt/openssl-compat-bitcoin/lib/") + (string-append (assoc-ref inputs "openssl") "/lib/"))) + #t)) + (add-after 'unpack 'fix-unmatched-python-shebangs + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/bitmessagemain.py" + (("#!/usr/bin/env python2.7") + (string-append "#!" (which "python")))) + (substitute* "src/bitmessagecli.py" + (("#!/usr/bin/env python2.7.x") + (string-append "#!" (which "python")))) + #t)) + (add-after 'unpack 'fix-depends + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/depends.py" + (("libcrypto.so") + (string-append (assoc-ref inputs "openssl") + "/lib/libcrypto.so"))) + #t)) + (add-after 'unpack 'fix-local-files-in-paths + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "src/proofofwork.py" + (("bitmsghash.so") + (string-append (assoc-ref outputs "out") + "/lib/bitmsghash.so"))) + #t)) + (add-after 'unpack 'fix-pyelliptic + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/pyelliptic/openssl.py" + (("libcrypto.so") + (string-append (assoc-ref inputs "openssl") + "/lib/libcrypto.so")) + (("libssl.so") + (string-append (assoc-ref inputs "openssl") + "/lib/libssl.so"))) + #t)) + ;; XXX: Make does not build and install bitmsghash, do it + ;; and place it in /lib. + (add-before 'build 'build-and-install-bitmsghash + (lambda* (#:key outputs #:allow-other-keys) + (chdir "src/bitmsghash") + (system* "make") + (chdir "../..") + (install-file "src/bitmsghash/bitmsghash.so" + (string-append (assoc-ref outputs "out") "/lib")) + #t)) + (add-after 'install 'wrap + (@@ (guix build python-build-system) wrap))))) + (license license:expat) + (description + "Distributed and trustless peer-to-peer communications protocol +for sending encrypted messages to one person or many subscribers.") + (synopsis "Distributed peer-to-peer communication") + (home-page "https://bitmessage.org/"))) + ;;; messaging.scm ends here -- cgit v1.2.3 From ee6bc65f7c55b50f772531cf392388b602291870 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 11 Sep 2016 14:09:03 -0400 Subject: gnu: mpd: Remove unused glib-or-gtk-build-system module. * gnu/packages/mpd.scm (define-module): Don't import 'glib-or-gtk-build-system'. --- gnu/packages/mpd.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 8b1b071ee4..7bf39f98b7 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -27,7 +27,6 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix utils) - #:use-module ((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:) #:use-module (guix build-system gnu) #:use-module (guix build-system python) #:use-module (gnu packages avahi) -- cgit v1.2.3 From 55fb8d748559120be8ed669e09edc8b7f7923f0d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 11 Sep 2016 15:17:24 +0200 Subject: gnu: texinfo: Add 6.3. * gnu/packages/texinfo.scm (texinfo-6.3): New variable. --- gnu/packages/texinfo.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/texinfo.scm b/gnu/packages/texinfo.scm index d645ef4bc1..5b22e84fb8 100644 --- a/gnu/packages/texinfo.scm +++ b/gnu/packages/texinfo.scm @@ -62,6 +62,18 @@ their source and the command-line Info reader. The emphasis of the language is on expressing the content semantically, avoiding physical markup commands.") (license gpl3+))) +(define-public texinfo-6.3 + (package + (inherit texinfo) + (version "6.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/texinfo/texinfo-" + version ".tar.xz")) + (sha256 + (base32 + "0fpr9kdjjl6nj2pc50k2zr7134hvqz8bi8pfqa7131a9lpzz6v14")))))) + (define-public texinfo-5 (package (inherit texinfo) (version "5.2") -- cgit v1.2.3 From 8d4169a1d1a379ce450ca4920eadadd86dd1ef9a Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 12 Sep 2016 00:57:46 +0200 Subject: gnu: Add Impressive. * gnu/packages/pdf.scm (impressive): New variable. --- gnu/packages/pdf.scm | 60 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index 69be8ac913..61fe84eed9 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016 Roel Janssen ;;; Coypright © 2016 ng0 ;;; Coypright © 2016 Marius Bakke +;;; Coypright © 2016 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,10 +31,14 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (guix build-system python) + #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages autotools) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) #:use-module (gnu packages compression) #:use-module (gnu packages fontutils) + #:use-module (gnu packages game-development) #:use-module (gnu packages ghostscript) #:use-module (gnu packages databases) #:use-module (gnu packages djvu) @@ -52,6 +57,7 @@ #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages python) + #:use-module (gnu packages sdl) #:use-module (gnu packages tls) #:use-module (srfi srfi-1)) @@ -636,3 +642,57 @@ vector formats.") (inherit (package-with-python2 (strip-python2-variant python-reportlab))) (native-inputs `(("python2-pip" ,python2-pip))))) + +(define-public impressive + (package + (name "impressive") + (version "0.11.1") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/impressive/Impressive/" + version "/Impressive-" version ".tar.gz")) + (sha256 + (base32 + "0b3rmy6acp2vmf5nill3aknxvr9a5aawk1vnphkah61anxp62gsr")))) + (build-system python-build-system) + + ;; TODO: Add dependency on pdftk. + (inputs `(("python-pygame" ,python-pygame) + ("python2-pillow" ,python2-pillow) + ("sdl" ,sdl) + ("xpdf" ,xpdf))) + + (arguments + `(#:python ,python-2 + #:phases (modify-phases %standard-phases + (delete 'build) + (delete 'configure) + (delete 'check) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; There's no 'setup.py' so install things manually. + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man1 (string-append out "/share/man/man1")) + (sdl (assoc-ref inputs "sdl")) + (xpdf (assoc-ref inputs "xpdf"))) + (mkdir-p bin) + (copy-file "impressive.py" + (string-append bin "/impressive")) + (wrap-program (string-append bin "/impressive") + `("LIBRARY_PATH" ":" prefix ;for ctypes + (,(string-append sdl "/lib"))) + `("PATH" ":" prefix ;for pdftoppm + (,(string-append xpdf "/bin")))) + (mkdir-p man1) + (install-file "impressive.1" man1) + #t)))))) + (home-page "http://impressive.sourceforge.net") + (synopsis "PDF presentation tool with visual effects") + (description + "Impressive is a tool to display PDF files that provides visual effects +such as smooth alpha-blended slide transitions. It provides additional tools +such as zooming, highlighting an area of the screen, and a tool to navigate +the PDF pages.") + (license license:gpl2))) -- cgit v1.2.3 From b6337f30cccd55b6f687f0bd80ef5b32a193f1b1 Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 8 Sep 2016 23:04:52 +0000 Subject: gnu: tbb: Update to 2017. * gnu/packages/tbb.scm (tbb): Update to 2017. [license]: Change to ASL2.0. Signed-off-by: Efraim Flashner --- gnu/packages/tbb.scm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm index 0e9db720aa..c19391abfb 100644 --- a/gnu/packages/tbb.scm +++ b/gnu/packages/tbb.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,16 +28,16 @@ (define-public tbb (package (name "tbb") - (version "4.3.2") + (version "2017") (source (origin (method url-fetch) (uri (string-append "https://www.threadingbuildingblocks.org/sites/default" "/files/software_releases/source/" - "tbb43_20141204oss_src.tgz")) + "tbb" version "_20160722oss_src.tgz")) (sha256 (base32 - "0jsczl99jfgj47kj7c4sd4fk7v3rbaiax1ng9ypykz1hh0lrrsws")) + "038rmv3s8si51bjrzwyv8ldqw742fjjdfayi8pmjaq5zw32b8pzx")) (modules '((guix build utils))) (snippet '(substitute* "build/common.inc" @@ -85,6 +86,4 @@ the low-level threading details necessary for optimal multi-core performance. It uses common C++ templates and coding style to eliminate tedious threading implementation work. It provides parallel loop constructs, asynchronous tasks, synchronization primitives, atomic operations, and more.") - ;; GPLv2 with run-time exception: - ;; - (license gpl2))) + (license asl2.0))) -- cgit v1.2.3 From 44177bc040322b4a7836a48d05c3cd0d7f3c2625 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 12 Sep 2016 12:30:19 +0300 Subject: gnu: vapoursynth: Update to 33.1. * gnu/packages/video.scm (vapoursynth): Update to 33.1. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 864e691666..b2c102a4df 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1235,7 +1235,7 @@ capabilities.") (define-public vapoursynth (package (name "vapoursynth") - (version "32") + (version "33.1") (source (origin (method url-fetch) (uri (string-append @@ -1244,7 +1244,7 @@ capabilities.") (file-name (string-append name "-" version)) (sha256 (base32 - "1j08whj946v2kkpgxsfhpca8xf0ax9iqzn73wvwjx319p9j0ymp9")))) + "1504jaw4yqdlyls0bz9f90rvqq7cy1jvmrnhdvwnmdfbpikqwi4c")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) -- cgit v1.2.3 From 57dbf577f07085f7da23be71e2e53f258afd8bd5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 12 Sep 2016 12:59:13 +0300 Subject: gnu: parallel: Update to 20160822. * gnu/packages/parallel.scm (parallel): Update to 20160822. --- gnu/packages/parallel.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index 3bb078e031..b49ec1f8c1 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -45,7 +45,7 @@ (define-public parallel (package (name "parallel") - (version "20160722") + (version "20160822") (source (origin (method url-fetch) @@ -53,7 +53,7 @@ version ".tar.bz2")) (sha256 (base32 - "08gm0i9vj2nz8qgqi98z00myypgb3dni0s5yf3l17fp8h78fp4g3")))) + "1qdb7889w7v5amd0z4qg3v4hia0wj5vjly9qvm5lm5nlxg8bfrwq")))) (build-system gnu-build-system) (arguments `(#:phases -- cgit v1.2.3 From d18197af7844151e38322605b11e0c75b18b55bf Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Mon, 22 Aug 2016 13:31:36 +0200 Subject: gnu: Add python-django. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/django.scm: New file. * gnu/packages/patches/python-django-fix-testcase.patch: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add django.scm. (dist_patch_DATA): Add python-django-fix-testcase.patch. Co-authored-by: Ludovic Courtès --- gnu/local.mk | 4 +- gnu/packages/django.scm | 98 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 101 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/django.scm diff --git a/gnu/local.mk b/gnu/local.mk index 515ca352a8..c504b067fe 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -97,6 +97,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/dillo.scm \ %D%/packages/disk.scm \ %D%/packages/display-managers.scm \ + %D%/packages/django.scm \ %D%/packages/djvu.scm \ %D%/packages/dns.scm \ %D%/packages/docbook.scm \ @@ -481,8 +482,8 @@ dist_patch_DATA = \ %D%/packages/patches/dbus-helper-search-path.patch \ %D%/packages/patches/devil-CVE-2009-3994.patch \ %D%/packages/patches/devil-fix-libpng.patch \ - %D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/dfu-programmer-fix-libusb.patch \ + %D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/doxygen-test.patch \ @@ -764,6 +765,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-3-search-paths.patch \ %D%/packages/patches/python-dendropy-exclude-failing-tests.patch \ %D%/packages/patches/python-disable-ssl-test.patch \ + %D%/packages/patches/python-django-fix-testcase.patch \ %D%/packages/patches/python-fix-tests.patch \ %D%/packages/patches/python-ipython-inputhook-ctype.patch \ %D%/packages/patches/python-rarfile-fix-tests.patch \ diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm new file mode 100644 index 0000000000..6acaae2485 --- /dev/null +++ b/gnu/packages/django.scm @@ -0,0 +1,98 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Hartmut Goebel +;;; +;;; 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 . + +(define-module (gnu packages django) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system python) + #:use-module (gnu packages) + #:use-module (gnu packages base) + #:use-module (gnu packages python)) + +(define-public python-django + (package + (name "python-django") + (version "1.10") + (source (origin + (method url-fetch) + (uri (pypi-uri "Django" version)) + (sha256 + (base32 + "01bh5yra6zyxcpqacahbwfbn0y4ivw07j2jsw3crvmjzivb6if26")) + (patches (search-patches "python-django-fix-testcase.patch")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-before 'check 'set-tzdir + (lambda* (#:key inputs #:allow-other-keys) + ;; The test-suite tests timezone-dependent functions, thus tzdata + ;; needs to be available. + (setenv "TZDIR" + (string-append (assoc-ref inputs "tzdata") + "/share/zoneinfo")) + #t)) + (replace 'check + (lambda _ + (setenv "PYTHONPATH" + (string-append ".:" (getenv "PYTHONPATH"))) + (zero? (system* "python" "tests/runtests.py"))))))) + ;; TODO: Install extras/django_bash_completion. + (native-inputs + ;; Django uses 'pkg_resources' (part of setuptools) to locate templates + ;; at run-time. + `(("python-setuptools" ,python-setuptools) + ("tzdata", tzdata))) + (propagated-inputs + `( ;; bcrypt and argon2-cffi are extra requirements not yet in guix + ;;("python-argon2-cffi" ,python-argon2-cffi) ; >= 16.1.0 + ;;("python-bcrypt" ,python-bcrypt) ; not py-bcrypt! + ;; Taken from tests/requirements/py3.txt. + ("python-docutils" ,python-docutils) + ;; optional for tests: ("python-geoip2" ,python-geoip2) + ("python-jinja2" ,python-jinja2) ; >= 2.7 + ;; optional for tests: ("python-memcached" ,python-memcached) + ("python-numpy" ,python-numpy) + ("python-pillow" ,python-pillow) + ("python-pyyaml" ,python-pyyaml) + ("python-pytz" ,python-pytz) + ;; optional for tests: ("python-selenium" ,python-selenium) + ("python-sqlparse" ,python-sqlparse) + ("python-tblib" ,python-tblib))) + (home-page "http://www.djangoproject.com/") + (synopsis "High-level Python Web framework") + (description + "Django is a high-level Python Web framework that encourages rapid +development and clean, pragmatic design. It provides many tools for building +any Web site. Django focuses on automating as much as possible and adhering +to the @dfn{don't repeat yourself} (DRY) principle.") + (license license:bsd-3) + (properties `((python2-variant . ,(delay python2-django)))))) + +(define-public python2-django + (let ((base (package-with-python2 (strip-python2-variant python-django)))) + (package + (inherit base) + (propagated-inputs + `(;; Required for Python 2: enum34 and mock. + ("python2-enum34" ,python2-enum34) + ("python2-mock" ,python2-mock) + ;; When adding memcached mind: for Python 2 memcached <= 1.53 is + ;; required. + ,@(package-inputs base)))))) -- cgit v1.2.3 From b53fc2940fefc3829695f239f731ee6f03e538a2 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Mon, 22 Aug 2016 13:31:37 +0200 Subject: gnu: Add python-django-simple-math-captcha. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/django.scm: (python-django-simple-math-captcha) (python2-django-simple-math-captcha): New variables. Signed-off-by: Ludovic Courtès --- gnu/packages/django.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 6acaae2485..b9232e28e8 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -96,3 +96,29 @@ to the @dfn{don't repeat yourself} (DRY) principle.") ;; When adding memcached mind: for Python 2 memcached <= 1.53 is ;; required. ,@(package-inputs base)))))) + +(define-public python-django-simple-math-captcha + (package + (name "python-django-simple-math-captcha") + (version "1.0.7") + (source (origin + (method url-fetch) + (uri (pypi-uri "django-simple-math-captcha" version)) + (sha256 + (base32 + "0906hms6y6znjhpd0g4wmzv9vcla4brkdpsm4zha9zdj8g5vq2hd")))) + (build-system python-build-system) + (propagated-inputs + `(("python-django" ,python-django))) + (native-inputs + `(("python-setuptools" ,python-setuptools))) + (home-page "https://github.com/alsoicode/django-simple-math-captcha") + (synopsis "Easy-to-use math field/widget captcha for Django forms") + (description + "A multi-value-field that presents a human answerable question, +with no settings.py configuration necessary, but instead can be configured +with arguments to the field constructor.") + (license license:asl2.0))) + +(define-public python2-django-simple-math-captcha + (package-with-python2 python-django-simple-math-captcha)) -- cgit v1.2.3 From f32ffa04ba14a3dc6cc6e30e71bcfccf0ddf50e2 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 27 Aug 2016 13:33:31 +0000 Subject: gnu: emacs: Use https for elpa.gnu.org. * gnu/packages/emacs.scm: Use 'https' for all elpa.gnu.org URLs. Signed-off-by: Alex Kost --- gnu/packages/emacs.scm | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 1ec0d8f9f0..3221949691 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -655,7 +655,7 @@ programs.") (version "1.0.4") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/let-alist-" + (uri (string-append "https://elpa.gnu.org/packages/let-alist-" version ".el")) (sha256 (base32 @@ -684,7 +684,7 @@ programs.") (emacs-byte-compile-directory lispdir) #t)))) (native-inputs `(("emacs" ,emacs-minimal))) - (home-page "http://elpa.gnu.org/packages/let-alist.html") + (home-page "https://elpa.gnu.org/packages/let-alist.html") (synopsis "Easily let-bind values of an assoc-list by their names") (description "This package offers a single Emacs Lisp macro, @code{let-alist}. This @@ -1041,13 +1041,13 @@ mode, Rmail, Gnus, MH-E, and VM). BBDB is fully customizable.") (version "1.9") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/async-" + (uri (string-append "https://elpa.gnu.org/packages/async-" version ".tar")) (sha256 (base32 "1ip5nc8xyln5szvqwp6wqva9xr84pn8ssn3nnphrszr19y4js2bm")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/async.html") + (home-page "https://elpa.gnu.org/packages/async.html") (synopsis "Asynchronous processing in Emacs") (description "This package provides the ability to call asynchronous functions and @@ -1064,7 +1064,7 @@ as a library for other Emacs packages.") (origin (method url-fetch) (uri (string-append - "http://elpa.gnu.org/packages/auctex-" + "https://elpa.gnu.org/packages/auctex-" version ".tar")) (sha256 @@ -1622,7 +1622,7 @@ source code using IPython.") (version "0.9") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/debbugs-" + (uri (string-append "https://elpa.gnu.org/packages/debbugs-" version ".tar")) (sha256 (base32 @@ -1630,7 +1630,7 @@ source code using IPython.") (build-system emacs-build-system) (propagated-inputs `(("emacs-async" ,emacs-async))) - (home-page "http://elpa.gnu.org/packages/debbugs.html") + (home-page "https://elpa.gnu.org/packages/debbugs.html") (synopsis "Access the Debbugs bug tracker in Emacs") (description "This package lets you access the @uref{http://bugs.gnu.org,GNU Bug @@ -2102,7 +2102,7 @@ package provides a light and a dark variant.") (version "1.3.0") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/ahungry-theme-" + (uri (string-append "https://elpa.gnu.org/packages/ahungry-theme-" version ".tar")) (sha256 (base32 @@ -2408,7 +2408,7 @@ The purpose of this library is to wrap all the quirks and hassle of (version "0.1.1") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/queue-" + (uri (string-append "https://elpa.gnu.org/packages/queue-" version ".el")) (sha256 (base32 @@ -2451,7 +2451,7 @@ be removed from the front. This type of data structure is sometimes called an (version "1.7.1") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/spinner-" + (uri (string-append "https://elpa.gnu.org/packages/spinner-" version ".el")) (sha256 (base32 @@ -2470,13 +2470,13 @@ ongoing operations.") (version "2.15") (source (origin (method url-fetch) - (uri (string-append "http://elpa.gnu.org/packages/seq-" + (uri (string-append "https://elpa.gnu.org/packages/seq-" version ".tar")) (sha256 (base32 "09wi1765bmn7i8fg6ajjfaxgs4ipc42d58zx2fdqpidrdg9c7q73")))) (build-system emacs-build-system) - (home-page "http://elpa.gnu.org/packages/seq.html") + (home-page "https://elpa.gnu.org/packages/seq.html") (synopsis "Sequence manipulation functions for Emacs") (description "This Emacs library provides sequence-manipulation functions that -- cgit v1.2.3 From ac8a6428867086b1091d8a1f4b21b1e321531256 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 17 Aug 2016 16:10:15 +0100 Subject: gnu: tre: Move to (gnu packages regex). * gnu/packages/tre.scm: Remove. Move 'tre' to... * gnu/packages/regex.scm (tre): ... here. New variable. * gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly. Signed-off-by: Alex Kost --- gnu/local.mk | 1 - gnu/packages/regex.scm | 32 ++++++++++++++++++++++++++++ gnu/packages/tre.scm | 57 -------------------------------------------------- 3 files changed, 32 insertions(+), 58 deletions(-) delete mode 100644 gnu/packages/tre.scm diff --git a/gnu/local.mk b/gnu/local.mk index c504b067fe..9b350131dd 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -345,7 +345,6 @@ GNU_SYSTEM_MODULES = \ %D%/packages/tls.scm \ %D%/packages/tmux.scm \ %D%/packages/tor.scm \ - %D%/packages/tre.scm \ %D%/packages/tv.scm \ %D%/packages/unrtf.scm \ %D%/packages/upnp.scm \ diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm index cea9db8379..e685a17d28 100644 --- a/gnu/packages/regex.scm +++ b/gnu/packages/regex.scm @@ -1,4 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2014 John Darrington +;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2016 Marius Bakke ;;; ;;; This file is part of GNU Guix. @@ -55,3 +57,33 @@ backtracking regular expression engines like those used in PCRE, Perl and Python. It is a C++ library.") (license license:bsd-3))) + +(define-public tre + (package + (name "tre") + (version "0.8.0") + (source (origin + (method url-fetch) + (uri (string-append "http://laurikari.net/tre/" + name "-" version ".tar.bz2")) + (sha256 + (base32 + "0n36cgqys59r2gmb7jzbqiwsy790v8nbxk82d2n2saz0rp145ild")))) + (build-system gnu-build-system) + (arguments + `(#:phases (alist-cons-before + 'check 'install-locales + (lambda _ + ;; The tests require the availability of the + ;; 'en_US.ISO-8859-1' locale. + (setenv "LOCPATH" (getcwd)) + (zero? (system* "localedef" "--no-archive" + "--prefix" (getcwd) "-i" "en_US" + "-f" "ISO-8859-1" "./en_US.ISO-8859-1"))) + %standard-phases))) + (synopsis "Approximate regex matching library and agrep utility") + (description "Superset of the POSIX regex API, enabling approximate +matching. Also ships a version of the agrep utility which behaves similar to +grep but features inexact matching.") + (home-page "http://laurikari.net/tre") + (license license:bsd-2))) diff --git a/gnu/packages/tre.scm b/gnu/packages/tre.scm deleted file mode 100644 index 721a350cf0..0000000000 --- a/gnu/packages/tre.scm +++ /dev/null @@ -1,57 +0,0 @@ -;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014 John Darrington -;;; Copyright © 2015 Mark H Weaver -;;; -;;; 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 . - -(define-module (gnu packages tre) - #:use-module (gnu packages) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (guix build-system gnu) - #:use-module (guix licenses)) - -(define-public tre - (package - (name "tre") - (version "0.8.0") - (source - (origin - (method url-fetch) - (uri - (string-append "http://laurikari.net/tre/" name "-" version - ".tar.bz2")) - (sha256 - (base32 "0n36cgqys59r2gmb7jzbqiwsy790v8nbxk82d2n2saz0rp145ild")))) - - (build-system gnu-build-system) - (arguments - `(#:phases (alist-cons-before - 'check 'install-locales - (lambda _ - ;; The tests require the availability of the - ;; 'en_US.ISO-8859-1' locale. - (setenv "LOCPATH" (getcwd)) - (zero? (system* "localedef" "--no-archive" - "--prefix" (getcwd) "-i" "en_US" - "-f" "ISO-8859-1" "./en_US.ISO-8859-1"))) - %standard-phases))) - (synopsis "Approximate regex matching library and agrep utility") - (description "Superset of the POSIX regex API, enabling approximate -matching. Also ships a version of the agrep utility which behaves similar to -grep but features inexact matching.") - (home-page "http://laurikari.net/tre") - (license bsd-2))) -- cgit v1.2.3 From 378920defcb263890abc3ff66e088cea425d1433 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Mon, 12 Sep 2016 17:26:43 +0200 Subject: gnu: python-django: Add patch file. * gnu/packages/patches/python-django-fix-testcase.patch: New file. This is a follow-up to commit d18197af7844151e38322605b11e0c75b18b55bf. --- .../patches/python-django-fix-testcase.patch | 42 ++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 gnu/packages/patches/python-django-fix-testcase.patch diff --git a/gnu/packages/patches/python-django-fix-testcase.patch b/gnu/packages/patches/python-django-fix-testcase.patch new file mode 100644 index 0000000000..4c1f9806d7 --- /dev/null +++ b/gnu/packages/patches/python-django-fix-testcase.patch @@ -0,0 +1,42 @@ +From 24123c31362b5f3783d84d133c160e9fe16805fe Mon Sep 17 00:00:00 2001 +From: Tim Graham +Date: Mon, 1 Aug 2016 15:40:46 -0400 +Subject: [PATCH] Fixed admin_utils test failures due to translation updates. + +https://github.com/django/django/commit/24123c31362b5f3783d84d133c160e9fe16805fe + +--- + tests/admin_utils/test_logentry.py | 7 ++++--- + 1 file changed, 4 insertions(+), 3 deletions(-) + +diff --git a/tests/admin_utils/test_logentry.py b/tests/admin_utils/test_logentry.py +index 7798373..8259bf0 100644 +--- a/tests/admin_utils/test_logentry.py ++++ b/tests/admin_utils/test_logentry.py +@@ -59,7 +59,7 @@ class LogEntryTests(TestCase): + logentry = LogEntry.objects.filter(content_type__model__iexact='article').latest('id') + self.assertEqual(logentry.get_change_message(), 'Changed title and hist.') + with translation.override('fr'): +- self.assertEqual(logentry.get_change_message(), 'Modification de title et hist.') ++ self.assertEqual(logentry.get_change_message(), 'Title et hist modifié(s).') + + add_url = reverse('admin:admin_utils_article_add') + post_data['title'] = 'New' +@@ -117,11 +117,12 @@ class LogEntryTests(TestCase): + 'Changed domain. Added article "Article object". ' + 'Changed title for article "Article object". Deleted article "Article object".' + ) ++ + with translation.override('fr'): + self.assertEqual( + logentry.get_change_message(), +- 'Modification de domain. Article « Article object » ajouté. ' +- 'Modification de title pour l\'objet article « Article object ». Article « Article object » supprimé.' ++ "Domain modifié(s). Article « Article object » ajouté. " ++ "Title modifié(s) pour l'objet article « Article object ». Article « Article object » supprimé." + ) + + def test_logentry_get_edited_object(self): +-- +2.7.4 + -- cgit v1.2.3 From 39fb629535355a045319e915b058b28f0ed76e02 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Mon, 12 Sep 2016 16:34:33 +0200 Subject: gnu: (cfitsio, wcslib): Change return values of custom phases. * gnu/packages/astronomy.scm (cfitsio, wcslib): Return #t from patch phases. --- gnu/packages/astronomy.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/astronomy.scm b/gnu/packages/astronomy.scm index eaf1598096..0c29a39a54 100644 --- a/gnu/packages/astronomy.scm +++ b/gnu/packages/astronomy.scm @@ -43,7 +43,8 @@ (modify-phases %standard-phases (add-after 'unpack 'patch-paths (lambda _ - (substitute* "Makefile.in" (("/bin/") ""))))))) + (substitute* "Makefile.in" (("/bin/") "")) + #t))))) (home-page "http://heasarc.gsfc.nasa.gov/fitsio/fitsio.html") (synopsis "Library for reading and writing FITS files") (description "CFITSIO provides simple high-level routines for reading and @@ -62,7 +63,8 @@ in FITS files.") (origin (method url-fetch) (uri (string-append - "ftp://ftp.atnf.csiro.au/pub/software/wcslib/" name "-" version ".tar.bz2")) + "ftp://ftp.atnf.csiro.au/pub/software/wcslib/" name "-" version + ".tar.bz2")) (sha256 (base32 "1s2nig327g4bimd9xshlk11ww09a7mrjmsbpdcd8smsmn2kl1glb")))) (inputs @@ -73,7 +75,8 @@ in FITS files.") (add-before 'configure 'patch-/bin/sh (lambda _ (substitute* "makedefs.in" - (("/bin/sh") "sh"))))))) + (("/bin/sh") "sh")) + #t))))) (home-page "http://www.atnf.csiro.au/people/mcalabre/WCS") (synopsis "Library which implements the FITS WCS standard") (description "The FITS \"World Coordinate System\" (WCS) standard defines -- cgit v1.2.3 From 2d047896f9d0241ef565f1ed237103071a0a5d91 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:17:06 +0200 Subject: gnu: Add r-quadprog. * gnu/packages/maths.scm (r-quadprog): New variable. --- gnu/packages/maths.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index c8b59dfd2a..b5cf05a861 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1191,6 +1191,27 @@ sparse system of linear equations A x = b using Guassian elimination.") (inputs (alist-delete "pt-scotch" (package-inputs mumps-openmpi))))) +(define-public r-quadprog + (package + (name "r-quadprog") + (version "1.5-5") + (source + (origin + (method url-fetch) + (uri (cran-uri "quadprog" version)) + (sha256 + (base32 + "0jg3r6abmhp8r9vkbhpx9ldjfw6vyl1m4c5vwlyjhk1mi03656fr")))) + (build-system r-build-system) + (native-inputs + `(("gfortran" ,gfortran))) + (home-page "http://cran.r-project.org/web/packages/quadprog") + (synopsis "Functions to solve quadratic programming problems") + (description + "This package contains routines and documentation for solving quadratic +programming problems.") + (license license:gpl3+))) + (define-public r-pracma (package (name "r-pracma") -- cgit v1.2.3 From ccd9b1511e263cadb7411fdcfc09e6d385f0a0f5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:02:48 +0200 Subject: gnu: r-pracma: Update to 1.9.5. * gnu/packages/maths.scm (r-pracma): Update to 1.9.5. [propagated-inputs]: Add "r-quadprog". --- gnu/packages/maths.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index b5cf05a861..f676a2a277 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1215,13 +1215,15 @@ programming problems.") (define-public r-pracma (package (name "r-pracma") - (version "1.8.8") + (version "1.9.5") (source (origin (method url-fetch) (uri (cran-uri "pracma" version)) (sha256 - (base32 "0ans9l5rrb7a38gyi4qx4258sd5r5668vyrk02yzjpg9k3h8l165")))) + (base32 "19nr2jlkbcdgvw3gx5hry12av565lmvqd5q4h7zlch3q13avwwl2")))) (build-system r-build-system) + (propagated-inputs + `(("r-quadprog" ,r-quadprog))) (home-page "http://cran.r-project.org/web/packages/pracma") (synopsis "Practical numerical math functions") (description "This package provides functions for numerical analysis and -- cgit v1.2.3 From 4df0cb8d05d871227afc4d08ec336b9e01500b83 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:03:45 +0200 Subject: gnu: r-jsonlite: Update to 1.0. * gnu/packages/web.scm (r-jsonlite): Update to 1.0. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 20c7d12205..c1444a7e84 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3172,13 +3172,13 @@ particularly easy to create complete web applications using httpuv alone.") (define-public r-jsonlite (package (name "r-jsonlite") - (version "0.9.20") + (version "1.0") (source (origin (method url-fetch) (uri (cran-uri "jsonlite" version)) (sha256 (base32 - "08b2gifd81yzj0h4k7pqp2cc2r5lwsg3sxnssi6c96rgqvl4702n")))) + "0bcnzzycvwwkm0lv0ka9xf55z5c1795b7c2vhmf53z73cxixsmnp")))) (build-system r-build-system) (home-page "http://arxiv.org/abs/1403.2805") (synopsis "Robust, high performance JSON parser and generator for R") -- cgit v1.2.3 From cc1446acc7cdf022058cafc0e80a388bed18007a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:04:16 +0200 Subject: gnu: r-htmlwidgets: Update to 0.7. * gnu/packages/web.scm (r-htmlwidgets): Update to 0.7. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index c1444a7e84..c5a22ac586 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3241,13 +3241,13 @@ directory.") (define-public r-htmlwidgets (package (name "r-htmlwidgets") - (version "0.6") + (version "0.7") (source (origin (method url-fetch) (uri (cran-uri "htmlwidgets" version)) (sha256 (base32 - "1sljs7zajzj1lsrrvqv7anpma4plzs79mqwmw7b2c5d7mn9py8lw")))) + "1xh8aiaci5hi3r67ym7r37hm89m9vzywk292avnmaj125kq7w1d0")))) (build-system r-build-system) (propagated-inputs `(("r-htmltools" ,r-htmltools) -- cgit v1.2.3 From 02a87536bf5b1376e004a7b4456285db0da72b96 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:04:43 +0200 Subject: gnu: r-curl: Update to 1.2. * gnu/packages/web.scm (r-curl): Update to 1.2. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index c5a22ac586..b9c201d9f9 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3264,13 +3264,13 @@ applications.") (define-public r-curl (package (name "r-curl") - (version "0.9.7") + (version "1.2") (source (origin (method url-fetch) (uri (cran-uri "curl" version)) (sha256 (base32 - "1p24bcaf1wbfdi1r9ibyyp0l0zp4kzs4g3srv8vikz93hycm1qa6")))) + "04fwasg400v8dvkcn1fcha1jzdz8lbyxi0679q7flsyrp57b3jrf")))) (build-system r-build-system) (inputs `(("libcurl" ,curl))) -- cgit v1.2.3 From 2c575bb9a2a91275136ec5506a0a9ab9ee4cc75a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:05:26 +0200 Subject: gnu: r-vegan: Update to 2.4-1. * gnu/packages/bioinformatics.scm (r-vegan): Update to 2.4-1. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 2c28ac0a24..ce9146f6a6 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4923,14 +4923,14 @@ sequence.") (define-public r-vegan (package (name "r-vegan") - (version "2.4-0") + (version "2.4-1") (source (origin (method url-fetch) (uri (cran-uri "vegan" version)) (sha256 (base32 - "10cygzkyg2m0y054ygivqxrkvqz792qsg6bmbdfzaqq37qv4wc7z")))) + "0i0c7rc0nzgbysd1nlxzxd2rvy75qcnw3yc7nggzqjzzj5d7yzsd")))) (build-system r-build-system) (arguments `(#:phases -- cgit v1.2.3 From 0b54b4c9866966146923de25d6088e3934c18524 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:09:01 +0200 Subject: gnu: r-acsnminer: Update to 0.16.8.25. * gnu/packages/bioinformatics.scm (r-acsnminer): Update to 0.16.8.25. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ce9146f6a6..60be692093 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5204,13 +5204,13 @@ BLAST, KEGG, GenBank, MEDLINE and GO.") (define-public r-acsnminer (package (name "r-acsnminer") - (version "0.16.01.29") + (version "0.16.8.25") (source (origin (method url-fetch) (uri (cran-uri "ACSNMineR" version)) (sha256 (base32 - "1b1243wkncanm1blkqzicjgzb576vzcg4iwinsgn2xqr7f264amf")))) + "0gh604s8qall6zfjlwcg2ilxjvz08dplf9k5g47idhv43scm748l")))) (properties `((upstream-name . "ACSNMineR"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From 2b1cc79d989d99f68a70eaf60ebcb0b8bd30532f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:11:50 +0200 Subject: gnu: r-s4vectors: Update to 0.10.3. * gnu/packages/bioinformatics.scm (r-s4vectors): Update to 0.10.3. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 60be692093..85ac8b0779 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5272,13 +5272,13 @@ abnormal copy number.") (define-public r-s4vectors (package (name "r-s4vectors") - (version "0.10.2") + (version "0.10.3") (source (origin (method url-fetch) (uri (bioconductor-uri "S4Vectors" version)) (sha256 (base32 - "0cvq9yb97cka7lg5nimvzxbz8b2hxkscmjdqb5z23w5c7hrbjffp")))) + "09lrvy3d5q58hsgw9as4hyyx07k1vyy2zjn3xsvhyfd97yk6w6lv")))) (properties `((upstream-name . "S4Vectors"))) (build-system r-build-system) -- cgit v1.2.3 From 3e4c0c6662e76943017fd7370b2bcee3fa2e5044 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 17:33:40 +0200 Subject: gnu: Add r-segmented. * gnu/packages/statistics.scm (r-segmented): New variable. --- gnu/packages/statistics.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 990f2fc132..2d2098031a 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2136,6 +2136,26 @@ convenient and easy to use replacement for @code{cat} and @code{print} statements.") (license license:lgpl3+))) +(define-public r-segmented + (package + (name "r-segmented") + (version "0.5-1.4") + (source + (origin + (method url-fetch) + (uri (cran-uri "segmented" version)) + (sha256 + (base32 + "1740cvx2q4v23g4q0zkvg50s5bv8jcrlzzhm7fac4xn0riwmzp5i")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/segmented") + (synopsis "Regression models with breakpoints estimation") + (description + "Given a regression model, segmented updates the model by adding one or +more segmented (i.e., piecewise-linear) relationships. Several variables with +multiple breakpoints are allowed.") + (license (list license:gpl2+ license:gpl3+)))) + (define-public r-snow (package (name "r-snow") -- cgit v1.2.3 From 3b851cd4ac8806b62073f1bff93adc76edb3a99b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:14:35 +0200 Subject: gnu: r-seqinr: Update to 3.3-1. * gnu/packages/bioinformatics.scm (r-seqinr): Update to 3.3-1. [propagated-inputs]: Add "r-segmented". --- gnu/packages/bioinformatics.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 85ac8b0779..b13a5aad4a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5299,17 +5299,18 @@ S4Vectors package itself.") (define-public r-seqinr (package (name "r-seqinr") - (version "3.1-3") + (version "3.3-1") (source (origin (method url-fetch) (uri (cran-uri "seqinr" version)) (sha256 (base32 - "0bbjfwbqg74wsamb3iz01g0ssdpdpg65gh00y9xlnpk4wb990n4n")))) + "1al83y6m7739dz2j895yihksm0s5l45ialid4yw911ylbg3w6cm1")))) (build-system r-build-system) (propagated-inputs - `(("r-ade4" ,r-ade4))) + `(("r-ade4" ,r-ade4) + ("r-segmented" ,r-segmented))) (inputs `(("zlib" ,zlib))) (home-page "http://seqinr.r-forge.r-project.org/") -- cgit v1.2.3 From 4fa7091d549d9f8bde23b155f8056d8ebcddf62e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:14:53 +0200 Subject: gnu: r-genomeinfodb: Update to 1.8.7. * gnu/packages/bioinformatics.scm (r-genomeinfodb): Update to 1.8.7. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b13a5aad4a..42d45121be 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5353,13 +5353,13 @@ possible.") (define-public r-genomeinfodb (package (name "r-genomeinfodb") - (version "1.8.3") + (version "1.8.7") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomeInfoDb" version)) (sha256 (base32 - "03s2khhdwz06xr58cjpkil935y6p7f6ljqkbkkcai73qxl1k4ica")))) + "1x96468bbjx7z3ikp1dgr2krnz9pwx86vmssfbfrsikaxfs4q829")))) (properties `((upstream-name . "GenomeInfoDb"))) (build-system r-build-system) -- cgit v1.2.3 From bbf53cb527227b66ecc8d147660ea4d27165e662 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:15:06 +0200 Subject: gnu: r-variantannotation: Update to 1.18.7. * gnu/packages/bioinformatics.scm (r-variantannotation): Update to 1.18.7. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 42d45121be..ed7d54bc55 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5404,13 +5404,13 @@ CAGE.") (define-public r-variantannotation (package (name "r-variantannotation") - (version "1.18.6") + (version "1.18.7") (source (origin (method url-fetch) (uri (bioconductor-uri "VariantAnnotation" version)) (sha256 (base32 - "17q2b3wlv3250v6qm114srkarxykpd5rqmg4kzymmqsn1b8hynhv")))) + "002kif2c66wbcng953m3g1jys7w1lgz7hh3zsk4jlnhc20jdv1vj")))) (properties `((upstream-name . "VariantAnnotation"))) (inputs -- cgit v1.2.3 From 01ebbb1b76a0a7c2e34cbc13484cad3103cf06e3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:15:16 +0200 Subject: gnu: r-limma: Update to 3.28.21. * gnu/packages/bioinformatics.scm (r-limma): Update to 3.28.21. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ed7d54bc55..d007caea2f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5436,13 +5436,13 @@ coding changes and predict coding outcomes.") (define-public r-limma (package (name "r-limma") - (version "3.28.17") + (version "3.28.21") (source (origin (method url-fetch) (uri (bioconductor-uri "limma" version)) (sha256 (base32 - "124n8dbvl1yy8b1068kqmqszpfhaawk5xfyb73vixma2i66nrcyk")))) + "1dvisifd2rr7s1rrsqj5vrv2qcg4la4yi2ajbn0zkk5z81ffxv9f")))) (build-system r-build-system) (home-page "http://bioinf.wehi.edu.au/limma") (synopsis "Package for linear models for microarray and RNA-seq data") -- cgit v1.2.3 From 10e479a7c0e59f81548883525c45c44ab1704580 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:15:28 +0200 Subject: gnu: r-genomicranges: Update to 1.24.3. * gnu/packages/bioinformatics.scm (r-genomicranges): Update to 1.24.3. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index d007caea2f..924ea5c9a5 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5491,13 +5491,13 @@ different technologies, including microarrays, RNA-seq, and quantitative PCR.") (define-public r-genomicranges (package (name "r-genomicranges") - (version "1.24.2") + (version "1.24.3") (source (origin (method url-fetch) (uri (bioconductor-uri "GenomicRanges" version)) (sha256 (base32 - "183kdz76rz93v69k6x684bpwa28xixp83bsyf6xfy182h6vh8x89")))) + "098a34hfgb5z120v6wpl5nv8v61nm65yg6xq0j7i9bigvxr7apg2")))) (properties `((upstream-name . "GenomicRanges"))) (build-system r-build-system) -- cgit v1.2.3 From 44f711dbe6da760ff9efb5ebe23ef32d1a1ba17a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:15:39 +0200 Subject: gnu: r-biocparallel: Update to 1.6.6. * gnu/packages/bioinformatics.scm (r-biocparallel): Update to 1.6.6. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 924ea5c9a5..a4620e491e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5597,13 +5597,13 @@ powerful online queries from gene annotation to database mining.") (define-public r-biocparallel (package (name "r-biocparallel") - (version "1.6.3") + (version "1.6.6") (source (origin (method url-fetch) (uri (bioconductor-uri "BiocParallel" version)) (sha256 (base32 - "1gb3lpafhx9wi7wbjdvczdf837qq1arpymcr438jwx39biv9dwb4")))) + "1l39zmvhjlvlczrk5wal4y2s4g0b2kmaczgq5biah9qn45y474mw")))) (properties `((upstream-name . "BiocParallel"))) (build-system r-build-system) -- cgit v1.2.3 From 5aaa12dfb5d2afe0cf54c0ac907710920c66b014 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:15:56 +0200 Subject: gnu: r-digest: Update to 0.6.10. * gnu/packages/statistics.scm (r-digest): Update to 0.6.10. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 2d2098031a..19cf880b8f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -235,13 +235,13 @@ effects of different types of color-blindness.") (define-public r-digest (package (name "r-digest") - (version "0.6.9") + (version "0.6.10") (source (origin (method url-fetch) (uri (cran-uri "digest" version)) (sha256 - (base32 "0ixy1mb7kfl20lkckqiilpw03g1ip4ibihs03gicz7w625hc7zcm")))) + (base32 "07825781nl85gx3pqskc04ywgs0f874qj9z2nyrwz7h0aqks0l8c")))) (build-system r-build-system) ;; Vignettes require r-knitr, which requires r-digest, so we have to ;; disable them and the tests. -- cgit v1.2.3 From cb27d6ba4e0f9a30565e5aadb07b71823d688cfe Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:16:13 +0200 Subject: gnu: r-rcpp: Update to 0.12.7. * gnu/packages/statistics.scm (r-rcpp): Update to 0.12.7. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 19cf880b8f..ba72a6a799 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -359,13 +359,13 @@ Munsell colour system.") (define-public r-rcpp (package (name "r-rcpp") - (version "0.12.5") + (version "0.12.7") (source (origin (method url-fetch) (uri (cran-uri "Rcpp" version)) (sha256 - (base32 "1vw0zbd6zhqixqg7h8ahn1dr1hb492365x419nrp2lhvr60r8i0k")))) + (base32 "1ipid4yfqp1k5c70f7bz7izzq63srmrcxhiqrnyilk2wgrvd7ypb")))) (build-system r-build-system) (home-page "http://www.rcpp.org") (synopsis "Seamless R and C++ Integration") -- cgit v1.2.3 From 21f45c9d9ecf77f2356798663219a33ebafafd27 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:16:29 +0200 Subject: gnu: r-mgcv: Update to 1.8-14. * gnu/packages/statistics.scm (r-mgcv): Update to 1.8-14. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ba72a6a799..ae1fd9f593 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -383,14 +383,14 @@ and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see (define-public r-mgcv (package (name "r-mgcv") - (version "1.8-12") + (version "1.8-14") (source (origin (method url-fetch) (uri (cran-uri "mgcv" version)) (sha256 (base32 - "1khzy36nn6xbnzqfc2953ng0sv8w91mns1ymhibaqn1150x1qid0")))) + "0ly9x23q6kd7aqrsb8qjsj8jc597h3068iaqjmkkdv56r5dln29f")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/mgcv") (synopsis "Mixed generalised additive model computation") -- cgit v1.2.3 From 8b2f96e73a7fe65b82f048c5a536a5116756a82c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:17:09 +0200 Subject: gnu: r-permute: Update to 0.9-4. * gnu/packages/statistics.scm (r-permute): Update to 0.9-4. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ae1fd9f593..3985d0ce49 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -404,14 +404,14 @@ distributions beyond the exponential family.") (define-public r-permute (package (name "r-permute") - (version "0.9-0") + (version "0.9-4") (source (origin (method url-fetch) (uri (cran-uri "permute" version)) (sha256 (base32 - "0w68cqw6s4pixix8bh1qzsy1pm64jqh1cjznw74h82ygp8sj7p73")))) + "1w8wzk1fg9q7wvisnfp2js70dg0m9wi12gkdhpyngpbdcgssahd5")))) (build-system r-build-system) ;; Tests do not run correctly, but running them properly would entail a ;; circular dependency with vegan. -- cgit v1.2.3 From deb265a7b31cca25ffa607aaa709eea38279788a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:17:34 +0200 Subject: gnu: r-plyr: Update to 1.8.4. * gnu/packages/statistics.scm (r-plyr): Update to 1.8.4. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 3985d0ce49..b4bc8fa9c7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -427,13 +427,13 @@ in which the whole-plots or split-plots or both can be freely exchangeable.") (define-public r-plyr (package (name "r-plyr") - (version "1.8.3") + (version "1.8.4") (source (origin (method url-fetch) (uri (cran-uri "plyr" version)) (sha256 - (base32 "06v4zxawpjz37rp2q2ii5q43g664z9s29j4ydn0cz3crn7lzl6pk")))) + (base32 "1igar5pcjqh0jyxv0z3jah8rz617vfa86vw0r5c7c031b7bj5db0")))) (build-system r-build-system) (native-inputs `(("r-rcpp" ,r-rcpp))) (home-page "http://had.co.nz/plyr") -- cgit v1.2.3 From 1f94ede8ea0453a384a1314437a5f9855bbb1899 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:17:50 +0200 Subject: gnu: r-stringi: Update to 1.1.1. * gnu/packages/statistics.scm (r-stringi): Update to 1.1.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index b4bc8fa9c7..4f50d9681c 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -486,14 +486,14 @@ designed by Cynthia Brewer as described at http://colorbrewer2.org") (define-public r-stringi (package (name "r-stringi") - (version "1.0-1") + (version "1.1.1") (source (origin (method url-fetch) (uri (cran-uri "stringi" version)) (sha256 (base32 - "1ld38536sswyywp6pyys3v8vkngbk5cksrhdxp8jyr6bz7qf8j77")))) + "0rg14hga1g2havd3imhk04iyh1dnisnmxf7yhiiwhs7y72hphc94")))) (build-system r-build-system) (inputs `(("icu4c" ,icu4c))) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From bf1e9e4517a38c5140362e0b52e49c29b271d467 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:18:13 +0200 Subject: gnu: r-stringr: Update to 1.1.0. * gnu/packages/statistics.scm (r-stringr): Update to 1.1.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 4f50d9681c..c597a650f5 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -512,13 +512,13 @@ transliteration, concatenation, date-time formatting and parsing, etc.") (define-public r-stringr (package (name "r-stringr") - (version "1.0.0") + (version "1.1.0") (source (origin (method url-fetch) (uri (cran-uri "stringr" version)) (sha256 - (base32 "0jnz6r9yqyf7dschr2fnn1slg4wn6b4ik5q00j4zrh43bfw7s9pq")))) + (base32 "0css5j4psl80br75chg6s1s3ipzf89f71bnbys34flp9yghg1cfc")))) (build-system r-build-system) (propagated-inputs `(("r-magrittr" ,r-magrittr) -- cgit v1.2.3 From 6d6a917a16bc07fef3b08d5a2b78867c35b9e33c Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:18:31 +0200 Subject: gnu: r-lazyeval: Update to 0.2.0. * gnu/packages/statistics.scm (r-lazyeval): Update to 0.2.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index c597a650f5..65edc8ee6d 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -683,13 +683,13 @@ wrong.") (define-public r-lazyeval (package (name "r-lazyeval") - (version "0.1.10") + (version "0.2.0") (source (origin (method url-fetch) (uri (cran-uri "lazyeval" version)) (sha256 (base32 - "02qfpn2fmy78vx4jxr7g7rhqzcm1kcivfwai7lbh0vvpawia0qwh")))) + "1jwdz40nznlc44hpjli7h98gnpa4d98ifggmj7z88h84n9aqywqk")))) (build-system r-build-system) (home-page "https://github.com/hadley/lazyeval") (synopsis "Lazy (non-standard) evaluation in R") -- cgit v1.2.3 From 5b67bd6e8fed6812ef9e60a175a24df6329374d1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:18:47 +0200 Subject: gnu: r-dbi: Update to 0.5-1. * gnu/packages/statistics.scm (r-dbi): Update to 0.5-1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 65edc8ee6d..309dc7a85f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -701,13 +701,13 @@ evaluation (NSE) in R.") (define-public r-dbi (package (name "r-dbi") - (version "0.4-1") + (version "0.5-1") (source (origin (method url-fetch) (uri (cran-uri "DBI" version)) (sha256 (base32 - "13n6ibmrma42qmq17qgkyjsc0ciwqf17sd7lw7w26pwpyjd4mwgg")))) + "1idwm9lkmz6ns6h0vvgml18mg0k7vjqiv9p5svrdcmx7r1rirpdi")))) (build-system r-build-system) (home-page "https://github.com/rstats-db/DBI") (synopsis "R database interface") -- cgit v1.2.3 From 2d037a2d68e210a829131f4e653e97160721efeb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:19:06 +0200 Subject: gnu: r-mime: Update to 0.5. * gnu/packages/statistics.scm (r-mime): Update to 0.5. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 309dc7a85f..edfb22f842 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -800,13 +800,13 @@ supported via Andre Simon's highlight package.") (define-public r-mime (package (name "r-mime") - (version "0.4") + (version "0.5") (source (origin (method url-fetch) (uri (cran-uri "mime" version)) (sha256 (base32 - "145cdcg252w2zsq67dmvmsqka60msfp7agymlxs3gl3ihgiwg46p")))) + "0i91m3ivaja1k33jwcvz16pfjypkci27awm8glil7sxhmwaj3izw")))) (build-system r-build-system) (home-page "https://github.com/yihui/mime") (synopsis "R package to map filenames to MIME types") -- cgit v1.2.3 From ad28491e1218474d09baf5b073246bc622e39fd0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:19:18 +0200 Subject: gnu: r-knitr: Update to 1.14. * gnu/packages/statistics.scm (r-knitr): Update to 1.14. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index edfb22f842..06f2afb8ae 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -862,13 +862,13 @@ emitter (http://pyyaml.org/wiki/LibYAML) for R.") (define-public r-knitr (package (name "r-knitr") - (version "1.13") + (version "1.14") (source (origin (method url-fetch) (uri (cran-uri "knitr" version)) (sha256 (base32 - "0v69846myi4fbjp8wiik4295fhba67s3i6ccysghm6x031i2f26q")))) + "1v0s0knb294p7a2xkwy35bhg0w8p3qcgyphd748sj86hh8a30vds")))) (build-system r-build-system) (propagated-inputs `(("r-evaluate" ,r-evaluate) -- cgit v1.2.3 From 344d5323d6e0af60f4f820da335f0b24ee4d1c63 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:19:35 +0200 Subject: gnu: r-crayon: Update to 1.3.2. * gnu/packages/statistics.scm (r-crayon): Update to 1.3.2. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 06f2afb8ae..c8d92279ba 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -993,13 +993,13 @@ you call it again with the same arguments it returns the pre-computed value.") (define-public r-crayon (package (name "r-crayon") - (version "1.3.1") + (version "1.3.2") (source (origin (method url-fetch) (uri (cran-uri "crayon" version)) (sha256 (base32 - "0d38fm06h272a8iqlc0d45m2rh36giwqw7mwq4z8hkp4vs975fmm")))) + "0s2yam18slph7xsw4pyc9f92gdyf609r5w92yax69zh57kb7asws")))) (build-system r-build-system) (propagated-inputs `(("r-memoise" ,r-memoise))) -- cgit v1.2.3 From ef82bd5888f6753011bf4941ef6073b45f7860a5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:19:49 +0200 Subject: gnu: r-r6: Update to 2.1.3. * gnu/packages/statistics.scm (r-r6): Update to 2.1.3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index c8d92279ba..2eec589fc3 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1059,13 +1059,13 @@ flexible and easy to set up.") (define-public r-r6 (package (name "r-r6") - (version "2.1.2") + (version "2.1.3") (source (origin (method url-fetch) (uri (cran-uri "R6" version)) (sha256 (base32 - "0yad91i9p4r8bbz6nq8zny39y767n9an7ak5p275ynx8km6v3yqv")))) + "19qrkgxvssyi51fm80h93sabzz0n2vgqgv1w8xjqbsap0nx379vy")))) (build-system r-build-system) (home-page "https://github.com/wch/R6/") (synopsis "Classes with reference semantics in R") -- cgit v1.2.3 From e2ad0228fc6928378d3b38fd824185532f8852e0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:20:26 +0200 Subject: gnu: r-xml2: Update to 1.0.0. * gnu/packages/statistics.scm (r-xml2): Update to 1.0.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 2eec589fc3..abcb8a3a1b 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1429,14 +1429,14 @@ and environmental data in the framework of Euclidean exploratory methods.") (define-public r-xml2 (package (name "r-xml2") - (version "0.1.2") + (version "1.0.0") (source (origin (method url-fetch) (uri (cran-uri "xml2" version)) (sha256 (base32 - "0jjilz36h7vbdbkpvjnja1vgjf6d1imql3z4glqn2m2b74w5qm4c")))) + "0f2alsrk3yykznbhnz4pcsg9mb72cv607vbapqx5kqfv39772kgr")))) (build-system r-build-system) (inputs `(("libxml2" ,libxml2))) -- cgit v1.2.3 From 03306201a79d98fb57c2613acc5c305206703ebf Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:21:38 +0200 Subject: gnu: r-multitaper: Update to 1.0-12. * gnu/packages/statistics.scm (r-multitaper): Update to 1.0-12. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index abcb8a3a1b..cfb4c25a5a 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1453,14 +1453,14 @@ files in R. It is built on top of the libxml2 C library.") (define-public r-multitaper (package (name "r-multitaper") - (version "1.0-11") + (version "1.0-12") (source (origin (method url-fetch) (uri (cran-uri "multitaper" version)) (sha256 (base32 - "1s0lmjzpyd7zmc2p1ywv5fm7qkq357p70b76gw9wjlms6d81j1n4")))) + "011qpkwpjclfc24y2qqigmdnikqwdnanflfhihigh5b5k7qwgm5j")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) -- cgit v1.2.3 From 81147fe886942fb3f1b38edba717c7c99379fbc8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:22:06 +0200 Subject: gnu: r-rversions: Update to 1.0.3. * gnu/packages/statistics.scm (r-rversions): Update to 1.0.3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index cfb4c25a5a..b08cea1465 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1479,13 +1479,13 @@ jackknifed confidence intervals are available for most estimates.") (define-public r-rversions (package (name "r-rversions") - (version "1.0.2") + (version "1.0.3") (source (origin (method url-fetch) (uri (cran-uri "rversions" version)) (sha256 (base32 - "0xmi461g1rf5ngb7r1sri798jn6icld1xq25wj9jii2ca8j8xv68")))) + "0i2gi05nrvknr7g89rbppkswyfcwwd4r9gp75fdfhpah8sgq1l11")))) (build-system r-build-system) (propagated-inputs `(("r-curl" ,r-curl) -- cgit v1.2.3 From 130c3c8b93b1d8381780ceb8e25ea76ca2943fb5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:22:19 +0200 Subject: gnu: r-openssl: Update to 0.9.4. * gnu/packages/statistics.scm (r-openssl): Update to 0.9.4. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index b08cea1465..1ffdd987e1 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1562,14 +1562,14 @@ collation, and NAMESPACE files.") (define-public r-openssl (package (name "r-openssl") - (version "0.9.3") + (version "0.9.4") (source (origin (method url-fetch) (uri (cran-uri "openssl" version)) (sha256 (base32 - "0ldqam7d9fyxwhr651ld6lsh05lg4v2y8ajxwzq9ywzjmfb3vlpz")))) + "0rpb3xdzab453yjddr8ryad53ll27zss8abnj30aqa2lzbg4jwyb")))) (build-system r-build-system) (inputs `(("openssl" ,openssl))) -- cgit v1.2.3 From e58498b6ee028e303ecba282840027bd709a86ca Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:23:17 +0200 Subject: gnu: r-httr: Update to 1.2.1. * gnu/packages/statistics.scm (r-httr): Update to 1.2.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 1ffdd987e1..0c09681da3 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1591,13 +1591,13 @@ integers.") (define-public r-httr (package (name "r-httr") - (version "1.1.0") + (version "1.2.1") (source (origin (method url-fetch) (uri (cran-uri "httr" version)) (sha256 (base32 - "08sq34pknsfcy8lm06nydi12mbaxpqpgb025ahr33v9d3g0wvh6p")))) + "03kkjlhyvvi5znwaxfm6cmdsg3q7ivwsvkzgabhjdj2jxs80pfg7")))) (build-system r-build-system) (propagated-inputs `(("r-curl" ,r-curl) -- cgit v1.2.3 From e2cfac445eba59b87ddb97c160e9c1b0dd409f3e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:23:44 +0200 Subject: gnu: r-rstudioapi: Update to 0.6. * gnu/packages/statistics.scm (r-rstudioapi): Update to 0.6. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 0c09681da3..ba549fe224 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1645,13 +1645,13 @@ pure C implementation of the Git core methods.") (define-public r-rstudioapi (package (name "r-rstudioapi") - (version "0.5") + (version "0.6") (source (origin (method url-fetch) (uri (cran-uri "rstudioapi" version)) (sha256 (base32 - "0sgnqfx0m3hzh57k10s7ndrbw7yqjjjcgfikafya98jcc7wmpwym")))) + "1zkvz72z6nw0xc8bhb21y5x1nk6avijs0w8n4vsbvw9sn76wc96s")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/rstudioapi") (synopsis "Safely access the RStudio API") -- cgit v1.2.3 From 3bb9708a7ff4b9aa0c084d0712d11c542f2930c0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:24:04 +0200 Subject: gnu: r-devtools: Update to 1.12.0. * gnu/packages/statistics.scm (r-devtools): Update to 1.12.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ba549fe224..de4e16ab96 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1663,13 +1663,13 @@ informative error messages when it's not available.") (define-public r-devtools (package (name "r-devtools") - (version "1.11.1") + (version "1.12.0") (source (origin (method url-fetch) (uri (cran-uri "devtools" version)) (sha256 (base32 - "0ik3l3q62sspdph613f9ik5yz36s8q5nrc50dqgn3pxzvpwpdj2i")))) + "16l18szmj482vf3dvl2fqwwa4zaqylmic1pk7dwh428cp0d86mzi")))) (build-system r-build-system) (propagated-inputs `(("r-curl" ,r-curl) -- cgit v1.2.3 From 348bb8d6631f3c288777c3a9fb26061dd26de91d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:24:44 +0200 Subject: gnu: r-withr: Update to 1.0.2. * gnu/packages/statistics.scm (r-withr): Update to 1.0.2. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index de4e16ab96..d658c8f44f 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1693,13 +1693,13 @@ tools to simplify the devolpment of R packages.") (define-public r-withr (package (name "r-withr") - (version "1.0.1") + (version "1.0.2") (source (origin (method url-fetch) (uri (cran-uri "withr" version)) (sha256 (base32 - "0zbj3rd7dc0ycknmay7y7rm1qvnh9n05jw93gjggz46j2zfmy93y")))) + "042z8nmqqilgrvhmbqrjc05qys3gzwq1rqy2wxp2bi5d41859493")))) (build-system r-build-system) (home-page "https://github.com/jimhester/withr") (synopsis "Run code with temporarily modified global state") -- cgit v1.2.3 From a589acfb08882cf7978d53a21d0ed27926b44a4e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:12:22 +0200 Subject: gnu: Add r-tibble. * gnu/packages/statistics.scm (r-tibble): New variable. --- gnu/packages/statistics.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d658c8f44f..d6b57b7fa7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1078,6 +1078,29 @@ private members, and they support inheritance, even when the classes are defined in different packages.") (license license:expat))) +(define-public r-tibble + (package + (name "r-tibble") + (version "1.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "tibble" version)) + (sha256 + (base32 + "011i352ylq9b4xfcj7h10h7qsqd9qkc1rzc0pr1gf8qjb788p2pd")))) + (build-system r-build-system) + (propagated-inputs + `(("r-assertthat" ,r-assertthat) + ("r-lazyeval" ,r-lazyeval) + ("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/hadley/tibble") + (synopsis "Simple data frames") + (description + "This package provides a @code{tbl_df} class that offers better checking +and printing capabilities than traditional data frames.") + (license license:expat))) + (define-public r-dplyr (package (name "r-dplyr") -- cgit v1.2.3 From b90314b4f829fda6eb0245198151123c40736fc1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:13:07 +0200 Subject: gnu: Add r-hms. * gnu/packages/statistics.scm (r-hms): New variable. --- gnu/packages/statistics.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d6b57b7fa7..eccc704405 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1732,6 +1732,25 @@ in which global state has been temporarily modified. Many of these functions were originally a part of the r-devtools package.") (license license:gpl2+))) +(define-public r-hms + (package + (name "r-hms") + (version "0.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "hms" version)) + (sha256 + (base32 + "0ln1dc26mkl5pc26vvyf01d35x75q6cjaj39cccxp67chbwbdlds")))) + (build-system r-build-system) + (home-page "https://github.com/rstats-db/hms") + (synopsis "Pretty time of day") + (description + "This package implements an S3 class for storing and formatting +time-of-day values, based on the @code{difftime} class.") + (license license:gpl3+))) + (define-public r-readr (package (name "r-readr") -- cgit v1.2.3 From 8c6e2b843e14eadaa4a5034c69965ee18383cfc0 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:24:59 +0200 Subject: gnu: r-readr: Update to 1.0.0. * gnu/packages/statistics.scm (r-readr): Update to 1.0.0. [propagated-inputs]: Add "r-hms", "r-tibble", and "r-r6". --- gnu/packages/statistics.scm | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index eccc704405..a4bc44e064 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1754,17 +1754,20 @@ time-of-day values, based on the @code{difftime} class.") (define-public r-readr (package (name "r-readr") - (version "0.2.2") + (version "1.0.0") (source (origin (method url-fetch) (uri (cran-uri "readr" version)) (sha256 (base32 - "156422xwvskynna5kjc8h1qqnn50kxgjrihl2h2b7vm9sxxdyr2m")))) + "0xji0dbal6xcxnsmjj678fw29n7wrj45wrd5ng99yhqqijcm9f6g")))) (build-system r-build-system) (propagated-inputs `(("r-curl" ,r-curl) ("r-rcpp" ,r-rcpp) + ("r-hms" ,r-hms) + ("r-tibble" ,r-tibble) + ("r-r6" ,r-r6) ("r-bh" ,r-bh))) (home-page "https://github.com/hadley/readr") (synopsis "Read tabular data") -- cgit v1.2.3 From bdfc2c954eec84555e214e85cdb0b3ad49a3f526 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:25:21 +0200 Subject: gnu: r-plotrix: Update to 3.6-3. * gnu/packages/statistics.scm (r-plotrix): Update to 3.6-3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index a4bc44e064..bbf28ff175 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1779,13 +1779,13 @@ disk (or a connection).") (define-public r-plotrix (package (name "r-plotrix") - (version "3.6-2") + (version "3.6-3") (source (origin (method url-fetch) (uri (cran-uri "plotrix" version)) (sha256 (base32 - "1jn1k3skmlgyvpijj6vlcn5m2zgrsdh00g1fq8n5dqs1pkl1sqrw")))) + "0h97jra8zqssi9j4i0psa6c7ya49ya8jd2qc18lc61a4s2yn8w91")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/plotrix") (synopsis "Various plotting functions") -- cgit v1.2.3 From fce4dfd82e9556670c2703acb5e6f2cfec5a187b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:28:02 +0200 Subject: gnu: r-lattice: Update to 0.20-34. * gnu/packages/statistics.scm (r-lattice): Update to 0.20-34. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index bbf28ff175..7970732335 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1814,13 +1814,13 @@ scaling functions for R.") (define-public r-lattice (package (name "r-lattice") - (version "0.20-33") + (version "0.20-34") (source (origin (method url-fetch) (uri (cran-uri "lattice" version)) (sha256 (base32 - "0car12x5vl9k180i9pc86lq3cvwqakdpqn3lgdf98k9n2h52cilg")))) + "0615h69czr73k47whhzimf1qxv5qk0cabcrkljwhyrn6m6piq6ja")))) (build-system r-build-system) (home-page "http://lattice.r-forge.r-project.org/") (synopsis "High-level data visualization system") -- cgit v1.2.3 From 27f10d3db2290f38ef5df2b5501d60c69aa5a4a1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:28:20 +0200 Subject: gnu: r-futile-logger: Update to 1.4.3. * gnu/packages/statistics.scm (r-futile-logger): Update to 1.4.3. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 7970732335..cab0934093 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2160,13 +2160,13 @@ options defined in other packages.") (define-public r-futile-logger (package (name "r-futile-logger") - (version "1.4.1") + (version "1.4.3") (source (origin (method url-fetch) (uri (cran-uri "futile.logger" version)) (sha256 (base32 - "1plld1icxrcay7llplbd4i8inpg97crpnczk58mbk26j8glqbr51")))) + "1r3nayk0z9n1svbf8640vw90dal5q07nkn0gv4bnva3pbzb352sy")))) (properties `((upstream-name . "futile.logger"))) (build-system r-build-system) (propagated-inputs -- cgit v1.2.3 From b9ab3b08b8efc8e732e4a4994ebd2e476ad56c15 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:28:56 +0200 Subject: gnu: r-lambda-r: Update to 1.1.9. * gnu/packages/statistics.scm (r-lambda-r): Update to 1.1.9. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index cab0934093..ab49622230 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2117,13 +2117,13 @@ plotted and compared with the asymptotic curve.") (define-public r-lambda-r (package (name "r-lambda-r") - (version "1.1.7") + (version "1.1.9") (source (origin (method url-fetch) (uri (cran-uri "lambda.r" version)) (sha256 (base32 - "1lxzrwyminc3dfb07pbn1rmj45kplxgsb17b06pzflj728knbqwa")))) + "1j6287iqvs3ill6r5g6ksf5809qp0l0nf20ib8266m1r09lc9j14")))) (properties `((upstream-name . "lambda.r"))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/lambda.r") -- cgit v1.2.3 From 7931531a23d7b6ec14d16e679fcdde274f296f2d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:29:07 +0200 Subject: gnu: r-sparsem: Update to 1.72. * gnu/packages/statistics.scm (r-sparsem): Update to 1.72. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ab49622230..ef5f64b286 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2225,13 +2225,13 @@ worker processes and collect and return the results on the master.") (define-public r-sparsem (package (name "r-sparsem") - (version "1.7") + (version "1.72") (source (origin (method url-fetch) (uri (cran-uri "SparseM" version)) (sha256 (base32 - "0s9kab5khk7daqf6nfp1wm1qnhkssnnwnymisfwyk3kz4q5maqfz")))) + "0zpb1swn9xjkb22sky10ixff7vqfiz9m36nkbc1qqbm9frcldnka")))) (properties `((upstream-name . "SparseM"))) (inputs -- cgit v1.2.3 From f791b689b21678823be932f8eb51af72a60e831d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:29:20 +0200 Subject: gnu: r-dt: Update to 0.2. * gnu/packages/statistics.scm (r-dt): Update to 0.2. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index ef5f64b286..4c525e1c9b 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2360,13 +2360,13 @@ using the multicore functionality of the parallel package.") (define-public r-dt (package (name "r-dt") - (version "0.1") + (version "0.2") (source (origin (method url-fetch) (uri (cran-uri "DT" version)) (sha256 (base32 - "0mj7iiy1gglw7kixybmb7kr1bcl5r006zcb3klkw7p6vvvzdm6qj")))) + "1g86p0jcjqi2ph5rhm45jkzibsa6yfcj8n5cg3giy90sqgjzkdx1")))) (properties `((upstream-name . "DT"))) (build-system r-build-system) -- cgit v1.2.3 From c3253ce1b5122e916437cdd7a285d5c76b571ebc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:31:02 +0200 Subject: gnu: r-irlba: Update to 2.1.1. * gnu/packages/statistics.scm (r-irlba): Update to 2.1.1. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 4c525e1c9b..714a7405ac 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2412,14 +2412,14 @@ flexible than the orphaned \"base64\" package.") (define-public r-irlba (package (name "r-irlba") - (version "2.0.0") + (version "2.1.1") (source (origin (method url-fetch) (uri (cran-uri "irlba" version)) (sha256 (base32 - "1gms3rxrm24ri4vjvnpl4v47m7bx0zk63z8y85rbhsvx230xdy0m")))) + "0yb8b8g6f3cb0f56r702fn2px8nf5rx8cyy2scq36xai9w7f25jj")))) (build-system r-build-system) (home-page "http://cran.r-project.org/web/packages/irlba") (synopsis "Methods for eigendecomposition of large matrices") -- cgit v1.2.3 From 1b7f85f52d109c05234216cbee57ad8c7c8c8e01 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:31:13 +0200 Subject: gnu: r-tidyr: Update to 0.6.0. * gnu/packages/statistics.scm (r-tidyr): Update to 0.6.0. --- gnu/packages/statistics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 714a7405ac..de21586a80 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2792,14 +2792,14 @@ most common form of color blindness.") (define-public r-tidyr (package (name "r-tidyr") - (version "0.4.1") + (version "0.6.0") (source (origin (method url-fetch) (uri (cran-uri "tidyr" version)) (sha256 (base32 - "0xp6lyr2l4ix2mrilx4qmca7wm5qmbhvi24m4nf7qsgwp54gnv2h")))) + "1bpwbphgl43ym433b0nrshwhr7pprmj1wkpkamdzix1zvf9dcbc2")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) -- cgit v1.2.3 From 5e67507273cbd52b66410e3e9422b8f47ed6e068 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 15:40:42 +0200 Subject: gnu: r-rcpparmadillo: Update to 0.7.400.2.0. * gnu/packages/maths.scm (armadillo-for-rcpparmadillo): Update to 7.400.2. * gnu/packages/statistics.scm (r-rcpparmadillo): Update to 0.7.400.2.0. --- gnu/packages/maths.scm | 6 +++--- gnu/packages/statistics.scm | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f676a2a277..44a24ef695 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1816,14 +1816,14 @@ associated functions (eg. contiguous and non-contiguous submatrix views).") (define-public armadillo-for-rcpparmadillo (package (inherit armadillo) - (version "6.700.6") + (version "7.400.2") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/arma/armadillo-" - version ".tar.gz")) + version ".tar.xz")) (sha256 (base32 - "1cdpjxb0fz5f28y5qrqgpw53s7qi8s2v3al9lfdldqxngb21vpx8")))))) + "0xmpnqhm9mwr1lssjyarj0cl8b4svbqv6z1xa1dxlwd2ly1srkg4")))))) (define-public muparser ;; When switching download sites, muparser re-issued a 2.2.5 release with a diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index de21586a80..8dea4eeead 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1858,13 +1858,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.6.700.6.0") + (version "0.7.400.2.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "0x736cjg1pbvn8c6h91c88qmmz4pddvvqg88k9c9kwhn24fjrra0")) + "0g2658iy43higy1cay00ljibgnwh0zv5gcwvbhckjs48y8z1a2pb")) (modules '((guix build utils))) ;; Remove bundled armadillo sources (snippet -- cgit v1.2.3 From de1eebd7d7d0aa56c990cc141f11e5b7d30e3921 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:12:46 +0200 Subject: gnu: r-dplyr: Update to 0.5.0. * gnu/packages/statistics.scm (r-dplyr): Update to 0.5.0. --- gnu/packages/statistics.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 8dea4eeead..e54d8763a7 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1104,20 +1104,21 @@ and printing capabilities than traditional data frames.") (define-public r-dplyr (package (name "r-dplyr") - (version "0.4.3") + (version "0.5.0") (source (origin (method url-fetch) (uri (cran-uri "dplyr" version)) (sha256 (base32 - "1p8rbn4p4yrx2840dapwiahf9iqa8gnvd35nyc200wfhmrxlqdlc")))) + "0ks5cklb03laqf5ygcw986g1lv7wk1ipvypjlha8xly2y4lvilwk")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) ("r-r6" ,r-r6) ("r-magrittr" ,r-magrittr) ("r-lazyeval" ,r-lazyeval) - ("r-dbi" ,r-dbi))) + ("r-dbi" ,r-dbi) + ("r-tibble" ,r-tibble))) (native-inputs `(("r-rcpp" ,r-rcpp) ("r-bh" ,r-bh))) -- cgit v1.2.3 From 87a7c55ebd88b03c93b740d7b2a6d1c4db78854b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:19:57 +0200 Subject: gnu: r-rmarkdown: Update to 1.0. * gnu/packages/statistics.scm (r-rmarkdown): Update to 1.0. [propagated-inputs]: Add "r-jsonlite" and "r-base64enc". --- gnu/packages/statistics.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index e54d8763a7..f7110ae4d1 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1943,19 +1943,21 @@ encoder/decoder, round-off-error-free sum and cumsum, etc.") (define-public r-rmarkdown (package (name "r-rmarkdown") - (version "0.9.6") + (version "1.0") (source (origin (method url-fetch) (uri (cran-uri "rmarkdown" version)) (sha256 (base32 - "09ajq5miqzz46q0i9svvbh93dbi7xbjn4702d6z3scdz272gx7l2")))) + "0c7gs9c8xdjfxviw0syh13pf3vys2b2ssixmnyqbji64xdscn7pz")))) (properties `((upstream-name . "rmarkdown"))) (build-system r-build-system) (propagated-inputs `(("r-catools" ,r-catools) ("r-htmltools" ,r-htmltools) + ("r-jsonlite" ,r-jsonlite) + ("r-base64enc" ,r-base64enc) ("r-knitr" ,r-knitr) ("r-yaml" ,r-yaml) ("ghc-pandoc" ,ghc-pandoc))) -- cgit v1.2.3 From 401528b2b5984c847676db8d94e046b98a4acf37 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:34:01 +0200 Subject: gnu: r-go-db: Update to 3.3.0. * gnu/packages/bioinformatics.scm (r-go-db): Update to 3.3.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a4620e491e..f63f94347a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5839,7 +5839,7 @@ extracting the desired features in a convenient format.") (define-public r-go-db (package (name "r-go-db") - (version "3.2.2") + (version "3.3.0") (source (origin (method url-fetch) (uri (string-append "http://www.bioconductor.org/packages/" @@ -5847,7 +5847,7 @@ extracting the desired features in a convenient format.") version ".tar.gz")) (sha256 (base32 - "00gariag9ampz82dh0xllrc26r85d7vdcwc0vca5zdy147rwxr7f")))) + "0x2hkbhg9d8waw32hdn05887vv3zbs5aqff3mf5vfyzvl7xhgxy0")))) (properties `((upstream-name . "GO.db"))) (build-system r-build-system) -- cgit v1.2.3 From 5cc7cff6ef5693e2bebe9e4fda4dcba87e13cd32 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:34:18 +0200 Subject: gnu: r-org-hs-eg-db: Update to 3.3.0. * gnu/packages/bioinformatics.scm (r-org-hs-eg-db): Update to 3.3.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f63f94347a..733669b6ef 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6060,7 +6060,7 @@ downloaded from Encode.") (define-public r-org-hs-eg-db (package (name "r-org-hs-eg-db") - (version "3.2.3") + (version "3.3.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -6070,7 +6070,7 @@ downloaded from Encode.") "org.Hs.eg.db_" version ".tar.gz")) (sha256 (base32 - "0xicgkbh6xkvs74s1piafqac63dyz2ycdyil4pj4ghhxx2sabm6p")))) + "09zb43yjd82ny210n5a0wsrji4w56l2r6ana6d9lx0nn9mzd7rzp")))) (properties `((upstream-name . "org.Hs.eg.db"))) (build-system r-build-system) -- cgit v1.2.3 From 019be09060f1459b078e6ac11e0c36c33f2e1991 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:34:31 +0200 Subject: gnu: r-org-ce-eg-db: Update to 3.3.0. * gnu/packages/bioinformatics.scm (r-org-ce-eg-db): Update to 3.3.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 733669b6ef..181c609f33 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6086,7 +6086,7 @@ annotations for the human genome.") (define-public r-org-ce-eg-db (package (name "r-org-ce-eg-db") - (version "3.2.3") + (version "3.3.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -6096,7 +6096,7 @@ annotations for the human genome.") "org.Ce.eg.db_" version ".tar.gz")) (sha256 (base32 - "1d0lx00ybq34yqs6mziaa0lrh77xm0ggsmi76g6k95f77gi7m1sw")))) + "17mvb2ci2jgac3zi420cbf70n4zswqinzxlk1v2fjnp8vvydl2fw")))) (properties `((upstream-name . "org.Ce.eg.db"))) (build-system r-build-system) -- cgit v1.2.3 From 6ab7ca24f229cd0ea1afbeb787cd9734b3109809 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:34:46 +0200 Subject: gnu: r-org-dm-eg-db: Update to 3.3.0. * gnu/packages/bioinformatics.scm (r-org-dm-eg-db): Update to 3.3.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 181c609f33..15db854793 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6112,7 +6112,7 @@ annotations for the genome of the model worm Caenorhabditis elegans.") (define-public r-org-dm-eg-db (package (name "r-org-dm-eg-db") - (version "3.2.3") + (version "3.3.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -6122,7 +6122,7 @@ annotations for the genome of the model worm Caenorhabditis elegans.") "org.Dm.eg.db_" version ".tar.gz")) (sha256 (base32 - "0mib46c7nr00l7mh290n383za9hyl91a1dc6jhjbk884jmxaxyz6")))) + "15kzvw78xwa54yk1d69l6pmgny4726ydpdkk8lic26vr0yiwicla")))) (properties `((upstream-name . "org.Dm.eg.db"))) (build-system r-build-system) -- cgit v1.2.3 From d108c2122814188e8081dd4aeae3c22202d5e77b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 12 Sep 2016 16:34:57 +0200 Subject: gnu: r-org-mm-eg-db: Update to 3.3.0. * gnu/packages/bioinformatics.scm (r-org-mm-eg-db): Update to 3.3.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 15db854793..a7f0fcb70f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -6138,7 +6138,7 @@ annotations for the genome of the model fruit fly Drosophila melanogaster.") (define-public r-org-mm-eg-db (package (name "r-org-mm-eg-db") - (version "3.2.3") + (version "3.3.0") (source (origin (method url-fetch) ;; We cannot use bioconductor-uri here because this tarball is @@ -6148,7 +6148,7 @@ annotations for the genome of the model fruit fly Drosophila melanogaster.") "org.Mm.eg.db_" version ".tar.gz")) (sha256 (base32 - "0wh1pm3npdg7070875kfgiid3bqkz3q7rq6snhk6bxfvph00298y")))) + "0r939vfmsqqdwfimix1nv0bkhnixawy9c6avbclrncfanw3kgjax")))) (properties `((upstream-name . "org.Mm.eg.db"))) (build-system r-build-system) -- cgit v1.2.3 From e9aba1ea338d9e311c005ee294992297f19b8ca5 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Mon, 12 Sep 2016 18:06:03 +0200 Subject: gnu: Add nfs-utils * gnu/packages/nfs.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/nfs.scm | 118 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 119 insertions(+) create mode 100644 gnu/packages/nfs.scm diff --git a/gnu/local.mk b/gnu/local.mk index 9b350131dd..571400989b 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -257,6 +257,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/netpbm.scm \ %D%/packages/nettle.scm \ %D%/packages/networking.scm \ + %D%/packages/nfs.scm \ %D%/packages/ninja.scm \ %D%/packages/node.scm \ %D%/packages/noweb.scm \ diff --git a/gnu/packages/nfs.scm b/gnu/packages/nfs.scm new file mode 100644 index 0000000000..650a2af0d6 --- /dev/null +++ b/gnu/packages/nfs.scm @@ -0,0 +1,118 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 John Darrington +;;; +;;; 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 . + +(define-module (gnu packages nfs) + #:use-module (gnu packages) + #:use-module (gnu packages linux) + #:use-module (gnu packages databases) + #:use-module (gnu packages gsasl) + #:use-module (gnu packages libevent) + #:use-module (gnu packages mit-krb5) + #:use-module (gnu packages onc-rpc) + #:use-module (gnu packages pkg-config) + #:use-module (guix build-system cmake) + #:use-module (guix build-system gnu) + #:use-module (guix build-system python) + #:use-module (guix build-system trivial) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix utils) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-2) + #:use-module (srfi srfi-26) + #:use-module (ice-9 match)) + +(define-public nfs-utils + (package + (name "nfs-utils") + (version "1.3.4") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://kernel.org/linux/utils/nfs-utils/" version + "/nfs-utils-" version ".tar.xz")) + (sha256 + (base32 + "0xarqhwy757vazv9gqhyrgxsrx083yhvkkih01jh83fqm305naml")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + `("--without-tcp-wrappers" + ,(string-append "--with-start-statd=" + (assoc-ref %outputs "out") "/sbin/start-statd") + ,(string-append "--with-krb5=" (assoc-ref %build-inputs "mit-krb5"))) + #:phases (modify-phases %standard-phases + (add-before + 'configure 'adjust-command-file-names + (lambda _ + ;; Remove assumptions of FHS from start-statd script + (substitute* `("utils/statd/start-statd") + (("^PATH=.*") "") + (("^flock") + (string-append + (assoc-ref %build-inputs "util-linux") + "/bin/flock")) + (("^exec rpc.statd") + (string-append "exec " + (assoc-ref %outputs "out") "/sbin/rpc.statd"))) + + ;; This hook tries to write to /var + ;; That needs to be done by a service too. + (substitute* `("Makefile.in") + (("^install-data-hook:") + "install-data-hook-disabled-for-guix:")) + + ;; Replace some hard coded paths. + (substitute* `("utils/nfsd/nfssvc.c") + (("/bin/mount") + (string-append + (assoc-ref %build-inputs "util-linux") + "/bin/mount"))) + (substitute* `("utils/statd/statd.c") + (("/usr/sbin/") + (string-append (assoc-ref %outputs "out") "/sbin/"))) + (substitute* `("utils/osd_login/Makefile.in" + "utils/mount/Makefile.in" + "utils/nfsdcltrack/Makefile.in") + (("^sbindir = /sbin") + (string-append "sbindir = " + (assoc-ref %outputs "out") "/sbin"))) + #t))))) + (inputs `(("libevent" ,libevent) + ("libnfsidmap" ,libnfsidmap) + ("sqlite" ,sqlite) + ("lvm2" ,lvm2) + ("gss" ,gss) + ("util-linux" ,util-linux) + ("mit-krb5" ,mit-krb5) + ("libtirpc" ,libtirpc))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "http://www.kernel.org/pub/linux/utils/nfs-utils/") + (synopsis "Tools for loading and managing Linux NFS mounts") + (description "The Network File System (NFS) was developed to allow +machines to mount a disk partition on a remote machine as if it were a local +disk. It allows for fast, seamless sharing of files across a network.") + ;; It is hard to be sure what the licence is. Most of the source files + ;; contain no licence notice at all. A few have a licence notice for a 3 + ;; clause non-copyleft licence. However the tarball has a COPYING file + ;; with the text of GPLv2 -- It seems then that GLPv2 is the most + ;; restrictive licence, and until advice to the contrary we must assume + ;; that is what is intended. + (license license:gpl2))) -- cgit v1.2.3 From 974e2b297104d2de01632df1a56069b383e645f4 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 10 Sep 2016 18:09:20 -0400 Subject: gnu: gnutls: Replace with 3.5.4 [fixes GNUTLS-SA-2016-3]. * gnu/packages/tls.scm (gnutls)[replacement]: New field. (gnutls-3.5.4): New variable. --- gnu/packages/tls.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 4b04cac893..ad9dee00ec 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -137,6 +137,7 @@ living in the same process.") (define-public gnutls (package (name "gnutls") + (replacement gnutls-3.5.4) (version "3.5.2") (source (origin (method url-fetch) @@ -210,6 +211,20 @@ required structures.") (properties '((ftp-server . "ftp.gnutls.org") (ftp-directory . "/gcrypt/gnutls"))))) +(define gnutls-3.5.4 + (package + (inherit gnutls) + (source + (let ((version "3.5.4")) + (origin + (method url-fetch) + (uri (string-append "mirror://gnupg/gnutls/v" + (version-major+minor version) + "/gnutls-" version ".tar.xz")) + (sha256 + (base32 + "1sx8p7v452s9m854r2c5pvcd1k15a3caiv5h35fhrxz0691h2f2f"))))))) + (define-public openssl (package (name "openssl") -- cgit v1.2.3 From 0581c273a4d5171a477d89f109c46d7ab3691429 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 10 Jul 2016 13:35:13 -0400 Subject: gnu: Add acme-client. * gnu/packages/tls.scm (acme-client): New variable. --- gnu/packages/tls.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index ad9dee00ec..721eea6256 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -35,6 +35,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages) #:use-module (gnu packages guile) + #:use-module (gnu packages libbsd) #:use-module (gnu packages libffi) #:use-module (gnu packages libidn) #:use-module (gnu packages linux) @@ -698,3 +699,37 @@ arithmetic in Perl.") (description "Crypt::OpenSSL::Random is a OpenSSL/LibreSSL pseudo-random number generator") (license (package-license perl)))) + +(define-public acme-client + (package + (name "acme-client") + (version "0.1.11") + (source (origin + (method url-fetch) + (uri (string-append "https://kristaps.bsd.lv/" name "/" + "snapshots/" name "-portable-" + version ".tgz")) + (sha256 + (base32 + "09pipyfk448gxqr7ci56gsq5la8wlydv7wwn9wk0zgjxmlh7h6fb")))) + (build-system gnu-build-system) + (arguments + '(#:tests? #f ; no test suite + #:make-flags + (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (delete 'configure)))) ; no './configure' script + (inputs + `(("libbsd" ,libbsd) + ("libressl" ,libressl))) + (synopsis "Let's Encrypt client by the OpenBSD project") + (description "acme-client is a Let's Encrypt client implemented in C. It +uses a modular design, and attempts to secure itself by dropping privileges and +operating in a chroot where possible. acme-client is developed on OpenBSD and +then ported to the GNU / Linux environment.") + (home-page "https://kristaps.bsd.lv/acme-client/") + ;; acme-client is distributed under the ISC license, but the files 'jsmn.h' + ;; and 'jsmn.c' are distributed under the Expat license. + (license (list license:isc license:expat)))) -- cgit v1.2.3 From d8a1be63286254fcd3293dd1accf44d79a3fd473 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 12 Sep 2016 13:00:43 -0400 Subject: gnu: certbot: Improve synopsis. * gnu/packages/tls.scm (certbot)[synopsis]: Add authorship information. --- gnu/packages/tls.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 721eea6256..412ec77bc5 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -555,7 +555,7 @@ security, and applying best practice development processes.") ("python2-psutil" ,python2-psutil) ("python2-requests" ,python2-requests) ("python2-pytz" ,python2-pytz))) - (synopsis "Let's Encrypt client") + (synopsis "Let's Encrypt client by the Electronic Frontier Foundation") (description "Tool to automatically receive and install X.509 certificates to enable TLS on servers. The client will interoperate with the Let’s Encrypt CA which will be issuing browser-trusted certificates for free.") -- cgit v1.2.3 From 2642231b39d2f642364e96222690afce7c986bb6 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 12 Sep 2016 14:09:23 -0400 Subject: gnu: bowtie: Update to 2.2.9. * gnu/packages/bioinformatics.scm (bowtie): Update to 2.2.9. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a7f0fcb70f..3922c660bb 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1034,7 +1034,7 @@ errors at the end of reads.") (define-public bowtie (package (name "bowtie") - (version "2.2.6") + (version "2.2.9") (source (origin (method url-fetch) (uri (string-append "https://github.com/BenLangmead/bowtie2/archive/v" @@ -1042,7 +1042,7 @@ errors at the end of reads.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1ssfvymxfrap6f9pf86s9bvsbqdgka4abr2r7j3mgr4w1l289m86")) + "1vp5db8i7is57iwjybcdg18f5ivyzlj5g1ix1nlvxainzivhz55g")) (modules '((guix build utils))) (snippet '(substitute* "Makefile" -- cgit v1.2.3 From db3cc007e38daf919bdc6a21e048b2d0c32f15e5 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 12 Sep 2016 20:55:21 +0300 Subject: gnu: vim: Update to 8.0. * gnu/packages/vim.scm (vim): Update to 8.0. [arguments]: Update files which need /bin/sh patched. --- gnu/packages/vim.scm | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 44f94ff49e..68c95d09ce 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -31,14 +31,14 @@ (define-public vim (package (name "vim") - (version "7.4") + (version "8.0") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-" version ".tar.bz2")) (sha256 (base32 - "1pjaffap91l2rb9pjnlbrpvb3ay5yhhr3g91zabjvw1rqk9adxfh")))) + "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc")))) (build-system gnu-build-system) (arguments `(#:test-target "test" @@ -49,8 +49,10 @@ (lambda _ (substitute* "runtime/tools/mve.awk" (("/usr/bin/nawk") (which "gawk"))) - (substitute* "src/testdir/Makefile" - (("/bin/sh") (which "sh")))))))) + (substitute* '("src/testdir/Makefile" + "src/testdir/test_normal.vim") + (("/bin/sh") (which "sh"))) + #t))))) (inputs `(("gawk" ,gawk) ("inetutils" ,inetutils) -- cgit v1.2.3 From f51940b0f57fd5657f5ae0f6fa6f8b8b55f1dec7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 12 Sep 2016 21:52:17 +0300 Subject: gnu: vim: Make builds bit-reproducable. * gnu/packages/vim.scm (vim)[arguments]: Remove the compiled date. --- gnu/packages/vim.scm | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 68c95d09ce..b1ee527c7a 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Cyril Roelandt +;;; Copyright © 2016 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,6 +46,13 @@ #:parallel-tests? #f #:phases (modify-phases %standard-phases + (add-after 'unpack 'make-bit-reproducable + (lambda _ + (substitute* "src/version.c" + ((" VIM_VERSION_LONG_DATE") " VIM_VERSION_LONG") + ((" __DATE__") "") + ((" __TIME__") "")) + #t)) (add-after 'configure 'patch-config-files (lambda _ (substitute* "runtime/tools/mve.awk" -- cgit v1.2.3 From 9a078f4863796bd20f426fb7cb64b719a2f32e95 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 12 Sep 2016 22:29:35 +0300 Subject: gnu: vapoursynth: Remove mips support. * gnu/packages/video.scm (vapoursynth)[supported-systems]: New field, remove support for mips64el which is unsupported. --- gnu/packages/video.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index b2c102a4df..8bcb2c49a7 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1272,6 +1272,8 @@ capabilities.") 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)) ;; As seen from the source files. (license license:lgpl2.1+))) -- cgit v1.2.3 From f34365b53e643e394c03f4da8441cc38006cca3d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 12 Sep 2016 22:31:15 +0300 Subject: gnu: mpv: Remove extra input. * gnu/packages/video.scm (mpv)[inputs]: Remove vapoursynth. --- gnu/packages/video.scm | 1 - 1 file changed, 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 8bcb2c49a7..8eb9f56fb9 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -834,7 +834,6 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.") ("mpg123" ,mpg123) ("pulseaudio" ,pulseaudio) ("rsound" ,rsound) - ("vapoursynth" ,vapoursynth) ("waf" ,python-waf) ("youtube-dl" ,youtube-dl) ("zlib" ,zlib))) -- cgit v1.2.3 From 4f6ec7e800960f4fe0f442d6fbd30a50588ba0fc Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 12 Sep 2016 22:34:24 +0300 Subject: gnu: youtube-dl: Update to 2016.09.11.1. * gnu/packages/video.scm (youtube-dl): Update to 2016.09.11.1. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 8eb9f56fb9..cd123945eb 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -924,7 +924,7 @@ access to mpv's powerful playback capabilities.") (define-public youtube-dl (package (name "youtube-dl") - (version "2016.07.22") + (version "2016.09.11.1") (source (origin (method url-fetch) (uri (string-append "https://youtube-dl.org/downloads/" @@ -932,7 +932,7 @@ access to mpv's powerful playback capabilities.") version ".tar.gz")) (sha256 (base32 - "02wcxpcbpvsbvyxcnhhf94ma0x5dcg4fygnxxca2h31dp47dkak9")))) + "0dfbb1lnpq3if7i5xvq8n6rvlgni3ryc8cw4bcrg1glmca3v1pkc")))) (build-system python-build-system) (home-page "https://youtube-dl.org") (arguments -- cgit v1.2.3 From d2262d7052c9ca65d2dde600e3dbe0b4e72f289c Mon Sep 17 00:00:00 2001 From: Ivan Vilata-i-Balaguer Date: Mon, 12 Sep 2016 19:24:51 +0200 Subject: gnu: python-py3status: Update to 3.1. * gnu/packages/python.scm (python-py3status): Update to 3.1. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8b9273cd41..b839f22989 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -9015,14 +9015,14 @@ to occurences in strings and comments.") (define-public python-py3status (package (name "python-py3status") - (version "2.9") + (version "3.1") (source (origin (method url-fetch) (uri (pypi-uri "py3status" version)) (sha256 (base32 - "09y7h8rjay5kzwk5akq7f5f9wqnvjkxhivck04hdc8ny1nw3vqzp")))) + "0i283z1pivmir61z8kbiycigc94l61v33ygzkhczf1ifq7cppyds")))) (build-system python-build-system) (native-inputs `(("python-setuptools" ,python-setuptools))) -- cgit v1.2.3 From f40841e99963af9c977f91a319c406d791935e9b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Tue, 23 Aug 2016 21:17:14 +0100 Subject: gnu: dlib: Remove unused fftw from inputs. * gnu/packages/machine-learning.scm (dlib)[inputs]: Remove fftw. (define-module): Don't include algebra.scm. Signed-off-by: Leo Famulari --- gnu/packages/machine-learning.scm | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 4332045d63..7669702ede 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -28,7 +28,6 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system r) #:use-module (gnu packages) - #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages boost) #:use-module (gnu packages compression) @@ -515,8 +514,7 @@ single hidden layer, and for multinomial log-linear models.") (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("fftw" ,fftw) - ("giflib" ,giflib) + `(("giflib" ,giflib) ;("lapack" ,lapack) XXX lapack here causes test failures in some setups. ("libjpeg" ,libjpeg) ("libpng" ,libpng) -- cgit v1.2.3 From 8eaf53e36683198522d71d7c60e258678be39416 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 27 Aug 2016 17:23:58 +0100 Subject: gnu: dlib: Do not build dlib twice for tests. * gnu/packages/machine-learning.scm (dlib)[arguments]: Use makefile instead of cmake in check phase to prevent full rebuild. Signed-off-by: Leo Famulari --- gnu/packages/machine-learning.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index 7669702ede..e94ffdd74f 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -502,11 +502,10 @@ single hidden layer, and for multinomial log-linear models.") (replace 'check (lambda _ ;; No test target, so we build and run the unit tests here. - (let ((test-dir (string-append "../dlib-" ,version "/dlib/test/build"))) - (mkdir-p test-dir) + (let ((test-dir (string-append "../dlib-" ,version "/dlib/test"))) (with-directory-excursion test-dir - (and (zero? (system* "cmake" "..")) - (zero? (system* "cmake" "--build" "." "--config" "Release")) + (setenv "CXXFLAGS" "-std=gnu++11") + (and (zero? (system* "make" "-j" (number->string (parallel-job-count)))) (zero? (system* "./dtest" "--runall"))))))) (add-after 'install 'delete-static-library (lambda* (#:key outputs #:allow-other-keys) -- cgit v1.2.3 From 4fba38db9cd056b3484d8e3d2dcffc34df7af7f9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 9 Sep 2016 01:51:23 +0100 Subject: gnu: dlib: Disable failing tests. * gnu/packages/machine-learning.scm (dlib)[arguments]: Add phase 'disable-failing-tests' for tests that are known not to work in the current release. [inputs]: Add lapack. Signed-off-by: Leo Famulari --- gnu/packages/machine-learning.scm | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index e94ffdd74f..b663b4ffcb 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -499,6 +499,29 @@ single hidden layer, and for multinomial log-linear models.") (substitute* "dlib/config.h" (("^//#define DLIB_DISABLE_ASSERTS") "#define DLIB_DISABLE_ASSERTS")) #t)) + (add-after 'disable-asserts 'disable-failing-tests + (lambda _ + ;; One test times out on MIPS, so we need to disable it. + ;; The rest is known to fail on non-x86_64 platforms in the current release. + ;; Some have been fixed in git; this list should be readjusted next update. + (let* ((system ,(or (%current-target-system) + (%current-system))) + (disabled-tests (cond + ((string-prefix? "mips64" system) + '("object_detector" ; timeout + "data_io")) + ((string-prefix? "armhf" system) + '("learning_to_track" "max_cost_assignment")) + ((string-prefix? "i686" system) + '("optimization" "matrix2" "mpc")) + (else '())))) + ;; The following test fails due a bug in openblas < 0.2.18. + (append! disabled-tests '("empirical_map")) + (for-each + (lambda (test) + (substitute* "dlib/test/makefile" + (((string-append "SRC \\+= " test "\\.cpp")) "")) #t) + disabled-tests)))) (replace 'check (lambda _ ;; No test target, so we build and run the unit tests here. @@ -514,7 +537,7 @@ single hidden layer, and for multinomial log-linear models.") `(("pkg-config" ,pkg-config))) (inputs `(("giflib" ,giflib) - ;("lapack" ,lapack) XXX lapack here causes test failures in some setups. + ("lapack" ,lapack) ("libjpeg" ,libjpeg) ("libpng" ,libpng) ("libx11" ,libx11) -- cgit v1.2.3 From 4df07622489ada09e4aa4f7a73cd48f2ff81b77b Mon Sep 17 00:00:00 2001 From: Andy Patterson Date: Fri, 9 Sep 2016 15:52:24 -0400 Subject: gnu: Add libbdplus. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (libbdplus): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/video.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index cd123945eb..21ab706216 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016 Kei Kebreau ;;; Copyright © 2016 Dmitry Nikolaev +;;; Copyright © 2016 Andy Patterson ;;; ;;; This file is part of GNU Guix. ;;; @@ -1588,3 +1589,23 @@ and MPEG system streams.") license:lgpl2.1 license:lgpl2.1+ license:gpl2)))) + +(define-public libbdplus + (package + (name "libbdplus") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (string-append "ftp://ftp.videolan.org/pub/videolan/libbdplus/" + version "/" name "-" version ".tar.bz2")) + (sha256 + (base32 "02n87lysqn4kg2qk7d1ffrp96c44zkdlxdj0n16hbgrlrpiwlcd6")))) + (inputs + `(("libgcrypt" ,libgcrypt))) + (build-system gnu-build-system) + (home-page "http://www.videolan.org/developers/libbdplus.html") + (synopsis "Library for decrypting certain Blu-Ray discs") + (description "libbdplus is a library which implements the BD+ System +specifications.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From 8dd6fc5164a00a70e1080d4a99998a4a65df4a89 Mon Sep 17 00:00:00 2001 From: Andy Patterson Date: Fri, 9 Sep 2016 15:52:25 -0400 Subject: gnu: Add libaacs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (libaacs): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/video.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 21ab706216..7c1dae0799 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -48,11 +48,13 @@ #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) #:use-module (gnu packages base) + #:use-module (gnu packages bison) #:use-module (gnu packages cdrom) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages elf) + #:use-module (gnu packages flex) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages fribidi) @@ -1609,3 +1611,26 @@ and MPEG system streams.") (description "libbdplus is a library which implements the BD+ System specifications.") (license license:lgpl2.1+))) + +(define-public libaacs + (package + (name "libaacs") + (version "0.8.1") + (source + (origin + (method url-fetch) + (uri (string-append "ftp://ftp.videolan.org/pub/videolan/libaacs/" + version "/" name "-" version ".tar.bz2")) + (sha256 + (base32 "1s5v075hnbs57995r6lljm79wgrip3gnyf55a0y7bja75jh49hwm")))) + (inputs + `(("libgcrypt" ,libgcrypt))) + (native-inputs + `(("bison" ,bison) + ("flex" ,flex))) + (build-system gnu-build-system) + (home-page "http://www.videolan.org/developers/libaacs.html") + (synopsis "Library for decrypting certain Blu-Ray discs") + (description "libaacs is a library which implements the Advanced Access +Content System specification.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From 6c0cd765c03de72ecd97b9222bff04c525b8bba4 Mon Sep 17 00:00:00 2001 From: Andy Patterson Date: Fri, 9 Sep 2016 15:52:26 -0400 Subject: gnu: libbluray: Enable libaacs and libbdplus support. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/video.scm (libbluray) [inputs]: Add libaacs and libbdplus. [arguments]: Add 'fix-dlopen-paths' to #:phases. Signed-off-by: Ludovic Courtès --- gnu/packages/video.scm | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 7c1dae0799..6c59fa0fca 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -978,11 +978,27 @@ YouTube.com and a few more sites.") (base32 "1q1whviqv5sr9nr372h31zwid1rvbfbx3z4lzr8lnj25xha6cdm6")))) (build-system gnu-build-system) - (arguments `(#:configure-flags '("--disable-bdjava"))) + (arguments + `(#:configure-flags '("--disable-bdjava") + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-dlopen-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((libaacs (assoc-ref inputs "libaacs")) + (libbdplus (assoc-ref inputs "libbdplus"))) + (substitute* "src/libbluray/disc/aacs.c" + (("\"libaacs\"") + (string-append "\"" libaacs "/lib/libaacs\""))) + (substitute* "src/libbluray/disc/bdplus.c" + (("\"libbdplus\"") + (string-append "\"" libbdplus "/lib/libbdplus\""))) + #t)))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("fontconfig" ,fontconfig) ("freetype" ,freetype) + ("libaacs" ,libaacs) + ("libbdplus" ,libbdplus) ("libxml2" ,libxml2))) (home-page "https://www.videolan.org/developers/libbluray.html") (synopsis "Blu-Ray Disc playback library") -- cgit v1.2.3 From 66daf78c0a4b64e0618a9bca8c8e6c0ce28de16d Mon Sep 17 00:00:00 2001 From: Ben J Woodcroft Date: Fri, 9 Sep 2016 09:53:21 +1000 Subject: gnu: Add seqtk. * gnu/packages/bioinformatics.scm (seqtk): New variable. --- gnu/packages/bioinformatics.scm | 43 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3922c660bb..39a420ac3b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4586,6 +4586,49 @@ BioPython in a convenient way. Instead of having a big mess of scripts, there is one that takes arguments.") (license license:gpl3))) +(define-public seqtk + (package + (name "seqtk") + (version "1.2") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/lh3/seqtk/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ywdyzpmfiz2wp6ampbzqg4y8bj450nfgqarpamg045b8mk32lxx")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Remove extraneous header files, as is done in the seqtk + ;; master branch. + (for-each (lambda (file) (delete-file file)) + (list "ksort.h" "kstring.h" "kvec.h")) + #t)))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'check + ;; There are no tests, so we just run a sanity check. + (lambda _ (zero? (system* "./seqtk" "seq")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin/"))) + (install-file "seqtk" bin))))))) + (inputs + `(("zlib" ,zlib))) + (home-page "https://github.com/lh3/seqtk") + (synopsis "Toolkit for processing biological sequences in FASTA/Q format") + (description + "Seqtk is a fast and lightweight tool for processing sequences in the +FASTA or FASTQ format. It parses both FASTA and FASTQ files which can be +optionally compressed by gzip.") + (license license:expat))) + (define-public snap-aligner (package (name "snap-aligner") -- cgit v1.2.3 From 23de5cbd1487747a2d690ee3ac7630142a7eaeb8 Mon Sep 17 00:00:00 2001 From: Alex ter Weele Date: Sun, 11 Sep 2016 22:18:53 -0400 Subject: gnu: guile-wm: Add '.desktop' file. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/guile-wm.scm (guile-wm)[arguments]: Add 'install-xsession' phase. Signed-off-by: Ludovic Courtès --- gnu/packages/guile-wm.scm | 85 +++++++++++++++++++++++++++++------------------ 1 file changed, 52 insertions(+), 33 deletions(-) diff --git a/gnu/packages/guile-wm.scm b/gnu/packages/guile-wm.scm index 98e657f75b..a114fd441d 100644 --- a/gnu/packages/guile-wm.scm +++ b/gnu/packages/guile-wm.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013, 2014 Ludovic Courtès +;;; Copyright © 2016 Alex ter Weele ;;; ;;; This file is part of GNU Guix. ;;; @@ -64,6 +65,7 @@ dependencies.") (package (name "guile-wm") (version "1.0") + (synopsis "X11 window manager toolkit in Scheme") (source (origin (method url-fetch) (uri (string-append "http://www.markwitmer.com/dist/guile-wm-" @@ -72,43 +74,60 @@ dependencies.") (base32 "1l9qcz236jxvryndimjy62cf8zxf8i3f8vg3zpqqjhw15j9mdk3r")))) (build-system gnu-build-system) - (arguments '(;; The '.scm' files go to $(datadir), so set that to the - ;; standard value. - #:configure-flags (list (string-append "--datadir=" - (assoc-ref %outputs "out") - "/share/guile/site/2.0")) - #:phases (alist-cons-before - 'configure 'set-go-directory - (lambda* (#:key outputs #:allow-other-keys) - ;; Install .go files to $out/share/guile/site/2.0. - (let ((out (assoc-ref outputs "out"))) - (substitute* "module/Makefile.in" - (("^wmdir = .*$") - (string-append "wmdir = " out - "/share/guile/site/2.0\n"))))) - (alist-cons-after - 'install 'set-load-path - (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Put Guile-XCB's and Guile-WM's modules in the - ;; search path of PROG. - (let* ((out (assoc-ref outputs "out")) - (prog (string-append out "/bin/guile-wm")) - (mods (string-append - out "/share/guile/site/2.0")) - (xcb (string-append - (assoc-ref inputs "guile-xcb") - "/share/guile/site/2.0"))) - (wrap-program - prog - `("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb)) - `("GUILE_LOAD_COMPILED_PATH" ":" prefix - (,mods ,xcb))))) - %standard-phases)))) + (arguments + `( ;; The '.scm' files go to $(datadir), so set that to the + ;; standard value. + #:configure-flags (list (string-append "--datadir=" + (assoc-ref %outputs "out") + "/share/guile/site/2.0")) + #:phases (alist-cons-before + 'configure 'set-go-directory + (lambda* (#:key outputs #:allow-other-keys) + ;; Install .go files to $out/share/guile/site/2.0. + (let ((out (assoc-ref outputs "out"))) + (substitute* "module/Makefile.in" + (("^wmdir = .*$") + (string-append "wmdir = " out + "/share/guile/site/2.0\n"))))) + (alist-cons-after + 'install 'set-load-path + (lambda* (#:key inputs outputs #:allow-other-keys) + ;; Put Guile-XCB's and Guile-WM's modules in the + ;; search path of PROG. + (let* ((out (assoc-ref outputs "out")) + (prog (string-append out "/bin/guile-wm")) + (mods (string-append + out "/share/guile/site/2.0")) + (xcb (string-append + (assoc-ref inputs "guile-xcb") + "/share/guile/site/2.0"))) + (wrap-program + prog + `("GUILE_LOAD_PATH" ":" prefix (,mods ,xcb)) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix + (,mods ,xcb))))) + (alist-cons-after + 'install 'install-xsession + (lambda* (#:key outputs #:allow-other-keys) + ;; add a .desktop file to xsessions + (let ((xsessions (string-append + %output "/share/xsessions"))) + (mkdir-p xsessions) + (call-with-output-file (string-append + xsessions "/guile-wm.desktop") + (lambda (port) + (format port + "[Desktop Entry]~@ + Name=~a~@ + Comment=~a~@ + Exec=~a/bin/guile-wm~@ + Type=Application~%" + ,name ,synopsis %output))))) + %standard-phases))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("guile" ,guile-2.0) ("guile-xcb" ,guile-xcb))) (home-page "http://www.markwitmer.com/guile-xcb/guile-wm.html") - (synopsis "X11 window manager toolkit in Scheme") (description "Guile-WM is a simple window manager that's completely customizable—you have total control of what it does by choosing which modules to include. -- cgit v1.2.3 From 89bcf3fcc92323d8116b6fd4d80bbfb48447dd47 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Sat, 10 Sep 2016 10:27:34 -0400 Subject: gnu: Add schismtracker. * gnu/packages/music.scm (schismtracker): New variable. --- gnu/packages/music.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 88743aa14d..f2945646fd 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1638,6 +1638,52 @@ for improved Amiga ProTracker 2/3 compatibility.") ;; 'src/milkyplay' is under Modified BSD, the rest is under GPL3 or later. (license (list license:bsd-3 license:gpl3+)))) +(define-public schismtracker + (package + (name "schismtracker") + (version "20160521") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/" name "/" name "/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0c6r24wm3rldm4j8cskl9xnixj3rwi3lnrhckw5gv43wpy6h4jcz")) + (modules '((guix build utils))) + (snippet + ;; Remove use of __DATE__ and __TIME__ for reproducibility. + `(substitute* "schism/version.c" + (("Schism Tracker build %s %s.*$") + (string-append "Schism Tracker version " ,version "\");")))))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autoconf + (lambda _ (zero? (system* "autoreconf" "-vfi")))) + (add-before 'configure 'link-libm + (lambda _ (setenv "LIBS" "-lm") #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("python" ,python))) + (inputs + `(("alsa-lib" ,alsa-lib) ; for asound dependency + ("libx11" ,libx11) + ("libxext" ,libxext) + ("sdl" ,sdl))) + (home-page "http://schismtracker.org") + (synopsis "Oldschool sample-based music composition tool") + (description + "Schism Tracker is a reimplementation of Impulse Tracker, a program used to +create high quality music without the requirements of specialized, expensive +equipment, and with a unique \"finger feel\" that is difficult to replicate in +part. The player is based on a highly modified version of the ModPlug engine, +with a number of bugfixes and changes to improve IT playback.") + (license license:gpl2+))) + (define-public moc (package (name "moc") -- cgit v1.2.3 From 885009c5b91dde9891afcac501f12b7c76389900 Mon Sep 17 00:00:00 2001 From: David Craven Date: Fri, 2 Sep 2016 15:50:41 +0200 Subject: gnu: module-init-tools: Prevent line wrapping. * gnu/packages/linux.scm (module-init-tools): Break line. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 3f27add596..b8b30d248b 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -174,8 +174,8 @@ (source (origin (method url-fetch) (uri (string-append - "mirror://kernel.org/linux/utils/kernel/module-init-tools/module-init-tools-" - version ".tar.bz2")) + "mirror://kernel.org/linux/utils/kernel/module-init-tools/" + "module-init-tools-" version ".tar.bz2")) (sha256 (base32 "0jxnz9ahfic79rp93l5wxcbgh4pkv85mwnjlbv1gz3jawv5cvwp1")) -- cgit v1.2.3 From 614d1738e27a5a08b4d553861253d6636e431a25 Mon Sep 17 00:00:00 2001 From: David Craven Date: Fri, 2 Sep 2016 15:57:47 +0200 Subject: gnu: linux-libre: Use modify-phases. * gnu/packages/linux.scm (linux-libre): Use modify-phases. --- gnu/packages/linux.scm | 80 ++++++++++++++++++++++++-------------------------- 1 file changed, 39 insertions(+), 41 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index b8b30d248b..4a3e1dc013 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -258,9 +258,41 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (search-path %load-path file))) (define-public linux-libre - (let* ((version "4.7.3") - (build-phase - '(lambda* (#:key system inputs #:allow-other-keys #:rest args) + (package + (name "linux-libre") + (version "4.7.3") + (source (origin + (method url-fetch) + (uri (linux-libre-urls version)) + (sha256 + (base32 + "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6")))) + (build-system gnu-build-system) + (supported-systems '("x86_64-linux" "i686-linux")) + (native-inputs + `(("perl" ,perl) + ("bc" ,bc) + ("openssl" ,openssl) + ("module-init-tools" ,module-init-tools) + ("patch/freedo+gnu" ,%boot-logo-patch) + + ,@(let ((conf (kernel-config + (or (%current-target-system) + (%current-system)) + #:variant (version-major+minor version)))) + (if conf + `(("kconfig" ,conf)) + '())))) + (arguments + `(#:modules ((guix build gnu-build-system) + (guix build utils) + (srfi srfi-1) + (ice-9 match)) + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'build + (lambda* (#:key system inputs #:allow-other-keys #:rest args) ;; Avoid introducing timestamps (setenv "KCONFIG_NOTIMESTAMP" "1") (setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH")) @@ -310,8 +342,8 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." ;; Call the default `build' phase so `-j' is correctly ;; passed. (apply build #:make-flags "all" args)))) - (install-phase - `(lambda* (#:key inputs outputs #:allow-other-keys) + (replace 'install + (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (moddir (string-append out "/lib/modules")) (mit (assoc-ref inputs "module-init-tools"))) @@ -328,47 +360,13 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (string-append "INSTALL_MOD_PATH=" out) "INSTALL_MOD_STRIP=1" "modules_install")))))) - (package - (name "linux-libre") - (version version) - (source (origin - (method url-fetch) - (uri (linux-libre-urls version)) - (sha256 - (base32 - "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6")))) - (build-system gnu-build-system) - (supported-systems '("x86_64-linux" "i686-linux")) - (native-inputs `(("perl" ,perl) - ("bc" ,bc) - ("openssl" ,openssl) - ("module-init-tools" ,module-init-tools) - ("patch/freedo+gnu" ,%boot-logo-patch) - - ,@(let ((conf (kernel-config - (or (%current-target-system) - (%current-system)) - #:variant (version-major+minor version)))) - (if conf - `(("kconfig" ,conf)) - '())))) - (arguments - `(#:modules ((guix build gnu-build-system) - (guix build utils) - (srfi srfi-1) - (ice-9 match)) - #:phases (alist-replace - 'build ,build-phase - (alist-replace - 'install ,install-phase - (alist-delete 'configure %standard-phases))) #:tests? #f)) + (home-page "http://www.gnu.org/software/linux-libre/") (synopsis "100% free redistribution of a cleaned Linux kernel") (description "GNU Linux-Libre is a free (as in freedom) variant of the Linux kernel. It has been modified to remove all non-free binary blobs.") - (license license:gpl2) - (home-page "http://www.gnu.org/software/linux-libre/")))) + (license license:gpl2))) (define-public linux-libre-4.4 (package -- cgit v1.2.3 From 6d7ef2aad29679cf5327efc35e241a0a75c7c301 Mon Sep 17 00:00:00 2001 From: David Craven Date: Fri, 2 Sep 2016 17:10:52 +0200 Subject: gnu: linux-libre: Use system->architecture. * gnu/packages/linux.scm (linux-libre): Use system->architecture. --- gnu/packages/linux.scm | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 4a3e1dc013..27b5f4a9dc 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -84,7 +84,7 @@ (define-public (system->linux-architecture arch) "Return the Linux architecture name for ARCH, a Guix system name such as -\"x86_64-linux\"." +\"x86_64-linux\" or a target triplet such as \"arm-linux-gnueabihf\"." (let ((arch (car (string-split arch #\-)))) (cond ((string=? arch "i686") "i386") ((string-prefix? "mips" arch) "mips") @@ -292,7 +292,7 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (modify-phases %standard-phases (delete 'configure) (replace 'build - (lambda* (#:key system inputs #:allow-other-keys #:rest args) + (lambda* (#:key inputs #:allow-other-keys #:rest args) ;; Avoid introducing timestamps (setenv "KCONFIG_NOTIMESTAMP" "1") (setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH")) @@ -301,12 +301,12 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (system* "patch" "-p1" "--force" "-i" (assoc-ref inputs "patch/freedo+gnu")) - (let ((arch (car (string-split system #\-)))) - (setenv "ARCH" - (cond ((string=? arch "i686") "i386") - ((string=? arch "mips64el") "mips") - (else arch))) - (format #t "`ARCH' set to `~a'~%" (getenv "ARCH"))) + (let ((arch ,(system->linux-architecture + (or (%current-target-system) + (%current-system))))) + (setenv "ARCH" arch)) + + (format #t "`ARCH' set to `~a'~%" (getenv "ARCH")) (let ((build (assoc-ref %standard-phases 'build)) (config (assoc-ref inputs "kconfig"))) -- cgit v1.2.3 From 499fb7e0baf0ec43ef9aac6d663da95415041954 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 16:01:43 +0200 Subject: gnu: linux-libre: Apply %boot-logo patch in origin. * gnu/packages/linux.scm (linux-libre)[origin]: Apply %boot-logo patch in origin. --- gnu/packages/linux.scm | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 27b5f4a9dc..a7eaae9b39 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -266,7 +266,8 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (uri (linux-libre-urls version)) (sha256 (base32 - "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6")))) + "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6")) + (patches (origin-patches %boot-logo-patch)))) (build-system gnu-build-system) (supported-systems '("x86_64-linux" "i686-linux")) (native-inputs @@ -274,7 +275,6 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." ("bc" ,bc) ("openssl" ,openssl) ("module-init-tools" ,module-init-tools) - ("patch/freedo+gnu" ,%boot-logo-patch) ,@(let ((conf (kernel-config (or (%current-target-system) @@ -297,10 +297,6 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (setenv "KCONFIG_NOTIMESTAMP" "1") (setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH")) - ;; Apply the neat patch. - (system* "patch" "-p1" "--force" - "-i" (assoc-ref inputs "patch/freedo+gnu")) - (let ((arch ,(system->linux-architecture (or (%current-target-system) (%current-system))))) -- cgit v1.2.3 From 9416459b7294e7229613f15a475ea8a65f0cc303 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 16:18:54 +0200 Subject: gnu: linux-libre: Move kernel configuration to configure phase. * gnu/packages/linux.scm (linux-libre)[arguments]: Add configure phase. --- gnu/packages/linux.scm | 11 +++-------- 1 file changed, 3 insertions(+), 8 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index a7eaae9b39..cb374e49be 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -290,9 +290,8 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (ice-9 match)) #:phases (modify-phases %standard-phases - (delete 'configure) - (replace 'build - (lambda* (#:key inputs #:allow-other-keys #:rest args) + (replace 'configure + (lambda* (#:key inputs #:allow-other-keys) ;; Avoid introducing timestamps (setenv "KCONFIG_NOTIMESTAMP" "1") (setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH")) @@ -333,11 +332,7 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." port) (close-port port)) - (zero? (system* "make" "oldconfig")) - - ;; Call the default `build' phase so `-j' is correctly - ;; passed. - (apply build #:make-flags "all" args)))) + (zero? (system* "make" "oldconfig"))))) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) -- cgit v1.2.3 From 4b42703ed551cd70dcc4dba3991c25737dd74f4a Mon Sep 17 00:00:00 2001 From: David Craven Date: Fri, 2 Sep 2016 18:05:37 +0200 Subject: gnu: linux-libre: Add support for cross-compilation. * gnu/packages/linux.scm (linux-libre): Add support for cross-compilation. --- gnu/packages/linux.scm | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index cb374e49be..86681754ce 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -291,17 +291,22 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." #:phases (modify-phases %standard-phases (replace 'configure - (lambda* (#:key inputs #:allow-other-keys) + (lambda* (#:key inputs native-inputs target #:allow-other-keys) ;; Avoid introducing timestamps (setenv "KCONFIG_NOTIMESTAMP" "1") (setenv "KBUILD_BUILD_TIMESTAMP" (getenv "SOURCE_DATE_EPOCH")) + ;; Set ARCH and CROSS_COMPILE (let ((arch ,(system->linux-architecture (or (%current-target-system) (%current-system))))) - (setenv "ARCH" arch)) + (setenv "ARCH" arch) + (format #t "`ARCH' set to `~a'~%" (getenv "ARCH")) - (format #t "`ARCH' set to `~a'~%" (getenv "ARCH")) + (when target + (setenv "CROSS_COMPILE" (string-append target "-")) + (format #t "`CROSS_COMPILE' set to `~a'~%" + (getenv "CROSS_COMPILE")))) (let ((build (assoc-ref %standard-phases 'build)) (config (assoc-ref inputs "kconfig"))) @@ -334,10 +339,10 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (zero? (system* "make" "oldconfig"))))) (replace 'install - (lambda* (#:key inputs outputs #:allow-other-keys) + (lambda* (#:key inputs native-inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (moddir (string-append out "/lib/modules")) - (mit (assoc-ref inputs "module-init-tools"))) + (mit (assoc-ref (or native-inputs inputs) "module-init-tools"))) (mkdir-p moddir) (for-each (lambda (file) (copy-file file -- cgit v1.2.3 From d21047d5047feaec6ab02b56228a8a655d006e72 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 9 Sep 2016 03:14:41 +0200 Subject: services: nginx: Actually check if configuration is valid. * gnu/services/web.scm (nginx-activation): Fix path to nginx binary. --- gnu/services/web.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/services/web.scm b/gnu/services/web.scm index 40e4d5f46f..0a2a09bbf5 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -80,7 +80,7 @@ (format #t "creating nginx run directory '~a'~%" #$run-directory) (mkdir-p #$run-directory) ;; Check configuration file syntax. - (system* (string-append #$nginx "/bin/nginx") + (system* (string-append #$nginx "/sbin/nginx") "-c" #$config-file "-t"))))) (define nginx-shepherd-service -- cgit v1.2.3 From 05077200f78b5b659985404f807dc749470fb3e3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 10 Sep 2016 20:57:39 +0200 Subject: gnu: tinyxml: Fix typo in description. * gnu/packages/xml.scm (tinyxml)[description]: Fix typo. --- gnu/packages/xml.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 8e0fe01c6b..e9074dbe12 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -879,7 +879,7 @@ Cflags: -I${includedir} #t)))))) (synopsis "Small XML parser for C++") (description "TinyXML is a small and simple XML parsing library for the -C++ programming langauge.") +C++ programming language.") (home-page "http://www.grinninglizard.com/tinyxml/index.html") (license license:zlib))) -- cgit v1.2.3 From c033c1958d50e58d84b2ebb41b15040ed0f22431 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 10 Sep 2016 21:11:05 +0200 Subject: gnu: ruby: Remove string-append call with single argument. * gnu/packages/ruby.scm (ruby)[source]: Remove string-append. --- gnu/packages/ruby.scm | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 46588dd002..2b5938b477 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -61,8 +61,7 @@ (patches (search-patches "ruby-symlinkfix.patch")) (snippet `(begin ;; Remove bundled libffi - (delete-file-recursively - (string-append "ext/fiddle/libffi-3.2.1")) + (delete-file-recursively "ext/fiddle/libffi-3.2.1") #t)))) (build-system gnu-build-system) (arguments -- cgit v1.2.3 From d15e2ef05a8fe711d5fda75c198c5299961d4716 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 23 Aug 2016 15:09:06 +0200 Subject: gnu: python-prompt-toolkit: Update to 1.0.7. * gnu/packages/python.scm (python-prompt-toolkit): Update to 1.0.7. [source]: Use 'pypi-uri'. --- gnu/packages/python.scm | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index b839f22989..e918149b41 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -9750,17 +9750,14 @@ implementation for Python.") (define-public python-prompt-toolkit (package (name "python-prompt-toolkit") - (version "1.0.3") + (version "1.0.7") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/" - "8d/de/412f23919929c01e6b55183e124623f705e4b91796d3d2dce2cb53d595ad/" - "prompt_toolkit-" version ".tar.gz")) + (uri (pypi-uri "prompt_toolkit" version ".tar.gz")) (sha256 (base32 - "18lbmmkyjf509klc3217lq0x863pfzix779zx5kp9lms1iph4pl0")))) + "1vyjd0b7wciv55i19l44zy0adx8q7ss79lhy2r9d1rwz2y4822zg")))) (build-system python-build-system) (inputs `(("python-wcwidth" ,python-wcwidth) ("python-pygments" ,python-pygments))) -- cgit v1.2.3 From 243db8245e6d8ee6aae80ce4606fb58cb8b23443 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 13 Sep 2016 12:30:40 +0200 Subject: gnu: Add python-lit, python2-lit. * gnu/packages/python.scm (python-lit, python2-lit): New variables. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e918149b41..e2e1ec2ee8 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10324,3 +10324,31 @@ Python to manipulate OpenDocument 1.2 files.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-lit + (package + (name "python-lit") + (version "0.5.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "lit" version)) + (sha256 + (base32 + "135m2b9cwih85g66rjggavck328z7lj37srgpq3jxszbg0g2b91y")))) + (build-system python-build-system) + (home-page "http://llvm.org/") + (synopsis "LLVM Software Testing Tool") + (description "@code{lit} is a portable tool for executing LLVM and Clang +style test suites, summarizing their results, and providing indication of +failures.") + (license license:ncsa) + (properties `((python2-variant . ,(delay python2-lit)))))) + +(define-public python2-lit + (let ((base (package-with-python2 (strip-python2-variant python-lit)))) + (package + (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From e42a0771b7d7f0661be459658e31f5d65843ed75 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Thu, 8 Sep 2016 17:10:42 +0200 Subject: gnu: dtc: Remove patch-paths phase. * gnu/packages/u-boot.scm (dtc)[arguments]: Remove patch-paths phase. [configure-flags]: Add INSTALL. Signed-off-by: David Craven --- gnu/packages/u-boot.scm | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/gnu/packages/u-boot.scm b/gnu/packages/u-boot.scm index e9a4b90941..7949d8a4c3 100644 --- a/gnu/packages/u-boot.scm +++ b/gnu/packages/u-boot.scm @@ -47,15 +47,11 @@ ("flex" ,flex))) (arguments `(#:make-flags - (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))) + (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out")) + "INSTALL=install") #:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-paths - (lambda _ - (substitute* "Makefile" - (("/usr/bin/install") "install")) - (substitute* "Makefile" - (("PREFIX = \\$\\(HOME\\)") "")))) (delete 'configure)))) (home-page "https://www.devicetree.org") (synopsis "Compiles device tree source files") -- cgit v1.2.3 From 20f9c6764cb7479264d0d61870135d16898a185e Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 17:17:04 +0200 Subject: gnu: Add u-boot-beagle-bone-black. * gnu/packages/u-boot.scm (u-boot-beagle-bone-black): New variable. --- gnu/packages/u-boot.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/u-boot.scm b/gnu/packages/u-boot.scm index 7949d8a4c3..04231631a3 100644 --- a/gnu/packages/u-boot.scm +++ b/gnu/packages/u-boot.scm @@ -131,3 +131,6 @@ also initializes the boards (RAM etc).") (define-public u-boot-malta (make-u-boot-package "malta" "mips64el-linux-gnuabi64")) + +(define-public u-boot-beagle-bone-black + (make-u-boot-package "am335x_boneblack" "arm-linux-gnueabihf")) -- cgit v1.2.3 From 8feb56b0d4399dc93207a061ddb8582558d3b8cb Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 13 Sep 2016 19:03:01 +0200 Subject: gnu: u-boot-vexpress_ca9x4: Rename to u-boot-vexpress. * gnu/packages/u-boot.scm (u-boot-vexpress_ca9x4): Rename. --- gnu/packages/u-boot.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/u-boot.scm b/gnu/packages/u-boot.scm index 04231631a3..cdd52d8747 100644 --- a/gnu/packages/u-boot.scm +++ b/gnu/packages/u-boot.scm @@ -126,7 +126,7 @@ also initializes the boards (RAM etc).") (copy-file file target-file))) uboot-files))))))))) -(define-public u-boot-vexpress_ca9x4 +(define-public u-boot-vexpress (make-u-boot-package "vexpress_ca9x4" "arm-linux-gnueabihf")) (define-public u-boot-malta -- cgit v1.2.3 From 0a1d8596fd1f8465e619058bf88763bae3b1cd5d Mon Sep 17 00:00:00 2001 From: ng0 Date: Mon, 12 Sep 2016 13:57:56 +0000 Subject: gnu: lispf4: Remove unused inputs key. * gnu/packages/lisp.scm (lispf4)[arguments]: Remove unused inputs key from 'install' phase. [source](file-name): Append "-checkout" to the file-name. Signed-off-by: Leo Famulari --- gnu/packages/lisp.scm | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 8ee249d397..43fb195763 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -453,7 +453,7 @@ interface.") (uri (git-reference (url "https://github.com/blakemcbride/LISPF4.git") (commit commit))) - (file-name (string-append name "-" version)) + (file-name (string-append name "-" version "-checkout")) (sha256 (base32 "18k8kfn30za637y4bfbm9x3vv4psa3q8f7bi9h4h0qlb8rz8m92c")))) @@ -463,14 +463,12 @@ interface.") (arguments `(#:make-flags '("-f" "Makefile.unx" "CC=gcc") - ;; no check phase - #:tests? #f + #:tests? #f ; No 'check phase #:phases (modify-phases %standard-phases (delete 'configure) - (replace - 'install - (lambda* (#:key outputs inputs #:allow-other-keys) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin")) (doc (string-append (assoc-ref outputs "doc") -- cgit v1.2.3 From c258807a859e90ac64a756a00df4f0b7b9a85b22 Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 13 Sep 2016 17:59:56 +0200 Subject: gnu: Use make-linux-libre. * gnu/packages/linux.scm (make-linux-libre): New variable. (linux-libre, linux-libre-4.4, linux-libre-4.1): Use make-linux-libre. (kernel-config): Take arch instead of system. --- gnu/packages/linux.scm | 92 ++++++++++++++++++-------------------------------- 1 file changed, 33 insertions(+), 59 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 86681754ce..d4946af4ea 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -238,35 +238,28 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.") (base32 "1hk9swxxc80bmn2zd2qr5ccrjrk28xkypwhl4z0qx4hbivj7qm06")))) -(define* (kernel-config system #:key variant) +(define* (kernel-config arch #:key variant) "Return the absolute file name of the Linux-Libre build configuration file -for SYSTEM and optionally VARIANT, or #f if there is no such configuration." - (and-let* ((arch (match system - ("i686-linux" - "i686") - ("x86_64-linux" - "x86_64") - (_ - #f))) - (name (string-append "linux-libre-" - (if variant - (string-append variant "-") - "") - arch - ".conf")) - (file (string-append "gnu/packages/" name))) - (search-path %load-path file))) - -(define-public linux-libre +for ARCH and optionally VARIANT, or #f if there is no such configuration." + (let* ((name (string-append "linux-libre-" + (if variant (string-append variant "-") "") + arch ".conf")) + (file (string-append "gnu/packages/" name))) + (if file-exists? (search-path %load-path file) #f))) + +(define* (make-linux-libre version hash + #:key + ;; A function that takes an arch and a variant. + ;; See kernel-config for an example. + (configuration-file #f) + (defconfig "defconfig")) (package (name "linux-libre") - (version "4.7.3") + (version version) (source (origin (method url-fetch) (uri (linux-libre-urls version)) - (sha256 - (base32 - "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6")) + (sha256 (base32 hash)) (patches (origin-patches %boot-logo-patch)))) (build-system gnu-build-system) (supported-systems '("x86_64-linux" "i686-linux")) @@ -275,11 +268,11 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." ("bc" ,bc) ("openssl" ,openssl) ("module-init-tools" ,module-init-tools) - - ,@(let ((conf (kernel-config - (or (%current-target-system) - (%current-system)) - #:variant (version-major+minor version)))) + ,@(let ((conf (configuration-file + (system->linux-architecture + (or (%current-target-system) + (%current-system))) + #:variant (version-major+minor version)))) (if conf `(("kconfig" ,conf)) '())))) @@ -317,7 +310,7 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." (begin (copy-file config ".config") (chmod ".config" #o666)) - (system* "make" "defconfig")) + (system* "make" ,defconfig)) ;; Appending works even when the option wasn't in the ;; file. The last one prevails if duplicated. @@ -364,39 +357,20 @@ for SYSTEM and optionally VARIANT, or #f if there is no such configuration." It has been modified to remove all non-free binary blobs.") (license license:gpl2))) +(define-public linux-libre + (make-linux-libre "4.7.3" + "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6" + #:configuration-file kernel-config)) + (define-public linux-libre-4.4 - (package - (inherit linux-libre) - (version "4.4.20") - (source (origin - (method url-fetch) - (uri (linux-libre-urls version)) - (sha256 - (base32 - "1fi0pyyzcf643vdsss0d9ld6jqyxw0k76r0a5vpd4mv3dcl37yyq")))) - (native-inputs - (let ((conf (kernel-config (or (%current-target-system) - (%current-system)) - #:variant "4.4"))) - `(,@(alist-delete "kconfig" (package-native-inputs linux-libre)) - ("kconfig" ,conf)))))) + (make-linux-libre "4.4.20" + "1fi0pyyzcf643vdsss0d9ld6jqyxw0k76r0a5vpd4mv3dcl37yyq" + #:configuration-file kernel-config)) (define-public linux-libre-4.1 - (package - (inherit linux-libre) - (version "4.1.32") - (source (origin - (method url-fetch) - (uri (linux-libre-urls version)) - (sha256 - (base32 - "0lkksxpxsw6b8vcgbivn2kp6xbml69yx8frrsfrk49sqigz0xds6")))) - (native-inputs - (let ((conf (kernel-config (or (%current-target-system) - (%current-system)) - #:variant "4.1"))) - `(,@(alist-delete "kconfig" (package-native-inputs linux-libre)) - ("kconfig" ,conf)))))) + (make-linux-libre "4.1.31" + "0grffah921k136w1qwcswxv6m810s8q54nr2rk7kyqka3a1b81yw" + #:configuration-file kernel-config)) ;;; -- cgit v1.2.3 From 90c18c321e579992a8f4961dd280d8c04f1ea3c2 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 16:47:52 +0200 Subject: gnu: make-linux-libre: Add extra-options parameter. * gnu/packages/linux.scm (linux-libre): Use %default-extra-linux-options. (config->string, %default-extra-linux-options): New variables. --- gnu/packages/linux.scm | 45 ++++++++++++++++++++++++++++++--------------- 1 file changed, 30 insertions(+), 15 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index d4946af4ea..1cf80cfb3f 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -247,12 +247,38 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (file (string-append "gnu/packages/" name))) (if file-exists? (search-path %load-path file) #f))) +(define %default-extra-linux-options + `(("CONFIG_NET_9P" . m) + ("CONFIG_NET_9P_VIRTIO" . m) + ("CONFIG_VIRTIO_BLK" . m) + ("CONFIG_VIRTIO_NET" . m) + ;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html + ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t) + ("CONFIG_VIRTIO_PCI" . m) + ("CONFIG_VIRTIO_BALLOON" . m) + ("CONFIG_VIRTIO_MMIO" . m) + ("CONFIG_FUSE_FS" . m) + ("CONFIG_CIFS" . m) + ("CONFIG_9P_FS" . m))) + +(define (config->string options) + (string-join (map (match-lambda + ((option . 'm) + (string-append option "=m")) + ((option . #t) + (string-append option "=y")) + ((option . #f) + (string-append option "=n"))) + options) + "\n")) + (define* (make-linux-libre version hash #:key ;; A function that takes an arch and a variant. ;; See kernel-config for an example. (configuration-file #f) - (defconfig "defconfig")) + (defconfig "defconfig") + (extra-options %default-extra-linux-options)) (package (name "linux-libre") (version version) @@ -314,20 +340,9 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." ;; Appending works even when the option wasn't in the ;; file. The last one prevails if duplicated. - (let ((port (open-file ".config" "a"))) - (display (string-append "CONFIG_NET_9P=m\n" - "CONFIG_NET_9P_VIRTIO=m\n" - "CONFIG_VIRTIO_BLK=m\n" - "CONFIG_VIRTIO_NET=m\n" - ;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html - "CONFIG_DEVPTS_MULTIPLE_INSTANCES=y\n" - "CONFIG_VIRTIO_PCI=m\n" - "CONFIG_VIRTIO_BALLOON=m\n" - "CONFIG_VIRTIO_MMIO=m\n" - "CONFIG_FUSE_FS=m\n" - "CONFIG_CIFS=m\n" - "CONFIG_9P_FS=m\n") - port) + (let ((port (open-file ".config" "a")) + (extra-configuration ,(config->string extra-options))) + (display extra-configuration port) (close-port port)) (zero? (system* "make" "oldconfig"))))) -- cgit v1.2.3 From a6d01325141f9718b3d3b9f409a884836118c079 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 18:06:22 +0200 Subject: gnu: make-linux-libre: Add extra-version parameter. * gnu/packages/linux.scm (make-linux-libre): Add extra-version option. --- gnu/packages/linux.scm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1cf80cfb3f..fac0cbbae3 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -276,11 +276,14 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." #:key ;; A function that takes an arch and a variant. ;; See kernel-config for an example. + (extra-version #f) (configuration-file #f) (defconfig "defconfig") (extra-options %default-extra-linux-options)) (package - (name "linux-libre") + (name (if extra-version + (string-append "linux-libre-" extra-version) + "linux-libre")) (version version) (source (origin (method url-fetch) @@ -327,6 +330,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (format #t "`CROSS_COMPILE' set to `~a'~%" (getenv "CROSS_COMPILE")))) + (setenv "EXTRA_VERSION" ,extra-version) + (let ((build (assoc-ref %standard-phases 'build)) (config (assoc-ref inputs "kconfig"))) -- cgit v1.2.3 From fd6e0de3c0d997c991fbb59a27b1d71e85b081b8 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 19:30:33 +0200 Subject: gnu: make-linux-libre: Add zImage to output. * gnu/packages/linux.scm (make-linux-libre): Add zImage to output. --- gnu/packages/linux.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index fac0cbbae3..b62252642c 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -360,7 +360,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (for-each (lambda (file) (copy-file file (string-append out "/" (basename file)))) - (find-files "." "^(bzImage|vmlinuz|System\\.map)$")) + (find-files "." "^(bzImage|zImage|vmlinuz|System\\.map)$")) (copy-file ".config" (string-append out "/config")) (zero? (system* "make" (string-append "DEPMOD=" mit "/sbin/depmod") -- cgit v1.2.3 From 3129b9c2b17943a76fa243d30387ca01593fbf6a Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 19:38:24 +0200 Subject: gnu: make-linux-libre: Add supported-systems parameter. * gnu/packages/linux.scm (make-linux-libre): Add supported-systems parameter. --- gnu/packages/linux.scm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index b62252642c..eabcbbe2ae 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -272,7 +272,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." options) "\n")) -(define* (make-linux-libre version hash +(define* (make-linux-libre version hash supported-systems #:key ;; A function that takes an arch and a variant. ;; See kernel-config for an example. @@ -290,8 +290,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (uri (linux-libre-urls version)) (sha256 (base32 hash)) (patches (origin-patches %boot-logo-patch)))) + (supported-systems supported-systems) (build-system gnu-build-system) - (supported-systems '("x86_64-linux" "i686-linux")) (native-inputs `(("perl" ,perl) ("bc" ,bc) @@ -377,19 +377,24 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." It has been modified to remove all non-free binary blobs.") (license license:gpl2))) +(define %intel-compatible-systems '("x86_64-linux" "i686-linux")) + (define-public linux-libre (make-linux-libre "4.7.3" "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6" + %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.4 (make-linux-libre "4.4.20" "1fi0pyyzcf643vdsss0d9ld6jqyxw0k76r0a5vpd4mv3dcl37yyq" + %intel-compatible-systems #:configuration-file kernel-config)) (define-public linux-libre-4.1 (make-linux-libre "4.1.31" "0grffah921k136w1qwcswxv6m810s8q54nr2rk7kyqka3a1b81yw" + %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From 78edccccaf3bb0091b7edc97f0d92b15b1f23078 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 19:27:52 +0200 Subject: gnu: linux-libre: Use kmod. * gnu/packages/linux.scm (make-linux-libre): Use kmod. --- gnu/packages/linux.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index eabcbbe2ae..96ab43b95b 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -296,7 +296,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." `(("perl" ,perl) ("bc" ,bc) ("openssl" ,openssl) - ("module-init-tools" ,module-init-tools) + ("kmod" ,kmod) ,@(let ((conf (configuration-file (system->linux-architecture (or (%current-target-system) @@ -355,7 +355,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (lambda* (#:key inputs native-inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (moddir (string-append out "/lib/modules")) - (mit (assoc-ref (or native-inputs inputs) "module-init-tools"))) + (kmod (assoc-ref (or native-inputs inputs) "kmod"))) (mkdir-p moddir) (for-each (lambda (file) (copy-file file @@ -363,7 +363,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (find-files "." "^(bzImage|zImage|vmlinuz|System\\.map)$")) (copy-file ".config" (string-append out "/config")) (zero? (system* "make" - (string-append "DEPMOD=" mit "/sbin/depmod") + (string-append "DEPMOD=" kmod "/bin/depmod") (string-append "MODULE_DIR=" moddir) (string-append "INSTALL_PATH=" out) (string-append "INSTALL_MOD_PATH=" out) -- cgit v1.2.3 From cde7c23f15ed61c5f6fab09103f380af01b2060e Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 19:41:38 +0200 Subject: gnu: Add linux-libre-arm-generic. * gnu/packages/linux.scm (linux-libre-arm-generic): New variable. --- gnu/packages/linux.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 96ab43b95b..835811d5fd 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -397,6 +397,17 @@ It has been modified to remove all non-free binary blobs.") %intel-compatible-systems #:configuration-file kernel-config)) +;; Avoid rebuilding kernel variants when there is a minor version bump. +(define %linux-libre-version "4.7.3") +(define %linux-libre-hash "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6") + +(define-public linux-libre-arm-generic + (make-linux-libre %linux-libre-version + %linux-libre-hash + '("armhf-linux") + #:defconfig "multi_v7_defconfig" + #:extra-version "arm-generic")) + ;;; ;;; Pluggable authentication modules (PAM). -- cgit v1.2.3 From de459dc095c4db1d1a0ea590519632724e4646db Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 8 Sep 2016 19:42:50 +0200 Subject: gnu: Add linux-libre-beagle-bone-black. * gnu/packages/linux.scm (linux-libre-beagle-bone-black): New variable. --- gnu/packages/linux.scm | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 835811d5fd..fde62bdac6 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -408,6 +408,13 @@ It has been modified to remove all non-free binary blobs.") #:defconfig "multi_v7_defconfig" #:extra-version "arm-generic")) +(define-public linux-libre-beagle-bone-black + (make-linux-libre %linux-libre-version + %linux-libre-hash + '("armhf-linux") + #:defconfig "omap2plus_defconfig" + #:extra-version "beagle-bone-black")) + ;;; ;;; Pluggable authentication modules (PAM). -- cgit v1.2.3 From cff0adec0c621f77238f533a2cf544f9bc33c659 Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 13 Sep 2016 20:58:07 +0200 Subject: gnu: libnfsidmap: Move to (gnu packages linux). * gnu/packages/linux.scm (libnfsidmap): Move. --- gnu/packages/linux.scm | 58 +++++++++++++++++++++++++------------------------- 1 file changed, 29 insertions(+), 29 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index fde62bdac6..455947d1e4 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -199,35 +199,6 @@ `insmod', `lsmod', and more.") (license license:gpl2+))) -(define-public libnfsidmap - (package - (name "libnfsidmap") - (version "0.25") - (source (origin - (method url-fetch) - (uri (string-append - "http://www.citi.umich.edu/projects/nfsv4/linux/" - name "/" name "-" version ".tar.gz")) - (sha256 - (base32 - "1kzgwxzh83qi97rblcm9qj80cdvnv8kml2plz0q103j0hifj8vb5")))) - (build-system gnu-build-system) - (arguments - `(#:configure-flags (list - (string-append "--with-pluginpath=" - (assoc-ref %outputs "out") - "/lib/libnfsidmap")))) - (home-page - "http://www.citi.umich.edu/projects/nfsv4/crossrealm/libnfsidmap_config.html") - (synopsis - "NFSv4 support library for name/ID mapping") - (description "Libnfsidmap is a library holding mulitiple methods of -mapping names to ids and visa versa, mainly for NFSv4. It provides an -extensible array of mapping functions, currently consisting of two choices: -the default @code{nsswitch} and the experimental @code{umich_ldap}.") - (license (license:non-copyleft "file://COPYING" - "See COPYING in the distribution.")))) - (define %boot-logo-patch ;; Linux-Libre boot logo featuring Freedo and a gnu. (origin @@ -2940,3 +2911,32 @@ native Linux file system, and has been part of the Linux kernel since version ;; The files src/key_mod/ecryptfs_key_mod_{openssl,pkcs11_helper,tspi}.c ;; grant additional permission to link with OpenSSL. (license license:gpl2+))) + +(define-public libnfsidmap + (package + (name "libnfsidmap") + (version "0.25") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.citi.umich.edu/projects/nfsv4/linux/" + name "/" name "-" version ".tar.gz")) + (sha256 + (base32 + "1kzgwxzh83qi97rblcm9qj80cdvnv8kml2plz0q103j0hifj8vb5")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags (list + (string-append "--with-pluginpath=" + (assoc-ref %outputs "out") + "/lib/libnfsidmap")))) + (home-page + "http://www.citi.umich.edu/projects/nfsv4/crossrealm/libnfsidmap_config.html") + (synopsis + "NFSv4 support library for name/ID mapping") + (description "Libnfsidmap is a library holding mulitiple methods of +mapping names to ids and visa versa, mainly for NFSv4. It provides an +extensible array of mapping functions, currently consisting of two choices: +the default @code{nsswitch} and the experimental @code{umich_ldap}.") + (license (license:non-copyleft "file://COPYING" + "See COPYING in the distribution.")))) -- cgit v1.2.3 From 035d359338b7f58f90f69d5471e216f9d13fdaee Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 13 Sep 2016 20:59:34 +0200 Subject: gnu: module-init-tools: Move to (gnu packages linux). * gnu/packages/linux.scm (module-init-tools): Move. --- gnu/packages/linux.scm | 64 +++++++++++++++++++++++++------------------------- 1 file changed, 32 insertions(+), 32 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 455947d1e4..981ac60dd5 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -167,38 +167,6 @@ (license license:gpl2) (home-page "http://www.gnu.org/software/linux-libre/")))) -(define-public module-init-tools - (package - (name "module-init-tools") - (version "3.16") - (source (origin - (method url-fetch) - (uri (string-append - "mirror://kernel.org/linux/utils/kernel/module-init-tools/" - "module-init-tools-" version ".tar.bz2")) - (sha256 - (base32 - "0jxnz9ahfic79rp93l5wxcbgh4pkv85mwnjlbv1gz3jawv5cvwp1")) - (patches (search-patches "module-init-tools-moduledir.patch")))) - (build-system gnu-build-system) - (arguments - ;; FIXME: The upstream tarball lacks man pages, and building them would - ;; require DocBook & co. We used to use Gentoo's pre-built man pages, - ;; but they vanished. In the meantime, fake it. - '(#:phases (alist-cons-before - 'configure 'fake-docbook - (lambda _ - (substitute* "Makefile.in" - (("^DOCBOOKTOMAN.*$") - "DOCBOOKTOMAN = true\n"))) - %standard-phases))) - (home-page "http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/") - (synopsis "Tools for loading and managing Linux kernel modules") - (description - "Tools for loading and managing Linux kernel modules, such as `modprobe', -`insmod', `lsmod', and more.") - (license license:gpl2+))) - (define %boot-logo-patch ;; Linux-Libre boot logo featuring Freedo and a gnu. (origin @@ -2940,3 +2908,35 @@ extensible array of mapping functions, currently consisting of two choices: the default @code{nsswitch} and the experimental @code{umich_ldap}.") (license (license:non-copyleft "file://COPYING" "See COPYING in the distribution.")))) + +(define-public module-init-tools + (package + (name "module-init-tools") + (version "3.16") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://kernel.org/linux/utils/kernel/module-init-tools/" + "module-init-tools-" version ".tar.bz2")) + (sha256 + (base32 + "0jxnz9ahfic79rp93l5wxcbgh4pkv85mwnjlbv1gz3jawv5cvwp1")) + (patches (search-patches "module-init-tools-moduledir.patch")))) + (build-system gnu-build-system) + (arguments + ;; FIXME: The upstream tarball lacks man pages, and building them would + ;; require DocBook & co. We used to use Gentoo's pre-built man pages, + ;; but they vanished. In the meantime, fake it. + '(#:phases (alist-cons-before + 'configure 'fake-docbook + (lambda _ + (substitute* "Makefile.in" + (("^DOCBOOKTOMAN.*$") + "DOCBOOKTOMAN = true\n"))) + %standard-phases))) + (home-page "http://www.kernel.org/pub/linux/utils/kernel/module-init-tools/") + (synopsis "Tools for loading and managing Linux kernel modules") + (description + "Tools for loading and managing Linux kernel modules, such as `modprobe', +`insmod', `lsmod', and more.") + (license license:gpl2+))) -- cgit v1.2.3 From f26dd9b2cc6ef2c3856fe991a04adf17d7361475 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sun, 11 Sep 2016 18:53:50 +0200 Subject: gnu: Add microcom * gnu/packages/microcom.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/microcom.scm | 57 +++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 58 insertions(+) create mode 100644 gnu/packages/microcom.scm diff --git a/gnu/local.mk b/gnu/local.mk index 571400989b..550897e75f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -240,6 +240,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/mcrypt.scm \ %D%/packages/messaging.scm \ %D%/packages/mg.scm \ + %D%/packages/microcom.scm \ %D%/packages/mit-krb5.scm \ %D%/packages/moe.scm \ %D%/packages/mono.scm \ diff --git a/gnu/packages/microcom.scm b/gnu/packages/microcom.scm new file mode 100644 index 0000000000..cfa2518f18 --- /dev/null +++ b/gnu/packages/microcom.scm @@ -0,0 +1,57 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 John Darrington +;;; +;;; 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 . + +(define-module (gnu packages microcom) + #:use-module (guix packages) + #:use-module (guix licenses) + #:use-module (guix git-download) + #:use-module (guix download) + #:use-module (gnu packages autotools) + #:use-module (gnu packages readline) + #:use-module (guix build-system gnu)) + +(define-public microcom + (package + (name "microcom") + (version "2016.01.09") + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://git.pengutronix.de/git/tools/microcom.git") + (commit "v2016.01.0"))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "080ci5589bpyy5kcl51csmvpw9zysify189hw6awx69pi3cjnxly")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'bootstrap + (lambda _ + (zero? (system* "autoreconf" "-i"))))))) + (inputs `(("readline" ,readline))) + (native-inputs `(("automake" ,automake) + ("autoconf" ,autoconf))) + (home-page "http://git.pengutronix.de/?p=tools/microcom.git") + (synopsis "Minimalistic serial line terminal program") + (description "Microcom is a minimalistic terminal program for accessing +devices via a serial connection. It features connection via RS232 serial +interfaces (including setting of transfer rates) as well as in `telnetmode' +as specified in rfc2217 and a (Linux specific) CAN mode.") + (license gpl2+))) -- cgit v1.2.3 From 812b3c1f8a3717fd9fc540663912c5e9a144db5b Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Tue, 13 Sep 2016 12:30:41 +0200 Subject: gnu: ldc: Fix build failure. * gnu/packages/ldc.scm (ldc)[arguments]: Add 'patch-dmd2' phase. [inputs]: Add zlib. [native-inputs]: Specify version 3.7 of LLVM and Clang. Signed-off-by: Leo Famulari --- gnu/packages/ldc.scm | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ldc.scm b/gnu/packages/ldc.scm index 1709f59f4c..560fa497fb 100644 --- a/gnu/packages/ldc.scm +++ b/gnu/packages/ldc.scm @@ -26,6 +26,7 @@ #:use-module (guix build-system cmake) #:use-module (gnu packages) #:use-module (gnu packages base) + #:use-module (gnu packages compression) #:use-module (gnu packages libedit) #:use-module (gnu packages llvm) #:use-module (gnu packages textutils) @@ -101,6 +102,14 @@ and freshness without requiring additional information from the user.") (and (unpack "phobos-src" "runtime/phobos") (unpack "druntime-src" "runtime/druntime") (unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite"))))) + (add-after 'unpack-submodule-sources 'patch-dmd2 + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "dmd2/root/port.c" + ((" ::isnan") " isnan") + ((" ::isinf") " isinf") + (("#undef isnan") "") + (("#undef isinf") "")) + #t)) (add-after 'unpack-submodule-sources 'patch-phobos (lambda* (#:key inputs #:allow-other-keys) (substitute* "runtime/phobos/std/process.d" @@ -115,10 +124,11 @@ and freshness without requiring additional information from the user.") (inputs `(("libconfig" ,libconfig) ("libedit" ,libedit) - ("tzdata" ,tzdata))) + ("tzdata" ,tzdata) + ("zlib" ,zlib))) (native-inputs - `(("llvm" ,llvm) - ("clang" ,clang) + `(("llvm" ,llvm-3.7) + ("clang" ,clang-3.7) ("unzip" ,unzip) ("phobos-src" ,(origin -- cgit v1.2.3 From 995e5092d82569e06a9d7203f637816cc6894930 Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 13 Sep 2016 19:04:15 +0000 Subject: gnu: Add femtolisp. * gnu/packages/lisp.scm (femtolisp): New variable. Signed-off-by: Leo Famulari --- gnu/packages/lisp.scm | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 53 insertions(+) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 43fb195763..3461de41f6 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -485,3 +485,56 @@ in the early 80's. It was converted to C by Blake McBride and supports much of the InterLisp Standard.") (home-page "https://github.com/blakemcbride/LISPF4.git") (license license:expat)))) + +(define-public femtolisp + (let ((commit "68c5b1225572ecf2c52baf62f928063e5a30511b") + (revision "1")) + (package + (name "femtolisp") + (version (string-append "0.0.0-" revision "." (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/JeffBezanson/femtolisp.git") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags '("CC=gcc") + #:tests? #f ; No make check + #:phases + (modify-phases %standard-phases + (delete 'configure) ; No configure script + ;; We have to remove the 'test phase because it requires + ;; the flisp binary to be present. Instead we run + ;; bootstrap.sh after the 'install phase. + (add-before 'build 'patch-makefile + (lambda _ + (substitute* "Makefile" + (("default: release test") "default: release")) + #t)) + (replace 'install ; Makefile has no 'install phase + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "flisp" bin) + #t))) + ;; The flisp binary is now available, run bootstrap to + ;; generate flisp.boot and afterwards runs make test. + (add-after 'install 'bootstrap-gen-and-test + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (and + (zero? (system* "./bootstrap.sh")) + (install-file "flisp.boot" bin)))))))) + (synopsis "Scheme-like lisp implementation") + (description + "@code{femtolisp} is a scheme-like lisp implementation with a +simple, elegant Scheme dialect. It is a lisp-1 with lexical scope. +The core is 12 builtin special forms and 33 builtin functions.") + (home-page "https://github.com/JeffBezanson/femtolisp") + (license license:bsd-3)))) -- cgit v1.2.3 From 0b759869832817312c40bb0a6e45cc3114b9580b Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 13 Sep 2016 22:41:43 +0200 Subject: gnu: make-linux-libre: Only use configuration-file when one is provided. * gnu/packages/linux.scm (make-linux-libre): Only use configuration-file when one is provided. --- gnu/packages/linux.scm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 981ac60dd5..8c1cbeaa65 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -236,14 +236,13 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." ("bc" ,bc) ("openssl" ,openssl) ("kmod" ,kmod) - ,@(let ((conf (configuration-file - (system->linux-architecture - (or (%current-target-system) - (%current-system))) - #:variant (version-major+minor version)))) - (if conf - `(("kconfig" ,conf)) - '())))) + ,@(if configuration-file + `(("kconfig" ,(configuration-file + (system->linux-architecture + (or (%current-target-system) + (%current-system))) + #:variant (version-major+minor version)))) + '()))) (arguments `(#:modules ((guix build gnu-build-system) (guix build utils) -- cgit v1.2.3 From d6feaf6e8ffbc34f05bdff0672485416997984ec Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 13 Sep 2016 22:45:32 +0200 Subject: gnu: kernel-config: Remove redundant file-exists? check. * gnu/packages/linux.scm (kernel-config): Remove redundant file-exists? check. --- gnu/packages/linux.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 8c1cbeaa65..3ec65141af 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -184,7 +184,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (if variant (string-append variant "-") "") arch ".conf")) (file (string-append "gnu/packages/" name))) - (if file-exists? (search-path %load-path file) #f))) + (search-path %load-path file))) (define %default-extra-linux-options `(("CONFIG_NET_9P" . m) -- cgit v1.2.3 From dbc6d370fa75d2b6da1f89961a7c44f27ac52f87 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sat, 10 Sep 2016 20:35:20 +0200 Subject: doc: "Various Services" -> "Miscellaneous Services" * doc/guix.texi (Services): "Various" -> "Miscellaneous" --- doc/guix.texi | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 65cf804f1e..3a8a73cb7a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -219,7 +219,7 @@ Services * Database Services:: SQL databases. * Mail Services:: IMAP, POP3, SMTP, and all that. * Web Services:: Web servers. -* Various Services:: Other services. +* Miscellaneous Services:: Other services. Defining Services @@ -7587,7 +7587,7 @@ declaration. * Database Services:: SQL databases. * Mail Services:: IMAP, POP3, SMTP, and all that. * Web Services:: Web servers. -* Various Services:: Other services. +* Miscellaneous Services:: Other services. @end menu @node Base Services @@ -10166,8 +10166,8 @@ directories are created when the service is activated. @end deffn -@node Various Services -@subsubsection Various Services +@node Miscellaneous Services +@subsubsection Miscellaneous Services @subsubheading RPC Bind Service -- cgit v1.2.3 From ea833d301b0f4ff17dbc9403e18484a03258067e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 13 Sep 2016 15:05:07 +0200 Subject: gnu: guile-redis: Remove hard-coded Guile effective version. * gnu/packages/guile.scm (guile-redis)[snippet]: Modify 'ac_subst_vars' in 'configure', and use "@GUILE_EFFECTIVE_VERSION@" instead of "2.0" in 'Makefile.in'. --- gnu/packages/guile.scm | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 2294b169b6..5b8fffe11d 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -935,13 +935,17 @@ above command-line parameters.") "0vx6if6b4r3kwx64vzbs6vpc0cpcr85x11w9vkzq27gw8n7isv56")) (modules '((guix build utils))) (snippet - ;; Make sure everything goes under .../site/2.0, like Guile's + ;; Make sure everything goes under .../site/X.Y, like Guile's ;; search paths expects. - '(substitute* '("Makefile.in" - "redis/Makefile.in" - "redis/commands/Makefile.in") - (("moddir =.*/share/guile/site" all) - (string-append all "/2.0")))))) + '(begin + (substitute* "configure" + (("ac_subst_vars='") + "ac_subst_vars='GUILE_EFFECTIVE_VERSION\n")) + (substitute* '("Makefile.in" + "redis/Makefile.in" + "redis/commands/Makefile.in") + (("moddir =.*/share/guile/site" all) + (string-append all "/@GUILE_EFFECTIVE_VERSION@"))))))) (build-system gnu-build-system) (native-inputs `(("guile" ,guile-2.0))) -- cgit v1.2.3 From 85313be89d57a99f32f7991448ec06af7462f338 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Tue, 13 Sep 2016 15:09:23 +0200 Subject: gnu: Add guile2.2-redis. * gnu/packages/guile.scm (guile2.2-redis): New variable. --- gnu/packages/guile.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 5b8fffe11d..08430addf4 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -955,6 +955,9 @@ above command-line parameters.") key-value cache and store.") (license lgpl3+))) +(define-public guile2.2-redis + (package-for-guile-2.2 guile-redis)) + (define-public guile-wisp (package (name "guile-wisp") -- cgit v1.2.3 From 76f31f0b2c52942d251b39476c0306578da3bbf2 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Wed, 14 Sep 2016 15:17:37 +0800 Subject: gnu: Add direnv. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/shellutils.scm (direnv): New variable. Signed-off-by: 宋文武 --- gnu/packages/shellutils.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/shellutils.scm b/gnu/packages/shellutils.scm index 27f45bab9b..894ec7804a 100644 --- a/gnu/packages/shellutils.scm +++ b/gnu/packages/shellutils.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Matthew Jordan ;;; Copyright © 2016 Alex Griffin +;;; Copyright © 2016 Christopher Baines ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,6 +20,7 @@ (define-module (gnu packages shellutils) #:use-module (gnu packages base) + #:use-module (gnu packages golang) #:use-module (gnu packages python) #:use-module (guix licenses) #:use-module (guix packages) @@ -88,3 +90,35 @@ FreeDesktop.org trash can used by GNOME, KDE, XFCE, and other common desktop environments. It can move files to the trash, and remove or list files that are already there.") (license gpl2+))) + +(define-public direnv + (package + (name "direnv") + (version "2.9.0") + (source + (origin (method url-fetch) + (uri (string-append "https://github.com/direnv/" name + "/archive/v" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "04v3v2sz9m6ivgbxcplxscj1dsvpaqpqnxgls4060naj3iz9sg82")))) + (build-system gnu-build-system) + (arguments + '(#:test-target "test" + #:make-flags (list (string-append "DESTDIR=" (assoc-ref %outputs "out"))) + #:phases (modify-phases %standard-phases (delete 'configure)))) + (native-inputs + `(("go" ,go) + ("which" ,which))) + (home-page "http://direnv.net/") + (synopsis "Environment switcher for the shell") + (description "direnv can hook into bash, zsh, tcsh and fish shell to load +or unload environment variables depending on the current directory. This +allows project-specific environment variables without using the ~/.profile +file. + +Before each prompt, direnv checks for the existence of a .envrc file in the +current and parent directories. This file is then used to alter the +environmental variables of the current shell.") + (license expat))) -- cgit v1.2.3 From 931bd7f6ce1845cae81e3e0b758a770c47e2cc90 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 11 Sep 2016 02:52:32 +0200 Subject: gnu: Add tinyxml2. * gnu/packages/xml.scm (tinyxml2): New variable. --- gnu/packages/xml.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index e9074dbe12..7befad54aa 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -12,6 +12,7 @@ ;;; Copyright © 2016 Ben Woodcroft ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Tobias Geerinckx-Rice ;;; ;;; This file is part of GNU Guix. ;;; @@ -883,6 +884,27 @@ C++ programming language.") (home-page "http://www.grinninglizard.com/tinyxml/index.html") (license license:zlib))) +(define-public tinyxml2 + (package + (name "tinyxml2") + (version "4.0.1") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/leethomason/tinyxml2/archive/" + version ".tar.gz")) + (sha256 + (base32 + "083z4r4khcndxi9k840lcr48sqxvar4gpsnf749xfdn1bkr8xcql")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f)) ; no tests + (synopsis "Small XML parser for C++") + (description "TinyXML2 is a small and simple XML parsing library for the +C++ programming language.") + (home-page "http://www.grinninglizard.com/tinyxml2/") + (license license:zlib))) + (define-public xmlstarlet (package (name "xmlstarlet") -- cgit v1.2.3 From b6f87ec003f993864b4555dbff448b9b6a9a9b78 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sun, 11 Sep 2016 02:53:07 +0200 Subject: gnu: encfs: Update to 1.9. * gnu/packages/crypto.scm (encfs): Update to 1.9. [source]: Remove bundled TinyXML2 in a snippet. [build-system]: Switch to cmake-build-system. [arguments]: Remove autotools-related phases and configure-flags. Don't use bundled TinyXML2. Move under *inputs. [native-inputs]: Remove autoconf, automake, libtool, and pkg-config. Add expect. [inputs]: Remove boost and rlog, while adding attr and tinyxml2. [license]: Add expat licence for new easylogging++.h file. --- gnu/packages/crypto.scm | 44 ++++++++++++++++++++++++-------------------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index ff5b0db5fb..c0a405cde7 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -26,6 +26,7 @@ #:use-module (gnu packages) #:use-module (gnu packages admin) #:use-module (gnu packages aidc) + #:use-module (gnu packages attr) #:use-module (gnu packages autotools) #:use-module (gnu packages boost) #:use-module (gnu packages cryptsetup) @@ -42,11 +43,14 @@ #:use-module (gnu packages search) #:use-module (gnu packages serialization) #:use-module (gnu packages shells) + #:use-module (gnu packages tcl) #:use-module (gnu packages tls) + #:use-module (gnu packages xml) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu)) (define-public libsodium @@ -193,7 +197,7 @@ communication.") (define-public encfs (package (name "encfs") - (version "1.8.1") + (version "1.9") (source (origin (method url-fetch) @@ -202,27 +206,26 @@ communication.") version "/encfs-" version ".tar.gz")) (sha256 (base32 - "1lfmcsk187qr6ahy8c8959p7jrk9d5rd9kcsx572850ca3zmf0la")))) - (build-system gnu-build-system) - (arguments - `(#:configure-flags '("--with-boost-serialization=boost_wserialization" - "--with-boost-filesystem=boost_filesystem") - #:phases (modify-phases %standard-phases - (add-before 'configure 'autoconf - (lambda _ - (zero? (system* "autoreconf" "-vfi"))))))) + "1gzlhq2dlwan3hll414wqinj92lb05wd4j370j190dgcalaxplih")) + (modules '((guix build utils))) + ;; Remove bundled dependencies in favour of proper inputs. + (snippet '(for-each delete-file-recursively + (find-files "internal" "^tinyxml2-[0-9]" + #:directories? #t))))) + (build-system cmake-build-system) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("gettext" ,gnu-gettext) - ("libtool" ,libtool) - ("perl" ,perl) - ("pkg-config" ,pkg-config))) + `(("gettext" ,gnu-gettext) + + ;; Test dependencies. + ("expect" ,expect) + ("perl" ,perl))) (inputs - `(("boost" ,boost) + `(("attr" ,attr) ("fuse" ,fuse) ("openssl" ,openssl) - ("rlog" ,rlog))) + ("tinyxml2" ,tinyxml2))) + (arguments + `(#:configure-flags (list "-DUSE_INTERNAL_TINYXML=OFF"))) (home-page "https://vgough.github.io/encfs") (synopsis "Encrypted virtual file system") (description @@ -231,8 +234,9 @@ created under an EncFS mount point is stored as a separate encrypted file on the underlying file system. Like most encrypted file systems, EncFS is meant to provide security against off-line attacks, such as a drive falling into the wrong hands.") - (license (list license:lgpl3+ ;encfs library - license:gpl3+)))) ;command-line tools + (license (list license:expat ; internal/easylogging++.h + license:lgpl3+ ; encfs library + license:gpl3+)))) ; command-line tools (define-public keyutils (package -- cgit v1.2.3 From 271447ff8e461b72ea815abc450298aeeb8b6dd3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 13 Sep 2016 20:31:12 +0200 Subject: gnu: Remove unused, obsolete, private rlog. * gnu/packages/crypto.scm (rlog): Remove variable. --- gnu/packages/crypto.scm | 26 -------------------------- 1 file changed, 26 deletions(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index c0a405cde7..8280384ad8 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -168,32 +168,6 @@ be used to manage peer-to-peer network connections as needed for real time communication.") (license license:gpl3))) -(define rlog - (package - (name "rlog") - (version "1.4") - (source - (origin - (method url-fetch) - (uri - (string-append "http://rlog.googlecode.com/files/rlog-" - version ".tar.gz")) - (sha256 - (base32 - "0y9zg0pd7vmnskwac1qdyzl282z7kb01nmn57lsg2mjdxgnywf59")))) - (build-system gnu-build-system) - (arguments - `(#:phases (modify-phases %standard-phases - (add-before 'configure 'patch-/bin/sh - (lambda _ - (substitute* "docs/Makefile.in" - (("/bin/sh") "sh"))))))) - (home-page "http://www.arg0.net/rlog") - (synopsis "Flexible message logging library for EncFS") - (description - "RLog provides message logging for EncFS. It is no longer maintained.") - (license license:lgpl2.1+))) - (define-public encfs (package (name "encfs") -- cgit v1.2.3 From 4a3b6aa5dd625b1697977c065a5d6b4e9ca84148 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 13 Sep 2016 17:56:18 +0200 Subject: doc: #:target takes a GNU triplet, not a system type. * doc/guix.texi (G-Expressions): In cross-compilation example, pass a GNU triplet to #:target. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 3a8a73cb7a..e130317992 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -3794,7 +3794,7 @@ native package build: "-s" (string-append #$emacs "/bin/emacs") (string-append #$output "/bin/vi"))) - #:target "mips64el-linux") + #:target "mips64el-linux-gnu") @end example @noindent -- cgit v1.2.3 From 8bebe734ca54bf83ceae4db0a91f09a706562882 Mon Sep 17 00:00:00 2001 From: Christopher Baines Date: Tue, 13 Sep 2016 08:06:24 +0100 Subject: gnu: Add emacs-es-mode. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (emacs-es-mode): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 3221949691..d8ffacd03b 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -1330,6 +1330,34 @@ Expectations, but it can be used in other contexts.") definitions for testing with the Ecukes framework.") (license license:gpl3+))) +(define-public emacs-es-mode + (package + (name "emacs-es-mode") + (version "4.2.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/dakrone/es-mode/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "02as82clm553yss7jfjac888308zr1h2229cch4z1yij70j25c8y")))) + (build-system emacs-build-system) + (propagated-inputs + ;; The version of org in Emacs 24.5 is not sufficient, and causes tables + ;; to be rendered incorrectly + `(("emacs-org" ,emacs-org))) + (home-page "https://github.com/dakrone/es-mode") + (synopsis "Major mode for editing Elasticsearch queries") + (description "@code{es-mode} includes highlighting, completion and +indentation support for Elasticsearch queries. Also supported are +@code{es-mode} blocks in @code{org-mode}, for which the results of queries can +be processed through @code{jq}, or in the case of aggregations, can be +rendered in to a table. In addition, there is an @code{es-command-center} +mode, which displays information about Elasticsearch clusters.") + (license license:gpl3+))) + (define-public emacs-expand-region (package (name "emacs-expand-region") -- cgit v1.2.3 From ddda5338b8d55529bfce29a11557dcebcdec2f0c Mon Sep 17 00:00:00 2001 From: David Thompson Date: Wed, 14 Sep 2016 11:14:09 -0400 Subject: gnu: guile-next: Update to 2.1.4. * gnu/packages/guile.scm (guile-next): Update to 2.1.4. --- gnu/packages/guile.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 08430addf4..0890f19025 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -204,14 +204,14 @@ without requiring the source code to be rewritten.") (define-public guile-next (package (inherit guile-2.0) (name "guile-next") - (version "2.1.3") + (version "2.1.4") (source (origin (method url-fetch) (uri (string-append "ftp://alpha.gnu.org/gnu/guile/guile-" version ".tar.xz")) (sha256 (base32 - "1k48wqca2hrsbfq4ssiv4pg9jwlqncs5iwwxklk2bnczi7lavv78")) + "1w8kyy8nz6489d092fix6lvgjrk0bww7i0c2k67ym4hq0kjl0r1j")) (modules '((guix build utils))) ;; Remove the pre-built object files. Instead, build everything -- cgit v1.2.3 From 362bc747a25b912111788db3612fa36ff85a6866 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Sep 2016 13:37:58 -0400 Subject: gnu: mysql: Update to 5.7.15 [fixes CVE-2016-6662]. * gnu/packages/databases.scm (mysql): Update to 5.7.15. [source]: Remove obsolete 'mysql-fix-failing-test.patch'. * gnu/packages/patches/mysql-fix-failing-test.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. --- gnu/local.mk | 1 - gnu/packages/databases.scm | 5 +- gnu/packages/patches/mysql-fix-failing-test.patch | 57 ----------------------- 3 files changed, 2 insertions(+), 61 deletions(-) delete mode 100644 gnu/packages/patches/mysql-fix-failing-test.patch diff --git a/gnu/local.mk b/gnu/local.mk index 550897e75f..d65b50897d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -688,7 +688,6 @@ dist_patch_DATA = \ %D%/packages/patches/mupdf-CVE-2016-6525.patch \ %D%/packages/patches/mupen64plus-ui-console-notice.patch \ %D%/packages/patches/mutt-store-references.patch \ - %D%/packages/patches/mysql-fix-failing-test.patch \ %D%/packages/patches/nasm-no-ps-pdf.patch \ %D%/packages/patches/net-tools-bitrot.patch \ %D%/packages/patches/netcdf-config-date.patch \ diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index fc31653871..efd0adb05d 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -205,7 +205,7 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.") (define-public mysql (package (name "mysql") - (version "5.7.13") + (version "5.7.15") (source (origin (method url-fetch) (uri (list (string-append @@ -215,10 +215,9 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.") (string-append "http://downloads.mysql.com/archives/get/file/" name "-" version ".tar.gz"))) - (patches (search-patches "mysql-fix-failing-test.patch")) (sha256 (base32 - "11qbib1xpy0zkki7j9ip17hks5kp5zgpcj7x8gy3a4m66lb1mgsh")))) + "0mlrxcvkn6bf869hjw9fb6m24ak26ndffnd91b4mknmz8cqkb1ch")))) (build-system cmake-build-system) (arguments '(#:configure-flags diff --git a/gnu/packages/patches/mysql-fix-failing-test.patch b/gnu/packages/patches/mysql-fix-failing-test.patch deleted file mode 100644 index 730d138c18..0000000000 --- a/gnu/packages/patches/mysql-fix-failing-test.patch +++ /dev/null @@ -1,57 +0,0 @@ -Fix spurious test failure: -https://bugs.mysql.com/bug.php?id=81868 - -Copied from Fedora: -https://pkgs.fedoraproject.org/cgit/rpms/community-mysql.git/diff/community-mysql-5.7.13-pfs-oom-unittest.patch?id=a51381c6f98b9cd6855bc89ba93398a949ef7098 - -commit 6c23035b52284c2575f297311dfd0278bcbb0dd1 -Author: Christopher Powers -Date: Mon May 2 19:43:31 2016 +0100 - - Bug#23186653 PERFORMANCE SCHEMA UNIT TESTS PFS_INSTR-OOM & PFS_INSTR_CLASS FAIL REGULARLY - - Two test cases pass on Windows but crash on Linux due to different init paths. - Now pass on both. - -diff --git a/storage/perfschema/unittest/pfs_instr-oom-t.cc b/storage/perfschema/unittest/pfs_instr-oom-t.cc -index db74c9c..b6bc818 100644 ---- a/storage/perfschema/unittest/pfs_instr-oom-t.cc -+++ b/storage/perfschema/unittest/pfs_instr-oom-t.cc -@@ -232,12 +232,14 @@ void test_oom() - ok(cond_2 == NULL, "oom (create cond)"); - - /* Create file. */ -- stub_alloc_always_fails = false; - PFS_thread fake_thread; -+ rc = init_instruments(¶m); - fake_thread.m_filename_hash_pins= NULL; - init_file_hash(¶m); -- rc = init_instruments(¶m); -- ok(rc == 0, "instances init"); -+ -+ stub_alloc_always_fails = true; -+ file_2 = find_or_create_file(&fake_thread, &dummy_file_class, "dummy", 5, true); -+ ok(file_2 == NULL, "oom (create file)"); - - stub_alloc_always_fails= false; - file_1= find_or_create_file(&fake_thread, &dummy_file_class, "dummy", 5, true); -@@ -245,10 +247,6 @@ void test_oom() - release_file(file_1); - cleanup_instruments(); - -- stub_alloc_always_fails= true; -- file_2= find_or_create_file(&fake_thread, &dummy_file_class, "dummy", 5, true); -- ok(file_2 == NULL, "oom (create file)"); -- - /* Create socket. */ - stub_alloc_always_fails = false; - rc = init_instruments(¶m); -@@ -422,7 +420,7 @@ void do_all_tests() - - int main(int, char **) - { -- plan(28); -+ plan(32); - MY_INIT("pfs_instr-oom-t"); - do_all_tests(); - return 0; -- cgit v1.2.3 From b5b2c11b5e7e63755136730b1b74c88743b1981f Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Sep 2016 13:43:21 -0400 Subject: gnu: mariadb: Update to 10.1.17 [fixes CVE-2016-6662 ]. * gnu/packages/databases.scm (mariadb): Update to 10.1.17. --- gnu/packages/databases.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index efd0adb05d..5b2e25dc27 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -278,7 +278,7 @@ Language.") (define-public mariadb (package (name "mariadb") - (version "10.1.16") + (version "10.1.17") (source (origin (method url-fetch) (uri (string-append "https://downloads.mariadb.org/f/" @@ -286,7 +286,7 @@ Language.") name "-" version ".tar.gz")) (sha256 (base32 - "14s3wq1c25n62n75hkixl8n7cni4m73w055nsx4czm655k33bjv7")))) + "1ddalhxxcn95qp5b50z213niylcd0s6bqphid0c7c624wg2mm92c")))) (build-system cmake-build-system) (arguments '(#:configure-flags -- cgit v1.2.3 From 2a0ed3254bc76ad6503170f196c2008473b0292b Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Wed, 14 Sep 2016 13:17:54 -0400 Subject: gnu: curl: Update replacement to 7.50.3 [fixes CVE-2016-7167]. * gnu/packages/curl.scm (curl)[replacement]: Update to 7.50.3. (curl-7.50.2): Replace with .... (curl-7.50.3): ... this. --- gnu/packages/curl.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index f3c0ade824..5cd80868f7 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -40,7 +40,7 @@ (define-public curl (package (name "curl") - (replacement curl-7.50.2) + (replacement curl-7.50.3) (version "7.47.0") (source (origin (method url-fetch) @@ -125,15 +125,15 @@ tunneling, and so on.") "See COPYING in the distribution.")) (home-page "http://curl.haxx.se/"))) -(define curl-7.50.2 +(define curl-7.50.3 (package (inherit curl) (source - (let ((version "7.50.2")) + (let ((version "7.50.3")) (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" version ".tar.lzma")) (sha256 (base32 - "0d5ly1xms0hh5zkv0m77d50c1816ywmbvmi1m158jyl70ndi9gby"))))))) + "1spmk0345hq0sgpwxs8d410268lmg3wf1x9v23hxff7wxki5fm4c"))))))) -- cgit v1.2.3 From 7ddacf88ef893856b920c52c65bc81689fc277b8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 14 Sep 2016 22:02:40 +0300 Subject: gnu: links: Update to 2.13. * gnu/packages/links.scm (links): Update to 2.13. --- gnu/packages/links.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/links.scm b/gnu/packages/links.scm index 41fac8c305..c741f2d55c 100644 --- a/gnu/packages/links.scm +++ b/gnu/packages/links.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 John Darrington -;;; Copyright © 2015 Efraim Flashner +;;; Copyright © 2015, 2016 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,13 +33,13 @@ (define-public links (package (name "links") - (version "2.12") + (version "2.13") (source (origin (method url-fetch) (uri (string-append "http://links.twibright.com/download/" name "-" version ".tar.bz2")) (sha256 - (base32 "0knq15yrp60s4jh92aacw8yfc2pcv3bqsw7dba7h5s6ivq8ihhcq")))) + (base32 "01a4mbpvf7450ymqarjkpmzrm0z2zyd9lvqwg7x9kcd36i9hjln2")))) (build-system gnu-build-system) (arguments `(#:phases (alist-replace -- cgit v1.2.3 From 6ea541e016706568538c9ca842211c74a70927b8 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 14 Sep 2016 22:04:50 +0300 Subject: gnu: links: Use 'modify-phases'. * gnu/packages/links.scm (links)[arguments]: Use 'modify-phases'. --- gnu/packages/links.scm | 34 +++++++++++++++++----------------- 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/gnu/packages/links.scm b/gnu/packages/links.scm index c741f2d55c..2f0c12a786 100644 --- a/gnu/packages/links.scm +++ b/gnu/packages/links.scm @@ -42,23 +42,23 @@ (base32 "01a4mbpvf7450ymqarjkpmzrm0z2zyd9lvqwg7x9kcd36i9hjln2")))) (build-system gnu-build-system) (arguments - `(#:phases (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - ;; The tarball uses a very old version of autconf. It doesn't - ;; understand extra flags like `--enable-fast-install', so - ;; we need to invoke it with just what it understands. - (let ((out (assoc-ref outputs "out"))) - ;; 'configure' doesn't understand '--host'. - ,@(if (%current-target-system) - `((setenv "CHOST" ,(%current-target-system))) - '()) - (setenv "CONFIG_SHELL" (which "bash")) - (zero? - (system* "./configure" - (string-append "--prefix=" out) - "--enable-graphics")))) - %standard-phases))) + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; The tarball uses a very old version of autconf. It doesn't + ;; understand extra flags like `--enable-fast-install', so + ;; we need to invoke it with just what it understands. + (let ((out (assoc-ref outputs "out"))) + ;; 'configure' doesn't understand '--host'. + ,@(if (%current-target-system) + `((setenv "CHOST" ,(%current-target-system))) + '()) + (setenv "CONFIG_SHELL" (which "bash")) + (zero? + (system* "./configure" + (string-append "--prefix=" out) + "--enable-graphics")))))))) (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("zlib" ,zlib) ("openssl" ,openssl) -- cgit v1.2.3 From 2792a6b470fcad0fc957895e1ad77ea692b83c8c Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Tue, 13 Sep 2016 18:59:37 +0200 Subject: gnu: perl-gd: Disable tests. * gnu/packages/gd.scm (perl-gd)[arguments]: Add #:tests?. Signed-off-by: Leo Famulari --- gnu/packages/gd.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm index b1bbc22cd7..4ba019460f 100644 --- a/gnu/packages/gd.scm +++ b/gnu/packages/gd.scm @@ -106,6 +106,7 @@ most common applications of GD involve website development.") (string-append "--lib_" i "_path=" (assoc-ref %build-inputs i))) '("zlib" "png" "ft" "jpeg" "fontconfig")) + #:tests? #f ;; Failed 1/2 test programs. 1/12 subtests failed. #:phases (alist-cons-after 'configure 'clear-autogenerated-files (lambda _ -- cgit v1.2.3 From 49735d8de1b9c99842fa80da832c17ce41f196cb Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Tue, 13 Sep 2016 18:59:38 +0200 Subject: gnu: perl-image-magick: Disable tests. * gnu/packages/imagemagick.scm (perl-image-magick)[arguments]: Add #:tests?. Signed-off-by: Leo Famulari --- gnu/packages/imagemagick.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 5d72cf291b..8dac3e1824 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -124,7 +124,8 @@ text, lines, polygons, ellipses and Bézier curves.") (native-inputs `(("pkg-config" ,pkg-config))) (inputs `(("imagemagick" ,imagemagick))) (arguments - `(#:phases + `(#:tests? #f ;;Failed 2/23 test programs. 2/353 subtests failed. + #:phases (modify-phases %standard-phases (add-before 'configure 'image-magick-flags -- cgit v1.2.3 From 16c6a01e3f5b40cffec738833931604847dd8e35 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Tue, 13 Sep 2016 13:55:38 -0400 Subject: gnu: Add perl-net-statsd. * gnu/packages/perl.scm (perl-net-statsd): New variable. Signed-off-by: Leo Famulari --- gnu/packages/perl.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 309deb5e42..d422940447 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2016 Alex Sassmannshausen ;;; Copyright © 2016 Roel Janssen ;;; Copyright © 2016 Ben Woodcroft +;;; Copyright © 2016 Jan Nieuwenhuizen ;;; ;;; This file is part of GNU Guix. ;;; @@ -4365,6 +4366,28 @@ cycle. Functions called in the package itself will still be bound by their name, but they won't show up as methods on your class or instances.") (license (package-license perl)))) +(define-public perl-net-statsd + (package + (name "perl-net-statsd") + (version "0.12") + (source + (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/C/CO/COSIMO/Net-Statsd-" + version + ".tar.gz")) + (sha256 + (base32 + "0p2nhrwamic2fyj094y583q088ixv9gbb82c3invqrd17mh57r33")))) + (build-system perl-build-system) + (home-page + "http://search.cpan.org/dist/Net-Statsd") + (synopsis "Perl client for Etsy's statsd daemon") + (description "This module implement a UDP client for the statsd statistics +collector daemon in use at Etsy.com.") + (license (package-license perl)))) + (define-public perl-number-compare (package (name "perl-number-compare") -- cgit v1.2.3 From fe71eee076a9779d88ea613389f7f4a79c127627 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Tue, 13 Sep 2016 14:07:13 -0400 Subject: gnu: Add libpqxx. * gnu/packages/databases.scm (libpqxx): New variable. Signed-off-by: Leo Famulari --- gnu/packages/databases.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 5b2e25dc27..b316745e47 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Roel Janssen ;;; Copyright © 2016 David Craven +;;; Copyright © 2016 Jan Nieuwenhuizen ;;; ;;; This file is part of GNU Guix. ;;; @@ -1093,3 +1094,29 @@ trees (LSM), for sustained throughput under random insert workloads.") (synopsis "Lightning memory-mapped database library") (description "Lightning memory-mapped database library.") (license license:openldap2.8))) + +(define-public libpqxx + (package + (name "libpqxx") + (version "4.0.1") + (source (origin + (method url-fetch) + (uri (string-append + "http://pqxx.org/download/software/libpqxx/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0f6wxspp6rx12fkasanb0z2g2gc8dhcfwnxagx8wwqbpg6ifsz09")))) + (build-system gnu-build-system) + (native-inputs + `(("python" ,python-2))) + (inputs `(("postgresql" ,postgresql))) + (arguments + `(#:tests? #f)) ; # FAIL: 1 + (synopsis "C++ connector for PostgreSQL") + (description + "Libpqxx is a C++ library to enable user programs to communicate with the +PostgreSQL database back-end. The database back-end can be local or it may be +on another machine, accessed via TCP/IP.") + (home-page "http://pqxx.org/") + (license license:bsd-3))) -- cgit v1.2.3 From 253745d75695faf23bd0ff68bc18f5bbc2f29580 Mon Sep 17 00:00:00 2001 From: Jan Nieuwenhuizen Date: Tue, 13 Sep 2016 18:59:41 +0200 Subject: gnu: hydra: Update to 20151030.1ff48da. * gnu/packages/ci.scm (hydra): Update to 20151030.1ff48da (fixes building with nix-1.11.x). [source]: Remove 'hydra-automake-1.15.patch'. [inputs]: Add libpqxx and perl-net-statsd. * gnu/packages/patches/hydra-automake-1.15.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 - gnu/packages/ci.scm | 17 +++---- gnu/packages/patches/hydra-automake-1.15.patch | 63 -------------------------- 3 files changed, 9 insertions(+), 72 deletions(-) delete mode 100644 gnu/packages/patches/hydra-automake-1.15.patch diff --git a/gnu/local.mk b/gnu/local.mk index d65b50897d..a7006cb45f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -565,7 +565,6 @@ dist_patch_DATA = \ %D%/packages/patches/higan-remove-march-native-flag.patch \ %D%/packages/patches/hop-bigloo-4.0b.patch \ %D%/packages/patches/hop-linker-flags.patch \ - %D%/packages/patches/hydra-automake-1.15.patch \ %D%/packages/patches/hydra-disable-darcs-test.patch \ %D%/packages/patches/hypre-doc-tables.patch \ %D%/packages/patches/hypre-ldflags.patch \ diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm index e0ff873b3e..3f54ff1298 100644 --- a/gnu/packages/ci.scm +++ b/gnu/packages/ci.scm @@ -39,23 +39,22 @@ #:use-module (guix build-system gnu)) (define-public hydra - (let ((commit "4c0e3e47034545ad3e9e86dd069138bcebb8ccee")) + (let ((commit "1ff48da3d3d4a425063f5b7dd0b89d35270f8932")) (package (name "hydra") - (version (string-append "20150407." (string-take commit 7))) + (version (string-append "20151030." (string-take commit 7))) (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/NixOS/hydra") (commit commit))) (file-name (string-append name "-" version)) - (sha256 - (base32 - "08vc76xb7f42hh65j7qvjf58hw36aki5ml343170pq94vk75b1nh")) (patches (search-patches - "hydra-automake-1.15.patch" ;; TODO: Remove once we have a darcs input - "hydra-disable-darcs-test.patch")))) + "hydra-disable-darcs-test.patch")) + (sha256 + (base32 + "0ni8i8v1nxxfr51rz8m6znwpbm77vr7i05k506hmgmg32r938lap")))) (build-system gnu-build-system) (native-inputs `(("unzip" ,unzip) @@ -74,7 +73,8 @@ ("mercurial" ,mercurial) ("bazaar" ,bazaar))) (inputs - `(("perl" ,perl) + `(("libpqxx" ,libpqxx) + ("perl" ,perl) ("guile" ,guile-2.0) ("openssl" ,openssl) ("bzip2" ,bzip2) @@ -125,6 +125,7 @@ ("perl-libwww" ,perl-libwww) ("perl-lwp-protocol-https" ,perl-lwp-protocol-https) ("perl-net-amazon-s3" ,perl-net-amazon-s3) + ("perl-net-statsd" ,perl-net-statsd) ("perl-padwalker" ,perl-padwalker) ("perl-readonly" ,perl-readonly) ("perl-set-scalar" ,perl-set-scalar) diff --git a/gnu/packages/patches/hydra-automake-1.15.patch b/gnu/packages/patches/hydra-automake-1.15.patch deleted file mode 100644 index 91c7b9202b..0000000000 --- a/gnu/packages/patches/hydra-automake-1.15.patch +++ /dev/null @@ -1,63 +0,0 @@ -This patch takes a slightly different approach to solving the issue reported -at https://github.com/NixOS/hydra/issues/200. This fix allows us to use -Automake's parallel test harness. - ---- source/configure.ac.orig 1969-12-31 18:00:01.000000000 -0600 -+++ source/configure.ac 2015-04-15 10:58:15.974679278 -0500 -@@ -33,7 +33,7 @@ - fi - ]) - --NEED_PROG(perl, perl) -+NEED_PROG([PERL], perl) - - NEED_PROG([NIX_STORE_PROGRAM], [nix-store]) - ---- source/tests/Makefile.am.orig 1969-12-31 18:00:01.000000000 -0600 -+++ source/tests/Makefile.am 2015-04-15 11:00:35.846682904 -0500 -@@ -1,19 +1,20 @@ --TESTS_ENVIRONMENT = \ -- BZR_HOME="$(abs_builddir)/data" \ -- HYDRA_DBI="dbi:SQLite:db.sqlite" \ -- HYDRA_DATA="$(abs_builddir)/data" \ -- HYDRA_HOME="$(top_srcdir)/src" \ -- HYDRA_CONFIG= \ -- NIX_REMOTE= \ -- GUIX_CONFIGURATION_DIRECTORY="$(abs_builddir)/nix/etc/nix" \ -- NIX_STATE_DIR="$(abs_builddir)/nix/var/nix" \ -- NIX_MANIFESTS_DIR="$(abs_builddir)/nix/var/nix/manifests" \ -- NIX_STORE_DIR="$(abs_builddir)/nix/store" \ -- NIX_LOG_DIR="$(abs_builddir)/nix/var/log/nix" \ -- NIX_BUILD_HOOK= \ -- PERL5LIB="$(srcdir):$(top_srcdir)/src/lib:$$PERL5LIB" \ -- PATH=$(abs_top_srcdir)/src/script:$(abs_top_srcdir)/src/c:$$PATH \ -- perl -w -+AM_TESTS_ENVIRONMENT = \ -+ BZR_HOME="$(abs_builddir)/data"; export BZR_HOME; \ -+ HYDRA_DBI="dbi:SQLite:db.sqlite"; export HYDRA_DBI; \ -+ HYDRA_DATA="$(abs_builddir)/data"; export HYDRA_DATA; \ -+ HYDRA_HOME="$(top_srcdir)/src"; export HYDRA_HOME; \ -+ HYDRA_CONFIG=; export HYDRA_CONFIG; \ -+ NIX_REMOTE=; export NIX_REMOTE; \ -+ GUIX_CONFIGURATION_DIRECTORY="$(abs_builddir)/nix/etc/nix"; export GUIX_CONFIGURATION_DIRECTORY; \ -+ NIX_STATE_DIR="$(abs_builddir)/nix/var/nix"; export NIX_STATE_DIR; \ -+ NIX_MANIFESTS_DIR="$(abs_builddir)/nix/var/nix/manifests"; export NIX_MANIFESTS_DIR; \ -+ NIX_STORE_DIR="$(abs_builddir)/nix/store"; export NIX_STORE_DIR; \ -+ NIX_LOG_DIR="$(abs_builddir)/nix/var/log/nix"; export NIX_LOG_DIR; \ -+ NIX_BUILD_HOOK=; export NIX_BUILD_HOOK; \ -+ PERL5LIB="$(srcdir):$(top_srcdir)/src/lib:$$PERL5LIB"; export PERL5LIB; \ -+ PATH=$(abs_top_srcdir)/src/script:$(abs_top_srcdir)/src/c:$$PATH; export PATH; -+LOG_COMPILER = $(PERL) -+AM_LOG_FLAGS = -w - - EXTRA_DIST = \ - $(wildcard *.pm) \ -@@ -33,7 +34,7 @@ - check_SCRIPTS = db.sqlite repos - - db.sqlite: $(top_srcdir)/src/sql/hydra-sqlite.sql -- $(TESTS_ENVIRONMENT) $(top_srcdir)/src/script/hydra-init -+ $(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) $(top_srcdir)/src/script/hydra-init - - repos: dirs - -- cgit v1.2.3 From 991847748a554deb9bc6d6a7b4f8a5e9164365c6 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 14 Sep 2016 19:36:03 +0000 Subject: gnu: gnurl: Update to 7.50.3. * gnu/packages/gnunet.scm (gnurl): Update to 7.50.3. Signed-off-by: Leo Famulari --- gnu/packages/gnunet.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm index d9387b96d6..56a5ea3299 100644 --- a/gnu/packages/gnunet.scm +++ b/gnu/packages/gnunet.scm @@ -158,7 +158,7 @@ and support for SSL3 and TLS.") (define-public gnurl (package (name "gnurl") - (version "7.50.2-1") + (version "7.50.3") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -167,7 +167,7 @@ and support for SSL3 and TLS.") name "-" version-with-underscores ".tar.bz2"))) (sha256 (base32 - "0bxm2015xvcazgh103hi5rpdnl2hbipx0gd5z6a65bj6nzky0pml")))) + "07ij9mj60kpfrmi0436k14b1d1idsj79nk4w5h3bia69arzp2cnk")))) (build-system gnu-build-system) (inputs `(("gnutls" ,gnutls) ("libidn" ,libidn) -- cgit v1.2.3 From 74c0282c4591720b9a81359e400bb460718b78c1 Mon Sep 17 00:00:00 2001 From: ng0 Date: Wed, 14 Sep 2016 09:26:04 +0000 Subject: gnu: Add mhonarc. * gnu/packages/mail.scm (mhonarc): New variable. Signed-off-by: Leo Famulari --- gnu/packages/mail.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c2fc1a9a0c..90c2da4f10 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1388,3 +1388,25 @@ to mbox files, maildir folders or a Mail Delivery Agent (MDA), TLS/SSL, several authentication methods, Internationalized Domain Names (IDN) and SOCKS proxies.") (license gpl3+))) + +(define-public mhonarc + (package + (name "mhonarc") + (version "2.6.19") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://cpan/authors/id/E/EH/EHOOD/MHonArc-" + version ".tar.gz")) + (sha256 + (base32 + "0ll3v93yji334zqp6xfzfxc0127pmjcznmai1l5q6dzawrs2igzq")))) + (build-system perl-build-system) + (home-page "https://www.mhonarc.org/") + (synopsis "Create HTML archives of mail/news messages") + (description + "MHonArc is a Perl mail-to-HTML converter. MHonArc +provides HTML mail archiving with index, mail thread linking, +etc; plus other capabilities including support for MIME and +powerful user customization features.") + (license gpl2+))) -- cgit v1.2.3 From 66f95b209af77d8d97cfeed75d363ad744500472 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 11 Sep 2016 15:07:35 +0100 Subject: gnu: Add python-pytest-pep8. * gnu/packages/python.scm (python-pytest-pep8, python2-pytest-pep8): New variables. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index e2e1ec2ee8..8ca7185ef4 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10352,3 +10352,36 @@ failures.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-pytest-pep8 + (package + (name "python-pytest-pep8") + (version "1.0.6") + (source (origin + (method url-fetch) + (uri (pypi-uri "pytest-pep8" version)) + (sha256 + (base32 + "06032agzhw1i9d9qlhfblnl3dw5hcyxhagn7b120zhrszbjzfbh3")))) + (build-system python-build-system) + (arguments + `(#:tests? #f ; Fails with recent pytest and pep8. See upstream issues #8 and #12. + ;; Prevent creation of the egg. This works around + ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20765 . + #:configure-flags '("--single-version-externally-managed" "--root=/"))) + (native-inputs + `(("python-pytest" ,python-pytest))) + (propagated-inputs + `(("python-pep8" ,python-pep8))) + (home-page "https://bitbucket.org/pytest-dev/pytest-pep8") + (synopsis "Py.test plugin to check PEP8 requirements") + (description "Pytest plugin for checking PEP8 compliance.") + (license license:expat) + (properties `((python2-variant . ,(delay python2-pytest-pep8)))))) + +(define-public python2-pytest-pep8 + (let ((base (package-with-python2 (strip-python2-variant python-pytest-pep8)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From df94a6b57d0e507ca9a03257881445a35310c082 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 11 Sep 2016 15:07:36 +0100 Subject: gnu: Add python-pytest-flakes. * gnu/packages/python.scm (python-pytest-flakes, python2-pytest-flakes): New variables. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8ca7185ef4..8c61736a46 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10385,3 +10385,44 @@ failures.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-pytest-flakes + (package + (name "python-pytest-flakes") + (version "1.0.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "pytest-flakes" version)) + (sha256 + (base32 + "0flag3n33kbhyjrhzmq990rvg4yb8hhhl0i48q9hw0ll89jp28lw")))) + (build-system python-build-system) + (arguments + `(;; Prevent creation of the egg. This works around + ;; https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20765 . + #:configure-flags '("--single-version-externally-managed" "--root=/") + #:phases + (modify-phases %standard-phases + (delete 'check) + (add-after 'install 'check + (lambda _ ; It's easier to run tests after install. + (zero? (system* "py.test" "-vv"))))))) + (native-inputs + `(("python-coverage" ,python-coverage) + ("python-pytest" ,python-pytest) + ("python-pytest-cache" ,python-pytest-cache) + ("python-pytest-pep8" ,python-pytest-pep8))) + (propagated-inputs + `(("python-pyflakes" ,python-pyflakes))) + (home-page "https://github.com/fschulze/pytest-flakes") + (synopsis "Py.test plugin to check source code with pyflakes") + (description "Pytest plugin for checking Python source code with pyflakes.") + (license license:expat) + (properties `((python2-variant . ,(delay python2-pytest-flakes)))))) + +(define-public python2-pytest-flakes + (let ((base (package-with-python2 (strip-python2-variant python-pytest-flakes)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From 5467ea6200e7cf9fa57f340849b6ec1becc87b3d Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 11 Sep 2016 15:07:37 +0100 Subject: gnu: Add python-natsort. * gnu/packages/python.scm (python-natsort, python2-natsort): New variables. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8c61736a46..0671444ca5 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10426,3 +10426,52 @@ failures.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-natsort + (package + (name "python-natsort") + (version "5.0.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "natsort" version)) + (sha256 + (base32 + "1abld5p4a6n5zjnyw5mi2pv37gqalcybv2brjr2y6l9l2p8v9mja")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'set-cachedir + ;; Tests require write access to $HOME by default + (lambda _ (setenv "PYTHON_EGG_CACHE" "/tmp") #t))))) + (native-inputs + `(("python-hypothesis" ,python-hypothesis) + ("python-pytest-cache" ,python-pytest-cache) + ("python-pytest-cov" ,python-pytest-cov) + ("python-pytest-flakes" ,python-pytest-flakes) + ("python-pytest-pep8" ,python-pytest-pep8))) + (propagated-inputs ; TODO: Add python-fastnumbers. + `(("python-pyicu" ,python-pyicu))) + (home-page "https://github.com/SethMMorton/natsort") + (synopsis "Natural sorting for python and shell") + (description + "Natsort lets you apply natural sorting on lists instead of +lexicographical. If you use the built-in @code{sorted} method in python +on a list such as @code{['a20', 'a9', 'a1', 'a4', 'a10']}, it would be +returned as @code{['a1', 'a10', 'a20', 'a4', 'a9']}. Natsort provides a +function @code{natsorted} that identifies numbers and sorts them separately +from strings. It can also sort version numbers, real numbers, mixed types +and more, and comes with a shell command @command{natsort} that exposes this +functionality in the command line.") + (license license:expat) + (properties `((python2-variant . ,(delay python2-natsort)))))) + +(define-public python2-natsort + (let ((base (package-with-python2 (strip-python2-variant python-natsort)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ("python2-pathlib" ,python2-pathlib) + ("python2-mock" ,python2-mock) + ("python2-enum34" ,python2-enum34) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From ab179eaf982b7ac721891126dbf7e55c6dc36f5d Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Thu, 15 Sep 2016 15:46:14 +0800 Subject: gnu: Add gnome-dictionary. * gnu/packages/gnome.scm (gnome-dictionary): New variable. --- gnu/packages/gnome.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 3151fe2699..6dab1d79e8 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -5165,6 +5165,36 @@ Microsoft SkyDrive and Hotmail, using their REST protocols.") desktop. It supports multiple calendars, monthly view and yearly view.") (license license:gpl3+))) +(define-public gnome-dictionary + (package + (name "gnome-dictionary") + (version "3.20.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "08b1f5s5aqka3dwxnzmwr2fmyddjm9xw7zmqsf8r5zvfsivn7czg")))) + (build-system glib-or-gtk-build-system) + (native-inputs + `(("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("intltool" ,intltool) + ("itstool" ,itstool) + ("pkg-config" ,pkg-config) + ("xmllint" ,libxml2))) + (inputs + `(("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gtk+" ,gtk+))) + (home-page "https://wiki.gnome.org/Apps/Dictionary") + (synopsis "Look up words in dictionary sources") + (description + "GNOME Dictionary can look for the definition or translation of a word in +existing databases over the internet.") + (license license:gpl3+))) + (define-public gnome-tweak-tool (package (name "gnome-tweak-tool") -- cgit v1.2.3 From d002121b5e70f53aa4ff269f90f21f04ac52a026 Mon Sep 17 00:00:00 2001 From: Vincent Legoll Date: Wed, 24 Aug 2016 13:03:48 +0200 Subject: gnu: nss-certs and nss: Update to 3.26 * gnu/packages/certs.scm (nss-certs): Update to 3.26. * gnu/packages/gnuzilla.scm (nss): Update to 3.26. Signed-off-by: Leo Famulari --- gnu/packages/certs.scm | 4 ++-- gnu/packages/gnuzilla.scm | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index f5a4372d5c..f010fabc86 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -73,7 +73,7 @@ (define-public nss-certs (package (name "nss-certs") - (version "3.23") + (version "3.26") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -84,7 +84,7 @@ "nss-" version ".tar.gz"))) (sha256 (base32 - "1kqidv91icq96m9m8zx50n7px08km2l88458rkgyjwcn3kiq7cwl")))) + "0r65s5q8kk0vr48s0zr8xi610k7h072lgkkpp4z6jlxr19bkly4i")))) (build-system gnu-build-system) (outputs '("out")) (native-inputs diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 27c8ede8e9..c2aba247b4 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -185,7 +185,7 @@ in the Mozilla clients.") (define-public nss (package (name "nss") - (version "3.23") + (version "3.26") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -196,7 +196,7 @@ in the Mozilla clients.") "nss-" version ".tar.gz"))) (sha256 (base32 - "1kqidv91icq96m9m8zx50n7px08km2l88458rkgyjwcn3kiq7cwl")) + "0r65s5q8kk0vr48s0zr8xi610k7h072lgkkpp4z6jlxr19bkly4i")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-pkgconfig.patch")))) (build-system gnu-build-system) -- cgit v1.2.3 From 797a5cf57f038e31e464afd5256a9faff5b46689 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Wed, 14 Sep 2016 11:31:59 +0530 Subject: gnu: Add darkhttpd. * gnu/packages/web.scm (darkhttpd): New variable. Signed-off-by: Leo Famulari --- gnu/packages/web.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index b9c201d9f9..96dcd479fe 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2016 Ben Woodcroft ;;; Copyright © 2016 Clément Lassieur ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -3633,3 +3634,40 @@ provides a unix command line interface to a variety of popular www search engine and similar services.") (home-page "https://surfraw.alioth.debian.org/") (license l:public-domain))) + +(define-public darkhttpd + (package + (name "darkhttpd") + (version "1.12") + (source + (origin + ;; The darkhttpd release tarball URL fails to download with a + ;; 'TLS warning alert'. Download from the darkhttpd git repo + ;; until the problem has been fixed upstream. + (method git-fetch) + (uri (git-reference + (url (string-append "https://unix4lyfe.org/git/darkhttpd")) + (commit "41b68476c35270f47dcd2ddebe27cbcd87e43d41"))) + (sha256 + (base32 + "0wi8dfgj4ic0fsy4dszl69xgxdxlwxz4c30vsw2i2dpnczgjm04k")) + (file-name (string-append name "-" version "-checkout")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags '("CC=gcc") + #:tests? #f ; No test suite + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (install-file "darkhttpd" + (string-append (assoc-ref outputs "out") + "/bin")) + #t))))) + (synopsis "Simple static web server") + (description "darkhttpd is a simple static web server. It is +standalone and does not need inetd or ucspi-tcp. It does not need any +config files---you only have to specify the www root.") + (home-page "https://unix4lyfe.org/darkhttpd/") + (license l:isc))) -- cgit v1.2.3 From 4a187c556d9e6c3f053efd80f3b1fdecbc02e40e Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Thu, 15 Sep 2016 15:40:00 +0200 Subject: gnu: chibi-scheme: Use 'modify-phases'. * gnu/packages/scheme.scm (chibi-scheme)[arguments]: Use 'modify-phases'. --- gnu/packages/scheme.scm | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 797cd153d2..287bcdfe78 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -571,14 +571,11 @@ mixed.") (file-name (string-append "chibi-scheme-" version ".tar.gz")))) (build-system gnu-build-system) (arguments - `(#:phases - (alist-delete - 'configure - (alist-cons-before - 'build 'set-cc - (lambda _ - (setenv "CC" "gcc")) - %standard-phases)) + `(#:phases (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'set-cc + (lambda _ + (setenv "CC" "gcc")))) #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "PREFIX=" out) (string-append "LDFLAGS=-Wl,-rpath=" out "/lib"))) -- cgit v1.2.3 From 25847b327e9add2c55ba4980a95708484db46473 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 15 Sep 2016 21:54:01 +0200 Subject: gnu: kernel-config: Find configuration file for i686. * gnu/packages/linux.scm (kernel-config): Find configuration file for i686. (make-linux-libre)[origin]: Apply patch correctly. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 3ec65141af..cdb06b5e36 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -182,7 +182,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (let* ((name (string-append "linux-libre-" (if variant (string-append variant "-") "") - arch ".conf")) + (if (string=? "i386" arch) "i686" arch) ".conf")) (file (string-append "gnu/packages/" name))) (search-path %load-path file))) @@ -228,7 +228,7 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (method url-fetch) (uri (linux-libre-urls version)) (sha256 (base32 hash)) - (patches (origin-patches %boot-logo-patch)))) + (patches (list %boot-logo-patch)))) (supported-systems supported-systems) (build-system gnu-build-system) (native-inputs -- cgit v1.2.3 From dd65f3b7444048ca0f537ef01a9b742271b1c536 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Mon, 29 Aug 2016 02:14:11 +0200 Subject: gnu: Add mcelog. * gnu/packages/linux.scm (mcelog): New variable. --- gnu/packages/linux.scm | 38 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 38 insertions(+) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index cdb06b5e36..df2eb68426 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2939,3 +2939,41 @@ the default @code{nsswitch} and the experimental @code{umich_ldap}.") "Tools for loading and managing Linux kernel modules, such as `modprobe', `insmod', `lsmod', and more.") (license license:gpl2+))) + +(define-public mcelog + (package + (name "mcelog") + (version "141") + (source (origin + (method url-fetch) + (uri (string-append "https://git.kernel.org/cgit/utils/cpu/mce/" + "mcelog.git/snapshot/v" version ".tar.gz")) + (sha256 + (base32 + "0ws8blq0prj7slcaljyaxxq20kgmlakzac0ri1pvh24xs1jn2xxg")) + (file-name (string-append name "-" version ".tar.gz")) + (modules '((guix build utils))) + (snippet + ;; The snapshots lack a .git directory, breaking ‘git describe’. + `(substitute* "Makefile" + (("\"unknown\"") (string-append "\"v" ,version "\"")))))) + (build-system gnu-build-system) + (arguments + `(#:phases (modify-phases %standard-phases + (delete 'configure)) ; no configure script + #:make-flags (let ((out (assoc-ref %outputs "out"))) + (list "CC=gcc" + (string-append "prefix=" out) + (string-append "DOCDIR=" out "/share/doc/mcelog") + "etcprefix=$(DOCDIR)/examples")) + ;; The tests will only run as root on certain supported CPU models. + #:tests? #f)) + (supported-systems (list "i686-linux" "x86_64-linux")) + (home-page "http://mcelog.org/") + (synopsis "Machine check monitor for x86 Linux systems") + (description + "The mcelog daemon is required by the Linux kernel to log memory, I/O, CPU, +and other hardware errors on x86 systems. It can also perform user-defined +tasks, such as bringing bad pages off-line, when configurable error thresholds +are exceeded.") + (license license:gpl2))) -- cgit v1.2.3 From 71af71dc74906130e3dd7ed2b5bd27e5d4699b52 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 15 Sep 2016 00:38:27 +0200 Subject: gnu: hexchat: Update to 2.12.1. * gnu/packages/messaging.scm (hexchat): Update to 2.12.1. [inputs]: Add luajit. [description]: Wrap to <=80 characters. --- gnu/packages/messaging.scm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 3627fecbfa..4e8df544fa 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -166,14 +166,14 @@ identi.ca and status.net).") (define-public hexchat (package (name "hexchat") - (version "2.12.0") + (version "2.12.1") (source (origin (method url-fetch) (uri (string-append "https://dl.hexchat.net/hexchat/hexchat-" version ".tar.xz")) (sha256 (base32 - "17fncwza5r80z9r6j1lrh7h375hp4w6pay08zgnfc3qca6bjy1y2")))) + "0svwz9ldrry1sn35jywgpacjj1cf3xl3k74ynwn8rjvxs73b00aj")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) ("intltool" ,intltool))) @@ -185,14 +185,17 @@ identi.ca and status.net).") ("libcanberra" ,libcanberra) ("libnotify" ,libnotify) ("openssl" ,openssl) - ("perl-xml-parser" ,perl-xml-parser) ;for addons - ("python-2" ,python-2))) ;for addons + + ;; Bindings for add-on scripts. + ("luajit" ,luajit) + ("perl-xml-parser" ,perl-xml-parser) + ("python-2" ,python-2))) (synopsis "Graphical IRC Client") (description - "HexChat lets you connect to multiple IRC networks at once. The main window -shows the list of currently connected networks and their channels, the current -conversation and the list of users. It uses colors to differentiate between -users and to highlight messages. It checks spelling using available + "HexChat lets you connect to multiple IRC networks at once. The main +window shows the list of currently connected networks and their channels, the +current conversation and the list of users. It uses colors to differentiate +between users and to highlight messages. It checks spelling using available dictionaries. HexChat can be extended with multiple addons.") (home-page "http://hexchat.net/") (license license:gpl2+))) -- cgit v1.2.3 From 60880ac5560591318eabe9a233585e9c7d64f5d9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 15 Sep 2016 01:15:02 +0200 Subject: gnu: iodine: Use net-tools' ifconfig with an absolute path. * gnu/packages/networking.scm (iodine)[arguments]: Add fix-ifconfig-path phase. [inputs]: Add net-tools. --- gnu/packages/networking.scm | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index c4edbc319a..47aa2b9cc9 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -391,8 +391,14 @@ and min/max network usage.") '(#:phases (modify-phases %standard-phases (delete 'configure) + (add-before 'build 'fix-ifconfig-path + ;; This package works only with the net-tools version of ifconfig. + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/tun.c" + (("PATH=[^ ]* ") + (string-append (assoc-ref inputs "net-tools") "/sbin/"))))) (add-before 'check 'delete-failing-tests - ;; Avoid https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=802105 + ;; Avoid https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=802105. (lambda _ (substitute* "tests/common.c" (("tcase_add_test\\(tc, \ @@ -401,7 +407,8 @@ test_parse_format_ipv(4(|_listen_all|_mapped_ipv6)|6)\\);") #:make-flags (list "CC=gcc" (string-append "prefix=" (assoc-ref %outputs "out"))) #:test-target "test")) - (inputs `(("zlib" ,zlib))) + (inputs `(("net-tools" ,net-tools) + ("zlib" ,zlib))) (native-inputs `(("check" ,check) ("pkg-config" ,pkg-config))) (home-page "http://code.kryo.se/iodine/") -- cgit v1.2.3 From 9bd259d82d0d712d3c7ed6c78186b3c4e10c1858 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Thu, 15 Sep 2016 19:39:11 +0200 Subject: gnu: polipo: Use 'modify-phases'. * gnu/packages/web.scm (polipo)[arguments]: Use 'modify-phases'. --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 96dcd479fe..342262b39d 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -586,8 +586,8 @@ unavailable.") (native-inputs `(("texinfo" ,texinfo))) (build-system gnu-build-system) (arguments - `(#:phases - (alist-delete 'configure %standard-phases) + `(#:phases (modify-phases %standard-phases + (delete 'configure)) #:make-flags (let ((out (assoc-ref %outputs "out"))) (list (string-append "PREFIX=" out) (string-append "LOCAL_ROOT=" -- cgit v1.2.3 From 7f39e131805857614a171b51cbf432b4285ba1e6 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Fri, 16 Sep 2016 01:44:24 +0200 Subject: gnu: prosody: Don't generate example SSL certificates. They are non-deterministic and of questionable utility. * gnu/packages/messaging.scm (prosody)[arguments]: Add #:configure-flags. --- gnu/packages/messaging.scm | 1 + 1 file changed, 1 insertion(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 4e8df544fa..2b0ffee972 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -518,6 +518,7 @@ end-to-end encryption support; XML console.") (build-system gnu-build-system) (arguments `(#:tests? #f ; no "check" target + #:configure-flags (list "--no-example-certs") #:modules ((ice-9 match) (srfi srfi-1) (guix build gnu-build-system) -- cgit v1.2.3 From f6875394a6dce98c78c3d4f222f6f9bc4d5402aa Mon Sep 17 00:00:00 2001 From: Brendan Tildesley Date: Wed, 14 Sep 2016 00:07:42 +1000 Subject: gnu: Add par2cmdline. * gnu/packages/backup.scm (par2cmdline): New variable. --- gnu/packages/backup.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 4678b9b91f..e77c4f20a9 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -28,6 +28,7 @@ #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages acl) + #:use-module (gnu packages autotools) #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages databases) @@ -99,6 +100,42 @@ uses GnuPG to encrypt and/or sign these archives, they will be safe from spying and/or modification by the server.") (license license:gpl2+))) +(define-public par2cmdline + (package + (name "par2cmdline") + (version "0.6.14") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/Parchive/par2cmdline/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ykfb7ar0x0flfdgf6i8xphyv5b93dalbjj2jb6hx7sdjax33n1g")) + ;; This test merely needs a file to test recovery on, but + ;; /dev/random is essentially /dev/urandom plus minimum entropy + ;; locking, making the test hang indefinitely. This change is + ;; already upstream: remove on upgrade to future 0.6.15. + ;; https://github.com/Parchive/par2cmdline/commit/27723a678f780da82c79b98592592009c779a4fb + (modules '((guix build utils))) + (snippet + '(substitute* "tests/test20" (("if=/dev/random") "if=/dev/urandom"))))) + (native-inputs + `(("automake" ,automake) + ("autoconf" ,autoconf))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'autoreconf + (lambda _ (zero? (system* "autoreconf" "-vfi"))))))) + (synopsis "File verification and repair tool") + (description "Par2cmdline is a tool for generating RAID-like PAR2 recovery +files using Reed-Solomon coding. PAR2 files can be stored along side backups +or distributed files for recovering from bitrot.") + (home-page "https://github.com/Parchive/par2cmdline") + (license license:gpl3+))) + (define-public hdup (package (name "hdup") -- cgit v1.2.3 From c72c12491ad0ad98fc51a1ede70751531ebf5e87 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 09:37:57 +0200 Subject: gnu: Add r-rtsne. * gnu/packages/statistics.scm (r-rtsne): New variable. --- gnu/packages/statistics.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index f7110ae4d1..68ca2a48f5 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2529,6 +2529,30 @@ for reproducibility. Notably, convenient default methods greatly facilitate the way current RNG settings can be changed.") (license license:gpl3+))) +(define-public r-rtsne + (package + (name "r-rtsne") + (version "0.11") + (source + (origin + (method url-fetch) + (uri (cran-uri "Rtsne" version)) + (sha256 + (base32 + "0zi4nxgpiv1gpdmcnqdhz5kymzp8m5xj02zpf290p1yyydl76bhy")))) + (properties `((upstream-name . "Rtsne"))) + (build-system r-build-system) + (propagated-inputs + `(("r-rcpp" ,r-rcpp))) + (home-page "https://github.com/jkrijthe/Rtsne") + (synopsis "T-distributed stochastic neighbor embedding") + (description + "This package provides an R wrapper around the fast T-distributed +Stochastic Neighbor Embedding using a Barnes-Hut implementation.") + ;; The declared license for this package is BSD-3, but it also includes + ;; code licensed under BSD-4. + (license (list license:bsd-3 license:bsd-4)))) + (define-public r-nmf (package (name "r-nmf") -- cgit v1.2.3 From c533589c66b373b5bc3049415858094d17b44b0b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:53:03 +0200 Subject: gnu: Add r-e1071. * gnu/packages/statistics.scm (r-e1071): New variable. --- gnu/packages/statistics.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 68ca2a48f5..853a259c85 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2553,6 +2553,26 @@ Stochastic Neighbor Embedding using a Barnes-Hut implementation.") ;; code licensed under BSD-4. (license (list license:bsd-3 license:bsd-4)))) +(define-public r-e1071 + (package + (name "r-e1071") + (version "1.6-7") + (source + (origin + (method url-fetch) + (uri (cran-uri "e1071" version)) + (sha256 + (base32 + "1069qwj9gsjq6par2cgfah8nn5x2w38830761x1f7mqpmk0gnj3h")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/e1071") + (synopsis "Miscellaneous functions for probability theory") + (description + "This package provides functions for latent class analysis, short time +Fourier transform, fuzzy clustering, support vector machines, shortest path +computation, bagged clustering, naive Bayes classifier, and more.") + (license license:gpl2+))) + (define-public r-nmf (package (name "r-nmf") -- cgit v1.2.3 From 78acbcb53fa3595c15f2ed0bfe7bedb7cbb09a29 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:21:47 +0200 Subject: gnu: Add nanovg-for-extempore. * gnu/packages/gl.scm (nanovg-for-extempore): New variable. --- gnu/packages/gl.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 1aa12017c6..707e3d4d1d 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2014, 2016 David Thompson ;;; Copyright © 2014, 2015 Mark H Weaver ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -573,3 +574,27 @@ OpenGL.") desktop computers. It provides a simple API for creating windows, contexts and surfaces, receiving input and events.") (license license:zlib))) + +(define-public nanovg-for-extempore + (package + (name "nanovg-for-extempore") + (version "0.7.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/extemporelang/nanovg/" + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0ivs1sagq19xiw8jxd9f8w2b39svi0n9hrbmdvckwvqg95r8701g")))) + (build-system cmake-build-system) + (arguments `(#:tests? #f)) ; no tests included + (inputs + `(("mesa" ,mesa))) + (home-page "https://github.com/extemporelang/nanovg") + (synopsis "2D vector drawing library on top of OpenGL") + (description "NanoVG is small antialiased vector graphics rendering +library for OpenGL. It has lean API modeled after HTML5 canvas API. It is +aimed to be a practical and fun toolset for building scalable user interfaces +and visualizations.") + (license license:zlib))) -- cgit v1.2.3 From 5a82f933f3e8eb85e1efe5bb2a5414fb42928ec3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:22:20 +0200 Subject: gnu: Add assimp. * gnu/packages/graphics.scm (assimp): New variable. --- gnu/packages/graphics.scm | 31 ++++++++++++++++++++++++++++++- 1 file changed, 30 insertions(+), 1 deletion(-) diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm index d0df83072e..930e1985d5 100644 --- a/gnu/packages/graphics.scm +++ b/gnu/packages/graphics.scm @@ -60,7 +60,8 @@ #:use-module (gnu packages sdl) #:use-module (gnu packages video) #:use-module (gnu packages xml) - #:use-module (gnu packages xorg)) + #:use-module (gnu packages xorg) + #:use-module (gnu packages zip)) (define-public blender (package @@ -138,6 +139,34 @@ compositing and motion tracking, even video editing and game creation. The application can be customized via its API for Python scripting.") (license license:gpl2+))) +(define-public assimp + (package + (name "assimp") + (version "3.2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/assimp/assimp/archive/v" + version ".zip")) + (file-name (string-append name "-" version ".zip")) + (sha256 + (base32 + "11sfahmbwnjjpd8vpzdsng1bx5mb0cmaqb20dz6sdwapqanqwmar")))) + (build-system cmake-build-system) + (inputs + `(("zlib" ,zlib))) + (native-inputs + `(("unzip" ,unzip))) + (home-page "http://assimp.org/") + (synopsis "Asset import library") + (description + "The Open Asset Import Library loads more than 40 3D file formats into +one unified data structure. Additionally, assimp features various mesh post +processing tools: normals and tangent space generation, triangulation, vertex +cache locality optimization, removal of degenerate primitives and duplicate +vertices, sorting by primitive type, merging of redundant materials and many +more.") + (license license:bsd-3))) + (define-public cgal (package (name "cgal") -- cgit v1.2.3 From ac2a38a59a6b77689b4151ed80584722427fa6ef Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:22:46 +0200 Subject: gnu: Add stb-image-for-extempore. * gnu/packages/image.scm (stb-image-for-extempore): New variable. --- gnu/packages/image.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 1b1084673d..e40fa9a47d 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -49,6 +49,7 @@ #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) + #:use-module (guix git-download) #:use-module (guix build-system gnu) #:use-module (guix build-system cmake) #:use-module (srfi srfi-1)) @@ -904,3 +905,28 @@ kinds of image- and audio-files. The color- respectivly sample-frequencies are not changed thus making the embedding resistant against first-order statistical tests.") (license license:gpl2+))) + +(define-public stb-image-for-extempore + (let ((revision "1") + (commit "152a250a702bf28951bb0220d63bc0c99830c498")) + (package + (name "stb-image-for-extempore") + (version (string-append "0-" revision "." (string-take commit 9))) + (source + (origin (method git-fetch) + (uri (git-reference + (url "https://github.com/extemporelang/stb.git") + (commit commit))) + (sha256 + (base32 + "0y0aa20pj9311x2ii06zg8xs34idg14hfgldqc5ymizc6cf1qiqv")) + (file-name (string-append name "-" version "-checkout")))) + (build-system cmake-build-system) + (arguments `(#:tests? #f)) ; no tests included + (home-page "https://github.com/extemporelang/stb") + (synopsis "Image library for Extempore") + (description + "This package is a collection of assorted single-file libraries. Of +all included libraries only the image loading and decoding library is +installed as @code{stb_image}.") + (license license:public-domain)))) -- cgit v1.2.3 From 921cb13a96abd6c69d11fbdeaf0c3c370b173c1e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:25:29 +0200 Subject: gnu: Add llvm-for-extempore. * gnu/packages/llvm.scm (llvm-for-extempore): New variable. * gnu/packages/patches/llvm-for-extempore.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/llvm.scm | 8 ++ gnu/packages/patches/llvm-for-extempore.patch | 118 ++++++++++++++++++++++++++ 3 files changed, 127 insertions(+) create mode 100644 gnu/packages/patches/llvm-for-extempore.patch diff --git a/gnu/local.mk b/gnu/local.mk index a7006cb45f..e2cf40d4ae 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -658,6 +658,7 @@ dist_patch_DATA = \ %D%/packages/patches/libwmf-CVE-2015-4696.patch \ %D%/packages/patches/libxslt-generated-ids.patch \ %D%/packages/patches/lirc-localstatedir.patch \ + %D%/packages/patches/llvm-for-extempore.patch \ %D%/packages/patches/lm-sensors-hwmon-attrs.patch \ %D%/packages/patches/lua-CVE-2014-5461.patch \ %D%/packages/patches/lua-pkgconfig.patch \ diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index a9eba798e0..b55a200bc5 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2015 Ludovic Courtès ;;; Copyright © 2016 Dennis Mungai +;;; Copyright © 2016 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -267,3 +268,10 @@ code analysis tools.") (define-public clang-3.5 (clang-from-llvm llvm-3.5 clang-runtime-3.5 "0846h8vn3zlc00jkmvrmy88gc6ql6014c02l4jv78fpvfigmgssg")) + +(define-public llvm-for-extempore + (package (inherit llvm-3.7) + (source + (origin + (inherit (package-source llvm-3.7)) + (patches (list (search-patch "llvm-for-extempore.patch"))))))) diff --git a/gnu/packages/patches/llvm-for-extempore.patch b/gnu/packages/patches/llvm-for-extempore.patch new file mode 100644 index 0000000000..614682c6cb --- /dev/null +++ b/gnu/packages/patches/llvm-for-extempore.patch @@ -0,0 +1,118 @@ +This patch to LLVM is required by the developers of the Extempore language. +The following explanation was posted to the extemporelang@googlegroups.com +mailing list: + +"There is an assumption in the parser that all definitions occur within the +same compilation unit - i.e. the parser has local state about what has been +parsed in this unit of work. Extempore obviously does lots of little units +rather than one big unit and this causes problems for named types that were +defined in another unit - which they always are. The patch simply checks the +current module to see if the type has been previously defined, and intervenes +appropriately if it has." + +Message-ID: + +--- llvm-3.7.1.src/include/llvm/MC/MCSectionCOFF.h 2015-04-11 12:11:45.000000000 +1000 ++++ llvm-3.7.1.src/include/llvm/MC/MCSectionCOFF.h 2015-09-14 09:22:56.000000000 +1000 +@@ -16,7 +16,6 @@ + + #include "llvm/ADT/StringRef.h" + #include "llvm/MC/MCSection.h" +-#include "llvm/Support/COFF.h" + + namespace llvm { + class MCSymbol; + +--- llvm-3.7.1.src/lib/AsmParser/LLParser.cpp 2015-07-11 20:30:36.000000000 +1000 ++++ llvm-3.7.1.src/lib/AsmParser/LLParser.cpp 2015-09-14 09:20:57.000000000 +1000 +@@ -1754,8 +1754,14 @@ + // If the type hasn't been defined yet, create a forward definition and + // remember where that forward def'n was seen (in case it never is defined). + if (!Entry.first) { +- Entry.first = StructType::create(Context, Lex.getStrVal()); +- Entry.second = Lex.getLoc(); ++ // this here for extempore ++ if (M->getTypeByName(Lex.getStrVal())) { ++ Entry.first = M->getTypeByName(Lex.getStrVal()); ++ Entry.second = SMLoc(); ++ } else { ++ Entry.first = StructType::create(Context, Lex.getStrVal()); ++ Entry.second = Lex.getLoc(); ++ } + } + Result = Entry.first; + Lex.Lex(); + +--- llvm-3.7.1.src/lib/CodeGen/TargetLoweringObjectFileImpl.cpp 2015-07-01 05:10:31.000000000 +1000 ++++ llvm-3.7.1.src/lib/CodeGen/TargetLoweringObjectFileImpl.cpp 2015-09-14 09:23:40.000000000 +1000 +@@ -32,6 +32,7 @@ + #include "llvm/MC/MCStreamer.h" + #include "llvm/MC/MCSymbolELF.h" + #include "llvm/MC/MCValue.h" ++#include "llvm/Support/COFF.h" + #include "llvm/Support/Dwarf.h" + #include "llvm/Support/ELF.h" + #include "llvm/Support/ErrorHandling.h" + +--- llvm-3.7.1.src/lib/ExecutionEngine/MCJIT/MCJIT.cpp 2015-07-31 02:31:16.000000000 +1000 ++++ llvm-3.7.1.src/lib/ExecutionEngine/MCJIT/MCJIT.cpp 2015-09-14 09:21:28.000000000 +1000 +@@ -524,6 +524,17 @@ + rv.IntVal = APInt(32, PF(ArgValues[0].IntVal.getZExtValue())); + return rv; + } ++ if (FTy->getNumParams() == 1 && ++ RetTy->isVoidTy() && ++ FTy->getParamType(0)->isPointerTy()) { ++ GenericValue rv; ++ //void (*PF)(char *) = (void(*)(char *))(intptr_t)FPtr; ++ //printf("are symbols available: %d\n",isSymbolSearchingDisabled()); ++ void (*PF)(char *) = (void(*)(char *))FPtr; ++ char* mzone = (char*) GVTOP(ArgValues[0]); ++ PF(mzone); ++ return rv; ++ } + break; + } + } + +--- llvm-3.7.1.src/lib/MC/MCContext.cpp 2015-06-23 21:31:32.000000000 +1000 ++++ llvm-3.7.1.src/lib/MC/MCContext.cpp 2015-09-14 09:24:01.000000000 +1000 +@@ -23,6 +23,7 @@ + #include "llvm/MC/MCSymbolCOFF.h" + #include "llvm/MC/MCSymbolELF.h" + #include "llvm/MC/MCSymbolMachO.h" ++#include "llvm/Support/COFF.h" + #include "llvm/Support/ELF.h" + #include "llvm/Support/ErrorHandling.h" + #include "llvm/Support/FileSystem.h" + +--- llvm-3.7.1.src/lib/MC/MCObjectFileInfo.cpp 2015-06-25 10:28:42.000000000 +1000 ++++ llvm-3.7.1.src/lib/MC/MCObjectFileInfo.cpp 2015-09-14 09:24:17.000000000 +1000 +@@ -16,6 +16,7 @@ + #include "llvm/MC/MCSectionCOFF.h" + #include "llvm/MC/MCSectionELF.h" + #include "llvm/MC/MCSectionMachO.h" ++#include "llvm/Support/COFF.h" + using namespace llvm; + + static bool useCompactUnwind(const Triple &T) { + +--- llvm-3.7.1.src/lib/MC/MCSectionCOFF.cpp 2015-06-09 10:31:39.000000000 +1000 ++++ llvm-3.7.1.src/lib/MC/MCSectionCOFF.cpp 2015-09-14 09:24:25.000000000 +1000 +@@ -11,6 +11,7 @@ + #include "llvm/MC/MCAsmInfo.h" + #include "llvm/MC/MCContext.h" + #include "llvm/MC/MCSymbol.h" ++#include "llvm/Support/COFF.h" + #include "llvm/Support/raw_ostream.h" + using namespace llvm; + +--- llvm-3.7.1.src/lib/Target/X86/X86TargetObjectFile.cpp 2015-06-27 04:55:48.000000000 +1000 ++++ llvm-3.7.1.src/lib/Target/X86/X86TargetObjectFile.cpp 2015-09-14 09:25:03.000000000 +1000 +@@ -16,6 +16,7 @@ + #include "llvm/MC/MCSectionCOFF.h" + #include "llvm/MC/MCSectionELF.h" + #include "llvm/MC/MCValue.h" ++#include "llvm/Support/COFF.h" + #include "llvm/Support/Dwarf.h" + #include "llvm/Target/TargetLowering.h" -- cgit v1.2.3 From 2a9b10c7cdc7902a9f44ce65d36a712cacfd288a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:25:57 +0200 Subject: gnu: Add kiss-fft-for-extempore. * gnu/packages/algebra.scm (kiss-fft-for-extempore): New variable. --- gnu/packages/algebra.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 4fb15c6471..83f03a074a 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -505,6 +505,30 @@ syntax is similar to that of C, so basic usage is familiar. It also includes \"dc\", a reverse-polish calculator.") (license license:gpl2+))) +;; The original kiss-fft does not have a complete build system and does not +;; build any shared libraries. This is a fork used by Extempore. +(define-public kiss-fft-for-extempore + (package + (name "kiss-fft-for-extempore") + (version "1.3.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/extemporelang/kiss_fft/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0hkp9l6l4c92fb1l2sh6a6zv1hynpvb2s4d03vd8vxyvybc0l4pv")))) + (build-system cmake-build-system) + (arguments `(#:tests? #f)) ; no tests included + (home-page "https://github.com/extemporelang/kiss_fft") + (synopsis "Mixed-radix Fast Fourier Transform") + (description + "Kiss FFT attempts to be a reasonably efficient, moderately useful FFT +that can use fixed or floating data types and can easily be incorporated into +a C program.") + (license license:bsd-3))) + (define-public fftw (package (name "fftw") -- cgit v1.2.3 From 38098bf7b4c00551afd770eb6ac81cf96aa32c38 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:26:54 +0200 Subject: gnu: Add portmidi-for-extempore. * gnu/packages/music.scm (portmidi-for-extempore): New variable. --- gnu/packages/music.scm | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index f2945646fd..c62dbbc7eb 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1081,6 +1081,23 @@ projects.") using a system-independent interface.") (license license:expat))) +(define-public portmidi-for-extempore + (package (inherit portmidi) + (name "portmidi-for-extempore") + (version "217") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/extemporelang/portmidi/" + "archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0gjikwciyr8kk4y3qiv1pcq58xpgw38ql1m2gs6g0qc1s8sx4235")))) + (build-system cmake-build-system) + (arguments `(#:tests? #f)) ; no tests + (native-inputs '()) + (home-page "https://github.com/extemporelang/portmidi/"))) + (define-public python-pyportmidi (package (name "python-pyportmidi") -- cgit v1.2.3 From 915956244105e0c81454378a0136b97e48db6358 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 14 Sep 2016 11:27:40 +0200 Subject: gnu: Add Extempore. * gnu/packages/music.scm (extempore): New variable. --- gnu/packages/music.scm | 147 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 147 insertions(+) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index c62dbbc7eb..c512d533c2 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -37,6 +37,7 @@ #:use-module (guix build-system waf) #:use-module (gnu packages) #:use-module (gnu packages algebra) + #:use-module (gnu packages apr) #:use-module (gnu packages audio) #:use-module (gnu packages autotools) #:use-module (gnu packages backup) @@ -51,6 +52,7 @@ #:use-module (gnu packages cyrus-sasl) #:use-module (gnu packages docbook) #:use-module (gnu packages documentation) + #:use-module (gnu packages emacs) #:use-module (gnu packages file) #:use-module (gnu packages flex) #:use-module (gnu packages fltk) @@ -71,11 +73,14 @@ #:use-module (gnu packages imagemagick) #:use-module (gnu packages java) #:use-module (gnu packages linux) ; for alsa-utils + #:use-module (gnu packages libffi) + #:use-module (gnu packages llvm) #:use-module (gnu packages man) #:use-module (gnu packages mp3) #:use-module (gnu packages mpd) #:use-module (gnu packages ncurses) #:use-module (gnu packages netpbm) + #:use-module (gnu packages pcre) #:use-module (gnu packages pdf) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -262,6 +267,148 @@ many input formats and provides a customisable Vi-style user interface.") enable professional yet simple and intuitive pattern-based drum programming.") (license license:gpl2+))) +(define-public extempore + (package + (name "extempore") + (version "0.7.0") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/digego/extempore/archive/" + version ".tar.gz")) + (sha256 + (base32 + "1wap1mvsicrhlazikf7l8zxg37fir8bmnh9rin28m1rix730vcch")) + (file-name (string-append name "-" version ".tar.gz")))) + (build-system cmake-build-system) + (arguments + `(;; The default target also includes ahead-of-time compilation of the + ;; standard libraries. However, during the "install" phase this would + ;; happen *again* for unknown reasons. Hence we only build the + ;; extempore executable during the build phase. + #:make-flags '("extempore") + #:configure-flags '("-DJACK=ON" + ;; We want to distribute. + "-DIN_TREE=OFF" + ;; Don't download any dependencies. + "-DBUILD_DEPS=OFF") + #:modules ((ice-9 match) + (guix build cmake-build-system) + (guix build utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-directories + (lambda* (#:key outputs #:allow-other-keys) + ;; Rewrite default path to runtime directory + (substitute* "src/Extempore.cpp" + (("runtimedir \\+= \"runtime\"") + (string-append "runtimedir = \"" + (assoc-ref outputs "out") + "/lib/extempore/runtime\""))) + (substitute* "extras/extempore.el" + (("\\(runtime-directory \\(concat default-directory \"runtime\"\\)\\)") + (string-append "(runtime-directory \"" + (assoc-ref outputs "out") + "/lib/extempore/runtime" + "\")"))) + #t)) + (add-after 'unpack 'link-with-additional-libs + (lambda _ + ;; The executable must be linked with libffi and zlib. + (substitute* "CMakeLists.txt" + (("add_dependencies\\(aot_extended extended_deps\\)") "") + (("target_link_libraries\\(extempore PRIVATE dl" line) + (string-append line " ffi z"))) + #t)) + ;; FIXME: AOT compilation of the nanovg bindings fail with the error: + ;; "Compiler Error could not bind _nvgLinearGradient" + (add-after 'unpack 'disable-nanovg + (lambda _ + (substitute* "CMakeLists.txt" + (("aotcompile_lib\\(libs/external/nanovg.xtm.*") "")) + #t)) + ;; FIXME: All examples that are used as tests segfault for some + ;; unknown reason. + (add-after 'unpack 'disable-broken-tests + (lambda _ + (substitute* "CMakeLists.txt" + (("extempore_add_example_as_test\\(.*") "")) + #t)) + (add-after 'unpack 'hardcode-external-lib-paths + (lambda* (#:key inputs #:allow-other-keys) + (use-modules (ice-9 match)) + (for-each + (match-lambda + ((file-name lib pkg-name) + (substitute* (string-append "libs/external/" file-name ".xtm") + ((lib) (string-append (assoc-ref inputs pkg-name) + "/lib/" lib))))) + '(("assimp" "libassimp.so" "assimp") + ("portmidi" "libportmidi.so" "portmidi") + ("sndfile" "libsndfile.so" "libsndfile") + ("fft" "libkiss_fft.so" "kiss-fft") + ("stb_image" "libstb_image.so" "stb-image") + ("nanovg" "libnanovg.so" "nanovg") + ("glext" "libGL.so" "mesa") + ("glfw3" "libglfw.so" "glfw") + ("gl/glcore-directbind" "libGL.so" "mesa") + ("gl/glcompat-directbind" "libGL.so" "mesa"))) + #t)) + (add-after 'unpack 'use-own-llvm + (lambda* (#:key inputs #:allow-other-keys) + (setenv "EXT_LLVM_DIR" (assoc-ref inputs "llvm")) + ;; Our LLVM builds shared libraries, so Extempore should use + ;; those. + (substitute* "CMakeLists.txt" + (("CMAKE_STATIC_LIBRARY") "CMAKE_SHARED_LIBRARY")) + #t)) + (add-after 'unpack 'fix-aot-compilation + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "CMakeLists.txt" + ;; EXT_SHARE_DIR does not exist before installation, so the + ;; working directory should be the source directory instead. + (("WORKING_DIRECTORY \\$\\{EXT_SHARE_DIR\\}") + "WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}") + ;; Extempore needs to be told where the runtime is to be found. + ;; While we're at it we disable automatic tuning for a specific + ;; CPU to make binary substitution possible. + (("COMMAND extempore" prefix) + (string-append prefix " --sharedir " (getcwd) + " --mcpu=generic --attr=none"))) + #t))))) + (inputs + `(("llvm" ,llvm-for-extempore) + ("libffi" ,libffi) + ("jack" ,jack-1) + ("libsndfile" ,libsndfile) + ("glfw" ,glfw) + ("apr" ,apr) + ("stb-image" ,stb-image-for-extempore) + ("kiss-fft" ,kiss-fft-for-extempore) + ("nanovg" ,nanovg-for-extempore) + ("portmidi" ,portmidi-for-extempore) + ("assimp" ,assimp) + ("alsa-lib" ,alsa-lib) + ("portaudio" ,portaudio) + ("mesa" ,mesa) + ("pcre" ,pcre) + ("zlib" ,zlib))) + (native-inputs + `(("perl" ,perl) + ("emacs" ,emacs-no-x))) + (home-page "http://benswift.me/extempore-docs/index.html") + (synopsis "Programming environment for live coding of multimedia") + (description + "Extempore is a programming language and runtime environment designed +with live programming in mind. It supports interactive programming in a REPL +style, compiling and binding code just-in-time. Although Extempore has its +roots in 'live coding' of audiovisual media art, it is suitable for any task +domain where dynamic run-time modifiability and good numerical performance are +required. Extempore also has strong timing and concurrency semantics, which +are helpful when working in problem spaces where timing is important (such as +audio and video).") + (license license:bsd-2))) + (define-public klick (package (name "klick") -- cgit v1.2.3 From 8f65585b1492760407f16bf08ec769080167d28f Mon Sep 17 00:00:00 2001 From: John Darrington Date: Fri, 16 Sep 2016 08:08:48 +0200 Subject: doc: "filesystem" -> "file system" * doc/guix.texi: "filesystem" -> "file system" * gnu/packages/admin.scm: "filesystem" -> "file system" * gnu/packages/cdrom.scm: "filesystem" -> "file system" * gnu/packages/compression.scm: "filesystem" -> "file system" * gnu/packages/disk.scm: "filesystem" -> "file system" * gnu/packages/gnome.scm: "filesystem" -> "file system" * gnu/packages/irc.scm: "filesystem" -> "file system" * gnu/packages/linux.scm: "filesystem" -> "file system" * gnu/packages/mail.scm: "filesystem" -> "file system" * gnu/packages/mpd.scm: "filesystem" -> "file system" * gnu/packages/ocaml.scm: "filesystem" -> "file system" * gnu/packages/perl.scm: "filesystem" -> "file system" * gnu/packages/python.scm: "filesystem" -> "file system" * gnu/packages/search.scm: "filesystem" -> "file system" * gnu/packages/tls.scm: "filesystem" -> "file system" * gnu/services/mail.scm: "filesystem" -> "file system" --- doc/guix.texi | 8 ++++---- gnu/packages/admin.scm | 4 ++-- gnu/packages/cdrom.scm | 4 ++-- gnu/packages/compression.scm | 6 +++--- gnu/packages/disk.scm | 4 ++-- gnu/packages/gnome.scm | 4 ++-- gnu/packages/irc.scm | 4 ++-- gnu/packages/linux.scm | 12 ++++++------ gnu/packages/mail.scm | 2 +- gnu/packages/mpd.scm | 2 +- gnu/packages/ocaml.scm | 2 +- gnu/packages/perl.scm | 8 ++++---- gnu/packages/python.scm | 6 +++--- gnu/packages/search.scm | 2 +- gnu/packages/tls.scm | 2 +- gnu/services/mail.scm | 8 ++++---- 16 files changed, 39 insertions(+), 39 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index e130317992..7a86a2f0ac 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9544,7 +9544,7 @@ Defaults to @samp{""}. @end deftypevr @deftypevr {@code{dovecot-configuration} parameter} boolean mail-full-filesystem-access? -Allow full filesystem access to clients. There's no access checks +Allow full file system access to clients. There's no access checks other than what the operating system does for the active UID/GID. It works with both maildir and mboxes, allowing you to prefix mailboxes names with e.g. /path/ or ~user/. @@ -9553,7 +9553,7 @@ Defaults to @samp{#f}. @deftypevr {@code{dovecot-configuration} parameter} boolean mmap-disable? Don't use mmap() at all. This is required if you store indexes to -shared filesystems (NFS or clustered filesystem). +shared file systems (NFS or clustered file system). Defaults to @samp{#f}. @end deftypevr @@ -9815,7 +9815,7 @@ Defaults to @samp{"1d"}. @deftypevr {@code{dovecot-configuration} parameter} boolean mdbox-preallocate-space? When creating new mdbox files, immediately preallocate their size to @samp{mdbox-rotate-size}. This setting currently works only in Linux -with some filesystems (ext4, xfs). +with some file systems (ext4, xfs). Defaults to @samp{#f}. @end deftypevr @@ -9838,7 +9838,7 @@ Defaults to @samp{128000}. @end deftypevr @deftypevr {@code{dovecot-configuration} parameter} string mail-attachment-fs -Filesystem backend to use for saving attachments: +File system backend to use for saving attachments: @table @code @item posix No SiS done by Dovecot (but this might help FS's own deduplication) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 3685633f34..6d6961752f 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -1461,9 +1461,9 @@ limits.") `("PYTHONPATH" ":" prefix (,py))) #t)))))) (home-page "https://github.com/wting/autojump") - (synopsis "Shell extension for filesystem navigation") + (synopsis "Shell extension for file system navigation") (description - "Autojump provides a faster way to navigate your filesystem, with a \"cd + "Autojump provides a faster way to navigate your file system, with a \"cd command that learns\". It works by maintaining a database of the directories you use the most from the command line and allows you to \"jump\" to frequently used directories by typing only a small pattern.") diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index 4263cdebb7..52c90e18e4 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -146,10 +146,10 @@ libcdio.") ("zlib" ,zlib) ("libcdio" ,libcdio))) (home-page "https://www.gnu.org/software/xorriso/") - (synopsis "Create, manipulate, burn ISO-9660 filesystems") + (synopsis "Create, manipulate, burn ISO-9660 file systems") (description "GNU Xorriso is a tool for copying files to and from ISO 9660 Rock -Ridge, a.k.a. Compact Disc File System, filesystems and it allows +Ridge, a.k.a. Compact Disc File System, file systems and it allows session-wise manipulation of them. It features a formatter and burner for CD, DVD and BD. It can operate on existing ISO images or it can create new ones. xorriso can then be used to copy files directly into or out of ISO diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index aaa0c99e88..6504641977 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -664,14 +664,14 @@ time for compression ratio.") ("xz" ,xz) ("zlib" ,zlib))) (home-page "http://squashfs.sourceforge.net/") - (synopsis "Tools to create and extract squashfs filesystems") + (synopsis "Tools to create and extract squashfs file systems") (description - "Squashfs is a highly compressed read-only filesystem for Linux. It uses + "Squashfs is a highly compressed read-only file system for Linux. It uses zlib to compress files, inodes, and directories. All blocks are packed to minimize the data overhead, and block sizes of between 4K and 1M are supported. It is intended to be used for archival use, for live CDs, and for embedded systems where low overhead is needed. This package allows you to create and -extract such filesystems.") +extract such file systems.") (license license:gpl2+))) (define-public pigz diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 27ab7a698b..a3ace8ab16 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -191,10 +191,10 @@ to recover data more efficiently by only reading the necessary blocks.") "CC=gcc") #:tests? #f)) ;no tests (home-page "https://github.com/dosfstools/dosfstools") - (synopsis "Utilities for making and checking MS-DOS FAT filesystems") + (synopsis "Utilities for making and checking MS-DOS FAT file systems") (description "The dosfstools package includes the mkfs.fat and fsck.fat utilities, -which respectively make and check MS-DOS FAT filesystems.") +which respectively make and check MS-DOS FAT file systems.") (license license:gpl3+))) (define-public sdparm diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 6dab1d79e8..19e982d08a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3469,9 +3469,9 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.") ("nettle" ,nettle) ; XXX: required by libarchive.pc ("udisks" ,udisks))) (home-page "https://wiki.gnome.org/gvfs/") - (synopsis "Userspace virtual filesystem for GIO") + (synopsis "Userspace virtual file system for GIO") (description - "GVFS is a userspace virtual filesystem designed to work with the I/O + "GVFS is a userspace virtual file system designed to work with the I/O abstraction of GIO. It contains a GIO module that seamlessly adds GVFS support to all applications using the GIO API. It also supports exposing the GVFS mounts to non-GIO applications using FUSE. diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index d52edd8373..1058bef778 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -262,9 +262,9 @@ and extensible with plugins and scripts.") (modify-phases %standard-phases (delete 'configure)))) ; no configure (home-page "http://tools.suckless.org/ii/") - (synopsis "FIFO and filesystem-based IRC client") + (synopsis "FIFO and file system based IRC client") (description - "ii (Irc it) is a minimalist FIFO and filesystem based IRC client.") + "ii (Irc it) is a minimalist FIFO and file system based IRC client.") (license license:expat))) (define-public sic diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index df2eb68426..3e4237720b 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -420,10 +420,10 @@ at login. Local and dynamic reconfiguration are its key features.") (inputs `(("ncurses" ,ncurses))) (home-page "http://psmisc.sourceforge.net/") (synopsis - "Small utilities that use the proc filesystem") + "Small utilities that use the proc file system") (description "This PSmisc package is a set of some small useful utilities that -use the proc filesystem. We're not about changing the world, but +use the proc file system. We're not about changing the world, but providing the system administrator with some help in common tasks.") (license license:gpl2+))) @@ -501,7 +501,7 @@ providing the system administrator with some help in common tasks.") (home-page "https://www.kernel.org/pub/linux/utils/util-linux/") (synopsis "Collection of utilities for the Linux kernel") (description "Util-linux is a diverse collection of Linux kernel -utilities. It provides dmesg and includes tools for working with filesystems, +utilities. It provides dmesg and includes tools for working with file systems, block devices, UUIDs, TTYs, and many other tools.") ;; Note that util-linux doesn't use the same license for all the @@ -643,7 +643,7 @@ slabtop, and skill.") ;; FIXME: Tests work by comparing the stdout/stderr of programs, that ;; they fail because we get an extra line that says "Can't check if - ;; filesystem is mounted due to missing mtab file". + ;; file system is mounted due to missing mtab file". #:tests? #f)) (home-page "http://e2fsprogs.sourceforge.net/") (synopsis "Creating and checking ext2/ext3/ext4 file systems") @@ -2185,7 +2185,7 @@ specified in /etc/acpi/events and execute the rules that match the event.") (home-page "http://linux-diag.sourceforge.net/Sysfsutils.html") (synopsis "System utilities based on Linux sysfs") (description - "These are a set of utilities built upon sysfs, a virtual filesystem in + "These are a set of utilities built upon sysfs, a virtual file system in Linux kernel versions 2.5+ that exposes a system's device tree. The package also contains the libsysfs library.") ;; The library is under lgpl2.1+ (all files say "or any later version"). @@ -2623,7 +2623,7 @@ and copy/paste text in the console and in xterm.") ("which" ,which))) (home-page "https://btrfs.wiki.kernel.org/") (synopsis "Create and manage btrfs copy-on-write file systems") - (description "Btrfs is a copy-on-write (CoW) filesystem for Linux aimed at + (description "Btrfs is a copy-on-write (CoW) file system for Linux aimed at implementing advanced features while focusing on fault tolerance, repair and easy administration.") ;; GPL2+: crc32.c, radix-tree.c, raid6.c, rbtree.c. diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 90c2da4f10..e344683af7 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -1213,7 +1213,7 @@ deliver it in various ways.") #t))) #:tests? #f)) ;; There are no tests indicating a successful ;; build. Some tests of basic locking mechanisms provided by the - ;; filesystem are performed during 'make install'. However, these + ;; file system are performed during 'make install'. However, these ;; are performed before the actual build process. (build-system gnu-build-system) (inputs `(("exim" ,exim))) diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index 7bf39f98b7..ec0861db11 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -208,7 +208,7 @@ terminal using ncurses.") (description "Ncmpcpp is an mpd client with a UI very similar to ncmpc, but it provides new useful features such as support for regular expressions for library searches, extended song format, items filtering, the ability to -sort playlists, and a local filesystem browser.") +sort playlists, and a local file system browser.") (home-page "http://ncmpcpp.rybczak.net/") (license license:gpl2+))) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 1f4c3e471a..f6f7308ff0 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -673,7 +673,7 @@ to the other.") "The \"findlib\" library provides a scheme to manage reusable software components (packages), and includes tools that support this scheme. Packages are collections of OCaml modules for which metainformation can be stored. The -packages are kept in the filesystem hierarchy, but with strict directory +packages are kept in the file system hierarchy, but with strict directory structure. The library contains functions to look the directory up that stores a package, to query metainformation about a package, and to retrieve dependency information about multiple packages. There is also a tool that diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index d422940447..ba6f71a412 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -404,7 +404,7 @@ in web applications to store data locally to save repeated and redundant expensive calls to remote machines or databases. People have also been known to use Cache::Cache for its straightforward interface in sharing data between runs of an application or invocations of a CGI-style script or simply as an -easy to use abstraction of the filesystem or shared memory.") +easy to use abstraction of the file system or shared memory.") (license (package-license perl)))) (define-public perl-cache-fastmmap @@ -2115,7 +2115,7 @@ modules separately and deal with them after the module is done installing.") (synopsis "Advanced operations on path variables") (description "@code{Env::Path} presents an object-oriented interface to path variables, defined as that subclass of environment variables which name -an ordered list of filesystem elements separated by a platform-standard +an ordered list of file system elements separated by a platform-standard separator.") (license (package-license perl)))) @@ -2461,7 +2461,7 @@ platforms.") (synopsis "Create or remove directory trees") (description "This module provide a convenient way to create directories of arbitrary depth and to delete an entire directory subtree from the -filesystem.") +file system.") (license (package-license perl)))) (define-public perl-file-list @@ -6348,7 +6348,7 @@ generally slower on larger files.") (home-page "http://search.cpan.org/dist/Text-Glob") (synopsis "Match globbing patterns against text") (description "Text::Glob implements glob(3) style matching that can be -used to match against text, rather than fetching names from a filesystem. If +used to match against text, rather than fetching names from a file system. If you want to do full file globbing use the File::Glob module instead.") (license (package-license perl)))) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 0671444ca5..2f349c88f3 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -6943,7 +6943,7 @@ WebSocket usage in Python programs.") (build-system python-build-system) (synopsis "Atomic file writes in Python") (description "Library for atomic file writes using platform dependent tools -for atomic filesystem operations.") +for atomic file system operations.") (home-page "https://github.com/untitaker/python-atomicwrites") (license license:expat) (properties `((python2-variant . ,(delay python2-atomicwrites)))))) @@ -8571,8 +8571,8 @@ library.") (replace 'check (lambda _ (zero? (system* "python" "./test_pathlib.py"))))))) (home-page "https://pathlib.readthedocs.org/") - (synopsis "Object-oriented filesystem paths") - (description "Pathlib offers a set of classes to handle filesystem paths. + (synopsis "Object-oriented file system paths") + (description "Pathlib offers a set of classes to handle file system paths. It offers the following advantages over using string objects: @enumerate diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm index 60f902f96a..9eb4039f84 100644 --- a/gnu/packages/search.scm +++ b/gnu/packages/search.scm @@ -165,7 +165,7 @@ for parsing HTML files.") "0gi6y52gkakhhlnzy0p6izc36nqhyfx5830qirhvk3qrzrwxyqrh")))) (build-system gnu-build-system) (home-page "https://fedorahosted.org/mlocate/") - (synopsis "Locate files on the filesystem") + (synopsis "Locate files on the file system") (description "mlocate is a locate/updatedb implementation. The 'm' stands for \"merging\": @code{updatedb} reuses the existing database to avoid rereading diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 412ec77bc5..0762703800 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -161,7 +161,7 @@ living in the same process.") ;; the location of the system-wide trust store. Instead it has a ;; configure-time option. Unless specified, its configure script ;; attempts to auto-detect the location by looking for common - ;; places in the filesystem, none of which are present in our + ;; places in the file system, none of which are present in our ;; chroot build environment. If not found, then no default trust ;; store is used, so each program has to provide its own ;; fallback, and users have to configure each program diff --git a/gnu/services/mail.scm b/gnu/services/mail.scm index 46dbab6645..d94532c353 100644 --- a/gnu/services/mail.scm +++ b/gnu/services/mail.scm @@ -987,7 +987,7 @@ could allow a user to delete others' mailboxes, or ln -s (mail-full-filesystem-access? (boolean #f) - "Allow full filesystem access to clients. There's no access checks + "Allow full file system access to clients. There's no access checks other than what the operating system does for the active UID/GID. It works with both maildir and mboxes, allowing you to prefix mailboxes names with e.g. /path/ or ~user/.") @@ -997,7 +997,7 @@ names with e.g. /path/ or ~user/.") (mmap-disable? (boolean #f) "Don't use mmap() at all. This is required if you store indexes to -shared filesystems (NFS or clustered filesystem).") +shared file systems (NFS or clustered file system).") (dotlock-use-excl? (boolean #t) @@ -1229,7 +1229,7 @@ disabled.") (boolean #f) "When creating new mdbox files, immediately preallocate their size to @samp{mdbox-rotate-size}. This setting currently works only in Linux -with some filesystems (ext4, xfs).") +with some file systems (ext4, xfs).") (mail-attachment-dir (string "") @@ -1249,7 +1249,7 @@ externally.") (mail-attachment-fs (string "sis posix") - "Filesystem backend to use for saving attachments: + "File system backend to use for saving attachments: @table @code @item posix No SiS done by Dovecot (but this might help FS's own deduplication) -- cgit v1.2.3 From 6aeaba89178229b0b74775d7af3b73a438282f02 Mon Sep 17 00:00:00 2001 From: Rene Saavedra Date: Sat, 17 Sep 2016 11:31:56 -0500 Subject: gnu: gnome-session: Update to 3.20.2. * gnu/packages/gnome.scm (gnome-session): Update to 3.20.2. Signed-off-by: Leo Famulari --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 19e982d08a..c0461e1230 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3920,7 +3920,7 @@ such as gzip tarballs.") (define-public gnome-session (package (name "gnome-session") - (version "3.20.1") + (version "3.20.2") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3928,7 +3928,7 @@ such as gzip tarballs.") name "-" version ".tar.xz")) (sha256 (base32 - "04w90gyl0kdx5vwmdcgfdk3qr9xhip00vgpgzci151agqwyzbs9a")))) + "1npnjm6wirz2v0liv7n23ivp2w0y1q230qcdb681hhzmp7h9fpq2")))) (arguments '(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 082138e953a79d5cd1fa0d520938c39a4458eada Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sat, 17 Sep 2016 18:47:47 -0400 Subject: gnu: diffoscope: Update to 60. * gnu/packages/package-management.scm (diffoscope): Update to 60. --- gnu/packages/package-management.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 0fcd0b1646..4cc5b898a4 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -476,13 +476,13 @@ transactions from C or Python.") (define-public diffoscope (package (name "diffoscope") - (version "56") + (version "60") (source (origin (method url-fetch) (uri (pypi-uri name version)) (sha256 (base32 - "0nbbbp2c1374pl2ysqij2gk013pl49l1nqlg40jxsg95bwa6610l")))) + "0qwsnh7sldjlwi4qydn1ljzh3322k2ga45d867ml49xr2wnsivcc")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 4efb9c547870c61ef8971a28e6ccfaef38335ddb Mon Sep 17 00:00:00 2001 From: Stefan Reichoer Date: Fri, 16 Sep 2016 21:43:32 +0200 Subject: gnu: Add python-glances. * gnu/packages/python.scm (python-glances, python2-glances): New variables. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 2f349c88f3..027a9f2824 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -27,6 +27,7 @@ ;;; Copyright © 2016 Dylan Jeffers ;;; Copyright © 2016 David Craven ;;; Copyright © 2016 Marius Bakke +;;; Copyright © 2016 Stefan Reichoer ;;; ;;; This file is part of GNU Guix. ;;; @@ -10475,3 +10476,36 @@ functionality in the command line.") ("python2-mock" ,python2-mock) ("python2-enum34" ,python2-enum34) ,@(package-native-inputs base)))))) + +(define-public python-glances + (package + (name "python-glances") + (version "2.7.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "Glances" version)) + (sha256 + (base32 + "11jbq40g8alsbirnd4kiagznqg270247i0m8qhi48ldf2i5xppxg")))) + (build-system python-build-system) + (inputs + `(("python-psutil" ,python-psutil))) + (home-page + "https://github.com/nicolargo/glances") + (synopsis + "A cross-platform curses-based monitoring tool") + (description + "Glances is a curses-based monitoring tool for a wide variety of platforms. +Glances uses the PsUtil library to get information from your system. It monitors +CPU, load, memory, network bandwidth, disk I/O, disk use, and more.") + (license license:lgpl3+) + (properties `((python2-variant . ,(delay python2-glances)))))) + +(define-public python2-glances + (let ((base (package-with-python2 (strip-python2-variant python-glances)))) + (package + (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From 5d87088c3921b7f240eb71223e2e078d39ba1bf5 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Fri, 16 Sep 2016 16:57:29 +0200 Subject: gnu: Add sendmail * gnu/packages/mail.scm (sendmail): New variable. --- gnu/packages/mail.scm | 83 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 83 insertions(+) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index e344683af7..c81dd09212 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -18,6 +18,7 @@ ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Clément Lassieur ;;; Copyright © 2016 Arun Isaac +;;; Copyright © 2016 John Darrington ;;; ;;; This file is part of GNU Guix. ;;; @@ -1410,3 +1411,85 @@ provides HTML mail archiving with index, mail thread linking, etc; plus other capabilities including support for MIME and powerful user customization features.") (license gpl2+))) + + +(define-public sendmail + (package + (name "sendmail") + (version "8.15.2") + (source + (origin + (method url-fetch) + (uri (string-append + "ftp://ftp.sendmail.org/pub/sendmail/sendmail." + version ".tar.gz")) + (sha256 + (base32 + "0fdl9ndmspqspdlmghzxlaqk56j3yajk52d7jxcg21b7sxglpy94")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'build 'replace-/bin/sh + (lambda _ + (substitute* + (append + (list "smrsh/smrsh.c" "sendmail/conf.c" "contrib/mailprio" + "contrib/mmuegel" "devtools/bin/configure.sh") + (find-files "." ".*\\.m4") + (find-files "." ".*\\.cf")) + (("/bin/sh") (which "bash"))) + + (substitute* "devtools/bin/Build" + (("SHELL=/bin/sh") (string-append "SHELL=" (which "bash")))) + #t)) + (replace 'configure + (lambda _ + + ;; Render harmless any attempts to chown or chgrp + (substitute* "devtools/bin/install.sh" + (("owner=\\$2") "owner=''") + (("group=\\$2") "group=''")) + + (with-output-to-file "devtools/Site/site.config.m4" + (lambda () + (format #t " +define(`confCC', `gcc') +define(`confOPTIMIZE', `-g -O2') +define(`confLIBS', `-lresolv') +define(`confINSTALL', `~a/devtools/bin/install.sh') +define(`confDEPEND_TYPE', `CC-M') +define(`confINST_DEP', `') +" (getcwd)))))) + (replace 'build + (lambda _ + (and (zero? (system* "sh" "Build")) + (with-directory-excursion "cf/cf" + (begin + (copy-file "generic-linux.mc" "sendmail.mc") + (zero? (system* "sh" "Build" "sendmail.cf"))))))) + (add-before 'install 'pre-install + (lambda _ + (let ((out (assoc-ref %outputs "out"))) + (mkdir-p (string-append out "/usr/bin")) + (mkdir-p (string-append out "/usr/sbin")) + (mkdir-p (string-append out "/etc/mail")) + (setenv "DESTDIR" out) + (with-directory-excursion "cf/cf" + (zero? (system* "sh" "Build" "install-cf"))))))) + ;; There is no make check. There are some post installation tests, but those + ;; require root privileges + #:tests? #f)) + (inputs + `(("m4" ,m4) + ("perl" ,perl))) + (home-page "http://sendmail.org") + (synopsis + "Highly configurable Mail Transfer Agent (MTA)") + (description + "Sendmail is a mail transfer agent (MTA) originally developed by Eric +Allman. It is highly configurable and supports many delivery methods and many +transfer protocols.") + (license (non-copyleft "file://LICENSE" + "See LICENSE in the distribution.")))) + -- cgit v1.2.3 From e4360e16f932d0554ac9b1fe01b5c383bb0392ce Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sun, 18 Sep 2016 10:15:39 +0200 Subject: gnu: gtk+ use modify-phases * gnu/packages/gtk.scm (arguments): Replace alist-cons-before with modify-phases --- gnu/packages/gtk.scm | 26 ++++++++++++-------------- 1 file changed, 12 insertions(+), 14 deletions(-) diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index 5f55c1ee6f..df79239951 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -673,20 +673,18 @@ application suites.") #:configure-flags (list (string-append "--with-html-dir=" (assoc-ref %outputs "doc") "/share/gtk-doc/html")) - #:phases - (alist-cons-before - 'configure 'pre-configure - (lambda _ - ;; Disable most tests, failing in the chroot with the message: - ;; D-Bus library appears to be incorrectly set up; failed to read - ;; machine uuid: Failed to open "/etc/machine-id": No such file or - ;; directory. - ;; See the manual page for dbus-uuidgen to correct this issue. - (substitute* "testsuite/Makefile.in" - (("SUBDIRS = gdk gtk a11y css reftests") - "SUBDIRS = gdk")) - #t) - %standard-phases))) + #:phases (modify-phases %standard-phases + (add-before 'configure 'pre-configure + (lambda _ + ;; Disable most tests, failing in the chroot with the message: + ;; D-Bus library appears to be incorrectly set up; failed to read + ;; machine uuid: Failed to open "/etc/machine-id": No such file or + ;; directory. + ;; See the manual page for dbus-uuidgen to correct this issue. + (substitute* "testsuite/Makefile.in" + (("SUBDIRS = gdk gtk a11y css reftests") + "SUBDIRS = gdk")) + #t))))) (native-search-paths (list (search-path-specification (variable "GUIX_GTK3_PATH") -- cgit v1.2.3 From 0bb9461506eb1073861436a5bd86312b2b7938f2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 18 Sep 2016 11:34:30 +0300 Subject: gnu: autoconf-archive: Update to 2016.09.16. * gnu/packages/autotools.scm (autoconf-archive): Update to 2016.09.16. --- gnu/packages/autotools.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm index 21ed0e6179..72492e70eb 100644 --- a/gnu/packages/autotools.scm +++ b/gnu/packages/autotools.scm @@ -163,7 +163,7 @@ exec ~a --no-auto-compile \"$0\" \"$@\" (define-public autoconf-archive (package (name "autoconf-archive") - (version "2016.03.20") + (version "2016.09.16") (source (origin (method url-fetch) @@ -171,7 +171,7 @@ exec ~a --no-auto-compile \"$0\" \"$@\" version ".tar.xz")) (sha256 (base32 - "0dz4fnc723jqn3by22ds5fys7g31apzm1r9allldvva0yvzjxyw8")))) + "10mxz9hfnfz66m1l9s28sbyfb9a04akz92wkyv9blhpq6p9fzwp8")))) (build-system gnu-build-system) (home-page "https://www.gnu.org/software/autoconf-archive") (synopsis "Collection of freely reusable Autoconf macros") -- cgit v1.2.3 From bff8be80c979ae0cf2197047a818b34b93aff32a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 18 Sep 2016 23:14:02 +0300 Subject: gnu: xorriso: Update to 1.4.6. * gnu/packages/cdrom.scm (xorriso): Update to 1.4.6. --- gnu/packages/cdrom.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/cdrom.scm b/gnu/packages/cdrom.scm index 52c90e18e4..90a6a2e7a5 100644 --- a/gnu/packages/cdrom.scm +++ b/gnu/packages/cdrom.scm @@ -130,14 +130,14 @@ libcdio.") (define-public xorriso (package (name "xorriso") - (version "1.4.4") + (version "1.4.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/xorriso/xorriso-" version ".tar.gz")) (sha256 (base32 - "1izv8dvwacyh432vv1rm6lyjrq0v205kyakfra6iwa146c9m9fgr")))) + "112p0ghwzxrcjbsir1n2jxhq103ckrw93wzvd55qqvzfgs674vsj")))) (build-system gnu-build-system) (inputs `(("acl" ,acl) -- cgit v1.2.3 From 4d3fa5a4215c6daa3fbd5ef96e55a7aa96211ee6 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:20:58 +0300 Subject: gnu: Add python-pika. * gnu/packages/python.scm (python-pika): New variable. --- gnu/packages/python.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 027a9f2824..055e6e2d90 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -9200,6 +9200,31 @@ focus on event-based network programming and multiprotocol integration.") (define-public python2-twisted (package-with-python2 python-twisted)) +(define-public python-pika + (package + (name "python-pika") + (version "0.10.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pika" version)) + (sha256 + (base32 + "0nb4h08di432lv7dy2v9kpwgk0w92f24sqc2hw2s9vwr5b8v8xvj")))) + (build-system python-build-system) + (native-inputs + `(("python-twisted" ,python-twisted))) + (home-page "https://pika.readthedocs.org") + (synopsis "Pure Python AMQP Client Library") + (description + "Pika is a pure-Python implementation of the AMQP (Advanced Message Queuing +Protocol) 0-9-1 protocol that tries to stay fairly independent of the underlying +network support library.") + (license license:bsd-3))) + +(define-public python2-pika + (package-with-python2 python-pika)) + (define-public python-ply (package (name "python-ply") -- cgit v1.2.3 From 4d98bfaf23852766e923e017f4334f4219c1d142 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:22:39 +0300 Subject: gnu: Add python-peewee. * gnu/packages/databases.scm (python-peewee): New variable. --- gnu/packages/databases.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index b316745e47..4f345e20a4 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -64,6 +64,7 @@ #:use-module (guix download) #:use-module (guix build-system gnu) #:use-module (guix build-system perl) + #:use-module (guix build-system python) #:use-module (guix build-system cmake) #:use-module (guix utils) #:use-module (srfi srfi-26) @@ -1120,3 +1121,32 @@ PostgreSQL database back-end. The database back-end can be local or it may be on another machine, accessed via TCP/IP.") (home-page "http://pqxx.org/") (license license:bsd-3))) + +(define-public python-peewee + (package + (name "python-peewee") + (version "2.8.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "peewee" version)) + (sha256 + (base32 + "1605bk11s7aap2q4qyba93rx7yfh8b11kk0cqi08z8klx2iar8yd")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) ; Fails to import test data + (native-inputs + `(("python-cython" ,python-cython))) + (home-page "https://github.com/coleifer/peewee/") + (synopsis "Small object-relational mapping utility") + (description + "Peewee is a simple and small ORM (object-relation mapping) tool. Peewee +handles converting between pythonic values and those used by databases, so you +can use Python types in your code without having to worry. It has built-in +support for sqlite, mysql and postgresql. If you already have a database, you +can autogenerate peewee models using @code{pwiz}, a model generator.") + (license license:expat))) + +(define-public python2-peewee + (package-with-python2 python-peewee)) -- cgit v1.2.3 From 5cb2fe446bf3357e3320bfd5c00ccfac131cd4fd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:24:25 +0300 Subject: gnu: Add python-promise. * gnu/packages/python.scm (python-promise): New variable. --- gnu/packages/python.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 055e6e2d90..86d099a291 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -7442,6 +7442,40 @@ asynchronously executing callables. This package backports the concurrent.futures package from Python 3.2") (license license:bsd-3))) +(define-public python-promise + (package + (name "python-promise") + (version "0.4.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "promise" version)) + (sha256 + (base32 + "1k19ms8l3d5jzjh557rgkxb5sg4mqgfc315rn4hx1z3n8qq6lr3h")))) + (build-system python-build-system) + ;; Tests wants python-futures, which is a python2 only program, and + ;; can't be found by python-promise at test time. + (arguments `(#:tests? #f)) + (home-page "https://github.com/syrusakbary/promise") + (synopsis "Promises/A+ implementation for Python") + (description + "Promises/A+ implementation for Python") + (properties `((python2-variant . ,(delay python2-promise)))) + (license license:expat))) + +(define-public python2-promise + (let ((promise (package-with-python2 + (strip-python2-variant python-promise)))) + (package (inherit promise) + (arguments (substitute-keyword-arguments (package-arguments promise) + ((#:tests? _) #t))) + (native-inputs + `(("python2-futures" ,python2-futures) + ("python2-pytest" ,python2-pytest) + ("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs promise)))))) + (define-public python-urllib3 (package (name "python-urllib3") -- cgit v1.2.3 From 44547e51530e93ac6215bd32f2ee9e00b426544d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:25:59 +0300 Subject: gnu: Add python-pytest-mock. * gnu/packages/python.scm (python-pytest-mock): New variable. --- gnu/packages/python.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 86d099a291..590a0566e5 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1684,6 +1684,45 @@ supports coverage of subprocesses.") (define-public python2-pytest-runner (package-with-python2 python-pytest-runner)) +(define-public python-pytest-mock + (package + (name "python-pytest-mock") + (version "1.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pytest-mock" version ".zip")) + (sha256 + (base32 + "03zxar5drzm7ksqyrwypjaza3cri6wqvpr6iam92djvg6znp32gp")))) + (build-system python-build-system) + (native-inputs + `(("unzip" ,unzip))) + (inputs + `(("python-py" ,python-py) + ("python-pytest" ,python-pytest))) + (home-page "https://github.com/pytest-dev/pytest-mock/") + (synopsis "Thin-wrapper around the mock package for easier use with py.test") + (description + "This plugin installs a @code{mocker} fixture which is a thin-wrapper +around the patching API provided by the @code{mock} package, but with the +benefit of not having to worry about undoing patches at the end of a test. +The mocker fixture has the same API as @code{mock.patch}, supporting the +same arguments.") + (properties `((python2-variant . ,(delay python2-pytest-mock)))) + (license license:expat))) + +(define-public python2-pytest-mock + (let ((base (package-with-python2 + (strip-python2-variant python-pytest-mock)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base))) + (inputs + `(("python2-mock" ,python2-mock) + ,@(package-inputs base)))))) + (define-public python-pytest-xdist (package (name "python-pytest-xdist") -- cgit v1.2.3 From 05b7a593367d541f1a7a7be3a13bb2834c235257 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:27:29 +0300 Subject: gnu: Add python-graphql-core. * gnu/packages/python.scm (python-graphql-core): New variable. --- gnu/packages/python.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 590a0566e5..f52ecfbf0d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10607,3 +10607,48 @@ CPU, load, memory, network bandwidth, disk I/O, disk use, and more.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-graphql-core + (package + (name "python-graphql-core") + (version "0.5.3") + (source + (origin + (method url-fetch) + (uri (pypi-uri "graphql-core" version)) + (sha256 + (base32 + "0rsaarx2sj4xnw9966rhh4haiqaapm4lm2mfqm48ywd51j5vh1a0")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-hardcoded-version + (lambda _ (substitute* + "setup.py" + (("'gevent==1.1rc1'") "'gevent'")) + #t))))) + (native-inputs + `(("python-gevent" ,python-gevent) + ("python-mock" ,python-mock) + ("python-pytest-mock" ,python-pytest-mock))) + (inputs + `(("python-promise" ,python-promise) + ("python-six" ,python-six))) + (home-page "https://github.com/graphql-python/graphql-core") + (synopsis "GraphQL implementation for Python") + (description + "GraphQL implementation for Python. GraphQL is a data query language and +runtime designed and used to request and deliver data to mobile and web apps. +This library is a port of @url{https://github.com/graphql/graphql-js,graphql-js} +to Python.") + (properties `((python2-variant . ,(delay python2-graphql-core)))) + (license license:expat))) + +(define-public python2-graphql-core + (let ((base (package-with-python2 + (strip-python2-variant python-graphql-core)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From 7ee51575792e1030f4baedb20899217b2534708b Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:28:12 +0300 Subject: gnu: Add python-graphql-relay. * gnu/packages/python.scm (python-graphql-relay): New variable. --- gnu/packages/python.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index f52ecfbf0d..3cb4a8fbfb 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10652,3 +10652,40 @@ to Python.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-graphql-relay + (package + (name "python-graphql-relay") + (version "0.4.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "graphql-relay" version)) + (sha256 + (base32 + "04wr9ayshxjjdcg2v21c7ffbz36kif1wjl3604fqd3qignb3fbxi")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest))) + (inputs + `(("python-graphql-core" ,python-graphql-core) + ("python-promise" ,python-promise) + ("python-six" ,python-six))) + (home-page "https://github.com/graphql-python/graphql-relay-py") + (synopsis "Relay implementation for Python") + (description + "This is a library to allow the easy creation of Relay-compliant servers +using the GraphQL Python reference implementation of a GraphQL server. It +should be noted that the code is a exact port of the original +@url{https://github.com/graphql/graphql-relay-js,graphql-relay js implementation} +from Facebook.") + (properties `((python2-variant . ,(delay python2-graphql-relay)))) + (license license:expat))) + +(define-public python2-graphql-relay + (let ((base (package-with-python2 + (strip-python2-variant python-graphql-relay)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From de2966cfe8bab5f3284888002d84c490c2308137 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:29:55 +0300 Subject: gnu: Add python-sqlalchemy-utils. * gnu/packages/python.scm (python-sqlalchemy-utils): New variable. --- gnu/packages/python.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 3cb4a8fbfb..07b77d7b0e 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -3695,6 +3695,37 @@ simple and Pythonic domain language.") (define-public python2-sqlalchemy (package-with-python2 python-sqlalchemy)) +(define-public python-sqlalchemy-utils + (package + (name "python-sqlalchemy-utils") + (version "0.32.9") + (source + (origin + (method url-fetch) + (uri (pypi-uri "SQLAlchemy-Utils" version)) + (sha256 + (base32 + "1zbmmh7n8m01ikizn2mj1mfwch26nsr1awv9mvskqry7av0mpy98")))) + (build-system python-build-system) + (inputs + `(("python-six" ,python-six) + ("python-sqlalchemy" ,python-sqlalchemy))) + (home-page "https://github.com/kvesteri/sqlalchemy-utils") + (synopsis "Various utility functions for SQLAlchemy") + (description + "SQLAlchemy-utils provides various utility functions and custom data types +for SQLAlchemy. SQLAlchemy is an SQL database abstraction library for Python.") + (properties `((python2-variant . ,(delay python2-sqlalchemy-utils)))) + (license license:bsd-3))) + +(define-public python2-sqlalchemy-utils + (let ((base (package-with-python2 + (strip-python2-variant python-sqlalchemy-utils)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + (define-public python-alembic (package (name "python-alembic") -- cgit v1.2.3 From 23b563dcfdc269b51c4bb671d9ba226c8f70e6a3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:30:55 +0300 Subject: gnu: Add python-pytest-django. * gnu/packages/django.scm (python-pytest-django): New variable. --- gnu/packages/django.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index b9232e28e8..bd39314b00 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Hartmut Goebel +;;; Copyright © 2016 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -122,3 +123,42 @@ with arguments to the field constructor.") (define-public python2-django-simple-math-captcha (package-with-python2 python-django-simple-math-captcha)) + +(define-public python-pytest-django + (package + (name "python-pytest-django") + (version "2.9.1") + (source (origin + (method url-fetch) + (uri (pypi-uri "pytest-django" version)) + (sha256 + (base32 + "1mmc7zsz3dlhs6sx4sppkj1vgshabi362r1a8b8wpj1qfximpqcb")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-setuppy + (lambda _ + (substitute* "setup.py" + (("setuptools_scm==1.8.0") "setuptools_scm")) + #t))))) + (native-inputs + `(("python-setuptools-scm" ,python-setuptools-scm))) + (inputs + `(("python-py" ,python-py) + ("python-pytest" ,python-pytest))) + (home-page "http://pytest-django.readthedocs.org/") + (synopsis "Django plugin for py.test") + (description "Pytest-django is a plugin for py.test that provides a set of +useful tools for testing Django applications and projects.") + (properties `((python2-variant . ,(delay python2-pytest-django)))) + (license license:bsd-3))) + +(define-public python2-pytest-django + (let ((base (package-with-python2 + (strip-python2-variant python-pytest-django)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From 894810c7c951d054e4b456f9c03e315cda1bd765 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:31:44 +0300 Subject: gnu: Add python-django-filter. * gnu/packages/django.scm (python-django-filter): New variable. --- gnu/packages/django.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index bd39314b00..923c4e2f2b 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -162,3 +162,32 @@ useful tools for testing Django applications and projects.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-django-filter + (package + (name "python-django-filter") + (version "0.14.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "django-filter" version)) + (sha256 + (base32 + "0f78hmk8c903zwfzlsiw7ivgag81ymmb5hi73rzxbhnlg2v0l3fx")))) + (build-system python-build-system) + (home-page "https://django-filter.readthedocs.io/en/latest/") + (synopsis "Reusable Django application to filter querysets dynamically") + (description + "Django-filter is a generic, reusable application to alleviate writing +some of the more mundane bits of view code. Specifically, it allows users to +filter down a queryset based on a model’s fields, displaying the form to let +them do this.") + (properties `((python2-variant . ,(delay python2-django-filter)))) + (license license:bsd-3))) + +(define-public python2-django-filter + (let ((base (package-with-python2 + (strip-python2-variant python-django-filter)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From ddc63a561193bcbda04bcc70f9c2c992bdb9e577 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:32:49 +0300 Subject: gnu: Add python-graphene. * gnu/packages/python.scm (python-graphene): New variable. --- gnu/packages/python.scm | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 07b77d7b0e..648b8bec0b 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -53,6 +53,7 @@ #:use-module (gnu packages backup) #:use-module (gnu packages compression) #:use-module (gnu packages databases) + #:use-module (gnu packages django) #:use-module (gnu packages file) #:use-module (gnu packages fontutils) #:use-module (gnu packages gcc) @@ -10720,3 +10721,45 @@ from Facebook.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) + +(define-public python-graphene + (package + (name "python-graphene") + (version "0.10.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "graphene" version)) + (sha256 + (base32 + "09zhac7igh9ixdz0ay6csy35b40l1jwbf2wrbxmgxwfhy51iy06q")))) + (build-system python-build-system) + (native-inputs + `(("python-django-filter" ,python-django-filter) + ("python-mock" ,python-mock) + ("python-psycopg2" ,python-psycopg2) + ("python-pytest-django" ,python-pytest-django) + ("python-sqlalchemy-utils" ,python-sqlalchemy-utils))) + (inputs + `(("python-graphql-core" ,python-graphql-core) + ("python-graphql-relay" ,python-graphql-relay) + ("python-iso8601" ,python-iso8601) + ("python-promise" ,python-promise) + ("python-six" ,python-six))) + (home-page "http://graphene-python.org/") + (synopsis "GraphQL Framework for Python") + (description + "Graphene is a Python library for building GraphQL schemas/types. +A GraphQL schema describes your data model, and provides a GraphQL server +with an associated set of resolve methods that know how to fetch data.") + (properties `((python2-variant . ,(delay python2-graphene)))) + (license license:expat))) + +(define-public python2-graphene + (let ((base (package-with-python2 + (strip-python2-variant python-graphene)))) + (package (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ("python2-sqlalchemy" ,python2-sqlalchemy) + ,@(package-native-inputs base)))))) -- cgit v1.2.3 From 257023978aca29d381d63d00e4a6cc1d1bd2857a Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:33:40 +0300 Subject: gnu: Add python-consul. * gnu/packages/python.scm (python-consul): New variable. --- gnu/packages/python.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 648b8bec0b..edc99dc0d4 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -10213,6 +10213,36 @@ interface for programs.") `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) +(define-public python-consul + (package + (name "python-consul") + (version "0.6.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-consul" version)) + (sha256 + (base32 + "0rfyxcy4cr3x848vhx876ifalxd5ghq6l5x813m49h4vq2d4jiq8")))) + (build-system python-build-system) + (native-inputs + `(("python-pytest" ,python-pytest) + ("python-requests" ,python-requests) + ("python-six" ,python-six))) + (home-page "https://github.com/cablehead/python-consul") + (synopsis "Python client for Consul") + (description + "Python client for @url{http://www.consul.io/,Consul}, a tool for service +discovery, monitoring and configuration.") + (license license:expat))) + +(define-public python2-consul + (let ((consul (package-with-python2 python-consul))) + (package (inherit consul) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs consul)))))) + (define-public python-schematics (package (name "python-schematics") -- cgit v1.2.3 From 12f839fdf685e68dda8f38af1bbb192fa4199d25 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:34:42 +0300 Subject: gnu: Add python-cov-core. * gnu/packages/python.scm (python-cov-core): New variable. --- gnu/packages/python.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index edc99dc0d4..7536259c64 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2104,6 +2104,34 @@ executed.") (define-public python2-coverage (package-with-python2 python-coverage)) +(define-public python-cov-core + (package + (name "python-cov-core") + (version "1.15.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "cov-core" version)) + (sha256 + (base32 + "0k3np9ymh06yv1ib96sb6wfsxjkqhmik8qfsn119vnhga9ywc52a")))) + (build-system python-build-system) + (native-inputs + `(("python-coverage" ,python-coverage))) + (home-page "https://github.com/schlamar/cov-core") + (synopsis "plugin core for use by pytest-cov, nose-cov and nose2-cov") + (description + "This is a library package for use by pytest-cov, nose-cov and nose2-cov. +It is useful for developing coverage plugins for these testing frameworks.") + (license license:expat))) + +(define-public python2-cov-core + (let ((cov-core (package-with-python2 python-cov-core))) + (package (inherit cov-core) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs cov-core)))))) + (define-public python-discover (package (name "python-discover") -- cgit v1.2.3 From 0aea283a65a7b0095c00abd5808523f4e02427d2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:35:37 +0300 Subject: gnu: Add python-nose2. * gnu/packages/python.scm (python-nose2): New variable. --- gnu/packages/python.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 7536259c64..d6052fa4bd 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -1507,6 +1507,37 @@ matching them against a list of media-ranges.") (define-public python2-nose (package-with-python2 python-nose)) +(define-public python-nose2 + (package + (name "python-nose2") + (version "0.6.5") + (source + (origin + (method url-fetch) + (uri (pypi-uri "nose2" version)) + (sha256 + (base32 + "1x4zjq1zlyrh8b9ba0cmafd3w94pxhid408kibyjd3s6h1lap6s7")))) + (build-system python-build-system) + (arguments `(#:tests? #f)) ; 'module' object has no attribute 'collector' + (native-inputs + `(("python-setuptools" ,python-setuptools))) + (inputs + `(("python-cov-core" ,python-cov-core) + ("python-pytest-cov" ,python-pytest-cov) + ("python-six" ,python-six))) + (home-page "https://github.com/nose-devs/nose2") + (synopsis "Next generation of nicer testing for Python") + (description + "Nose2 is the next generation of nicer testing for Python, based on the +plugins branch of unittest2. Nose2 aims to improve on nose by providing a +better plugin api, being easier for users to configure, and simplifying internal +interfaces and processes.") + (license license:bsd-2))) + +(define-public python2-nose2 + (package-with-python2 python-nose2)) + (define-public python-unittest2 (package (name "python-unittest2") -- cgit v1.2.3 From 153e58c568631f69289c172746739f7bfc92e51e Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:36:51 +0300 Subject: gnu: Add python-bcrypt. * gnu/packages/password-utils.scm (python-bcrypt): New variable. --- gnu/packages/password-utils.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index 7288da6613..d2410c6106 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -334,3 +334,38 @@ through the pass command.") (description "Argon2 provides a key derivation function that was declared winner of the 2015 Password Hashing Competition.") (license license:cc0))) + +(define-public python-bcrypt + (package + (name "python-bcrypt") + (version "3.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "bcrypt" version)) + (sha256 + (base32 + "1giy0dvd8gvq6flxh44np1v2nqwsji5qsnrz038mgwzgp7c20j75")))) + (build-system python-build-system) + (native-inputs + `(("python-pycparser" ,python-pycparser) + ("python-pytest" ,python-pytest))) + (inputs + `(("python-cffi" ,python-cffi) + ("python-six" ,python-six))) + (home-page "https://github.com/pyca/bcrypt/") + (synopsis + "Modern password hashing library") + (description + "Bcrypt is a Python module which provides a password hashing method based +on the Blowfish password hashing algorithm, as described in +@url{http://static.usenix.org/events/usenix99/provos.html,\"A Future-Adaptable +Password Scheme\"} by Niels Provos and David Mazieres.") + (license license:asl2.0))) + +(define-public python2-bcrypt + (let ((bcrypt (package-with-python2 python-bcrypt))) + (package (inherit bcrypt) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs bcrypt)))))) -- cgit v1.2.3 From d488d5d65b1bfb85da5277bd4697a29d75b2d373 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:39:22 +0300 Subject: gnu: Add python-nautilus. * gnu/packages/python.scm (python-nautilus): New variable. --- gnu/packages/python.scm | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index d6052fa4bd..038237d6fd 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -72,6 +72,7 @@ #:use-module (gnu packages multiprecision) #:use-module (gnu packages networking) #:use-module (gnu packages ncurses) + #:use-module (gnu packages password-utils) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) @@ -90,7 +91,6 @@ #:use-module (gnu packages zip) #:use-module (gnu packages tcl) #:use-module (gnu packages bdw-gc) - #:use-module (gnu packages pcre) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) @@ -10852,3 +10852,41 @@ with an associated set of resolve methods that know how to fetch data.") `(("python2-setuptools" ,python2-setuptools) ("python2-sqlalchemy" ,python2-sqlalchemy) ,@(package-native-inputs base)))))) + +(define-public python-nautilus + (package + (name "python-nautilus") + (version "0.4.9") + (source + (origin + (method url-fetch) + (uri (pypi-uri "nautilus" version)) + (sha256 + (base32 + "01hwzjc1zshk4vvxrcghm398fpy4jls66dyz06g07mrwqif8878p")))) + (build-system python-build-system) + (arguments `(#:tests? #f)) ; fails to import test modules + (native-inputs + `(("python-setuptools" ,python-setuptools))) + (inputs + `(("python-bcrypt" ,python-bcrypt) + ("python-click" ,python-click) + ("python-consul" ,python-consul) + ("python-graphql-core" ,python-graphql-core) + ("python-graphql-relay" ,python-graphql-relay) + ("python-graphene" ,python-graphene) + ("python-jinja2" ,python-jinja2) + ("python-nose2" ,python-nose2) + ("python-peewee" ,python-peewee) + ("python-pika" ,python-pika) + ("python-pycparser" ,python-pycparser) + ("python-requests" ,python-requests) + ("python-tornado" ,python-tornado) + ("python-wtforms" ,python-wtforms))) + (home-page "https://github.com/AlecAivazis/nautilus") + (synopsis "Library for creating microservice applications") + (description + "Nautilus is a framework for flux based microservices that looks to +provide extendible implementations of common aspects of a cloud so that you can +focus on building massively scalable web applications.") + (license license:expat))) -- cgit v1.2.3 From b8ea5204ab1d9eb9464753fa6b1af9f5705a1084 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 11 Sep 2016 21:43:06 +0300 Subject: gnu: Add onionshare. * gnu/packages/tor.scm (onionshare): New variable. * gnu/packages/patches/onionshare-fix-install-paths.patch: New variable. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + .../patches/onionshare-fix-install-paths.patch | 39 ++++++++ gnu/packages/tor.scm | 100 +++++++++++++++++++++ 3 files changed, 140 insertions(+) create mode 100644 gnu/packages/patches/onionshare-fix-install-paths.patch diff --git a/gnu/local.mk b/gnu/local.mk index e2cf40d4ae..407612155f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -702,6 +702,7 @@ dist_patch_DATA = \ %D%/packages/patches/nvi-db4.patch \ %D%/packages/patches/ocaml-CVE-2015-8869.patch \ %D%/packages/patches/ocaml-findlib-make-install.patch \ + %D%/packages/patches/onionshare-fix-install-paths.patch \ %D%/packages/patches/openexr-missing-samples.patch \ %D%/packages/patches/openjpeg-CVE-2015-6581.patch \ %D%/packages/patches/openjpeg-CVE-2016-5157.patch \ diff --git a/gnu/packages/patches/onionshare-fix-install-paths.patch b/gnu/packages/patches/onionshare-fix-install-paths.patch new file mode 100644 index 0000000000..721b89f04b --- /dev/null +++ b/gnu/packages/patches/onionshare-fix-install-paths.patch @@ -0,0 +1,39 @@ +From 7afdd3366711a0c508bfb9323af8f4268ab77c9b Mon Sep 17 00:00:00 2001 +From: Efraim Flashner +Date: Thu, 21 Jul 2016 13:22:45 +0300 +Subject: [PATCH] patch + +--- + setup.py | 14 +++++++------- + 1 file changed, 7 insertions(+), 7 deletions(-) + +diff --git a/setup.py b/setup.py +index 8ae56fe..8b245c9 100644 +--- a/setup.py ++++ b/setup.py +@@ -91,15 +91,15 @@ setup( + include_package_data=True, + scripts=['install/scripts/onionshare', 'install/scripts/onionshare-gui'], + data_files=[ +- (os.path.join(sys.prefix, 'share/applications'), ['install/onionshare.desktop']), +- (os.path.join(sys.prefix, 'share/appdata'), ['install/onionshare.appdata.xml']), +- (os.path.join(sys.prefix, 'share/pixmaps'), ['install/onionshare80.xpm']), +- (os.path.join(sys.prefix, 'share/onionshare'), [ ++ ('share/applications', ['install/onionshare.desktop']), ++ ('share/appdata', ['install/onionshare.appdata.xml']), ++ ('share/pixmaps', ['install/onionshare80.xpm']), ++ ('share/onionshare', [ + 'resources/version.txt', + 'resources/wordlist.txt' + ]), +- (os.path.join(sys.prefix, 'share/onionshare/images'), images), +- (os.path.join(sys.prefix, 'share/onionshare/locale'), locale), +- (os.path.join(sys.prefix, 'share/onionshare/html'), html) ++ ('share/onionshare/images', images), ++ ('share/onionshare/locale', locale), ++ ('share/onionshare/html', html) + ] + ) +-- +2.9.1 + diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index 951b8f680b..fe74c3c972 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -31,6 +31,7 @@ #:use-module (gnu packages pcre) #:use-module (gnu packages perl) #:use-module (gnu packages python) + #:use-module (gnu packages qt) #:use-module (gnu packages autotools) #:use-module (gnu packages tls) #:use-module (gnu packages w3m)) @@ -145,3 +146,102 @@ flexible configuration and can be customized to suit individual needs and tastes. It has application for both stand-alone systems and multi-user networks.") (license gpl2+))) + +(define-public onionshare + (package + (name "onionshare") + (version "0.9") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/micahflee/onionshare/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0pc3xbq379415s0i0y6rz02hay20zbvgra1jmg4mgrl9vbdr8zmw")) + (patches (search-patches "onionshare-fix-install-paths.patch")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-install-path + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (onionshare (string-append out "/share/onionshare"))) + (substitute* + "install/pyinstaller.spec" + ;; inform onionshare where the 'resources' files are installed + (("../resources") onionshare)) + (substitute* + "onionshare/strings.py" + ;; correct the locale directory + (("helpers.get_resource_path\\('locale'\\)") + (string-append "'" onionshare "/locale'"))) + (substitute* + "onionshare/helpers.py" + ;; correct the location of version.txt + (("/usr") out) + (("get_resource_path\\('version.txt'\\)") + (string-append "'" onionshare "/version.txt'")) + (("get_resource_path\\('wordlist.txt'\\)") + (string-append "'" onionshare "/wordlist.txt'"))) + (substitute* + "onionshare/web.py" + ;; fix the location of the html files + (("helpers.get_resource_path\\('html/denied.html'\\)") + (string-append "'" onionshare "/html/denied.html'")) + (("helpers.get_resource_path\\('html/404.html'\\)") + (string-append "'" onionshare "/html/404.html'")) + (("helpers.get_resource_path\\('html/index.html'\\)") + (string-append "'" onionshare "/html/index.html'"))) + (substitute* + "onionshare_gui/file_selection.py" + (("helpers.get_resource_path\\('images/drop_files.png'\\)") + (string-append "'" onionshare "/images/drop_files.png'"))) + (substitute* + "onionshare_gui/server_status.py" + (("helpers.get_resource_path\\('images/server_stopped.png'\\)") + (string-append "'" onionshare "/images/server_stopped.png'")) + (("helpers.get_resource_path\\('images/server_working.png'\\)") + (string-append "'" onionshare "/images/server_working.png'")) + (("helpers.get_resource_path\\('images/server_started.png'\\)") + (string-append "'" onionshare "/images/server_started.png'"))) + (substitute* + "onionshare_gui/onionshare_gui.py" + (("helpers.get_resource_path\\('images/logo.png'\\)") + (string-append "'" onionshare "/images/logo.png'"))) + (substitute* + "install/onionshare.desktop" + (("/usr") out)) + #t))) + (delete 'check) + (add-before 'strip 'tests + ;; After all the patching we run the tests after installing. + ;; This is also a known issue: + ;; https://github.com/micahflee/onionshare/issues/284 + (lambda _ (zero? (system* "nosetests" "test"))))) + ;; can't compress the egg because it expects to find all the resources + ;; inside the egg as though it were a folder. + #:configure-flags '("--single-version-externally-managed" "--root=/") + )) + (native-inputs + `(("python-nose" ,python-nose))) + (inputs + `(("python-flask" ,python-flask) + ("python-nautilus" ,python-nautilus) + ("python-sip" ,python-sip) + ("python-stem" ,python-stem) + ("python-pyqt" ,python-pyqt))) + (home-page "https://onionshare.org/") + (synopsis "Securely and anonymously share files") + (description "OnionShare lets you securely and anonymously share files of +any size. It works by starting a web server, making it accessible as a Tor +hidden service, and generating an unguessable URL to access and download the +files. It doesn't require setting up a server on the internet somewhere or +using a third party filesharing service. You host the file on your own computer +and use a Tor hidden service to make it temporarily accessible over the +internet. The other user just needs to use Tor Browser to download the file +from you.") + (license (list license:gpl3+ + license:bsd-3)))) ; onionshare/socks.py -- cgit v1.2.3 From c4605e4c97b8763e8e043e45ce1dd4190a2d1166 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sun, 18 Sep 2016 23:27:36 +0300 Subject: gnu: onionshare: Fix build. This commit is a follow-up to b8ea5204ab. * gnu/packages/tor.scm: Add 'gpl3+' to guix-licenses import, Add python-build-system. (onionshare)[licenses]: Remove license namespace. --- gnu/packages/tor.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index fe74c3c972..0dc72a3cb9 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -20,11 +20,12 @@ ;;; along with GNU Guix. If not, see . (define-module (gnu packages tor) - #:use-module ((guix licenses) #:select (bsd-3 gpl2+ gpl2)) + #:use-module ((guix licenses) #:select (bsd-3 gpl3+ gpl2+ gpl2)) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module (gnu packages) #:use-module (gnu packages libevent) #:use-module (gnu packages compression) @@ -243,5 +244,5 @@ using a third party filesharing service. You host the file on your own computer and use a Tor hidden service to make it temporarily accessible over the internet. The other user just needs to use Tor Browser to download the file from you.") - (license (list license:gpl3+ - license:bsd-3)))) ; onionshare/socks.py + (license (list gpl3+ + bsd-3)))) ; onionshare/socks.py -- cgit v1.2.3 From ded5d02bd07077d7daa131a5edefbc164696deb8 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 18 Sep 2016 22:26:14 +0200 Subject: gnu: wireshark: Update to 2.2.0. * gnu/packages/networking.scm (wireshark): Update to 2.2.0. Signed-off-by: Leo Famulari --- gnu/packages/networking.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 47aa2b9cc9..6010e86ac7 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -423,7 +423,7 @@ and up to 1 Mbit/s downstream.") (define-public wireshark (package (name "wireshark") - (version "2.0.5") + (version "2.2.0") (synopsis "Network traffic analyzer") (source (origin @@ -432,7 +432,7 @@ and up to 1 Mbit/s downstream.") version ".tar.bz2")) (sha256 (base32 - "02xi3fz8blcz9cf75rs11g7bijk06wm45vpgnksp72c2609j9q0c")))) + "010i7wpsv2231pwb1xdqs0xfwywi3514siidv6wnrfpw3rs7x156")))) (build-system glib-or-gtk-build-system) (inputs `(("bison" ,bison) ("c-ares" ,c-ares) -- cgit v1.2.3 From 4ce603058865be5e1da07cc90f4090c94e71dd9f Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 19 Sep 2016 11:28:50 +1000 Subject: gnu: python-biopython: Update to 1.68. * gnu/packages/bioinformatics.scm (python-biopython): Update to 1.68. [arguments]: New field. --- gnu/packages/bioinformatics.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 39a420ac3b..69ef785ec7 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -594,15 +594,21 @@ provide a coordinated and extensible framework to do computational biology.") (define-public python-biopython (package (name "python-biopython") - (version "1.66") + (version "1.68") (source (origin (method url-fetch) ;; use PyPi rather than biopython.org to ease updating (uri (pypi-uri "biopython" version)) (sha256 (base32 - "1gdv92593klimg22icf5j9by7xiq86jnwzkpz4abaa05ylkdf6hp")))) + "07qc7nz0k77y8hf8s18rscvibvm91zw0kkq7ylrhisf8vp8hkp6i")))) (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'check 'set-home + ;; Some tests require a home directory to be set. + (lambda _ (setenv "HOME" "/tmp") #t))))) (inputs `(("python-numpy" ,python-numpy))) (native-inputs -- cgit v1.2.3 From 8c8da1389e476356ce5086b5cff4874d41271b96 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 19 Sep 2016 12:06:56 +1000 Subject: gnu: python-biopython: Use 'python2-variant'. * gnu/packages/bioinformatics.scm (python-biopython)[properties]: New field. [native-inputs]: Remove field. (python-biopython): Use 'strip-python-variant'. --- gnu/packages/bioinformatics.scm | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 69ef785ec7..a8d2cf3ea2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -611,8 +611,6 @@ provide a coordinated and extensible framework to do computational biology.") (lambda _ (setenv "HOME" "/tmp") #t))))) (inputs `(("python-numpy" ,python-numpy))) - (native-inputs - `(("python-setuptools" ,python2-setuptools))) (home-page "http://biopython.org/") (synopsis "Tools for biological computation in Python") (description @@ -622,12 +620,15 @@ bioinformatics programs; a standard sequence class and tools for performing common operations on them; code to perform data classification; code for dealing with alignments; code making it easy to split up parallelizable tasks into separate processes; and more.") - (license (license:non-copyleft "http://www.biopython.org/DIST/LICENSE")))) + (license (license:non-copyleft "http://www.biopython.org/DIST/LICENSE")) + (properties `((python2-variant . ,(delay python2-biopython)))))) (define-public python2-biopython - (package (inherit (package-with-python2 python-biopython)) - (inputs - `(("python2-numpy" ,python2-numpy))))) + (let ((base (package-with-python2 (strip-python2-variant python-biopython)))) + (package + (inherit base) + (native-inputs `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) (define-public bpp-core ;; The last release was in 2014 and the recommended way to install from source -- cgit v1.2.3 From 4b1a15282677b15a5949ec144567529f70260203 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 19 Sep 2016 12:15:07 +1000 Subject: gnu: Add python2-biopython-1.66. * gnu/packages/bioinformatics.scm (python2-biopython-1.66): New variable. --- gnu/packages/bioinformatics.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a8d2cf3ea2..5effc80a4c 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -630,6 +630,20 @@ into separate processes; and more.") (native-inputs `(("python2-setuptools" ,python2-setuptools) ,@(package-native-inputs base)))))) +;; An outdated version of biopython is required for seqmagick, see +;; https://github.com/fhcrc/seqmagick/issues/59 +;; When that issue has been resolved this package should be removed. +(define python2-biopython-1.66 + (package + (inherit python2-biopython) + (version "1.66") + (source (origin + (method url-fetch) + (uri (pypi-uri "biopython" version)) + (sha256 + (base32 + "1gdv92593klimg22icf5j9by7xiq86jnwzkpz4abaa05ylkdf6hp")))))) + (define-public bpp-core ;; The last release was in 2014 and the recommended way to install from source ;; is to clone the git repository, so we do this. -- cgit v1.2.3 From 7bba95b769e25cd9d1854029a1557d4f97c84235 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 19 Sep 2016 12:18:19 +1000 Subject: gnu: seqmagick: Use BioPython 1.66. * gnu/packages/bioinformatics.scm (seqmagick)[inputs]: Use python2-biopython-1.66 instead of python2-biopython. --- gnu/packages/bioinformatics.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 5effc80a4c..21fc96e033 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4593,7 +4593,11 @@ bioinformatics file formats, sequence alignment, and more.") ;; https://github.com/fhcrc/seqmagick/issues/55 (replace 'check (lambda _ (zero? (system* "nosetests"))))))) (inputs - `(("python-biopython" ,python2-biopython))) + ;; biopython-1.66 is required due to + ;; https://github.com/fhcrc/seqmagick/issues/59 + ;; When that issue is resolved the 'python2-biopython-1.66' package + ;; should be removed. + `(("python-biopython" ,python2-biopython-1.66))) (native-inputs `(("python-setuptools" ,python2-setuptools) ("python-nose" ,python2-nose))) -- cgit v1.2.3 From de96ea286d3d2d1f975f72a0f089ea5193db4fdb Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 19 Sep 2016 14:20:34 +1000 Subject: gnu: python-biom-format: Move inputs to propagated-inputs. * gnu/packages/bioinformatics.scm (python-biom-format, python2-biom-format) [inputs]: Move all from here ... [propagated-inputs]: ... to here. --- gnu/packages/bioinformatics.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 21fc96e033..58eb3b3058 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -497,7 +497,7 @@ Python.") (base32 "1n25w3p1rixbpac8iysmzcja6m4ip5r6sz19l8y6wlwi49hxn278")))) (build-system python-build-system) - (inputs + (propagated-inputs `(("python-numpy" ,python-numpy) ("python-scipy" ,python-scipy) ("python-future" ,python-future) -- cgit v1.2.3 From c2c84add5434d9308b77e2f1d225bf31cdce3070 Mon Sep 17 00:00:00 2001 From: ng0 Date: Mon, 19 Sep 2016 08:50:01 +0000 Subject: gnu: racket: Update to 6.6 * gnu/packages/scheme.scm (racket): Update to 6.6. --- gnu/packages/scheme.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 287bcdfe78..4fb0614ca5 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -402,7 +403,7 @@ implementation techniques and as an expository tool.") (define-public racket (package (name "racket") - (version "6.5") + (version "6.6") (source (origin (method url-fetch) (uri (list (string-append "http://mirror.racket-lang.org/installers/" @@ -412,7 +413,7 @@ implementation techniques and as an expository tool.") version "/racket/racket-" version "-src-unix.tgz"))) (sha256 (base32 - "0gvh7i5k87mg1gpqk8gaq50ja9ksbhnvdqn7qqh0n17byidd6999")))) + "1kzdi1n6h6hmz8zd9k8r5a5yp2ryi4w3c2fjm1k6cqicn18cwaxz")))) (build-system gnu-build-system) (arguments '(#:phases -- cgit v1.2.3 From eb24341ffb248c3c5c020be72919e13c8cdc6d18 Mon Sep 17 00:00:00 2001 From: Roel Janssen Date: Thu, 15 Sep 2016 13:37:56 +0200 Subject: gnu: Add r-biocinstaller. * gnu/packages/bioinformatics.scm (r-biocinstaller): New variable. --- gnu/packages/bioinformatics.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 58eb3b3058..39a8577bcf 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5315,6 +5315,25 @@ barplots or heatmaps.") packages.") (license license:artistic2.0))) +(define-public r-biocinstaller + (package + (name "r-biocinstaller") + (version "1.22.3") + (source (origin + (method url-fetch) + (uri (bioconductor-uri "BiocInstaller" version)) + (sha256 + (base32 + "02qkfq6f2b7v9klri6d1nv21r54bywv1zd5x47ka0jhhp946cqpr")))) + (properties + `((upstream-name . "BiocInstaller"))) + (build-system r-build-system) + (home-page "http://bioconductor.org/packages/BiocInstaller") + (synopsis "Install Bioconductor packages") + (description "This package is used to install and update R packages from +Bioconductor, CRAN, and Github.") + (license license:artistic2.0))) + (define-public r-dnacopy (package (name "r-dnacopy") -- cgit v1.2.3 From 6b87c10f581d17260e7b20ae1ac40efed7600a20 Mon Sep 17 00:00:00 2001 From: 宋文武 Date: Sat, 17 Sep 2016 13:38:58 +0800 Subject: gnu: Add Mr. Rescue. * gnu/packages/games.scm (mrrescue): New variable. --- gnu/packages/games.scm | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index d386e2c99f..65e8ef915a 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2856,3 +2856,50 @@ programmers may also add their own favorite language.") application that locks the keyboard and mouse and instead displays bright colors, pictures, and sounds.") (license license:gpl3+))) + +(define-public mrrescue + (package + (name "mrrescue") + (version "1.02e") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/SimonLarsen/mrrescue/releases/" + "download/" version "/" name version ".love")) + (file-name (string-append name "-" version ".love")) + (sha256 + (base32 + "0jwzbwkgp1l5ia6c7s760gmdirbsncp6nfqp7vqdqsfb63la9gl2")))) + (build-system trivial-build-system) + (arguments + '(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (bindir (string-append out "/bin")) + (prog (string-append bindir "/mrrescue")) + (source (assoc-ref %build-inputs "source")) + (bash (string-append (assoc-ref %build-inputs "bash") + "/bin/bash")) + (love (string-append (assoc-ref %build-inputs "love") + "/bin/love"))) + (mkdir-p bindir) + (with-output-to-file prog + (lambda () + (format #t "#!~a~%" bash) + (format #t "exec -a mrrescue \"~a\" \"~a\"~%" love source))) + (chmod prog #o755) + #t)))) + (inputs + `(("bash" ,bash) + ("love" ,love))) + (home-page "http://tangramgames.dk/games/mrrescue") + (synopsis "Arcade-style fire fighting game") + (description + "Mr. Rescue is an arcade styled 2d action game centered around evacuating +civilians from burning buildings. The game features fast paced fire +extinguishing action, intense boss battles, a catchy soundtrack and lots of +throwing people around in pseudo-randomly generated buildings.") + (license (list license:zlib ; for source code + license:cc-by-sa3.0)))) ; for graphics and music assets -- cgit v1.2.3 From 6f27fbd807073aa7df0cd5e80e3ead53441529f1 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 19 Sep 2016 11:11:21 +0300 Subject: gnu: ffmpeg@2.8: Update to 2.8.8. * gnu/packages/video.scm (ffmpeg@2.8): Update to 2.8.8. --- gnu/packages/video.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 6c59fa0fca..68391039e4 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -569,14 +569,14 @@ audio/video codec library.") (define-public ffmpeg-2.8 (package (inherit ffmpeg) - (version "2.8.7") + (version "2.8.8") (source (origin (method url-fetch) (uri (string-append "https://ffmpeg.org/releases/ffmpeg-" version ".tar.xz")) (sha256 (base32 - "0z0mcj2q3ysp9qdn1ks03g5sn2zxyr06vxs4al0m4b5b3in8mglp")))) + "1691bmq8j56rcys09xwvzjq16z25m8vczj5a50gdn7ydm9qjykpr")))) (arguments (substitute-keyword-arguments (package-arguments ffmpeg) ((#:configure-flags flags) -- cgit v1.2.3 From 5de2a99e794a4effde6c7817608e70b47a95e724 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 19 Sep 2016 12:33:06 +0300 Subject: gnu: efl: Update to 1.18.1. * gnu/packages/enlightenment.scm (efl): Update to 1.18.1. --- gnu/packages/enlightenment.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 9de21ad50f..8eb43a7cd9 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -56,7 +56,7 @@ (define-public efl (package (name "efl") - (version "1.18.0") + (version "1.18.1") (source (origin (method url-fetch) (uri (string-append @@ -64,7 +64,7 @@ version ".tar.xz")) (sha256 (base32 - "17mzbjmz8d2vs8p63r1sk3mppl3l2fhxy2jv24dp75lgqbsvp806")))) + "08njx6wd505as1vn0yp4mnmf6mb2v28jsipxxx4zhf78v18d2sqc")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) -- cgit v1.2.3 From bf307a7a54eeca405e5c6ad50a9cbe6b9e10190d Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 19 Sep 2016 13:35:53 +0300 Subject: gnu: efl: Add recommended build flags. * gnu/packages/enlightenment.scm (efl)[inputs]: Add libwebp. [arguments]: Add configure-flags to enable xinput22, image-loader-webp, multisense, opengl with egl support. --- gnu/packages/enlightenment.scm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index 8eb43a7cd9..a1df1367a5 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -82,6 +82,7 @@ ("librsvg" ,librsvg) ("libspectre" ,libspectre) ("libtiff" ,libtiff) + ("libwebp" ,libwebp) ("libx11" ,libx11) ("libxcomposite" ,libxcomposite) ("libxcursor" ,libxcursor) @@ -125,6 +126,11 @@ (arguments `(#:configure-flags '("--disable-silent-rules" "--enable-liblz4" + "--enable-xinput22" + "--enable-image-loader-webp" + "--enable-multisense" + "--with-opengl=es" + "--enable-egl" "--enable-harfbuzz") #:phases (modify-phases %standard-phases -- cgit v1.2.3 From 71654dfdda4890d7a663a36a7fe754b53591aba6 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 19 Sep 2016 13:31:06 +0900 Subject: services: Add 'simple-service'. * gnu/services.scm (simple-service): New procedure. * doc/guix.texi (Service Reference): Document it. --- doc/guix.texi | 19 +++++++++++++++++++ gnu/services.scm | 8 ++++++++ 2 files changed, 27 insertions(+) diff --git a/doc/guix.texi b/doc/guix.texi index 7a86a2f0ac..808fbdceb4 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -11348,6 +11348,25 @@ the extension; it must return a valid value for the target service. Return true if @var{obj} is a service extension. @end deffn +Occasionally, you might want to simply extend an existing service. This +involves creating a new service type and specifying the extension of +interest, which can be verbose; the @code{simple-service} procedure +provides a shorthand for this. + +@deffn {Scheme Procedure} simple-service @var{name} @var{target} @var{value} +Return a service that extends @var{target} with @var{value}. This works +by creating a singleton service type @var{name}, of which the returned +service is an instance. + +For example, this extends mcron (@pxref{Scheduled Job Execution}) with +an additional job: + +@example +(simple-service 'my-mcron-job mcron-service-type + #~(job '(next-hour (3)) "guix gc -F 2G")) +@end example +@end deffn + At the core of the service abstraction lies the @code{fold-services} procedure, which is responsible for ``compiling'' a list of services down to a single directory that contains everything needed to boot and diff --git a/gnu/services.scm b/gnu/services.scm index 5479bfae19..7e322c50b0 100644 --- a/gnu/services.scm +++ b/gnu/services.scm @@ -50,6 +50,7 @@ service-kind service-parameters + simple-service modify-services service-back-edges fold-services @@ -141,6 +142,13 @@ (type service-kind) (parameters service-parameters)) +(define (simple-service name target value) + "Return a service that extends TARGET with VALUE. This works by creating a +singleton service type NAME, of which the returned service is an instance." + (let* ((extension (service-extension target identity)) + (type (service-type (name name) + (extensions (list extension))))) + (service type value))) (define-syntax %modify-service (syntax-rules (=>) -- cgit v1.2.3 From 4a84a48742ab9e15d7d527c3d965f907ec40672c Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 19 Sep 2016 23:36:17 +0900 Subject: services: console-font: A single service handles all the VTs. * gnu/services/base.scm (%default-console-font): New variable. (console-font-shepherd-services): New procedure. (console-font-service-type): Change to use 'service-type'. (console-font-service): Rewrite using 'simple-service'. (%base-services): Use a single CONSOLE-FONT-SERVICE-TYPE instance. * gnu/system/install.scm (installation-services): Likewise. --- gnu/services/base.scm | 80 +++++++++++++++++++++++++++++--------------------- gnu/system/install.scm | 10 +++---- 2 files changed, 51 insertions(+), 39 deletions(-) diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 4c1c481453..afbecdb47e 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -58,6 +58,8 @@ session-environment-service-type host-name-service console-keymap-service + %default-console-font + console-font-service-type console-font-service udev-configuration @@ -635,37 +637,51 @@ strings or string-valued gexps." "Return a service to load console keymaps from @var{files}." (service console-keymap-service-type files)) -(define console-font-service-type - (shepherd-service-type - 'console-font - (match-lambda - ((tty font) - (let ((device (string-append "/dev/" tty))) - (shepherd-service - (documentation "Load a Unicode console font.") - (provision (list (symbol-append 'console-font- - (string->symbol tty)))) - - ;; Start after mingetty has been started on TTY, otherwise the settings - ;; are ignored. - (requirement (list (symbol-append 'term- - (string->symbol tty)))) +(define %default-console-font + ;; Note: 'LatGrkCyr-8x16' has the advantage of providing three common + ;; scripts as well as glyphs for em dash, quotation marks, and other Unicode + ;; codepoints notably found in the UTF-8 manual. + "LatGrkCyr-8x16") + +(define (console-font-shepherd-services tty+font) + "Return a list of Shepherd services for each pair in TTY+FONT." + (map (match-lambda + ((tty . font) + (let ((device (string-append "/dev/" tty))) + (shepherd-service + (documentation "Load a Unicode console font.") + (provision (list (symbol-append 'console-font- + (string->symbol tty)))) + + ;; Start after mingetty has been started on TTY, otherwise the settings + ;; are ignored. + (requirement (list (symbol-append 'term- + (string->symbol tty)))) + + (start #~(lambda _ + (and #$(unicode-start device) + (zero? + (system* (string-append #$kbd "/bin/setfont") + "-C" #$device #$font))))) + (stop #~(const #t)) + (respawn? #f))))) + tty+font)) - (start #~(lambda _ - (and #$(unicode-start device) - (zero? - (system* (string-append #$kbd "/bin/setfont") - "-C" #$device #$font))))) - (stop #~(const #t)) - (respawn? #f))))))) +(define console-font-service-type + (service-type (name 'console-fonts) + (extensions + (list (service-extension shepherd-root-service-type + console-font-shepherd-services))) + (compose concatenate) + (extend append))) (define* (console-font-service tty #:optional (font "LatGrkCyr-8x16")) - "Return a service that sets up Unicode support in @var{tty} and loads + "This procedure is deprecated in favor of @code{console-font-service-type}. + +Return a service that sets up Unicode support in @var{tty} and loads @var{font} for that tty (fonts are per virtual console in Linux.)" - ;; Note: 'LatGrkCyr-8x16' has the advantage of providing three common - ;; scripts as well as glyphs for em dash, quotation marks, and other Unicode - ;; codepoints notably found in the UTF-8 manual. - (service console-font-service-type (list tty font))) + (simple-service (symbol-append 'console-font- (string->symbol tty)) + console-font-service-type `((,tty . ,font)))) (define %default-motd (plain-file "motd" "This is the GNU operating system, welcome!\n\n")) @@ -1497,12 +1513,10 @@ This service is not part of @var{%base-services}." ;; Convenience variable holding the basic services. (list (login-service) - (console-font-service "tty1") - (console-font-service "tty2") - (console-font-service "tty3") - (console-font-service "tty4") - (console-font-service "tty5") - (console-font-service "tty6") + (service console-font-service-type + (map (lambda (tty) + (cons tty %default-console-font)) + '("tty1" "tty2" "tty3" "tty4" "tty5" "tty6"))) (mingetty-service (mingetty-configuration (tty "tty1"))) diff --git a/gnu/system/install.scm b/gnu/system/install.scm index b28925f432..dfa003f256 100644 --- a/gnu/system/install.scm +++ b/gnu/system/install.scm @@ -313,12 +313,10 @@ You have been warned. Thanks for being so brave. (cow-store-service) ;; Install Unicode support and a suitable font. - (console-font-service "tty1") - (console-font-service "tty2") - (console-font-service "tty3") - (console-font-service "tty4") - (console-font-service "tty5") - (console-font-service "tty6") + (service console-font-service-type + (map (lambda (tty) + (cons tty %default-console-font)) + '("tty1" "tty2" "tty3" "tty4" "tty5" "tty6"))) ;; To facilitate copy/paste. (gpm-service) -- cgit v1.2.3 From dfdaea32e90fd226aa98028a196fca3d2d371a94 Mon Sep 17 00:00:00 2001 From: Hartmut Goebel Date: Thu, 15 Sep 2016 22:07:29 +0200 Subject: gnu: python-django, python2-django: Fix propagated- and native-inputs. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit setuptools is a run-time dependency (sic!), all others are required for testing only. * gnu/packages/django.scm (python-django) [propagated-inputs, native-inputs]: Exchange them. Move tzdata to new native-inputs. Enhance comments. (python2-django) [propagated-inputs] change into native-inputs. Enhance comment. Signed-off-by: Ludovic Courtès --- gnu/packages/django.scm | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 923c4e2f2b..8f0d2add9e 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -55,16 +55,17 @@ (string-append ".:" (getenv "PYTHONPATH"))) (zero? (system* "python" "tests/runtests.py"))))))) ;; TODO: Install extras/django_bash_completion. - (native-inputs + (propagated-inputs ;; Django uses 'pkg_resources' (part of setuptools) to locate templates ;; at run-time. - `(("python-setuptools" ,python-setuptools) - ("tzdata", tzdata))) - (propagated-inputs - `( ;; bcrypt and argon2-cffi are extra requirements not yet in guix + `(("python-setuptools" ,python-setuptools))) + (native-inputs + `(("tzdata", tzdata) + ;; bcrypt and argon2-cffi are extra requirements not yet in guix ;;("python-argon2-cffi" ,python-argon2-cffi) ; >= 16.1.0 ;;("python-bcrypt" ,python-bcrypt) ; not py-bcrypt! - ;; Taken from tests/requirements/py3.txt. + ;; Remaining packages are test requirements taken from + ;; tests/requirements/py3.txt ("python-docutils" ,python-docutils) ;; optional for tests: ("python-geoip2" ,python-geoip2) ("python-jinja2" ,python-jinja2) ; >= 2.7 @@ -90,8 +91,9 @@ to the @dfn{don't repeat yourself} (DRY) principle.") (let ((base (package-with-python2 (strip-python2-variant python-django)))) (package (inherit base) - (propagated-inputs - `(;; Required for Python 2: enum34 and mock. + (native-inputs + `(;; Test requirements for Python 2 taken from + ;; tests/requirements/py3.txt: enum34 and mock. ("python2-enum34" ,python2-enum34) ("python2-mock" ,python2-mock) ;; When adding memcached mind: for Python 2 memcached <= 1.53 is -- cgit v1.2.3 From d404a6f9711c8dcc1cc6cf55d8c07901aa450192 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Sun, 18 Sep 2016 21:47:29 -0400 Subject: gnu: gnupg: Fix test failure. * gnu/packages/patches/gnupg-fix-expired-test.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. * gnu/packages/gnupg.scm (gnupg): Use it. --- gnu/local.mk | 1 + gnu/packages/gnupg.scm | 1 + gnu/packages/patches/gnupg-fix-expired-test.patch | 78 +++++++++++++++++++++++ 3 files changed, 80 insertions(+) create mode 100644 gnu/packages/patches/gnupg-fix-expired-test.patch diff --git a/gnu/local.mk b/gnu/local.mk index 407612155f..a7566382dc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -541,6 +541,7 @@ dist_patch_DATA = \ %D%/packages/patches/gmp-faulty-test.patch \ %D%/packages/patches/gnome-tweak-tool-search-paths.patch \ %D%/packages/patches/gnucash-price-quotes-perl.patch \ + %D%/packages/patches/gnupg-fix-expired-test.patch \ %D%/packages/patches/gobject-introspection-absolute-shlib-path.patch \ %D%/packages/patches/gobject-introspection-cc.patch \ %D%/packages/patches/gobject-introspection-girepository.patch \ diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index c78e9d87ec..0eaeb45bb9 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -243,6 +243,7 @@ compatible to GNU Pth.") (method url-fetch) (uri (string-append "mirror://gnupg/gnupg/gnupg-" version ".tar.bz2")) + (patches (search-patches "gnupg-fix-expired-test.patch")) (sha256 (base32 "0xcn46vcb5x5qx0bc803vpzhzhnn6wfhp7x71w9n1ahx4ak877ag")))) diff --git a/gnu/packages/patches/gnupg-fix-expired-test.patch b/gnu/packages/patches/gnupg-fix-expired-test.patch new file mode 100644 index 0000000000..ac2564f50c --- /dev/null +++ b/gnu/packages/patches/gnupg-fix-expired-test.patch @@ -0,0 +1,78 @@ +Fix a test that has an expiration date of 2016-09-17: + +https://bugs.gnupg.org/gnupg/issue2393 + +Patch adapted from upstream source repository: + +https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=commit;h=e584d6468a2e72cd01e55f46104f9f96b56c0b66 + +The patch has been altered by commenting out a diff that does not apply +to the version of GnuPG that we are applying it to, 2.1.13. This is +what the patch author refers to below with "This commit includes changes +to the old test as well, for those who need to backport it." We keep the +old test and comment out the new test. + +From e584d6468a2e72cd01e55f46104f9f96b56c0b66 Mon Sep 17 00:00:00 2001 +From: Justus Winter +Date: Thu, 23 Jun 2016 17:24:23 +0200 +Subject: [PATCH] tests/openpgp: Fake the system time for the tofu test. + +The keys in the tofu test are set to expire on 2016-09-17. Fake the +system time for this test. + +This commit includes changes to the old test as well, for those who +need to backport it. + +* tests/openpgp/gpg-agent.conf.tmpl: Drop trailing newlines. +* tests/openpgp/tofu.scm: Fake system time. +* tests/openpgp/tofu.test: Likewise. + +GnuPG-bug-id: 2393 +Signed-off-by: Justus Winter +--- + tests/openpgp/gpg-agent.conf.tmpl | 2 -- + tests/openpgp/tofu.scm | 4 +++- + tests/openpgp/tofu.test | 3 +++ + 3 files changed, 6 insertions(+), 3 deletions(-) + +diff --git a/tests/openpgp/gpg-agent.conf.tmpl b/tests/openpgp/gpg-agent.conf.tmpl +index b3cb54f..70e1633 100644 +--- a/tests/openpgp/gpg-agent.conf.tmpl ++++ b/tests/openpgp/gpg-agent.conf.tmpl +@@ -1,4 +1,2 @@ + allow-preset-passphrase + no-grab +- +- +#diff --git a/tests/openpgp/tofu.scm b/tests/openpgp/tofu.scm +#index 24fa9df..38b6a0f 100755 +#--- a/tests/openpgp/tofu.scm +#+++ b/tests/openpgp/tofu.scm +#@@ -19,7 +19,9 @@ +# +# (load (with-path "defs.scm")) +# +#-(define GPG `(,(tool 'gpg) --no-permission-warning)) ;; w/o --always-trust +#+ ;; Redefine GPG without --always-trust and a fixed time. +#+(define GPG `(,(tool 'gpg) --no-permission-warning +#+ --faked-system-time=1466684990)) +# (define GNUPGHOME (getenv "GNUPGHOME")) +# (if (string=? "" GNUPGHOME) +# (error "GNUPGHOME not set")) +diff --git a/tests/openpgp/tofu.test b/tests/openpgp/tofu.test +index 18c1756..0d34af4 100755 +--- a/tests/openpgp/tofu.test ++++ b/tests/openpgp/tofu.test +@@ -4,6 +4,9 @@ + + # set -x + ++# Redefine GPG with a fixed time. ++GPG="$GPG --faked-system-time=1466684990" ++ + KEYS="2183839A BC15C85A EE37CF96" + + # Make sure $srcdir is set. +-- +2.10.0 + -- cgit v1.2.3 From 8120205ccd4f2d835552ed3bda5e9a9a533078df Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Mon, 19 Sep 2016 23:22:36 +0300 Subject: gnu: python2-cov-core: Use strip-python2-variant. * gnu/packages/python.scm (python-cov-core)[properties]: New field, declare python2-variant. (python2-cov-core): Use strip-python2-variant. --- gnu/packages/python.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 038237d6fd..96589fc165 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2154,10 +2154,11 @@ executed.") (description "This is a library package for use by pytest-cov, nose-cov and nose2-cov. It is useful for developing coverage plugins for these testing frameworks.") - (license license:expat))) + (license license:expat) + (properties `((python2-variant . ,(delay python2-cov-core)))))) (define-public python2-cov-core - (let ((cov-core (package-with-python2 python-cov-core))) + (let ((cov-core (package-with-python2 (strip-python2-variant python-cov-core)))) (package (inherit cov-core) (native-inputs `(("python2-setuptools" ,python2-setuptools) -- cgit v1.2.3 From 006a832ccb7fb6bc7e74bc697137f73c65a567f5 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 18 Sep 2016 22:48:17 +0200 Subject: gnu: emacs-org: Update to 20160912. * gnu/packages/emacs.scm (emacs-org): Update to 20160912. Signed-off-by: Efraim Flashner --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index d8ffacd03b..e53525983b 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -3017,14 +3017,14 @@ passive voice.") (define-public emacs-org (package (name "emacs-org") - (version "20160815") + (version "20160912") (source (origin (method url-fetch) (uri (string-append "http://orgmode.org/elpa/org-" version ".tar")) (sha256 (base32 - "0k9pa13kpmpi6irmbavxffgqfanhjnijz4mkmmi0zp7kgjfbaliw")))) + "1xawj0pdvqrgzlixxgbfa01gzajfaz47anr5m4aw035rhc6s02r7")))) (build-system emacs-build-system) (home-page "http://orgmode.org/") (synopsis "Outline-based notes management and organizer") -- cgit v1.2.3 From 55ac38f986256266ab71316fe3d8bec9c1496d0e Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 19 Sep 2016 18:37:22 -0400 Subject: gnu: linux-libre@4.1: Update to 4.1.33. * gnu/packages/linux.scm (linux-libre-4.1): Update to 4.1.33. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 3e4237720b..96a166d56d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -330,8 +330,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.1 - (make-linux-libre "4.1.31" - "0grffah921k136w1qwcswxv6m810s8q54nr2rk7kyqka3a1b81yw" + (make-linux-libre "4.1.33" + "1s45vymx7zp7qwj4rx63dpj9xwm8hv5fd9nm27wqvmgnmd3q548h" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From a8b9c575aab3170a5a0e139cd7f6dbda50cef943 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 19 Sep 2016 18:40:59 -0400 Subject: gnu: linux-libre@4.4: Update to 4.4.21. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.21. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 96a166d56d..587193842f 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -324,8 +324,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.20" - "1fi0pyyzcf643vdsss0d9ld6jqyxw0k76r0a5vpd4mv3dcl37yyq" + (make-linux-libre "4.4.21" + "0wl57p045yazccl5x35ibajv8s05zf0qvi3l8sas12lz5bji3ajp" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From 6509a1e1e044d15d6056040b6f1e5b8f250b5f0c Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 19 Sep 2016 18:42:29 -0400 Subject: gnu: linux-libre: Update to 4.7.4. * gnu/packages/linux.scm (linux-libre) (%linux-libre-version, %linux-libre-hash): Update to 4.7.4. --- gnu/packages/linux.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 587193842f..5e9263e89c 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -318,8 +318,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) (define-public linux-libre - (make-linux-libre "4.7.3" - "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6" + (make-linux-libre "4.7.4" + "16nmc5l7dxd8f4g2avlskghcn4mw8msk31r6p4piqm3xc4sws7f6" %intel-compatible-systems #:configuration-file kernel-config)) @@ -336,8 +336,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) ;; Avoid rebuilding kernel variants when there is a minor version bump. -(define %linux-libre-version "4.7.3") -(define %linux-libre-hash "18sy1vh4x66hsk0qbq8g5299my082d530zm8c7xnbakq7350igi6") +(define %linux-libre-version "4.7.4") +(define %linux-libre-hash "16nmc5l7dxd8f4g2avlskghcn4mw8msk31r6p4piqm3xc4sws7f6") (define-public linux-libre-arm-generic (make-linux-libre %linux-libre-version -- cgit v1.2.3 From 846b2534df0138a72fe8ee6a541f97de59697cb0 Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Mon, 19 Sep 2016 23:45:25 -0400 Subject: gnu: emacs: Update to 25.1. * gnu/packages/emacs.scm (emacs): Update to 25.1. --- gnu/packages/emacs.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index e53525983b..57fe8a9fd4 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès -;;; Copyright © 2014, 2015 Mark H Weaver +;;; Copyright © 2014, 2015, 2016 Mark H Weaver ;;; Copyright © 2014, 2015, 2016 Alex Kost ;;; Copyright © 2015 Federico Beffa ;;; Copyright © 2015, 2016 Ricardo Wurmus @@ -80,14 +80,14 @@ (define-public emacs (package (name "emacs") - (version "24.5") + (version "25.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/emacs/emacs-" version ".tar.xz")) (sha256 (base32 - "0kn3rzm91qiswi0cql89kbv6mqn27rwsyjfb8xmwy9m5s8fxfiyx")) + "0cwgyiyymnx4xdg99dm2drfxcyhy2jmyf0rkr9fwj9mwwf77kwhr")) (patches (search-patches "emacs-exec-path.patch" "emacs-fix-scheme-indent-function.patch" "emacs-source-date-epoch.patch")) -- cgit v1.2.3 From 92330ba90d782b3b215b4521d93f5869a70e51e0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 20 Sep 2016 11:32:08 +0300 Subject: gnu: efl: Remove hardcoding pulseaudio and libsndfile. * gnu/packages/enlightenment.scm (efl)[arguments]: Remove custom phase to hardlink to the locations of pulseaudio and libsndfile. --- gnu/packages/enlightenment.scm | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/gnu/packages/enlightenment.scm b/gnu/packages/enlightenment.scm index a1df1367a5..e8bd387ef3 100644 --- a/gnu/packages/enlightenment.scm +++ b/gnu/packages/enlightenment.scm @@ -131,23 +131,7 @@ "--enable-multisense" "--with-opengl=es" "--enable-egl" - "--enable-harfbuzz") - #:phases - (modify-phases %standard-phases - ;; ecore_audio cannot find pulseaudio or libsndfile when compiled. - ;; Starting in version 1.18.0, these two libraries are dlopened so - ;; we hardcode their locations as a temporary workaround. - (add-after 'configure 'hardlink-dlopen-files - (lambda _ - (substitute* "src/lib/ecore_audio/ecore_audio.c" - (("libpulse.so.0") - (string-append (assoc-ref %build-inputs "pulseaudio") - "/lib/libpulse.so.0"))) - (substitute* "src/lib/ecore_audio/ecore_audio.c" - (("libsndfile.so.1") - (string-append (assoc-ref %build-inputs "libsndfile") - "/lib/libsndfile.so.1"))) - #t))))) + "--enable-harfbuzz"))) (home-page "https://www.enlightenment.org") (synopsis "Enlightenment Foundation Libraries") (description -- cgit v1.2.3 From 232ccbefc05aa7fbd3ea8b8f71a65bafc178a28a Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 20 Sep 2016 17:38:59 +0900 Subject: services: Use 'source-module-closure' for (gnu build activation). * gnu/services.scm (activation-script)[%modules]: Remove. Use 'source-module-closure' instead. --- gnu/services.scm | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/gnu/services.scm b/gnu/services.scm index 7e322c50b0..693a7f8001 100644 --- a/gnu/services.scm +++ b/gnu/services.scm @@ -25,6 +25,7 @@ #:use-module (guix profiles) #:use-module (guix sets) #:use-module (guix ui) + #:use-module (guix modules) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (srfi srfi-1) @@ -320,16 +321,6 @@ ACTIVATION-SCRIPT-TYPE." (define (activation-script gexps) "Return the system's activation script, which evaluates GEXPS." - (define %modules - '((gnu build activation) - (gnu build linux-boot) - (gnu build linux-modules) - (gnu build file-systems) - (guix build utils) - (guix build syscalls) - (guix build bournish) - (guix elf))) - (define (service-activations) ;; Return the activation scripts for SERVICES. (mapm %store-monad @@ -338,7 +329,8 @@ ACTIVATION-SCRIPT-TYPE." (mlet* %store-monad ((actions (service-activations))) (gexp->file "activate" - (with-imported-modules %modules + (with-imported-modules (source-module-closure + '((gnu build activation))) #~(begin (use-modules (gnu build activation)) -- cgit v1.2.3 From e465d9e19087ab150f7e31f21c09e4a147b93b36 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 20 Sep 2016 17:51:39 +0900 Subject: ui: Do not shadow '_' where it's used as a literal syntax match. Fixes compilation with Guile 2.1. Reported by Mu Lei. * guix/ui.scm (report-load-error) (warn-about-load-error, read/eval-package-expression): Use 'rest' instead of '_' as the pattern variable name. * gnu/packages.scm (%find-package): Likewise. * guix/scripts/build.scm (transform-package-inputs): Likewise. * guix/scripts/hash.scm (guix-hash): Likewise. * guix/scripts/import/gnu.scm (%options, guix-import-gnu): Likewise. * guix/scripts/import/nix.scm (guix-import-nix): Likewise. * guix/scripts/offload.scm (build-machines): Likewise. * guix/scripts/refresh.scm (%options): Likewise. * guix/scripts/substitute.scm (narinfo-signature->canonical-sexp): Likewise. --- gnu/packages.scm | 2 +- guix/scripts/build.scm | 2 +- guix/scripts/hash.scm | 2 +- guix/scripts/import/gnu.scm | 6 +++--- guix/scripts/import/nix.scm | 4 ++-- guix/scripts/offload.scm | 4 ++-- guix/scripts/refresh.scm | 2 +- guix/scripts/substitute.scm | 2 +- guix/ui.scm | 8 ++++---- 9 files changed, 16 insertions(+), 16 deletions(-) diff --git a/gnu/packages.scm b/gnu/packages.scm index 5d60423a3a..f55c294a18 100644 --- a/gnu/packages.scm +++ b/gnu/packages.scm @@ -313,7 +313,7 @@ use NAME@VERSION instead~%"))) new) (#f pkg))) - (_ + (x (if version (leave (_ "~A: package not found for version ~a~%") name version) (if (not fallback?) diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm index 86b95b4075..a9f649d2ee 100644 --- a/guix/scripts/build.scm +++ b/guix/scripts/build.scm @@ -195,7 +195,7 @@ of \"guile\"." ((old new) (cons (specification->package old) (specification->package new))) - (_ + (x (leave (_ "invalid replacement specification: ~s~%") spec)))) replacement-specs)) diff --git a/guix/scripts/hash.scm b/guix/scripts/hash.scm index a57602ab51..a6eced92fb 100644 --- a/guix/scripts/hash.scm +++ b/guix/scripts/hash.scm @@ -149,5 +149,5 @@ and 'hexadecimal' can be used as well).\n")) (lambda args (leave (_ "~a~%") (strerror (system-error-errno args)))))) - (_ + (x (leave (_ "wrong number of arguments~%")))))) diff --git a/guix/scripts/import/gnu.scm b/guix/scripts/import/gnu.scm index 92bd8305ea..66861f5837 100644 --- a/guix/scripts/import/gnu.scm +++ b/guix/scripts/import/gnu.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2014 Ludovic Courtès +;;; Copyright © 2014, 2016 Ludovic Courtès ;;; ;;; This file is part of GNU Guix. ;;; @@ -68,7 +68,7 @@ Return a package declaration template for PACKAGE, a GNU package.\n")) ((or "interactive" "always" "never") (alist-cons 'key-download (string->symbol arg) result)) - (_ + (x (leave (_ "unsupported policy: ~a~%") arg))))) %standard-import-options)) @@ -99,7 +99,7 @@ Return a package declaration template for PACKAGE, a GNU package.\n")) (with-error-handling (gnu->guix-package name #:key-download (assoc-ref opts 'key-download)))) - (_ + (x (leave (_ "wrong number of arguments~%")))))) ;;; gnu.scm ends here diff --git a/guix/scripts/import/nix.scm b/guix/scripts/import/nix.scm index dba053b313..05e6e4b85d 100644 --- a/guix/scripts/import/nix.scm +++ b/guix/scripts/import/nix.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013 Ludovic Courtès +;;; Copyright © 2012, 2013, 2016 Ludovic Courtès ;;; Copyright © 2014 David Thompson ;;; ;;; This file is part of GNU Guix. @@ -86,5 +86,5 @@ Import and convert the Nix expression ATTRIBUTE of NIXPKGS.\n")) (format #t ";; converted from ~a:~a~%~%" (location-file loc) (location-line loc)) expr)) - (_ + (x (leave (_ "wrong number of arguments~%")))))) diff --git a/guix/scripts/offload.scm b/guix/scripts/offload.scm index 7db0c9d610..b278f1e313 100644 --- a/guix/scripts/offload.scm +++ b/guix/scripts/offload.scm @@ -118,7 +118,7 @@ determined." (primitive-load file)))) (lambda args (match args - (('system-error . _) + (('system-error . rest) (let ((err (system-error-errno args))) ;; Silently ignore missing file since this is a common case. (if (= ENOENT err) @@ -129,7 +129,7 @@ determined." (let ((loc (source-properties->location properties))) (leave (_ "~a: ~a~%") (location->string loc) message))) - (_ + (x (leave (_ "failed to load machine file '~a': ~s~%") file args)))))) diff --git a/guix/scripts/refresh.scm b/guix/scripts/refresh.scm index b00ac98c96..84e2a8f2a6 100644 --- a/guix/scripts/refresh.scm +++ b/guix/scripts/refresh.scm @@ -105,7 +105,7 @@ ((or "interactive" "always" "never") (alist-cons 'key-download (string->symbol arg) result)) - (_ + (x (leave (_ "unsupported policy: ~a~%") arg))))) diff --git a/guix/scripts/substitute.scm b/guix/scripts/substitute.scm index 8827c45fb8..21e0613a8a 100755 --- a/guix/scripts/substitute.scm +++ b/guix/scripts/substitute.scm @@ -300,7 +300,7 @@ Otherwise return #f." (define (narinfo-signature->canonical-sexp str) "Return the value of a narinfo's 'Signature' field as a canonical sexp." (match (string-split str #\;) - ((version _ sig) + ((version host-name sig) (let ((maybe-number (string->number version))) (cond ((not (number? maybe-number)) (leave (_ "signature version must be a number: ~s~%") diff --git a/guix/ui.scm b/guix/ui.scm index 452d16308e..eb85df3b18 100644 --- a/guix/ui.scm +++ b/guix/ui.scm @@ -247,7 +247,7 @@ messages." "Report the failure to load FILE, a user-provided Scheme file. ARGS is the list of arguments received by the 'throw' handler." (match args - (('system-error . _) + (('system-error . rest) (let ((err (system-error-errno args))) (report-error (_ "failed to load '~a': ~a~%") file (strerror err)))) (('syntax-error proc message properties form . rest) @@ -264,7 +264,7 @@ ARGS is the list of arguments received by the 'throw' handler." "Report the failure to load FILE, a user-provided Scheme file, without exiting. ARGS is the list of arguments received by the 'throw' handler." (match args - (('system-error . _) + (('system-error . rest) (let ((err (system-error-errno args))) (warning (_ "failed to load '~a': ~a~%") file (strerror err)))) (('syntax-error proc message properties form . rest) @@ -409,7 +409,7 @@ interpreted." ("ZB" (expt 10 21)) ("YB" (expt 10 24)) ("" 1) - (_ + (x (leave (_ "unknown unit: ~a~%") unit))))))) (define (call-with-error-handling thunk) @@ -535,7 +535,7 @@ similar." error." (match (read/eval str) ((? package? p) p) - (_ + (x (leave (_ "expression ~s does not evaluate to a package~%") str)))) -- cgit v1.2.3 From 9d126aa2b504bb9fad536eac186805ff623e96be Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 20 Sep 2016 23:36:53 +0900 Subject: build: Allow builds with Guile 2.2. Reported by Mu Lei. * configure.ac: Use 'GUILE_PKG', allowing 2.2. Use 'GUILE_PROGS' instead of 'AC_PATH_PROG'. --- configure.ac | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/configure.ac b/configure.ac index 84287e4289..3b33f851e7 100644 --- a/configure.ac +++ b/configure.ac @@ -74,14 +74,22 @@ dnl We require pkg.m4 (from pkg-config) and guile.m4 (from Guile.) dnl Make sure they are available. m4_pattern_forbid([PKG_CHECK_MODULES]) m4_pattern_forbid([GUILE_MODULE_AVAILABLE]) +m4_pattern_forbid([^GUILE_P$]) -PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.7]) -AC_PATH_PROG([GUILE], [guile]) -AC_PATH_PROG([GUILD], [guild]) +dnl Search for 'guile' and 'guild'. Prefer 2.0 until the 2.2 upgrade is +dnl complete. +GUILE_PKG([2.0 2.2]) +GUILE_PROGS if test "x$GUILD" = "x"; then AC_MSG_ERROR(['guild' binary not found; please check your guile-2.x installation.]) fi +if test "x$GUILE_EFFECTIVE_VERSION" = "x2.0"; then + PKG_CHECK_MODULES([GUILE], [guile-2.0 >= 2.0.7]) +else + AC_MSG_WARN([Guile $GUILE_EFFECTIVE_VERSION is not fully supported!]) +fi + dnl guile-json is used for the PyPI package importer GUILE_MODULE_AVAILABLE([have_guile_json], [(json)]) AM_CONDITIONAL([HAVE_GUILE_JSON], [test "x$have_guile_json" = "xyes"]) -- cgit v1.2.3 From be86b7adbc18b4861e5e3493799ab7bb41556640 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sun, 11 Sep 2016 00:03:10 +0200 Subject: gnu: Add bind * gnu/packags/dns.scm (bind): New variable, (bind-utils): Remove. --- gnu/packages/dns.scm | 80 ++++++++++++++++++++++++++++++---------------------- 1 file changed, 46 insertions(+), 34 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 819343ad42..57fd183287 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Mark H Weaver ;;; Copyright © 2016 Ricardo Wurmus ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016 John Darrington ;;; ;;; This file is part of GNU Guix. ;;; @@ -63,56 +64,67 @@ and BOOTP/TFTP for network booting of diskless machines.") ;; Source files only say GPL2 and GPL3 are allowed. (license (list license:gpl2 license:gpl3)))) -(define-public bind-utils +(define-public bind (package - (name "bind-utils") - (version "9.10.4") + (name "bind") + (version "9.10.4-P2") (source (origin (method url-fetch) - (uri (string-append "http://ftp.isc.org/isc/bind9/" version - "/bind-" version ".tar.gz")) + (uri (string-append + "ftp://ftp.isc.org/isc/bind9/" version "/" name "-" + version ".tar.gz")) (sha256 (base32 - "0mmhzi4483mkak47wj255a36g3v0yilxwfwlbckr1hssinri5m7q")))) + "08s48h5p916ixjiwgar4w6skc20crmg7yj1y7g89c083zvw8lnxk")))) (build-system gnu-build-system) + (outputs `("out" "utils")) (inputs ;; it would be nice to add GeoIP and gssapi once there is package `(("libcap" ,libcap) ("libxml2" ,libxml2) - ("mysql" ,mysql) ("openssl" ,openssl) - ("perl" ,perl) ("p11-kit" ,p11-kit))) + (native-inputs `(("perl" ,perl) + ("net-tools" ,net-tools))) (arguments - `(#:tests? #f ; no test phase implemented - #:configure-flags + `(#:configure-flags (list (string-append "--with-openssl=" (assoc-ref %build-inputs "openssl")) - (string-append "--with-dlz-mysql=" - (assoc-ref %build-inputs "mysql")) (string-append "--with-pkcs11=" (assoc-ref %build-inputs "p11-kit"))) - #:modules ((srfi srfi-1) - (srfi srfi-26) - ,@%gnu-build-system-modules) #:phases - (let ((libs '("dns" "isc" "bind9" "isccfg" "lwres")) - (bins '("dig" "nsupdate"))) - (modify-phases %standard-phases - (replace 'build - (lambda _ - (every (lambda (dir) - (zero? (system* "make" "-C" dir))) - (append (map (cut string-append "lib/" <>) libs) - (map (cut string-append "bin/" <>) bins))))) - (replace 'install - (lambda _ - (every (lambda (dir) - (zero? (system* "make" "-C" dir "install"))) - (map (cut string-append "bin/" <>) bins)))))))) - (home-page "https://www.isc.org/downloads/bind/") - (synopsis "Tools for querying nameservers") - (description - "These tools, included with ISC BIND, are useful for analysis of DNS -issues or verification of configuration.") + (modify-phases %standard-phases + (add-after 'strip 'move-to-utils + (lambda _ + (for-each + (lambda (file) + (let ((target (string-append (assoc-ref %outputs "utils") file)) + (src (string-append (assoc-ref %outputs "out") file))) + (mkdir-p (dirname target)) + (link src target) + (delete-file src))) + '("/bin/dig" "/bin/delv" "/bin/nslookup" "/bin/host" "/bin/nsupdate" + "/share/man/man1/dig.1" + "/share/man/man1/host.1" + "/share/man/man1/nslookup.1" + "/share/man/man1/nsupdate.1")))) + ;; When and if guix provides user namespaces for the build process, + ;; then the following can be uncommented and the subsequent "force-test" + ;; will not be necessary. + ;; + ;; (add-before 'check 'set-up-loopback + ;; (lambda _ + ;; (system "bin/tests/system/ifconfig.sh up"))) + (replace 'check + (lambda _ + (zero? (system* "make" "force-test"))))))) + (synopsis "An implementation of the Domain Name System") + (description "BIND is an implementation of the Domain Name System (DNS) +protocols for the Internet. It is a reference implementation of those +protocols, but it is also production-grade software, suitable for use in +high-volume and high-reliability applications. The name BIND stands for +\"Berkeley Internet Name Domain\", because the software originated in the early +1980s at the University of California at Berkeley.") + (home-page "https://www.isc.org/downloads/bind") (license (list license:isc)))) + -- cgit v1.2.3 From b04a52a6fff5227c40feaca68984fed24dd28711 Mon Sep 17 00:00:00 2001 From: Dylan Jeffers Date: Sat, 13 Aug 2016 12:23:31 -0700 Subject: gnu: Add python-requests-oauthlib. * gnu/packages/python.scm (python-requests-oauthlib, python2-requests-oauthlib): New variables. Signed-off-by: Efraim Flashner --- gnu/packages/python.scm | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 96589fc165..65e6389708 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -28,6 +28,7 @@ ;;; Copyright © 2016 David Craven ;;; Copyright © 2016 Marius Bakke ;;; Copyright © 2016 Stefan Reichoer +;;; Copyright © 2016 Dylan Jeffers ;;; ;;; This file is part of GNU Guix. ;;; @@ -72,6 +73,7 @@ #:use-module (gnu packages multiprecision) #:use-module (gnu packages networking) #:use-module (gnu packages ncurses) + #:use-module (gnu packages openstack) #:use-module (gnu packages password-utils) #:use-module (gnu packages pcre) #:use-module (gnu packages perl) @@ -10033,6 +10035,49 @@ etc.") (inherit base) (name "ptpython2")))) +(define-public python-requests-oauthlib + (package + (name "python-requests-oauthlib") + (version "0.6.2") + (source + (origin + (method url-fetch) + (uri (pypi-uri "requests-oauthlib" version)) + (sha256 + (base32 + "0ykff67sjcl227c23g0rxzfx34rr5bf21kwv0z3zmgk0lfmch7hn")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; removes tests that require network access + (add-before 'check 'pre-check + (lambda _ + (delete-file "tests/test_core.py") + #t))))) + (native-inputs + `(("python-requests-mock" ,python-requests-mock) + ("python-mock" ,python-mock))) + (inputs + `(("python-oauthlib" ,python-oauthlib) + ("python-requests" ,python-requests))) + (home-page + "https://github.com/requests/requests-oauthlib") + (synopsis + "OAuthlib authentication support for Requests") + (description + "Requests-OAuthlib uses the Python Requests and OAuthlib libraries to +provide an easy-to-use Python interface for building OAuth1 and OAuth2 clients.") + (license license:isc) + (properties `((python2-variant . ,(delay python2-requests-oauthlib)))))) + +(define-public python2-requests-oauthlib + (let ((base (package-with-python2 (strip-python2-variant python-requests-oauthlib)))) + (package + (inherit base) + (native-inputs `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + (define-public python-stem (package (name "python-stem") -- cgit v1.2.3 From e6d58734b6037640d7b1a04fe3a1c2fa6cbc203f Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 20 Sep 2016 21:41:14 +0300 Subject: gnu: chess: Update to 6.2.3. * gnu/packages/games.scm (chess): Update to 6.2.3. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 65e8ef915a..5ccefcb4fc 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -326,7 +326,7 @@ asynchronously and at a user-defined speed.") (define-public chess (package (name "chess") - (version "6.2.2") + (version "6.2.3") (source (origin (method url-fetch) @@ -334,7 +334,7 @@ asynchronously and at a user-defined speed.") ".tar.gz")) (sha256 (base32 - "1a41ag03q66pwy3pjrmbxxjpzi9fcaiiaiywd7m9v25mxqac2xkp")))) + "10hvnfhj9bkpz80x20jgxyqvgvrcgfdp8sfcbcrf1dgjn9v936bq")))) (build-system gnu-build-system) (home-page "http://www.gnu.org/software/chess") (synopsis "Full chess implementation") -- cgit v1.2.3 From c0d47cadea6fc5f968e982b2373ce1347bcc6988 Mon Sep 17 00:00:00 2001 From: doncatnip Date: Thu, 1 Sep 2016 23:08:28 +0200 Subject: gnu: lua: Use MYCFLAGS instead of CFLAGS. * gnu/packages/lua.scm (lua)[arguments]: Use MYCFLAGS instead of CFLAGS and remove conflicting -DLUA_USE_POSIX since -DLUA_USE_LINUX is passed implicitly for build target "linux". Signed-off-by: Leo Famulari --- gnu/packages/lua.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index 274330fd3d..f2e9da20fd 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -51,7 +51,7 @@ (srfi srfi-1)) #:test-target "test" #:make-flags - '("CFLAGS=-fPIC -DLUA_DL_DLOPEN -DLUA_USE_POSIX" + '("MYCFLAGS=-fPIC -DLUA_DL_DLOPEN" "linux") #:phases (modify-phases %standard-phases -- cgit v1.2.3 From 03d8505f144a8e35c39f9e634d9aecf21326e5a7 Mon Sep 17 00:00:00 2001 From: doncatnip Date: Thu, 1 Sep 2016 23:53:32 +0200 Subject: gnu: lua: Add lua-lgi. * gnu/packages/lua.scm (lua-lgi): New variable. Signed-off-by: Leo Famulari --- gnu/packages/lua.scm | 81 +++++++++++++++++++++++++++++++++++++++++++++++++++- 1 file changed, 80 insertions(+), 1 deletion(-) diff --git a/gnu/packages/lua.scm b/gnu/packages/lua.scm index f2e9da20fd..8fdba61e92 100644 --- a/gnu/packages/lua.scm +++ b/gnu/packages/lua.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2014 Andreas Enge ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Ricardo Wurmus +;;; Copyright © 2016 doncatnip ;;; ;;; This file is part of GNU Guix. ;;; @@ -29,7 +30,12 @@ #:use-module (gnu packages) #:use-module (gnu packages readline) #:use-module (gnu packages tls) - #:use-module (gnu packages xml)) + #:use-module (gnu packages xml) + #:use-module (gnu packages glib) + #:use-module (gnu packages libffi) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages xorg) + #:use-module (gnu packages gtk)) (define-public lua (package @@ -260,3 +266,76 @@ directory structure and file attributes.") communication. It takes an already established TCP connection and creates a secure session between the peers.") (license (package-license lua-5.1)))) + +(define-public lua-lgi + (package + (name "lua-lgi") + (version "0.9.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://github.com/pavouk/lgi/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1fmgdl5y4ph3yc6ycg865s3vai1rjkyda61cgqxk6zd13hmznw0c")))) + (build-system gnu-build-system) + (arguments + '(#:make-flags (list "CC=gcc" + (string-append "PREFIX=" (assoc-ref %outputs "out"))) + #:phases + (modify-phases %standard-phases + (delete 'configure) ; no configure script + (add-before 'build 'set-env + (lambda* (#:key inputs #:allow-other-keys) + ;; we need to load cairo dynamically + (let* ((cairo (string-append + (assoc-ref inputs "cairo") "/lib" ))) + (setenv "LD_LIBRARY_PATH" cairo) + #t))) + (add-before 'build 'set-lua-version + (lambda _ + ;; lua version and therefore install directories are hardcoded + ;; FIXME: This breaks when we update lua to >=5.3 + (substitute* "./lgi/Makefile" + (("LUA_VERSION=5.1") "LUA_VERSION=5.2")) + #t)) + (add-before 'check 'skip-test-gtk + (lambda _ + ;; FIXME: Skip GTK tests: + ;; gtk3 - can't get it to run with the xorg-server config below + ;; and some non-gtk tests will also fail + ;; gtk2 - lots of functions aren't implemented + ;; We choose gtk2 as the lesser evil and simply skip the test. + ;; Currently, awesome is the only package that uses lua-lgi but + ;; it doesn't need or interact with GTK using lua-lgi. + (substitute* "./tests/test.lua" + (("'gtk.lua',") "-- 'gtk.lua',")) + #t)) + (add-before 'check 'start-xserver-instance + (lambda* (#:key inputs #:allow-other-keys) + ;; There must be a running X server during tests. + (system (format #f "~a/bin/Xvfb :1 &" + (assoc-ref inputs "xorg-server"))) + (setenv "DISPLAY" ":1") + #t))))) + (inputs + `(("gobject-introspection" ,gobject-introspection) + ("glib" ,glib) + ("pango", pango) + ("gtk", gtk+-2) + ("lua" ,lua) + ("cairo" ,cairo) + ("libffi" ,libffi) + ("xorg-server", xorg-server))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (home-page "https://github.com/pavouk/lgi/") + (synopsis "Lua bridge to GObject based libraries") + (description + "LGI is gobject-introspection based dynamic Lua binding to GObject +based libraries. It allows using GObject-based libraries directly from Lua. +Notable examples are GTK+, GStreamer and Webkit.") + (license license:expat))) -- cgit v1.2.3 From 22037a327a0340341df7ae71a9c1d3551c28c705 Mon Sep 17 00:00:00 2001 From: doncatnip Date: Tue, 20 Sep 2016 14:02:53 -0400 Subject: gnu: awesome: Update to 3.5.9. * gnu/packages/wm.scm (awesome): Update to 3.5.9. [inputs]: Add gobject-introspection, lua-lgi, cairo. Use latest available lua. [arguments]: Set lua search paths. Add cairo to LD_LIBRARY_PATH. Wrap binary in respect to those paths plus GI_TYPELIB_PATH. --- gnu/packages/wm.scm | 63 ++++++++++++++++++++++++++++++++++++++--------------- 1 file changed, 46 insertions(+), 17 deletions(-) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 6275e6fea0..710a93397f 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2016 Carlo Zancanaro ;;; Copyright © 2016 Ludovic Courtès ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 doncatnip ;;; ;;; This file is part of GNU Guix. ;;; @@ -383,7 +384,7 @@ experience.") (define-public awesome (package (name "awesome") - (version "3.4.15") + (version "3.5.9") (source (origin (method url-fetch) (uri (string-append @@ -391,7 +392,7 @@ experience.") version ".tar.xz")) (sha256 (base32 - "1m910lr7wkw2dgzmirfvz7dasfswhhccdf65l21iiciv24c3w1bb")) + "0kynair1ykr74b39a4gcm2y24viial64337cf26nhlc7azjbby67")) (modules '((guix build utils) (srfi srfi-19))) (snippet @@ -418,12 +419,14 @@ experience.") ("dbus" ,dbus) ("gdk-pixbuf" ,gdk-pixbuf) ("glib" ,glib) + ("gobject-introspection" ,gobject-introspection) ("imlib2" ,imlib2) ("libev" ,libev) ("libxcb" ,libxcb) ("libxcursor" ,libxcursor) ("libxdg-basedir" ,libxdg-basedir) - ("lua" ,lua-5.1) + ("lua" ,lua) + ("lua-lgi",lua-lgi) ("pango" ,pango) ("startup-notification" ,startup-notification) ("xcb-util" ,xcb-util) @@ -437,20 +440,46 @@ experience.") ;; '--no-name' is used, which removes timestamps from gzip output. #:configure-flags '("-DCOMPRESS_MANPAGES=off") - #:phases (modify-phases %standard-phases - (add-before 'build 'xmlto-skip-validation - (lambda _ - ;; We can't download the necessary schema, so so skip - ;; validation and assume they're valid. - (substitute* "../build/CMakeFiles/man.dir/build.make" - (("/xmlto") - (string-append "/xmlto --skip-validation"))) - #t)) - (replace 'check - (lambda _ - ;; There aren't any tests, so just make sure the binary - ;; gets built and can be run successfully. - (zero? (system* "../build/awesome" "-v"))))))) + #:phases + (modify-phases %standard-phases + (add-before 'build 'xmlto-skip-validation + (lambda _ + ;; We can't download the necessary schema, so so skip + ;; validation and assume they're valid. + (substitute* "../build/CMakeFiles/man.dir/build.make" + (("/xmlto") + (string-append "/xmlto --skip-validation"))) + #t)) + (add-before 'configure 'set-lua-paths + (lambda* (#:key inputs #:allow-other-keys) + ;; The build process needs to load cairo dynamically. + (let* ((cairo (string-append + (assoc-ref inputs "cairo") "/lib" )) + (lua-lgi (assoc-ref inputs "lua-lgi") )) + (setenv "LD_LIBRARY_PATH" cairo ) + (setenv "LUA_PATH" (string-append lua-lgi + "/share/lua/5.2/?.lua")) + (setenv "LUA_CPATH" (string-append lua-lgi + "/lib/lua/5.2/?.so")) + #t))) + (replace 'check + (lambda _ + ;; There aren't any tests, so just make sure the binary + ;; gets built and can be run successfully. + (zero? (system* "../build/awesome" "-v")))) + (add-after 'install 'wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((awesome (assoc-ref outputs "out")) + (cairo (string-append + (assoc-ref inputs "cairo") "/lib" )) + (lua-lgi (assoc-ref inputs "lua-lgi") )) + (wrap-program (string-append awesome "/bin/awesome") + `("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH"))) + `("LD_LIBRARY_PATH" suffix (, cairo)) + `("LUA_PATH" suffix (,(string-append lua-lgi + "/share/lua/5.2/?.lua"))) + `("LUA_CPATH" suffix (,(string-append + lua-lgi "/lib/lua/5.2/?.so")))))))))) (synopsis "Highly configurable window manager") (description "Awesome has been designed as a framework window manager. It is fast, small, -- cgit v1.2.3 From c84253f7573edb02a02636899df6be5c98973882 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 20 Sep 2016 21:57:15 +0300 Subject: gnu: chez-scheme: Remove arm support. * gnu/packages/scheme.scm (chez-scheme)[supported-systems]: Remove arm. --- gnu/packages/scheme.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index 4fb0614ca5..9597473ad4 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -734,8 +734,8 @@ threads.") "/" name ".boot"))) (find-files lib "scheme.boot")) #t)))))) - ;; According to the documentation MIPS is not supported. - (supported-systems (delete "mips64el-linux" %supported-systems)) + ;; According to the documentation MIPS and ARM are not supported. + (supported-systems '("x86_64-linux" "i686-linux")) (home-page "http://www.scheme.com") (synopsis "R6RS Scheme compiler and run-time") (description -- cgit v1.2.3 From 8824da4c8bc34b131d5920d577f406db300a921b Mon Sep 17 00:00:00 2001 From: Alex Vong Date: Sat, 10 Sep 2016 00:06:26 +0800 Subject: gnu: vlc: Use liba52. * gnu/packages/video.scm (vlc)[inputs]: Add liba52. [arguments]: Remove "--disable-a52" from #:configure-flags. Signed-off-by: Leo Famulari --- gnu/packages/video.scm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 68391039e4..8bed50e424 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2015, 2016 Efraim Flashner ;;; Copyright © 2015 Andy Patterson ;;; Copyright © 2015 Ricardo Wurmus -;;; Copyright © 2015 Alex Vong +;;; Copyright © 2015, 2016 Alex Vong ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016 Kei Kebreau ;;; Copyright © 2016 Dmitry Nikolaev @@ -619,6 +619,7 @@ audio/video codec library.") ("fontconfig" ,fontconfig) ("freetype" ,freetype) ("gnutls" ,gnutls) + ("liba52" ,liba52) ("libcddb" ,libcddb) ("libgcrypt" ,libgcrypt) ("libkate" ,libkate) @@ -649,9 +650,7 @@ audio/video codec library.") ("xcb-util-keysyms" ,xcb-util-keysyms))) (arguments `(#:configure-flags - `("--disable-a52" ; FIXME: reenable once available - - ;; Gross workaround for . + `(;; Gross workaround for . ;; In our case, this led to a test failure: ;; test_libvlc_equalizer: libvlc/equalizer.c:122: test_equalizer: Assertion `isnan(libvlc_audio_equalizer_get_amp_at_index (equalizer, u_bands))' failed. "ac_cv_c_fast_math=no" -- cgit v1.2.3 From f75bb2c3f29ed8ac2b292842e0c3deee054553d9 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 20 Sep 2016 16:50:39 +0200 Subject: gnu: simple-scan: Update to 3.22.0.1. * gnu/packages/gnome.scm (simple-scan): Update to 3.22.0.1. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index c0461e1230..01736e9389 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3528,7 +3528,7 @@ USB transfers with your high-level application or system daemon.") (define-public simple-scan (package (name "simple-scan") - (version "3.21.90") + (version "3.22.0.1") (source (origin (method url-fetch) (uri (string-append "https://launchpad.net/simple-scan/" @@ -3537,7 +3537,7 @@ USB transfers with your high-level application or system daemon.") version ".tar.xz")) (sha256 (base32 - "0dmsvq3vviky6851rqiik898r84c7744i7md672ckic3mdv21ap3")))) + "0l1b3llkdlqq0bcjx1cadba67l2zb4zfykdaprpjbjbr6gkbc1f5")))) (build-system glib-or-gtk-build-system) (inputs `(("gtk" ,gtk+) -- cgit v1.2.3 From e2ab5a09048e648e6128ad173df3ece8a673c9a3 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Wed, 21 Sep 2016 11:49:32 +1000 Subject: gnu: python-click: Hardlink path to 'locale'. * gnu/packages/python.scm (python-click, python2-click)[arguments]: New field. --- gnu/packages/python.scm | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 65e6389708..af5da9beeb 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2307,6 +2307,17 @@ is used by the Requests library to verify HTTPS requests.") (base32 "1sggipyz52crrybwbr9xvwxd4aqigvplf53k9w3ygxmzivd1jsnc")))) (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((glibc (assoc-ref inputs ,(if (%current-target-system) + "cross-libc" "libc")))) + (substitute* "click/_unicodefun.py" + (("'locale'") + (string-append "'" glibc "/bin/locale'")))) + #t))))) (native-inputs `(("python-setuptools" ,python-setuptools))) (home-page "http://click.pocoo.org") -- cgit v1.2.3 From 375f224b6869c152a7de68350f2c6faf40544c36 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Wed, 21 Sep 2016 11:58:39 +1000 Subject: gnu: python-click: Use 'pypi-uri'. * gnu/packages/python.scm (python-click, python2-click)[source]: Use 'pypi-uri'. --- gnu/packages/python.scm | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index af5da9beeb..a1865574cb 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2299,10 +2299,7 @@ is used by the Requests library to verify HTTPS requests.") (source (origin (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/" - "7a/00/c14926d8232b36b08218067bcd5853caefb4737cda3f0a47437151344792/" - "click-" version ".tar.gz")) + (uri (pypi-uri "click" version)) (sha256 (base32 "1sggipyz52crrybwbr9xvwxd4aqigvplf53k9w3ygxmzivd1jsnc")))) -- cgit v1.2.3 From 79558df220f14086c1ab66cfa50c779ab6c41314 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Wed, 21 Sep 2016 18:44:22 +1000 Subject: gnu: vsearch: Update to 2.1.0. * gnu/packages/bioinformatics.scm (vsearch): Update to 2.1.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 39a8577bcf..b910ef2c61 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5042,7 +5042,7 @@ data types as well.") (define-public vsearch (package (name "vsearch") - (version "2.0.1") + (version "2.1.0") (source (origin (method url-fetch) @@ -5052,7 +5052,7 @@ data types as well.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0q7szwbf7r29yxkhb415a8i51vj87kvl5ap7h09w7k9ycb2ywvzw")) + "1937yzchsxnnf6j1xxifpa219zlwpkkz0a5nh4hdgnccscrszw6z")) (modules '((guix build utils))) (snippet '(begin -- cgit v1.2.3 From 171091a87496d816658f82ff7c889eb14e2ecb19 Mon Sep 17 00:00:00 2001 From: Andreas Enge Date: Wed, 21 Sep 2016 19:20:22 +0200 Subject: gnu: lm-sensors: Update to 3.4.0. * gnu/packages/linux.scm (lm-sensors): Update to 3.4.0. --- gnu/packages/linux.scm | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 5e9263e89c..9f48e0c2c5 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1855,20 +1855,16 @@ country-specific regulations for the wireless spectrum.") (define-public lm-sensors (package (name "lm-sensors") - (version "3.3.5") + (version "3.4.0") (source (origin (method url-fetch) (uri (list (string-append - "ftp://ftp.netroedge.com/pub/lm-sensors/" - "lm_sensors-" version ".tar.bz2") - (string-append - "http://pkgs.fedoraproject.org/repo/pkgs/" - "lm_sensors/lm_sensors-3.3.5.tar.bz2/" - "da506dedceb41822e64865f6ba34828a/" - "lm_sensors-3.3.5.tar.bz2"))) + "https://github.com/groeck/lm-sensors/archive/V" + (string-join (string-split version #\.) "-") + ".tar.gz"))) (sha256 (base32 - "1ksgrynxgrq590nb2fwxrl1gwzisjkqlyg3ljfd1al0ibrk6mbjx")) + "0knb09s9lvx0wzfsaizx3xq58q6kllqf7nkbwvir0wkgn31c2d73")) (patches (search-patches "lm-sensors-hwmon-attrs.patch")))) (build-system gnu-build-system) (inputs `(("rrdtool" ,rrdtool) -- cgit v1.2.3 From f7fe5f7a3e26676657265e98073b9914baf615f1 Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 13 Sep 2016 20:19:57 +0000 Subject: gnu: femtolisp: Remove custom "patch-makefile" phase. * gnu/packages/lisp.scm (femtolisp)[arguments]: Remove "patch-makefile" phase; specify test target; build "release" target instead of "default". --- gnu/packages/lisp.scm | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index 3461de41f6..d1180a7d6d 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -503,19 +503,11 @@ the InterLisp Standard.") "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja")))) (build-system gnu-build-system) (arguments - `(#:make-flags '("CC=gcc") - #:tests? #f ; No make check + `(#:make-flags '("CC=gcc" "release") + #:test-target "test" #:phases (modify-phases %standard-phases (delete 'configure) ; No configure script - ;; We have to remove the 'test phase because it requires - ;; the flisp binary to be present. Instead we run - ;; bootstrap.sh after the 'install phase. - (add-before 'build 'patch-makefile - (lambda _ - (substitute* "Makefile" - (("default: release test") "default: release")) - #t)) (replace 'install ; Makefile has no 'install phase (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) -- cgit v1.2.3 From 6e8faf779444688d40453c041cd441782ada38aa Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 21 Sep 2016 21:37:23 +0300 Subject: gnu: jellyfish: Limit to x86_64. * gnu/packages/bioinformatics.scm (jellyfish)[supported-systems}: New field, limit support to x86_64. --- gnu/packages/bioinformatics.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b910ef2c61..7a27e0b4e2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -2868,6 +2868,8 @@ DNA sequences. It outputs its k-mer counts in a binary format, which can be translated into a human-readable text format using the @code{jellyfish dump} command, or queried for specific k-mers with @code{jellyfish query}.") (home-page "http://www.genome.umd.edu/jellyfish.html") + ;; From their website: JELLYFISH runs on 64-bit Intel-compatible processors + (supported-systems '("x86_64-linux")) ;; The combined work is published under the GPLv3 or later. Individual ;; files such as lib/jsoncpp.cpp are released under the Expat license. (license (list license:gpl3+ license:expat)))) -- cgit v1.2.3 From 538c0e3b699a35656b796cdd90b837135b7925da Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 21 Sep 2016 22:32:53 +0300 Subject: gnu: openlibm: Remove support for mips. * gnu/packages/maths.scm (openlibm)[supported-systems]: New field, remove support for mips64el. --- gnu/packages/maths.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 44a24ef695..1e7f4ca5b0 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1944,6 +1944,8 @@ programming language implementations. The project was born out of a need to have a good libm for the Julia programming language that worked consistently across compilers and operating systems, and in 32-bit and 64-bit environments.") + ;; Each architecture has its own make target, and there is none for mips. + (supported-systems (delete "mips64el-linux" %supported-systems)) ;; See LICENSE.md for details. (license (list license:expat license:isc -- cgit v1.2.3 From 3f1c722ec74dcf81833ffc7b2d4151241b31540e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 8 Sep 2016 14:51:04 +0200 Subject: gnu: r-htmltools: Ensure temporary files can be deleted. * gnu/packages/web.scm (r-htmltools)[arguments]: Add phase "copy-files-without-mode". --- gnu/packages/web.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 342262b39d..2c63e75ad4 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3230,6 +3230,20 @@ directory.") (base32 "0j9bf80grd6gwh7116m575pycv87c0wcwkxsz3gzzfs4aw3pxyr9")))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; See https://github.com/rstudio/htmltools/pull/68 + ;; The resource files are in the store and have mode 444. After + ;; copying the files R fails to remove them again because it doesn't + ;; have write access to them. + (add-after 'unpack 'copy-files-without-mode + (lambda _ + (substitute* "R/html_dependency.R" + (("file.copy\\(from, to, " prefix) + (string-append prefix + "copy.mode = FALSE, "))) + #t))))) (propagated-inputs `(("r-digest" ,r-digest) ("r-rcpp" ,r-rcpp))) -- cgit v1.2.3 From b78891b0120c2e6f7752912d43bc59e18ed9c465 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 21:38:01 +0200 Subject: gnu: r-rmarkdown: Ensure temporary files can be deleted. * gnu/packages/statistics.scm (r-rmarkdown)[arguments]: Add phase "copy-files-without-mode". --- gnu/packages/statistics.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 853a259c85..2a9a31e3e2 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1953,6 +1953,20 @@ encoder/decoder, round-off-error-free sum and cumsum, etc.") "0c7gs9c8xdjfxviw0syh13pf3vys2b2ssixmnyqbji64xdscn7pz")))) (properties `((upstream-name . "rmarkdown"))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; See https://github.com/rstudio/rmarkdown/pull/800 + ;; The resource files are in the store and have mode 444. After + ;; copying the files R fails to remove them again because it doesn't + ;; have write access to them. + (add-after 'unpack 'copy-files-without-mode + (lambda _ + (substitute* "R/render.R" + (("file.copy\\(from = from," prefix) + (string-append prefix + " copy.mode = FALSE, "))) + #t))))) (propagated-inputs `(("r-catools" ,r-catools) ("r-htmltools" ,r-htmltools) -- cgit v1.2.3 From 39162ee49b08ccbd032324dc057fbafe8809c8a8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 21:47:56 +0200 Subject: gnu: extempore: Only build on x86_64. * gnu/packages/algebra.scm (kiss-fft-for-extempore)[supported-systems]: Only build on x86_64. * gnu/packages/gl.scm (nanovg-for-extempore)[supported-systems]: Likewise. * gnu/packages/image.scm (stb-image-for-extempore)[supported-systems]: Likewise. * gnu/packages/llvm.scm (llvm-for-extempore)[supported-systems]: Likewise. * gnu/packages/music.scm (portmidi-for-extempore)[supported-systems]: Likewise. (extempore)[supported-systems]: Likewise. --- gnu/packages/algebra.scm | 2 ++ gnu/packages/gl.scm | 2 ++ gnu/packages/image.scm | 2 ++ gnu/packages/llvm.scm | 4 +++- gnu/packages/music.scm | 4 ++++ 5 files changed, 13 insertions(+), 1 deletion(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index 83f03a074a..a15daf4ef8 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -521,6 +521,8 @@ syntax is similar to that of C, so basic usage is familiar. It also includes "0hkp9l6l4c92fb1l2sh6a6zv1hynpvb2s4d03vd8vxyvybc0l4pv")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests included + ;; Extempore refuses to build on architectures other than x86_64 + (supported-systems '("x86_64-linux")) (home-page "https://github.com/extemporelang/kiss_fft") (synopsis "Mixed-radix Fast Fourier Transform") (description diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index 707e3d4d1d..a4ec3a3536 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -591,6 +591,8 @@ and surfaces, receiving input and events.") (arguments `(#:tests? #f)) ; no tests included (inputs `(("mesa" ,mesa))) + ;; Extempore refuses to build on architectures other than x86_64 + (supported-systems '("x86_64-linux")) (home-page "https://github.com/extemporelang/nanovg") (synopsis "2D vector drawing library on top of OpenGL") (description "NanoVG is small antialiased vector graphics rendering diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index e40fa9a47d..931cad1a6d 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -923,6 +923,8 @@ statistical tests.") (file-name (string-append name "-" version "-checkout")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests included + ;; Extempore refuses to build on architectures other than x86_64 + (supported-systems '("x86_64-linux")) (home-page "https://github.com/extemporelang/stb") (synopsis "Image library for Extempore") (description diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index b55a200bc5..1a1f7eef6c 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -274,4 +274,6 @@ code analysis tools.") (source (origin (inherit (package-source llvm-3.7)) - (patches (list (search-patch "llvm-for-extempore.patch"))))))) + (patches (list (search-patch "llvm-for-extempore.patch"))))) + ;; Extempore refuses to build on architectures other than x86_64 + (supported-systems '("x86_64-linux")))) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index c512d533c2..a7715bce24 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -396,6 +396,8 @@ enable professional yet simple and intuitive pattern-based drum programming.") (native-inputs `(("perl" ,perl) ("emacs" ,emacs-no-x))) + ;; Extempore refuses to build on architectures other than x86_64 + (supported-systems '("x86_64-linux")) (home-page "http://benswift.me/extempore-docs/index.html") (synopsis "Programming environment for live coding of multimedia") (description @@ -1243,6 +1245,8 @@ using a system-independent interface.") (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests (native-inputs '()) + ;; Extempore refuses to build on architectures other than x86_64 + (supported-systems '("x86_64-linux")) (home-page "https://github.com/extemporelang/portmidi/"))) (define-public python-pyportmidi -- cgit v1.2.3 From 1df00601b280db1cdfe0fc8d539ee6c6c726c355 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 22 Sep 2016 00:37:10 -0400 Subject: gnu: irssi: Update to 0.8.20 [fixes CVE-2016-{7044,7045}]. * gnu/packages/irc.scm (irssi): Update to 0.8.20. --- gnu/packages/irc.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/irc.scm b/gnu/packages/irc.scm index 1058bef778..786cfbc42c 100644 --- a/gnu/packages/irc.scm +++ b/gnu/packages/irc.scm @@ -95,7 +95,7 @@ irssi, but graphical.") (define-public irssi (package (name "irssi") - (version "0.8.19") + (version "0.8.20") (source (origin (method url-fetch) (uri (string-append "https://github.com/irssi/irssi/" @@ -103,7 +103,7 @@ irssi, but graphical.") version ".tar.xz")) (sha256 (base32 - "1lz57v3nkki30lb883pipp5syyfkssvjlq3xxf9yl578902h982c")))) + "0njh43xmpad9h5g6fp1805hrix1mwbbnk7p6qmlw9apm47lc90kq")))) (build-system gnu-build-system) (arguments `(#:phases -- cgit v1.2.3 From c5776c87bb08834e29db8892c52aa89993afe6d8 Mon Sep 17 00:00:00 2001 From: ng0 Date: Mon, 19 Sep 2016 18:30:34 +0000 Subject: gnu: perl-io-socket-ssl: Update to 2.038. * gnu/packages/web.scm (perl-io-socket-ssl): Update to 2.038. Signed-off-by: Leo Famulari --- gnu/packages/web.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 2c63e75ad4..34b7ee32d0 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -2413,14 +2413,14 @@ and IPv6 sockets, intended as a replacement for IO::Socket::INET.") (define-public perl-io-socket-ssl (package (name "perl-io-socket-ssl") - (version "2.033") + (version "2.038") (source (origin (method url-fetch) (uri (string-append "mirror://cpan/authors/id/S/SU/SULLR/" "IO-Socket-SSL-" version ".tar.gz")) (sha256 (base32 - "01qggwmc97kpzx49fp4fxysrjyq8mpnx54nrb087ridj0ch3cf46")) + "11fiifxyvn7njc9p52wgygyw24jz7rh7gnz2ikjphr4l4x9f03rx")) (patches (search-patches "perl-io-socket-ssl-openssl-1.0.2f-fix.patch")))) (build-system perl-build-system) -- cgit v1.2.3 From 951da521a9bb94a70eb750198bafe031e4ea8411 Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Thu, 22 Sep 2016 16:36:00 +1000 Subject: gnu: diamond: Update to 0.8.22. * gnu/packages/bioinformatics.scm (diamond): Update to 0.8.22. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7a27e0b4e2..b273d2c540 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1925,7 +1925,7 @@ identify enrichments with functional annotations of the genome.") (define-public diamond (package (name "diamond") - (version "0.8.20") + (version "0.8.22") (source (origin (method url-fetch) (uri (string-append @@ -1934,7 +1934,7 @@ identify enrichments with functional annotations of the genome.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "16bhwpxqzq2nfkh9522rwcc1p97ygszjmhphz69x2jk501jf9wkg")))) + "0lbqa07c5z8pr4dvdrc14rqc4311kq69j1ldry9glfc8hg3x1kd1")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no "check" target -- cgit v1.2.3 From b8367c00909eb8df23af3b532d44c64d7015e7e7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 22 Sep 2016 11:19:11 +0300 Subject: gnu: offlineimap: Update to 7.0.7. * gnu/packages/mail.scm (offlineimap): Update to 7.0.7. --- gnu/packages/mail.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index c81dd09212..09c15e267f 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -302,7 +302,7 @@ and corrections. It is based on a Bayesian filter.") (define-public offlineimap (package (name "offlineimap") - (version "7.0.6") + (version "7.0.7") (source (origin (method url-fetch) (uri (string-append "https://github.com/OfflineIMAP/offlineimap/" @@ -310,7 +310,7 @@ and corrections. It is based on a Bayesian filter.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1msg0v5i3v4mvjm2c5alzz91dk5y20h4xdr60lcz3507fv80407m")))) + "1719xnw0xah5knypd5vrpsxi337576q1r8axpziw8wa7zms7abl0")))) (build-system python-build-system) (inputs `(("python2-pysqlite" ,python2-pysqlite) ("python2-six" ,python2-six))) -- cgit v1.2.3 From a143e1b877106b696e41add97db96901468f855b Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Thu, 22 Sep 2016 11:59:58 -0400 Subject: gnu: webkitgtk: Update to 2.14.0. * gnu/packages/webkit.scm (webkitgtk): Update to 2.14.0. --- gnu/packages/webkit.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index 4e3ceb4abb..888838dbe6 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -53,14 +53,14 @@ (define-public webkitgtk (package (name "webkitgtk") - (version "2.12.5") + (version "2.14.0") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" name "-" version ".tar.xz")) (sha256 (base32 - "0h0wig413399wws6l88mn1nnjbqb42vb55yvz8az39b4p1a7h53b")))) + "02paj0anbnqn1z3hn5c4csmq9nga995rzagiplj3sjk2dj1ss4q5")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; no tests -- cgit v1.2.3 From 62d00095c2d20f4625189c7e5d642f66f65fd9d7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 22 Sep 2016 19:20:26 +0300 Subject: gnu: prank: Allow building on 32-bit machines. * gnu/packages/bioinformatics.scm (prank)[arguments]: Add a phase removing the '-m64' compiler flag. --- gnu/packages/bioinformatics.scm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b273d2c540..28d138855d 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3529,6 +3529,12 @@ generated using the PacBio Iso-Seq protocol.") (lambda _ (chdir "src") #t)) + (add-after 'unpack 'remove-m64-flag + ;; Prank will build with the correct 'bit-ness' without this flag + ;; and this allows building on 32-bit machines. + (lambda _ (substitute* "src/Makefile" + (("-m64") "")) + #t)) (delete 'configure) (replace 'install (lambda* (#:key outputs #:allow-other-keys) -- cgit v1.2.3 From 50f701d4f9b28123794888780977459eff2d8f33 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 22 Sep 2016 09:38:56 -0400 Subject: gnu: openssl: Replace with 1.0.2i [security fixes]. Fixes CVE-2016-{2177,2178,2179,2180,2181,2182,2183,6302,6303,6304,6306,6308}. * gnu/packages/tls.scm (openssl)[replacement]: New field. (openssl-1.0.2i): New variable. --- gnu/packages/tls.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 0762703800..1d4d255a45 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -229,6 +229,7 @@ required structures.") (define-public openssl (package (name "openssl") + (replacement openssl-1.0.2i) (version "1.0.2h") (source (origin (method url-fetch) @@ -367,6 +368,24 @@ required structures.") (license license:openssl) (home-page "http://www.openssl.org/"))) +(define openssl-1.0.2i + (package (inherit openssl) + (source + (let ((name "openssl") + (version "1.0.2i")) + (origin + (method url-fetch) + (uri (list (string-append "ftp://ftp.openssl.org/source/" + name "-" version ".tar.gz") + (string-append "ftp://ftp.openssl.org/source/old/" + (string-trim-right version char-set:letter) + "/" name "-" version ".tar.gz"))) + (sha256 + (base32 + "0vyy038676cv3m2523fi9ll9nkjxadqdnz18zdp5nm6925yli1wj")) + (patches (search-patches "openssl-runpath.patch" + "openssl-c-rehash-in.patch"))))))) + (define-public openssl-next (package (inherit openssl) -- cgit v1.2.3 From 163d93a6bd231596959e2e157b60eb964db85d04 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 22 Sep 2016 09:44:17 -0400 Subject: gnu: openssl-next: Update to 1.1.0a [security fixes]. Fixes CVE-2016-{6304,6305,6307,6308}. * gnu/packages/tls.scm (openssl-next): Update to 1.1.0a. [replacement]: New field. --- gnu/packages/tls.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 1d4d255a45..15e3e43167 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -390,7 +390,8 @@ required structures.") (package (inherit openssl) (name "openssl") - (version "1.1.0") + (replacement #f) + (version "1.1.0a") (source (origin (method url-fetch) (uri (list (string-append "ftp://ftp.openssl.org/source/" @@ -401,7 +402,7 @@ required structures.") (patches (search-patches "openssl-1.1.0-c-rehash-in.patch")) (sha256 (base32 - "10lcpmnxap9nw8ymdglys93cgkwd1lf1rz4fhq5whwhlmkwrzipm")))) + "0as40a1lipl9qfax7495jc1xfb049ygavkaxxk4y5kcn8birdrn2")))) (outputs '("out" "doc" ;1.3MiB of man3 pages "static")) ; 5.5MiB of .a files -- cgit v1.2.3 From c788c5feb154e5b4d909d34f259a5f1ea6e7c572 Mon Sep 17 00:00:00 2001 From: John Darrington Date: Thu, 22 Sep 2016 21:00:43 +0200 Subject: gnu: Add ytalk * gnu/packages/messaging.scm (ytalk): New variable. --- gnu/packages/messaging.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 2b0ffee972..55247bef58 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -759,4 +759,29 @@ for sending encrypted messages to one person or many subscribers.") (synopsis "Distributed peer-to-peer communication") (home-page "https://bitmessage.org/"))) + +(define-public ytalk + (package + (name "ytalk") + (version "3.3.0") + (source + (origin + (method url-fetch) + (uri (string-append "ftp://ftp.ourproject.org/pub/ytalk/ytalk-" + version ".tar.gz")) + (sha256 + (base32 + "1d3jhnj8rgzxyxjwfa22vh45qwzjvxw1qh8fz6b7nfkj3zvk9jvf")))) + (build-system gnu-build-system) + (inputs + `(("ncurses" ,ncurses))) + (home-page "http://ytalk.ourproject.org") + (synopsis "Multi-user chat program") + (description "Ytalk is a replacement for the BSD talk program. Its main +advantage is the ability to communicate with any arbitrary number of users at +once. It supports both talk protocols (\"talk\" and \"ntalk\") and can communicate +with several different talk daemons at the same time.") + (license license:gpl2+))) + + ;;; messaging.scm ends here -- cgit v1.2.3 From 0dbb7ac2df86787cfcb7ae35915a0bfe88a500f9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 22 Sep 2016 20:30:36 +0300 Subject: gnu: plink: Set endian-ness on more architectures. * gnu/packages/patches/plink-endian-detection.patch: New file. * gnu/packages/bioinformatics.scm (plink)[source]: Use it. * gnu/local.mk (dist_patch_DATA): Register it. --- gnu/local.mk | 1 + gnu/packages/bioinformatics.scm | 3 ++- gnu/packages/patches/plink-endian-detection.patch | 30 +++++++++++++++++++++++ 3 files changed, 33 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/plink-endian-detection.patch diff --git a/gnu/local.mk b/gnu/local.mk index a7566382dc..d71d1c4efc 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -745,6 +745,7 @@ dist_patch_DATA = \ %D%/packages/patches/pinball-system-ltdl.patch \ %D%/packages/patches/pingus-sdl-libs-config.patch \ %D%/packages/patches/plink-1.07-unclobber-i.patch \ + %D%/packages/patches/plink-endian-detection.patch \ %D%/packages/patches/plotutils-libpng-jmpbuf.patch \ %D%/packages/patches/polkit-drop-test.patch \ %D%/packages/patches/portaudio-audacity-compat.patch \ diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 28d138855d..7da6f5546b 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4279,7 +4279,8 @@ accessed/downloaded on demand across HTTP.") version "-src.zip")) (sha256 (base32 "0as8gxm4pjyc8dxmm1sl873rrd7wn5qs0l29nqfnl31x8i467xaa")) - (patches (search-patches "plink-1.07-unclobber-i.patch")))) + (patches (search-patches "plink-1.07-unclobber-i.patch" + "plink-endian-detection.patch")))) (build-system gnu-build-system) (arguments '(#:tests? #f ;no "check" target diff --git a/gnu/packages/patches/plink-endian-detection.patch b/gnu/packages/patches/plink-endian-detection.patch new file mode 100644 index 0000000000..4d6185512f --- /dev/null +++ b/gnu/packages/patches/plink-endian-detection.patch @@ -0,0 +1,30 @@ +This patch is borrowed from Debian's patches for plink + +Author: Peter Green +Puropose: Fallback to endian.h if all else fails on 64bit machines +Closes: #528659 +Forwarded: Shaun Purcell +License: same as plink itself. +=================================================================== +--- plink-1.06.orig/Rsrv.h 2009-05-15 03:35:29.000000000 +0100 ++++ plink-1.06/Rsrv.h 2009-05-15 03:35:41.000000000 +0100 +@@ -313,7 +313,18 @@ + #define __BIG_ENDIAN__ 1 + #define SWAPEND 1 + #elif ! defined Win32 /* Windows is little-endian is most cases, anywhere else we're stuck */ +-#error "Cannot determine endianness. Make sure config.h is included or __{BIG|LITTLE}_ENDIAN__ is defined ." ++ //try endian.h before we finally bail out ++ #include ++ #if __BYTE_ORDER == __LITTLE_ENDIAN ++ #warning using little endian based on information from endian.h ++ #define __LITTLE_ENDIAN__ 1 ++ #elif __BYTE_ORDER == __BIG_ENDIAN ++ #warning using big endian based on information from endian.h ++ #define __BIG_ENDIAN__ 1 ++ #define SWAPEND 1 ++ #else ++ #error "Cannot determine endianness. Make sure config.h is included or __{BIG|LITTLE}_ENDIAN__ is defined ." ++ #endif + #endif + + /* FIXME: all the mess below needs more efficient implementation - the current one is so messy to work around alignment problems on some platforms like Sun and HP 9000 */ -- cgit v1.2.3 From 7adc698f69eaa5195a9dc956a6466e1ba6858eb2 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 22 Sep 2016 20:58:30 +0300 Subject: gnu: python-fake-factory: Update to 0.7.2. * gnu/packages/python.scm (python-fake-factory): Update to 0.7.2. [arguments]: Remove phase disabling failing test. [home-page]: Use https. --- gnu/packages/python.scm | 16 +++------------- 1 file changed, 3 insertions(+), 13 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index a1865574cb..353443018a 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -9816,24 +9816,14 @@ parsing UK postcodes.") (define-public python-fake-factory (package (name "python-fake-factory") - (version "0.5.7") + (version "0.7.2") (source (origin (method url-fetch) (uri (pypi-uri "fake-factory" version)) (sha256 (base32 - "1chmarnrdzn4r017n8qlic0m0bbnhw04s3hkwribjvm3mqpb6pa0")))) + "0vs0dkmg0dlaxf8w6q2i3k0i03gmp56ablldv7ci9x3nbadkn71g")))) (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-before 'check 'disable-failing-test - ;; XXX: faker/tests/ne_np/__init__.py, line 40, in test_names - ;; first_name, last_name = name.split() - ;; ValueError: too many values to unpack (expected 2) - (lambda _ - (delete-file "faker/tests/ne_np/__init__.py") - #t))))) (native-inputs `(("python-setuptools" ,python-setuptools) ;; For testing @@ -9843,7 +9833,7 @@ parsing UK postcodes.") (propagated-inputs `(("python-dateutil" ,python-dateutil-2) ("python-six" ,python-six))) - (home-page "http://github.com/joke2k/faker") + (home-page "https://github.com/joke2k/faker") (synopsis "Python package that generates fake data") (description "Faker is a Python package that generates fake data such as names, -- cgit v1.2.3 From cda5e76f51bc8070ca031eff043821bcd7ca2be9 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 22 Sep 2016 22:04:05 +0300 Subject: gnu: python2-django: Fix typo in native-inputs. * gnu/packages/django.scm (python2-django)[native-inputs]: Inherit from python-django's native-inputs, not its inputs. --- gnu/packages/django.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 8f0d2add9e..8d4a7e4753 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -98,7 +98,7 @@ to the @dfn{don't repeat yourself} (DRY) principle.") ("python2-mock" ,python2-mock) ;; When adding memcached mind: for Python 2 memcached <= 1.53 is ;; required. - ,@(package-inputs base)))))) + ,@(package-native-inputs base)))))) (define-public python-django-simple-math-captcha (package -- cgit v1.2.3 From 5895f193c9ff70969993875b431f5b7c60fc4fa7 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 22 Sep 2016 22:17:11 +0300 Subject: gnu: reptyr: Remove mips64el support. * gnu/packages/screen.scm (reptyr)[supported-systems]: New field, remove support for mips64el. --- gnu/packages/screen.scm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/gnu/packages/screen.scm b/gnu/packages/screen.scm index 8c900821be..e0e46411b8 100644 --- a/gnu/packages/screen.scm +++ b/gnu/packages/screen.scm @@ -169,4 +169,6 @@ window manager as well as the Tmux terminal multiplexer.") it to a new terminal. Started a long-running process over @code{ssh}, but have to leave and don't want to interrupt it? Just start a @code{screen}, use reptyr to grab it, and then kill the @code{ssh} session and head on home.") + ;; Reptyr currently does not support mips. + (supported-systems (delete "mips64el-linux" %supported-systems)) (license expat))) -- cgit v1.2.3 From 67fa6ab5bb89efeabb5d5808d92b0e8085f91e9c Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 22 Sep 2016 19:52:57 -0400 Subject: gnu: imagemagick: Update to 6.9.5-10. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.5-10. --- gnu/packages/imagemagick.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index 8dac3e1824..75427a4ce1 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -41,14 +41,14 @@ (define-public imagemagick (package (name "imagemagick") - (version "6.9.5-9") + (version "6.9.5-10") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "10y1bfx70k6q0fi9zmccdw3miab1jdpqfyb7yjyacrg1m86k0kww")))) + "0cxjzqzca80vf6sfx4z9zq4wq2w0vy9ajp9kf88jb4na8mwsn198")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") -- cgit v1.2.3 From cc5e16a7645c9649154acb44ffdf486a088bd8bf Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:41 +0000 Subject: gnu: Add ghc-base16-bytestring. * gnu/packages/haskell.scm (ghc-base16-bytestring): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 87628b559d..edb098a03f 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6432,4 +6432,25 @@ can be specified precisely in the type. The language is closely related to Epigram and Agda.") (license license:bsd-3))) +(define-public ghc-base16-bytestring + (package + (name "ghc-base16-bytestring") + (version "0.1.1.6") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/base16-bytestring/" + "base16-bytestring-" version ".tar.gz")) + (sha256 + (base32 + "0jf40m3yijqw6wd1rwwvviww46fasphaay9m9rgqyhf5aahnbzjs")))) + (build-system haskell-build-system) + (home-page "http://github.com/bos/base16-bytestring") + (synopsis "Fast base16 (hex) encoding and decoding for ByteStrings") + (description + "This package provides a Haskell library for working with base16-encoded +data quickly and efficiently, using the ByteString type.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 301e762ad18e5dd2198db417eabf919495d19a38 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:42 +0000 Subject: gnu: Add ghc-binary. * gnu/packages/haskell.scm (ghc-binary): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index edb098a03f..3934c1727d 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6453,4 +6453,35 @@ Epigram and Agda.") data quickly and efficiently, using the ByteString type.") (license license:bsd-3))) +(define-public ghc-binary + (package + (name "ghc-binary") + (version "0.8.4.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/binary/binary-" + version ".tar.gz")) + (sha256 + (base32 + "1fp7wxnf57cjzhbb7rgqs6fgws4690zh0dxgl924dj4nzq0cf4wd")))) + (build-system haskell-build-system) + (inputs + `(("ghc-random" ,ghc-random) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hunit" ,ghc-hunit))) + (home-page "https://github.com/kolmodin/binary") + (synopsis + "Binary serialisation for Haskell values using lazy ByteStrings") + (description + "Efficient, pure binary serialisation using lazy ByteStrings. Haskell values +may be encoded to and from binary formats, written to disk as binary, or sent over +the network. The format used can be automatically generated, or you can choose to +implement a custom format if needed. Serialisation speeds of over 1 G\\/sec have +been observed, so this library should be suitable for high performance scenarios.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From eddc69241be61ffca6b3709e78d508183a51f7d3 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:43 +0000 Subject: gnu: ghc-cryptonite: Update to 0.19. * gnu/packages/haskell.scm (ghc-cryptonite): Update to 0.19. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 3934c1727d..6fda9d8135 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5979,7 +5979,7 @@ tasty.") (define-public ghc-cryptonite (package (name "ghc-cryptonite") - (version "0.9") + (version "0.19") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" @@ -5987,7 +5987,7 @@ tasty.") version ".tar.gz")) (sha256 (base32 - "1h22x22lq2m8h456v5j50xm0l25bcm3h1pchsk83br909hjxql4z")))) + "1rw5k34vpn4134yrzdhf0rsshsrkixfbv9ap18di2n00z2cw1shw")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-memory" ,ghc-memory) -- cgit v1.2.3 From c763b8ae899ea92a38f168f457423d9d3059cbb2 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:44 +0000 Subject: gnu: Add ghc-cryptohash. * gnu/packages/haskell.scm (ghc-cryptohash): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 6fda9d8135..e8a89b0289 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6484,4 +6484,36 @@ implement a custom format if needed. Serialisation speeds of over 1 G\\/sec hav been observed, so this library should be suitable for high performance scenarios.") (license license:bsd-3))) +(define-public ghc-cryptohash + (package + (name "ghc-cryptohash") + (version "0.11.9") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/cryptohash/cryptohash-" + version ".tar.gz")) + (sha256 + (base32 + "1yr2iyb779znj79j3fq4ky8l1y8a600a2x1fx9p5pmpwq5zq93y2")))) + (build-system haskell-build-system) + (inputs + `(("ghc-byteable" ,ghc-byteable) + ("ghc-cryptonite" ,ghc-cryptonite) + ("ghc-memory" ,ghc-memory) + ("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page "http://github.com/vincenthz/hs-cryptohash") + (synopsis "Collection of cryptographic hashes in Haskell") + (description + "A collection of crypto hashes, with a practical incremental and one-pass, +pure APIs, with performance close to the fastest implementations available in +other languages. The implementations are made in C with a haskell FFI wrapper +that hides the C implementation.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 7c14128dd006a744bd5f3f4413206664a1538f45 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:45 +0000 Subject: gnu: Add ghc-data-ordlist. * gnu/packages/haskell.scm (ghc-data-ordlist): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index e8a89b0289..161b247a00 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6516,4 +6516,24 @@ other languages. The implementations are made in C with a haskell FFI wrapper that hides the C implementation.") (license license:bsd-3))) +(define-public ghc-data-ordlist + (package + (name "ghc-data-ordlist") + (version "0.4.7.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/data-ordlist/data-ordlist-" + version ".tar.gz")) + (sha256 + (base32 + "03a9ix1fcx08viwv2jg5ndw1qbkydyyrmjvqr9wasmcik9x1wv3g")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/data-ordlist") + (synopsis "Set and bag operations on ordered lists") + (description + "This module provides set and multiset operations on ordered lists.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 1a0dbf0ded3991e655fdd223234409bbc8454792 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:46 +0000 Subject: gnu: Add ghc-haskeline. * gnu/packages/haskell.scm (ghc-haskeline): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 161b247a00..342babf8f2 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6536,4 +6536,31 @@ that hides the C implementation.") "This module provides set and multiset operations on ordered lists.") (license license:bsd-3))) +(define-public ghc-haskeline + (package + (name "ghc-haskeline") + (version "0.7.2.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/haskeline/haskeline-" + version ".tar.gz")) + (sha256 + (base32 + "09wd6sxgn65xxpk7dhy1cg3ywlbk0ccqq7xylycwk4zazy3gjgkd")))) + (build-system haskell-build-system) + (inputs + `(("ncurses" ,ncurses))) + (arguments + `(#:configure-flags (list "-fterminfo"))) + (home-page "https://github.com/judah/haskeline") + (synopsis "Command-line interface for user input") + (description + "Haskeline provides a user interface for line input in command-line +programs. This library is similar in purpose to readline, but since it +is written in Haskell it is (hopefully) more easily used in other Haskell +programs.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From d58dc851f97d950f847bccdfafce0f8c4177fc4e Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:47 +0000 Subject: gnu: Add ghc-regex-applicative. * gnu/packages/haskell.scm (ghc-regex-applicative): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 342babf8f2..432d901d44 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6563,4 +6563,30 @@ is written in Haskell it is (hopefully) more easily used in other Haskell programs.") (license license:bsd-3))) +(define-public ghc-regex-applicative + (package + (name "ghc-regex-applicative") + (version "0.3.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/regex-applicative/" + "regex-applicative-" version ".tar.gz")) + (sha256 + (base32 + "1riv7jqf26lbv4rm54sd6mrx8xdh4dvh4xbzymzdfdw13k6a4nb6")))) + (build-system haskell-build-system) + (inputs + `(("ghc-smallcheck" ,ghc-smallcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-smallcheck" ,ghc-tasty-smallcheck) + ("ghc-tasty-hunit" ,ghc-tasty-hunit))) + (home-page "https://github.com/feuerbach/regex-applicative") + (synopsis "Regex-based parsing with applicative interface") + (description + "@code{regex-applicative} is a Haskell library for parsing using +regular expressions. Parsers can be built using Applicative interface.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 7e444dba6e4dc43577680b0c1e205d9ac1d24397 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:48 +0000 Subject: gnu: Add ghc-regex-tdfa. * gnu/packages/haskell.scm (ghc-regex-tdfa): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 432d901d44..f401492094 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6589,4 +6589,30 @@ programs.") regular expressions. Parsers can be built using Applicative interface.") (license license:expat))) +(define-public ghc-regex-tdfa + (package + (name "ghc-regex-tdfa") + (version "1.2.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/regex-tdfa/regex-tdfa-" + version ".tar.gz")) + (sha256 + (base32 + "0f8x8wyr6m21g8dnxvnvalz5bsq37l125l6qhs0fscbvprsxc4nb")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-parsec" ,ghc-parsec) + ("ghc-regex-base" ,ghc-regex-base))) + (home-page "https://github.com/ChrisKuklewicz/regex-tdfa") + (synopsis "POSIX extended regular expressions in Haskell.") + (description + "Regex-tdfa is a pure Haskell regular expression library implementing POSIX +extended regular expressions. It is a \"tagged\" DFA regex engine. It is +inspired by libtre.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From fe3c62c7d541abd8f77b9f216d087f8b8997c4df Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:49 +0000 Subject: gnu: Add ghc-regex-compat-tdfa. * gnu/packages/haskell.scm (ghc-regex-compat-tdfa): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index f401492094..544c21d245 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6615,4 +6615,30 @@ extended regular expressions. It is a \"tagged\" DFA regex engine. It is inspired by libtre.") (license license:bsd-3))) +(define-public ghc-regex-compat-tdfa + (package + (name "ghc-regex-compat-tdfa") + (version "0.95.1.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/regex-compat-tdfa/regex-compat-tdfa-" + version ".tar.gz")) + (sha256 + (base32 + "1p90fn90yhp7fvljjdqjp41cszidcfz4pw7fwvzyx4739b98x8sg")))) + (build-system haskell-build-system) + (inputs + `(("ghc-regex-base" ,ghc-regex-base) + ("ghc-regex-tdfa" ,ghc-regex-tdfa))) + (home-page "http://hub.darcs.net/shelarcy/regex-compat-tdfa") + (synopsis "Unicode Support version of Text.Regex, using regex-tdfa") + (description + "One module layer over @code{regex-tdfa} to replace @code{Text.Regex}. +@code{regex-compat} can't use Unicode characters correctly because of using regex-posix. +This is not good for Unicode users. This modified regex-compat uses regex-tdfa to solve +this problem.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From ab12bd3a0455d7081ad8c63eae8c3a90e75079c8 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:50 +0000 Subject: gnu: Add ghc-tasty-th. * gnu/packages/haskell.scm (ghc-tasty-th): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 544c21d245..cadf09784e 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6641,4 +6641,29 @@ This is not good for Unicode users. This modified regex-compat uses regex-tdfa this problem.") (license license:bsd-3))) +(define-public ghc-tasty-th + (package + (name "ghc-tasty-th") + (version "0.1.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/tasty-th/tasty-th-" + version ".tar.gz")) + (sha256 + (base32 + "0dff9si8i1qp0s7p4hlk0l29vq7wxfglw6mvlgmld43h7rllv88q")))) + (build-system haskell-build-system) + (inputs + `(("ghc-tasty" ,ghc-tasty))) + (home-page "http://github.com/bennofs/tasty-th") + (synopsis "Automatically generate tasty TestTrees") + (description + "Tasty-th automatically generates tasty TestTrees from functions of the +current module, using TemplateHaskell. This is a fork the original +test-framework-th package, modified to work with tasty instead of +test-framework.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From e9e519be76b26e6ac6f55fa335f547602b5578fa Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:51 +0000 Subject: gnu: Add ghc-sandi. * gnu/packages/haskell.scm (ghc-sandi): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index cadf09784e..3213a2edb3 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6666,4 +6666,32 @@ test-framework-th package, modified to work with tasty instead of test-framework.") (license license:bsd-3))) +(define-public ghc-sandi + (package + (name "ghc-sandi") + (version "0.4.0") ; darcs-2.12.4 needs == 0.4.* + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/sandi/sandi-" + version ".tar.gz")) + (sha256 + (base32 + "1smf3bq44qni4zbgxpw7cy7b9g95fbrr73j8njjf6139naj9bj20")))) + (build-system haskell-build-system) + (inputs + `(("ghc-stringsearch" ,ghc-stringsearch) + ("ghc-conduit" ,ghc-conduit) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-hunit" ,ghc-hunit) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-tasty-th" ,ghc-tasty-th))) + (home-page "http://hackage.haskell.org/package/sandi") + (synopsis "Data encoding library") + (description "Reasonably fast data encoding library.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From a71f861752f5e060757ced0ae077e7fab9f9e27d Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:52 +0000 Subject: gnu: Add ghc-bytestring-handle. * gnu/packages/haskell.scm (ghc-bytestring-handle): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 3213a2edb3..cbb1ba7f72 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6694,4 +6694,29 @@ test-framework.") (description "Reasonably fast data encoding library.") (license license:bsd-3))) +(define-public ghc-bytestring-handle + (package + (name "ghc-bytestring-handle") + (version "0.1.0.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/bytestring-handle/bytestring-handle-" + version ".tar.gz")) + (sha256 + (base32 + "0q5yzx90ad9w7qvaix05bynxwlsbqjrgfc4hqb355ibf991wd0rh")))) + (build-system haskell-build-system) + (inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-hunit" ,ghc-hunit) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework" ,ghc-test-framework))) + (home-page "http://hub.darcs.net/ganesh/bytestring-handle") + (synopsis "ByteString-backed Handles") + (description "ByteString-backed Handles") ; There is no description + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From f8270331020ed4051a4ef51151a2622bb95ef3b7 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:53 +0000 Subject: gnu: Add ghc-tar. * gnu/packages/haskell.scm (ghc-tar): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index cbb1ba7f72..861f59456e 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6719,4 +6719,36 @@ test-framework.") (description "ByteString-backed Handles") ; There is no description (license license:bsd-3))) +(define-public ghc-tar + (package + (name "ghc-tar") + (version "0.5.0.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/tar/tar-" + version ".tar.gz")) + (sha256 + (base32 + "18qq94j9bm91iswnxq2dm5dws5c7wm4k01q2rpf8py35cf3svnfq")))) + (build-system haskell-build-system) + (inputs + `(("ghc-bytestring-handle" ,ghc-bytestring-handle) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-array" ,ghc-array))) + (home-page "http://hackage.haskell.org/package/tar") + (synopsis "Reading, writing and manipulating \".tar\" archive files") + (description + "This library is for working with \\\"@.tar@\\\" archive files. +It can read and write a range of common variations of the tar archive format +including V7, POSIX USTAR and GNU formats. It provides support for packing and +unpacking portable archives. This makes it suitable for distribution but not +backup because details like file ownership and exact permissions are not +preserved. It also provides features for random access to archive content using +an index.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 54c37341d1720c5cdd3772e729a419f2f46b6fb2 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:54 +0000 Subject: gnu: Add ghc-transformers. * gnu/packages/haskell.scm (ghc-transformers): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 861f59456e..9205e958c0 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6751,4 +6751,33 @@ preserved. It also provides features for random access to archive content using an index.") (license license:bsd-3))) +(define-public ghc-transformers + (package + (name "ghc-transformers") + (version "0.5.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/transformers/transformers-" + version ".tar.gz")) + (sha256 + (base32 + "1qkhi8ssf8c4jnmrw9dzym3igqbzq7h48iisaykdfzdsm09qfh3c")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/transformers") + (synopsis "Concrete functor and monad transformers") + (description + "A portable library of functor and monad transformers, inspired by the paper +'Functional Programming with Overloading and Higher-Order Polymorphism', +by Mark P Jones. This package contains the monad transformer class and IO monad class, +concrete functor and monad transformers, each with associated operations and functions +to lift operations associated with other transformers. The package can be used on +its own in portable Haskell code, in which case operations need to be manually lifted +through transformer stacks. Alternatively, it can be used with the +non-portable monad classes in the @code{mtl} or @code{monads-tf} packages, +which automatically lift operations introduced by monad transformers through +other transformers.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 027b79762a31cb0b78d44a65ed9bc4343ad0954b Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:55 +0000 Subject: gnu: Add ghc-findbin. * gnu/packages/haskell.scm (ghc-findbin): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 9205e958c0..099c3e6c5b 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6780,4 +6780,27 @@ which automatically lift operations introduced by monad transformers through other transformers.") (license license:bsd-3))) +(define-public ghc-findbin + (package + (name "ghc-findbin") + (version "0.0.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/FindBin/FindBin-" + version ".tar.gz")) + (sha256 + (base32 + "197xvn05yysmibm1p5wzxfa256lvpbknr5d1l2ws6g40w1kpk717")))) + (build-system haskell-build-system) + (home-page "https://github.com/audreyt/findbin") + (synopsis "Get the absolute path of the running program") + (description + "This module locates the full directory of the running program, to allow +the use of paths relative to it. FindBin supports invocation of Haskell +programs via \"ghci\", via \"runhaskell/runghc\", as well as compiled as +an executable.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From d52ca22ac3cb2cbf6e95d581c207f702c9f4bc81 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:56 +0000 Subject: gnu: Add ghc-patience. * gnu/packages/haskell.scm (ghc-patience): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 099c3e6c5b..aebc7a9dd6 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6803,4 +6803,28 @@ programs via \"ghci\", via \"runhaskell/runghc\", as well as compiled as an executable.") (license license:bsd-3))) +(define-public ghc-patience + (package + (name "ghc-patience") + (version "0.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/patience/patience-" + version ".tar.gz")) + (sha256 + (base32 + "0qyv20gqy9pb1acy700ahv70lc6vprcwb26cc7fcpcs4scsc7irm")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/patience") + (synopsis "Patience diff and longest increasing subsequence") + (description + "This library implements the 'patience diff' algorithm, as well as the +patience algorithm for the longest increasing subsequence problem. +Patience diff computes the difference between two lists, for example the lines +of two versions of a source file. It provides a good balance between +performance, nice output for humans, and simplicity of implementation.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 41167bd2553b5fc3094cc91a5580fb847c7f5f86 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:57 +0000 Subject: gnu: Add ghc-monads-tf. * gnu/packages/haskell.scm (ghc-monads-tf): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index aebc7a9dd6..d8c849e4ee 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6827,4 +6827,27 @@ of two versions of a source file. It provides a good balance between performance, nice output for humans, and simplicity of implementation.") (license license:bsd-3))) +(define-public ghc-monads-tf + (package + (name "ghc-monads-tf") + (version "0.1.0.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/monads-tf/monads-tf-" + version ".tar.gz")) + (sha256 + (base32 + "1wdhskwa6dw8qljbvwpyxj8ca6y95q2np7z4y4q6bpf4anmd5794")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/monads-tf") + (synopsis "Monad classes, using type families") + (description + "Monad classes using type families, with instances for various monad transformers, +inspired by the paper 'Functional Programming with Overloading and Higher-Order +Polymorphism', by Mark P Jones. This package is almost a compatible replacement for +the @code{mtl-tf} package.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 1d9db656c9498510e6b96d36b52838231dbd034e Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:58 +0000 Subject: gnu: Add ghc-bytestring. * gnu/packages/haskell.scm (ghc-bytestring): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index d8c849e4ee..13c5defcdd 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6850,4 +6850,41 @@ Polymorphism', by Mark P Jones. This package is almost a compatible replacement the @code{mtl-tf} package.") (license license:bsd-3))) +(define-public ghc-bytestring + (package + (name "ghc-bytestring") + (version "0.10.8.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/bytestring/bytestring-" + version ".tar.gz")) + (sha256 + (base32 + "16zwb1p83z7vc5wlhvknpy80b5a2jxc5awx67rk52qnp9idmyq9d")))) + (build-system haskell-build-system) + (inputs + `(("ghc-random" ,ghc-random) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-hunit" ,ghc-hunit) + ("ghc-byteorder" ,ghc-byteorder) + ("ghc-dlist" ,ghc-dlist) + ("ghc-mtl" ,ghc-mtl))) + (arguments + `(#:tests? #f)) ; Test number two becomes non-responsive for 20+ minutes + (home-page "https://github.com/haskell/bytestring") + (synopsis "Fast, compact, strict and lazy byte strings with a list interface") + (description + "An efficient compact, immutable byte string type (both strict and lazy) +suitable for binary or 8-bit character data. The 'ByteString' type represents +sequences of bytes or 8-bit characters. It is suitable for high performance use, +both in terms of large data quantities, or high speed requirements. The 'ByteString' +functions follow the same style as ordinary lists, so it is easy to convert code +from using 'String' to 'ByteString'.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From e1a56bb258728a1ece5cec378efd497fe1dfbc27 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:09:59 +0000 Subject: gnu: Add ghc-colour. * gnu/packages/haskell.scm (ghc-colour): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 13c5defcdd..8ed658c17a 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6887,4 +6887,26 @@ functions follow the same style as ordinary lists, so it is easy to convert code from using 'String' to 'ByteString'.") (license license:bsd-3))) +(define-public ghc-colour +(package + (name "ghc-colour") + (version "2.3.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/colour/colour-" + version ".tar.gz")) + (sha256 + (base32 + "1qmn1778xzg07jg9nx4k1spdz2llivpblf6wwrps1qpqjhsac5cd")))) + (build-system haskell-build-system) + (home-page "http://www.haskell.org/haskellwiki/Colour") + (synopsis "Model for human colour perception") + (description + "This package provides a data type for colours and transparency. +Colours can be blended and composed. Various colour spaces are +supported. A module of colour names (\"Data.Colour.Names\") is provided.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 4fec5cdbf476067a2c2105121139857c024b547e Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:00 +0000 Subject: gnu: Add ghc-directory. * gnu/packages/haskell.scm (ghc-directory): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 8ed658c17a..3fb847a4d2 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6909,4 +6909,25 @@ Colours can be blended and composed. Various colour spaces are supported. A module of colour names (\"Data.Colour.Names\") is provided.") (license license:expat))) +(define-public ghc-directory + (package + (name "ghc-directory") + (version "1.2.7.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/directory/directory-" + version ".tar.gz")) + (sha256 + (base32 + "0h3hrqskadmbigaxbz2k5xxjjjlmfaq2zdn2g7jh1wv9k6yrxraa")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/directory") + (synopsis "Platform-agnostic library for filesystem operations") + (description + "This library provides a basic set of operations for manipulating +files and directories in a portable way.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 3b281f5b8d9f7ee26d35c007ca17c1cb228eaa2f Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:01 +0000 Subject: gnu: Add ghc-process. * gnu/packages/haskell.scm (ghc-process): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 3fb847a4d2..a14163d295 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6930,4 +6930,24 @@ supported. A module of colour names (\"Data.Colour.Names\") is provided.") files and directories in a portable way.") (license license:bsd-3))) +(define-public ghc-process + (package + (name "ghc-process") + (version "1.4.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/process/process-" + version ".tar.gz")) + (sha256 + (base32 + "1v1bav5isqxq9fc4lw714x94qbfsjbm2nn12kjp69r1ql8jaaaqw")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/process") + (synopsis "System process libraries") + (description + "This package contains libraries for dealing with system processes.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 6e0741f739fe08ad686b73c1cf90118a2d649905 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:02 +0000 Subject: gnu: Add ghc-wl-pprint-text. * gnu/packages/haskell.scm (ghc-wl-pprint-text): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index a14163d295..523fceb31c 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6950,4 +6950,26 @@ files and directories in a portable way.") "This package contains libraries for dealing with system processes.") (license license:bsd-3))) +(define-public ghc-wl-pprint-text + (package + (name "ghc-wl-pprint-text") + (version "1.1.0.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/wl-pprint-text/wl-pprint-text-" + version ".tar.gz")) + (sha256 + (base32 + "1xgizzimfw17mpmw2afvmnvyag976j8ggn7k5r564rkw9f0m6bgz")))) + (build-system haskell-build-system) + (inputs + `(("ghc-text" ,ghc-text))) + (home-page "http://hackage.haskell.org/package/wl-pprint-text") + (synopsis "Wadler/Leijen Pretty Printer for Text values") + (description + "A clone of wl-pprint for use with the text library.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From ce242fd05eda0f0ffddb05f895358be0648881e7 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:03 +0000 Subject: gnu: ghc-fgl: Update to 5.5.3.0. * gnu/packages/haskell.scm (ghc-fgl): Update to 5.5.3.0. [inputs]: Add ghc-hspec and ghc-quickcheck. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 523fceb31c..ae343a24d4 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -3032,7 +3032,7 @@ variety of traversals.") (define-public ghc-fgl (package (name "ghc-fgl") - (version "5.5.1.0") + (version "5.5.3.0") (outputs '("out" "doc")) (source (origin @@ -3043,9 +3043,12 @@ variety of traversals.") ".tar.gz")) (sha256 (base32 - "0rcmz0xlyr1wj490ffja29z1jgl51gz19ka609da6bx39bwx7nga")))) + "0fbyb6jxy9whgrv6dgnkzz70cmy98arx3q2gnkhgl4a3d7idh36p")))) (build-system haskell-build-system) - (inputs `(("ghc-mtl" ,ghc-mtl))) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-hspec" ,ghc-hspec) + ("ghc-quickcheck" ,ghc-quickcheck))) (home-page "http://web.engr.oregonstate.edu/~erwig/fgl/haskell") (synopsis "Martin Erwig's Functional Graph Library") -- cgit v1.2.3 From d4cca6b0ae238b24839cac1bf2c361046996ad54 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:04 +0000 Subject: gnu: Add ghc-fgl-arbitrary. * gnu/packages/haskell.scm (ghc-fgl-arbitrary): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index ae343a24d4..f3efe199d4 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6975,4 +6975,31 @@ files and directories in a portable way.") "A clone of wl-pprint for use with the text library.") (license license:bsd-3))) +(define-public ghc-fgl-arbitrary + (package + (name "ghc-fgl-arbitrary") + (version "0.2.0.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/fgl-arbitrary/fgl-arbitrary-" + version ".tar.gz")) + (sha256 + (base32 + "12qbsla4vivffris6y3gj29vrafkpyazqdbdy2m55nggypqpf7ah")))) + (build-system haskell-build-system) + (inputs + `(("ghc-fgl" ,ghc-fgl) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-hspec" ,ghc-hspec))) + (home-page "http://hackage.haskell.org/package/fgl-arbitrary") + (synopsis "QuickCheck support for fgl") + (description + "Provides Arbitrary instances for fgl graphs to avoid adding a +QuickCheck dependency for fgl whilst still making the instances +available to others. Also available are non-fgl-specific functions +for generating graph-like data structures.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 3db882776b97f38f0563165c981fd5504d103b5c Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:05 +0000 Subject: gnu: Add ghc-graphviz. * gnu/packages/haskell.scm (ghc-graphviz): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index f3efe199d4..cdacc56a04 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7002,4 +7002,46 @@ available to others. Also available are non-fgl-specific functions for generating graph-like data structures.") (license license:bsd-3))) +(define-public ghc-graphviz + (package + (name "ghc-graphviz") + (version "2999.18.1.2") + (source (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/" + "graphviz/graphviz-" version ".tar.gz")) + (sha256 + (base32 + "1z453is01v0rnxlv6xx4iyaqv5vrp3bpz829mpv1a341sck2135h")))) + (build-system haskell-build-system) + (inputs + `(("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-colour" ,ghc-colour) + ("ghc-dlist" ,ghc-dlist) + ("ghc-fgl" ,ghc-fgl) + ("ghc-fgl-arbitrary" ,ghc-fgl-arbitrary) + ("ghc-polyparse" ,ghc-polyparse) + ("ghc-temporary" ,ghc-temporary) + ("ghc-text" ,ghc-text) + ("ghc-wl-pprint-text" ,ghc-wl-pprint-text))) + (home-page "https://hackage.haskell.org/package/graphviz") + (synopsis "Bindings to Graphviz for graph visualisation") + (description + "This library provides bindings for the Dot language used by +the @uref{http://graphviz.org/, Graphviz} suite of programs for +visualising graphs, as well as functions to call those programs. +Main features of the graphviz library include: + +@enumerate +@item Almost complete coverage of all Graphviz attributes and syntax +@item Support for specifying clusters +@item The ability to use a custom node type +@item Functions for running a Graphviz layout tool with all specified output types +@item Generate and parse Dot code with two options: strict and liberal +@item Functions to convert FGL graphs and other graph-like data structures +@item Round-trip support for passing an FGL graph through Graphviz to augment node +and edge labels with positional information, etc. +@end enumerate\n") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From e7e2f03c8f3cb8d5e376af6b67704849246aafa6 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:06 +0000 Subject: gnu: Add ghc-array. * gnu/packages/haskell.scm (ghc-array): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index cdacc56a04..1586923134 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7044,4 +7044,27 @@ and edge labels with positional information, etc. @end enumerate\n") (license license:bsd-3))) +(define-public ghc-array + (package + (name "ghc-array") + (version "0.5.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/array/array-" + version ".tar.gz")) + (sha256 + (base32 + "08r2rq4blvc737mrg3xhlwiw13jmsz5dlf2fd0ghb9cdaxc6kjc9")))) + (build-system haskell-build-system) + (home-page + "http://hackage.haskell.org/package/array") + (synopsis "Mutable and immutable arrays") + (description + "In addition to providing the @code{Data.Array} module, this package also defines +the classes @code{IArray} of immutable arrays and @code{MArray} of arrays mutable +within appropriate monads, as well as some instances of these classes.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 6aab9ba6d445d3eac32582caa045ebe88374e5aa Mon Sep 17 00:00:00 2001 From: ng0 Date: Tue, 20 Sep 2016 21:17:41 -0400 Subject: gnu: Add ghc-constraints. * gnu/packages/haskell.scm (ghc-constraints): New variable. --- gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 1586923134..91e87789dd 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7067,4 +7067,30 @@ the classes @code{IArray} of immutable arrays and @code{MArray} of arrays mutabl within appropriate monads, as well as some instances of these classes.") (license license:bsd-3))) +(define-public ghc-constraints + (package + (name "ghc-constraints") + (version "0.8") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/constraints/constraints-" + version ".tar.gz")) + (sha256 + (base32 + "120mmv9rwbahslisc1z8zx9lw7v6hl5fzid4l0hiy5as6ijqgl2c")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hashable" ,ghc-hashable) + ("ghc-mtl" ,ghc-mtl) + ("ghc-transformers-compat" ,ghc-transformers-compat))) + (home-page "http://github.com/ekmett/constraints/") + (synopsis "Constraint manipulation") + (description + "GHC 7.4 gave us the ability to talk about @code{ConstraintKinds}. +They stopped crashing the compiler in GHC 7.6. This package provides +a vocabulary for working with them.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 2b41f4afc113bf7ea8d5151e5e389ae36d2c720b Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:09 +0000 Subject: gnu: Add ghc-lifted-async. * gnu/packages/haskell.scm (ghc-lifted-async): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 91e87789dd..92f3ccf413 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7093,4 +7093,36 @@ They stopped crashing the compiler in GHC 7.6. This package provides a vocabulary for working with them.") (license license:bsd-3))) +(define-public ghc-lifted-async + (package + (name "ghc-lifted-async") + (version "0.9.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/lifted-async/lifted-async-" + version ".tar.gz")) + (sha256 + (base32 + "00fnwfcnc6niq9jbbb9rap9rkdgv5qhcglwanzc5fi8834j94c1r")))) + (build-system haskell-build-system) + (inputs + `(("ghc-async" ,ghc-async) + ("ghc-lifted-base" ,ghc-lifted-base) + ("ghc-transformers-base" ,ghc-transformers-base) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-constraints" ,ghc-constraints) + ("ghc-hunit" ,ghc-hunit) + ("ghc-mtl" ,ghc-mtl) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-tasty-th" ,ghc-tasty-th))) + (home-page "https://github.com/maoe/lifted-async") + (synopsis "Run lifted IO operations asynchronously and wait for their results") + (description + "This package provides IO operations from @code{async} package lifted to any +instance of @code{MonadBase} or @code{MonadBaseControl}.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From ddd5955b1ed0b4a3d67d91d027ee88165bf865e3 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:10 +0000 Subject: gnu: Add ghc-system-filepath-bootstrap. * gnu/packages/haskell.scm (ghc-system-filepath-bootstrap): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 92f3ccf413..00f5872b8d 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7125,4 +7125,35 @@ a vocabulary for working with them.") instance of @code{MonadBase} or @code{MonadBaseControl}.") (license license:bsd-3))) +;; Ghc-shelly depends on ghc-system-filepath and ghc-system-fileio, who in turn depend on +;; ghc-chell and ghc-chell-quickcheck for the test phase. Ghc-chell depends on ghc-options +;; which depends on ghc-chell and ghc-chell-quickcheck. +;; Therefore we bootstrap it with tests disabled. +(define ghc-system-filepath-bootstrap + (package + (name "ghc-system-filepath-bootstrap") + (version "0.4.13.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-filepath/system-filepath-" + version ".tar.gz")) + (sha256 + (base32 + "1yy5zsmmimhg6iaw9fmpwrxvxrgi5s6bfyqfihdsnx4bjvn7sp9l")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) + (inputs + `(("ghc-text" ,ghc-text) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "High-level, byte-based file and directory path manipulations") + (description + "Provides a FilePath datatype and utility functions for operating on it. +Unlike the filepath package, this package does not simply reuse String, +increasing type safety.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 3f7aa1029b10e420f9b28829ce8badf8f6d19bc1 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:11 +0000 Subject: gnu: Add ghc-system-fileio-bootstrap. * gnu/packages/haskell.scm (ghc-system-fileio-bootstrap): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 00f5872b8d..52498e3568 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7156,4 +7156,36 @@ Unlike the filepath package, this package does not simply reuse String, increasing type safety.") (license license:expat))) +;; See ghc-system-filepath-bootstrap. In addition this package depends on +;; ghc-system-filepath. +(define ghc-system-fileio-bootstrap + (package + (name "ghc-system-fileio-bootstrap") + (version "0.3.16.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-fileio/system-fileio-" + version ".tar.gz")) + (sha256 + (base32 + "1484hcl27s2qcby8ws5djj11q9bz68bspcifz9h5gii2ndy70x9i")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) + (inputs + `(("ghc-system-filepath-bootstrap" ,ghc-system-filepath-bootstrap) + ("ghc-text" ,ghc-text) + ("ghc-temporary" ,ghc-temporary))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "Consistent filesystem interaction across GHC versions") + (description + "This is a small wrapper around the directory, unix, and Win32 packages, +for use with system-filepath. It provides a consistent API to the various +versions of these packages distributed with different versions of GHC. +In particular, this library supports working with POSIX files that have paths +which can't be decoded in the current locale encoding.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 25b3bdb5ffed180f1c7e393f3287d1e5d0364be7 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:12 +0000 Subject: gnu: Add ghc-shelly. * gnu/packages/haskell.scm (ghc-shelly): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 52498e3568..100efd65aa 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7188,4 +7188,40 @@ In particular, this library supports working with POSIX files that have paths which can't be decoded in the current locale encoding.") (license license:expat))) +(define-public ghc-shelly + (package + (name "ghc-shelly") + (version "1.6.8") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/shelly/shelly-" + version ".tar.gz")) + (sha256 + (base32 + "0bg1pj5bhswfgwfgz66xr82i8cmjgrnx5ljvjy37052zxb82imnk")))) + (build-system haskell-build-system) + (inputs + `(("ghc-mtl" ,ghc-mtl) + ("ghc-unix-compat" ,ghc-unix-compat) + ("ghc-system-filepath-bootstrap" ,ghc-system-filepath-bootstrap) + ("ghc-system-fileio-bootstrap" ,ghc-system-fileio-bootstrap) + ("ghc-monad-control" ,ghc-monad-control) + ("ghc-lifted-base" ,ghc-lifted-base) + ("ghc-lifted-async" ,ghc-lifted-async) + ("ghc-exceptions" ,ghc-exceptions) + ("ghc-enclosed-exceptions" ,ghc-enclosed-exceptions) + ("ghc-text" ,ghc-text) + ("ghc-async" ,ghc-async) + ("ghc-transformers-base" ,ghc-transformers-base) + ("ghc-hunit" ,ghc-hunit) + ("ghc-hspec" ,ghc-hspec))) + (home-page "https://github.com/yesodweb/Shelly.hs") + (synopsis "Shell-like (systems) programming in Haskell") + (description + "Shelly provides convenient systems programming in Haskell, similar in +spirit to POSIX shells. Shelly is originally forked from the Shellish package.") + (license license:bsd-3))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 7e06c4aa98a3d240c8e8847e825c1a2f780e1fbe Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:13 +0000 Subject: gnu: Add ghc-options-bootstrap. * gnu/packages/haskell.scm (ghc-options-bootstrap): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 100efd65aa..51cfa74a21 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7224,4 +7224,30 @@ which can't be decoded in the current locale encoding.") spirit to POSIX shells. Shelly is originally forked from the Shellish package.") (license license:bsd-3))) +;; See ghc-system-filepath-bootstrap, chell and chell-quickcheck are required for tests. +(define ghc-options-bootstrap + (package + (name "ghc-options-bootstrap") + (version "1.2.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/options/options-" + version ".tar.gz")) + (sha256 + (base32 + "0qjs0v1ny52w51n5582d4z8wy9h6n0zw1xb5dh686ff5wadflgi8")))) + (build-system haskell-build-system) + (arguments + `(#:tests? #f)) + (inputs + `(("ghc-monads-tf" ,ghc-monads-tf))) + (home-page "https://john-millikin.com/software/haskell-options/") + (synopsis "Powerful and easy-to-use command-line option parser") + (description + "The @code{options} package lets library and application developers +easily work with command-line options.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 8ea94489fd954960acb2edc269b7cb88a3a38bae Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:14 +0000 Subject: gnu: Add ghc-chell. * gnu/packages/haskell.scm (ghc-chell): New variables. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 51cfa74a21..39a231266d 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7250,4 +7250,33 @@ spirit to POSIX shells. Shelly is originally forked from the Shellish package. easily work with command-line options.") (license license:expat))) +(define-public ghc-chell + (package + (name "ghc-chell") + (version "0.4.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/chell/chell-" + version ".tar.gz")) + (sha256 + (base32 + "0lb95abzxl4a87nfqxsxpb3a39pd52cci43hcvj8615hyhqvs2jz")))) + (build-system haskell-build-system) + (inputs + `(("ghc-options-bootstrap" ,ghc-options-bootstrap) + ("ghc-patience" ,ghc-patience) + ("ghc-random" ,ghc-random) + ("ghc-text" ,ghc-text) + ("ghc-ansi-terminal" ,ghc-ansi-terminal))) + (home-page "https://john-millikin.com/software/chell/") + (synopsis "Simple and intuitive library for automated testing") + (description + "Chell is a simple and intuitive library for automated testing. +It natively supports assertion-based testing, and can use companion +libraries such as @code{chell-quickcheck} to support more complex +testing strategies.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 475d3668660945f992886f8e16809255659eb271 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:15 +0000 Subject: gnu: Add ghc-chell-quickcheck-bootstrap. * gnu/packages/haskell.scm (ghc-chell-quickcheck-bootstrap): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 39a231266d..ee502c97fe 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7279,4 +7279,29 @@ libraries such as @code{chell-quickcheck} to support more complex testing strategies.") (license license:expat))) +(define ghc-chell-quickcheck-bootstrap + (package + (name "ghc-chell-quickcheck-bootstrap") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/chell-quickcheck/chell-quickcheck-" + version ".tar.gz")) + (sha256 + (base32 + "02bkcnx5k6r5csdnnkvk4wfd0l36nxb87i1463ynw17n7ym9s4cs")))) + (build-system haskell-build-system) + (inputs + `(("ghc-chell" ,ghc-chell) + ("ghc-random" ,ghc-random) + ("ghc-quickcheck" ,ghc-quickcheck))) + (arguments + `(#:tests? #f)) + (home-page "https://john-millikin.com/software/chell/") + (synopsis "QuickCheck support for the Chell testing library") + (description "More complex tests for @code{chell}.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From c92d944c1e731ca5576c2acd90f04c2a708cf304 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:16 +0000 Subject: gnu: Add ghc-chell-quickcheck. * gnu/packages/haskell.scm (ghc-chell-quickcheck): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index ee502c97fe..ea51e02620 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7304,4 +7304,28 @@ testing strategies.") (description "More complex tests for @code{chell}.") (license license:expat))) +(define-public ghc-chell-quickcheck + (package + (name "ghc-chell-quickcheck") + (version "0.2.5") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/chell-quickcheck/chell-quickcheck-" + version ".tar.gz")) + (sha256 + (base32 + "02bkcnx5k6r5csdnnkvk4wfd0l36nxb87i1463ynw17n7ym9s4cs")))) + (build-system haskell-build-system) + (inputs + `(("ghc-chell" ,ghc-chell) + ("ghc-chell-quickcheck-bootstrap" ,ghc-chell-quickcheck-bootstrap) + ("ghc-random" ,ghc-random) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://john-millikin.com/software/chell/") + (synopsis "QuickCheck support for the Chell testing library") + (description "More complex tests for @code{chell}.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 58c85b1f8263a26e36f541e626ac7b30668bf1d2 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:17 +0000 Subject: gnu: Add ghc-options. * gnu/packages/haskell.scm (ghc-options): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index ea51e02620..b497380008 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7328,4 +7328,29 @@ testing strategies.") (description "More complex tests for @code{chell}.") (license license:expat))) +(define-public ghc-options + (package + (name "ghc-options") + (version "1.2.1.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/options/options-" + version ".tar.gz")) + (sha256 + (base32 + "0qjs0v1ny52w51n5582d4z8wy9h6n0zw1xb5dh686ff5wadflgi8")))) + (build-system haskell-build-system) + (inputs + `(("ghc-monads-tf" ,ghc-monads-tf) + ("ghc-chell" ,ghc-chell) + ("ghc-chell-quickcheck" ,ghc-chell-quickcheck))) + (home-page "https://john-millikin.com/software/haskell-options/") + (synopsis "Powerful and easy-to-use command-line option parser") + (description + "The @code{options} package lets library and application developers +easily work with command-line options.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 23feb6e4fbc42e47d0d36b8f7710366e5cf1e472 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:18 +0000 Subject: gnu: Add ghc-system-filepath. * gnu/packages/haskell.scm (ghc-system-filepath): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index b497380008..35fcf6d847 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7353,4 +7353,31 @@ testing strategies.") easily work with command-line options.") (license license:expat))) +(define-public ghc-system-filepath + (package + (name "ghc-system-filepath") + (version "0.4.13.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-filepath/system-filepath-" + version ".tar.gz")) + (sha256 + (base32 + "1yy5zsmmimhg6iaw9fmpwrxvxrgi5s6bfyqfihdsnx4bjvn7sp9l")))) + (build-system haskell-build-system) + (inputs + `(("ghc-text" ,ghc-text) + ("ghc-chell" ,ghc-chell) + ("ghc-chell-quickcheck" ,ghc-chell-quickcheck) + ("ghc-quickcheck" ,ghc-quickcheck))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "High-level, byte-based file and directory path manipulations") + (description + "Provides a FilePath datatype and utility functions for operating on it. +Unlike the filepath package, this package does not simply reuse String, +increasing type safety.") + (license license:expat))) + ;;; haskell.scm ends here -- cgit v1.2.3 From 10a03d6665309903d614b87ab2d17278425feb2a Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:19 +0000 Subject: gnu: Add ghc-system-fileio. * gnu/packages/haskell.scm (ghc-system-fileio): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 35fcf6d847..9825dba5e1 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -7380,4 +7380,32 @@ Unlike the filepath package, this package does not simply reuse String, increasing type safety.") (license license:expat))) +(define-public ghc-system-fileio + (package + (name "ghc-system-fileio") + (version "0.3.16.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/system-fileio/system-fileio-" + version ".tar.gz")) + (sha256 + (base32 + "1484hcl27s2qcby8ws5djj11q9bz68bspcifz9h5gii2ndy70x9i")))) + (build-system haskell-build-system) + (inputs + `(("ghc-system-filepath" ,ghc-system-filepath) + ("ghc-text" ,ghc-text) + ("ghc-chell" ,ghc-chell) + ("ghc-temporary" ,ghc-temporary))) + (home-page "https://github.com/fpco/haskell-filesystem") + (synopsis "Consistent filesystem interaction across GHC versions") + (description + "This is a small wrapper around the directory, unix, and Win32 packages, +for use with system-filepath. It provides a consistent API to the various +versions of these packages distributed with different versions of GHC. +In particular, this library supports working with POSIX files that have paths +which can't be decoded in the current locale encoding.") + (license license:expat))) ;;; haskell.scm ends here -- cgit v1.2.3 From 71b611bc34ebb7b1ea86571ed88ce8ff850ccdaa Mon Sep 17 00:00:00 2001 From: ng0 Date: Sun, 18 Sep 2016 16:10:20 +0000 Subject: gnu: Add ghc-transformers-0.4.2.0. * gnu/packages/haskell.scm (ghc-transformers-0.4.2.0): New variable. Signed-off-by: Leo Famulari --- gnu/packages/haskell.scm | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 9825dba5e1..dcd21e2a46 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6783,6 +6783,19 @@ which automatically lift operations introduced by monad transformers through other transformers.") (license license:bsd-3))) +;; darcs-2.12.0 requires transformers-0.4.2.0 +(define-public ghc-transformers-0.4.2.0 + (package + (inherit ghc-transformers) + (version "0.4.2.0") + (source (origin + (method url-fetch) + (uri (string-append "https://hackage.haskell.org/package/transformers/" + "transformers-" version ".tar.gz")) + (sha256 + (base32 + "0a364zfcm17mhpy0c4ms2j88sys4yvgd6071qsgk93la2wjm8mkr")))))) + (define-public ghc-findbin (package (name "ghc-findbin") -- cgit v1.2.3 From cdf26f40b0e8cb969a880a53f8606663229e46ff Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 15 Sep 2016 23:31:41 -0500 Subject: build: clean-go: warn about stray .go files. * Makefile.am (clean-go): Warn of .go files remaining in builddir. --- Makefile.am | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Makefile.am b/Makefile.am index f9fe14166b..43a33c80ad 100644 --- a/Makefile.am +++ b/Makefile.am @@ -208,6 +208,12 @@ endif INSTALL_SRFI_37 # Handy way to remove the .go files without removing all the rest. clean-go: -$(RM) -f $(GOBJECTS) + @find . -name '*.go' -print | \ + if test -t 1; then \ + xargs -r echo -e "\033[31mwarning:\033[0m stray .go files:"; \ + else \ + xargs -r echo "warning: stray .go files:"; \ + fi # Test extensions; has to be unconditional. -- cgit v1.2.3 From 694196552684002daf590f10b9800f51eed69e08 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 22 Sep 2016 22:33:19 -0500 Subject: gnu: boost: Upgrade to 1.61.0. * gnu/packages/boost.scm (boost): Upgrade to 1.61.0 * gnu/packages/databases.scm (mysql)[arguments]: Compute boost minor version for substitution. --- gnu/packages/boost.scm | 4 ++-- gnu/packages/databases.scm | 6 ++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index 8fe8c8e899..ccc1f0664f 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -34,7 +34,7 @@ (define-public boost (package (name "boost") - (version "1.60.0") + (version "1.61.0") (source (origin (method url-fetch) (uri (string-append @@ -43,7 +43,7 @@ ".tar.bz2")) (sha256 (base32 - "0fzx6dwqbrkd4bcd8pjv0fpapwmrxxwr8yx9g67lihlsk3zzysk8")))) + "0h5nk7pgxf7xsvvshj9qfpsfp9wx6gq9r78n3nx736pxq83bsix5")))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib))) (native-inputs diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 4f345e20a4..d517805f35 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -222,7 +222,7 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.") "0mlrxcvkn6bf869hjw9fb6m24ak26ndffnd91b4mknmz8cqkb1ch")))) (build-system cmake-build-system) (arguments - '(#:configure-flags + `(#:configure-flags '("-DBUILD_CONFIG=mysql_release" "-DWITH_SSL=system" "-DWITH_ZLIB=system" @@ -249,7 +249,9 @@ SQL, Key/Value, XML/XQuery or Java Object storage for their data model.") (lambda _ ;; Mysql wants boost-1.59.0 specifically (substitute* "cmake/boost.cmake" - (("59") "60")))) + (("59") + ,(match (string-split (package-version boost) #\.) + ((_ minor . _) minor)))))) (add-after 'install 'remove-extra-binaries (lambda* (#:key outputs #:allow-other-keys) -- cgit v1.2.3 From 1a0ae573c7f04c2c9d1adb10ddeb816628f41c22 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 22 Sep 2016 22:34:04 -0500 Subject: gnu: boost: Add -j for build. * gnu/packages/boost.scm (boost)[arguments]: Add -j flag for build phase. --- gnu/packages/boost.scm | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index ccc1f0664f..ab31fa8c5c 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -90,7 +90,9 @@ (replace 'build (lambda* (#:key outputs make-flags #:allow-other-keys) - (zero? (apply system* "./b2" make-flags)))) + (zero? (apply system* "./b2" + (format #f "-j~a" (parallel-job-count)) + make-flags)))) (replace 'install (lambda* (#:key outputs make-flags #:allow-other-keys) -- cgit v1.2.3 From bd368c71749f09af69f5f5688cf536f0e943b868 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 22 Sep 2016 23:43:20 -0500 Subject: gnu: ccache: Use modify-phases. * gnu/packages/ccache.scm (ccache)[arguments]: Use modify-phases. --- gnu/packages/ccache.scm | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/gnu/packages/ccache.scm b/gnu/packages/ccache.scm index 01db7ae57d..9b8c147e69 100644 --- a/gnu/packages/ccache.scm +++ b/gnu/packages/ccache.scm @@ -43,14 +43,13 @@ ("which" ,(@ (gnu packages base) which)))) (inputs `(("zlib" ,zlib))) (arguments - '(#:phases (alist-cons-before - 'check 'setup-tests - (lambda _ - (substitute* '("test/test_hashutil.c" "test.sh") - (("#!/bin/sh") (string-append "#!" (which "sh"))) - (("which") (which "which"))) - #t) - %standard-phases))) + '(#:phases (modify-phases %standard-phases + (add-before 'check 'setup-tests + (lambda _ + (substitute* '("test/test_hashutil.c" "test.sh") + (("#!/bin/sh") (string-append "#!" (which "sh"))) + (("which") (which "which"))) + #t))))) (home-page "https://ccache.samba.org/") (synopsis "Compiler cache") (description -- cgit v1.2.3 From 56f33f3fd58ab5ad181aefd9cce2c72d06767803 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Thu, 22 Sep 2016 23:56:17 -0500 Subject: gnu: ccache: Upgrade to 3.3.1. * gnu/packages/ccache.scm (ccache): Upgrade to 3.3.1. [description]: Adjust supported languages. --- gnu/packages/ccache.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/ccache.scm b/gnu/packages/ccache.scm index 9b8c147e69..48ed860724 100644 --- a/gnu/packages/ccache.scm +++ b/gnu/packages/ccache.scm @@ -29,7 +29,7 @@ (define-public ccache (package (name "ccache") - (version "3.2.5") + (version "3.3.1") (source (origin (method url-fetch) @@ -37,7 +37,7 @@ version ".tar.xz")) (sha256 (base32 - "11db1g109g0g5si0s50yd99ja5f8j4asxb081clvx78r9d9i2w0i")))) + "1ij1p8arz72fw67gx65ngb7jmg30ynjxk7i8dmikjxkdri4pmn66")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl) ;for test.sh ("which" ,(@ (gnu packages base) which)))) @@ -55,5 +55,6 @@ (description "Ccache is a compiler cache. It speeds up recompilation by caching previous compilations and detecting when the same compilation is being done -again. Supported languages are C, C++, Objective-C and Objective-C++.") +again. Supported languages are C, C++, Objective-C, Objective-C++, and +Fortran 77.") (license gpl3+))) -- cgit v1.2.3 From 5989d4eaac8b1b98805d1e85df16f89690dc5b4e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 23 Sep 2016 07:40:39 +0200 Subject: gnu: synfig: Fix isnan error. * gnu/packages/animation.scm (synfig)[arguments]: Add build phase to replace "::isnan" with "std::isnan". --- gnu/packages/animation.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/animation.scm b/gnu/packages/animation.scm index 077657937d..8de1fbfaa8 100644 --- a/gnu/packages/animation.scm +++ b/gnu/packages/animation.scm @@ -91,6 +91,11 @@ C++ @dfn{Standard Template Library} (STL).") (substitute* "src/modules/mod_svg/svg_parser.cpp" (("xmlpp::Node::NodeList") "xmlpp::Node::const_NodeList")) #t)) + (add-after 'unpack 'fix-isnan-error + (lambda _ + (substitute* "src/synfig/time.cpp" + (("return !::isnan") "return !std::isnan")) + #t)) (add-before 'configure 'set-flags (lambda _ ;; Compile with C++11, required by libsigc++. -- cgit v1.2.3 From fc3b2cbb046458d17094fd567b24c30d862dee64 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 23 Sep 2016 09:00:34 +0300 Subject: gnu: retroarch: Update to 1.3.6. * gnu/packages/games.scm (retroarch): Update to 1.3.6. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 5ccefcb4fc..409e2842b9 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -864,7 +864,7 @@ either by Infocom or created using the Inform compiler.") (define-public retroarch (package (name "retroarch") - (version "1.3.4") + (version "1.3.6") (source (origin (method url-fetch) @@ -872,7 +872,7 @@ either by Infocom or created using the Inform compiler.") version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "077v1sj000y3csjw9vradba3k2aknvg5k8521z8aya6q987klwx5")))) + (base32 "1xar0wagcz50clwwkvjg4zq9m1sjqw47vw3xx44pisdj94g21m5y")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no tests -- cgit v1.2.3 From 47818201478f30805c13a67e14bf183b02991502 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 23 Sep 2016 08:22:09 +0200 Subject: gnu: randomjungle: Only build on x86_64 and i686. * gnu/packages/machine-learning.scm (randomjungle)[supported-systems]: Only build on x86_64 and i686. --- gnu/packages/machine-learning.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm index b663b4ffcb..7fd0a26d0d 100644 --- a/gnu/packages/machine-learning.scm +++ b/gnu/packages/machine-learning.scm @@ -267,6 +267,9 @@ networks) based on simulation of (stochastic) flow in graphs.") (native-inputs `(("gfortran" ,gfortran) ("gfortran:lib" ,gfortran "lib"))) + ;; Non-portable assembly instructions are used so building fails on + ;; platforms other than x86_64 or i686. + (supported-systems '("x86_64-linux" "i686-linux")) (home-page "http://www.imbs-luebeck.de/imbs/de/node/227/") (synopsis "Implementation of the Random Forests machine learning method") (description -- cgit v1.2.3 From 48b419ebd6b359a575c828df26ea61dc41ac571f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 23 Sep 2016 11:45:24 +0200 Subject: gnu: ngs-sdk: Update to 1.2.5. * gnu/packages/bioinformatics.scm (ngs-sdk): Update to 1.2.5. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 7da6f5546b..1f9110bb1c 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4120,7 +4120,7 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") (define-public ngs-sdk (package (name "ngs-sdk") - (version "1.2.3") + (version "1.2.5") (source (origin (method url-fetch) @@ -4130,7 +4130,7 @@ Roche 454, Ion Torrent and Pacific BioSciences SMRT.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "15074fdi94c6pjy83hhk22r86kfvzpaz2i07h3rqg9yy6x3w0pk2")))) + "04y1fsmdnb5y86m3gg6f5g9wcscr6r25n7m8mdlcxy0i2q6w6cia")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f ; not supported -- cgit v1.2.3 From 40974c933ec9f793bd51a3aeab4e4a6a48cde18e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 23 Sep 2016 11:46:26 +0200 Subject: gnu: ncbi-vdb: Update to 2.7.0. * gnu/packages/bioinformatics.scm (ncbi-vdb): Update to 2.7.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1f9110bb1c..6b4ee59c60 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4184,7 +4184,7 @@ simultaneously.") (define-public ncbi-vdb (package (name "ncbi-vdb") - (version "2.5.7") + (version "2.7.0") (source (origin (method url-fetch) @@ -4194,7 +4194,7 @@ simultaneously.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0hay5hy8ynva3mi5wbn4wmq1q23qwxc3aqzbb86hg3x4f1r73270")))) + "0x1cg1x8vy0yjlkp0snc1533zcjhxqzqsaiwqk598n7vvw37n8lf")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f ; not supported -- cgit v1.2.3 From 646a84338dc8d1935901c30029a90a1dccc8d6a2 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 23 Sep 2016 11:46:53 +0200 Subject: gnu: sra-tools: Update to 2.7.0. * gnu/packages/bioinformatics.scm (sra-tools): Update to 2.7.0. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 6b4ee59c60..1bf91a958e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4463,7 +4463,7 @@ sequence itself can be retrieved from these databases.") (define-public sra-tools (package (name "sra-tools") - (version "2.5.7") + (version "2.7.0") (source (origin (method url-fetch) @@ -4473,7 +4473,7 @@ sequence itself can be retrieved from these databases.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "0q93qg744x787d08qmjmdafki1wkbvkdwynayjnjd454gkd26jl5")))) + "13paw7bq6y47d2pl0ac5gpgcqp1xsy1g7v1fwysm3hr8lb2dck17")))) (build-system gnu-build-system) (arguments `(#:parallel-build? #f ; not supported -- cgit v1.2.3 From 8f309571d3847d4bca331061e881fa01d9badb77 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Fri, 23 Sep 2016 13:13:41 +0200 Subject: gnu: r-curl: Respect CURL_CA_BUNDLE variable. * gnu/packages/web.scm (r-curl)[arguments]: Add phase "allow-CURL_CA_BUNDLE". --- gnu/packages/web.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index 34b7ee32d0..e632d9c874 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3287,6 +3287,20 @@ applications.") (base32 "04fwasg400v8dvkcn1fcha1jzdz8lbyxi0679q7flsyrp57b3jrf")))) (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + ;; The environment variable CURL_CA_BUNDLE is only respected when + ;; running Windows, so we disable the platform checks. + ;; This can be removed once the libcurl has been patched. + (add-after 'unpack 'allow-CURL_CA_BUNDLE + (lambda _ + (substitute* "R/onload.R" + (("if \\(!grepl\\(\"mingw\".*") + "if (FALSE)\n")) + (substitute* "src/handle.c" + (("#ifdef _WIN32") "#if 1")) + #t))))) (inputs `(("libcurl" ,curl))) (home-page "https://github.com/jeroenooms/curl") -- cgit v1.2.3 From 236d522b808ec5288085d647c426fbbf5318f2e5 Mon Sep 17 00:00:00 2001 From: Nicolas Goaziou Date: Sun, 18 Sep 2016 22:40:44 +0200 Subject: gnu: giac-xcas: Update to 1.2.2-81. * gnu/packages/algebra.scm (giac-xcas): Update to 1.2.2-81. Signed-off-by: Leo Famulari --- gnu/packages/algebra.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index a15daf4ef8..4425514673 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -202,7 +202,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") (define-public giac-xcas (package (name "giac-xcas") - (version "1.2.2-75") + (version "1.2.2-81") (source (origin (method url-fetch) ;; "~parisse/giac" is not used because the maintainer regularly @@ -214,7 +214,7 @@ GP2C, the GP to C compiler, translates GP scripts to PARI programs.") "source/giac_" version ".tar.gz")) (sha256 (base32 - "0vs111fkd900wkm7yypaxmplc8i8j63d9shc3fbdhddn7cdj70b1")))) + "0jwlx8b97zkly9gcbdfbj4mzyn21dbg1kgpw7j7vqs380jryzgfs")))) (build-system gnu-build-system) (arguments `(#:phases -- cgit v1.2.3 From 5bd6270211b8b4d9335960eb5741c34308187ccd Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 23 Sep 2016 14:49:35 +0300 Subject: gnu: orpheus: Fix build on mips64el. * gnu/packages/orpheus.scm (orpheus)[arguments]: On mips64el, pass "--host=mips64el-unknown-linux-gnu" to ./configure. --- gnu/packages/orpheus.scm | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gnu/packages/orpheus.scm b/gnu/packages/orpheus.scm index 069d3e548a..f7912524c2 100644 --- a/gnu/packages/orpheus.scm +++ b/gnu/packages/orpheus.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014 Eric Bavier +;;; Copyright © 2014 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -62,7 +63,12 @@ (setenv "SHELL" (which "bash")) (setenv "LIBS" "-logg") ;doesn't declare its use of libogg (zero? - (system* "./configure" (string-append "--prefix=" out))))) + (system* "./configure" (string-append "--prefix=" out) + ,@(if (string=? "mips64el-linux" + (%current-system)) + '("--host=mips64el-unknown-linux-gnu") + '()) + )))) (alist-cons-after 'configure 'configure-players (lambda* (#:key inputs #:allow-other-keys) -- cgit v1.2.3 From 047cd01d11539b4afc547e430ae7f3b9af976bea Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Fri, 23 Sep 2016 17:37:53 +0300 Subject: gnu: orpheus: Use 'modify-phases'. * gnu/packages/orpheus.scm (orpheus)[arguments]: Use the 'modify-phases' syntax. --- gnu/packages/orpheus.scm | 79 ++++++++++++++++++++++++------------------------ 1 file changed, 39 insertions(+), 40 deletions(-) diff --git a/gnu/packages/orpheus.scm b/gnu/packages/orpheus.scm index f7912524c2..39118c9abc 100644 --- a/gnu/packages/orpheus.scm +++ b/gnu/packages/orpheus.scm @@ -53,46 +53,45 @@ ("which" ,which))) (arguments `(#:phases - (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - ;; This old `configure' script does not support variables passed as - ;; arguments. - (let ((out (assoc-ref outputs "out"))) - (setenv "CONFIG_SHELL" (which "bash")) - (setenv "SHELL" (which "bash")) - (setenv "LIBS" "-logg") ;doesn't declare its use of libogg - (zero? - (system* "./configure" (string-append "--prefix=" out) - ,@(if (string=? "mips64el-linux" - (%current-system)) - '("--host=mips64el-unknown-linux-gnu") - '()) - )))) - (alist-cons-after - 'configure 'configure-players - (lambda* (#:key inputs #:allow-other-keys) - ;; To avoid propagating the mpg321 and vorbis-tools inputs, we can - ;; make the orpheus application execute the needed players from the - ;; store. - (let ((ogg123 (string-append (assoc-ref inputs "vorbis-tools") - "/bin/ogg123")) - (mpg321 (string-append (assoc-ref inputs "mpg321") - "/bin/mpg321")) - (which (string-append (assoc-ref inputs "which") - "/bin/which"))) - (substitute* "src/orpheusconf.cc" - (("ogg123") ogg123) - (("which") which) - (("mpg321") mpg321)))) - (alist-cons-before - 'build 'patch-shells - (lambda _ - (substitute* '("src/mp3track.cc" - "src/streamtrack.cc" - "src/oggtrack.cc") - (("/bin/sh") (which "bash")))) - %standard-phases))))) + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + ;; This old `configure' script does not support variables passed as + ;; arguments. + (let ((out (assoc-ref outputs "out"))) + (setenv "CONFIG_SHELL" (which "bash")) + (setenv "SHELL" (which "bash")) + (setenv "LIBS" "-logg") ;doesn't declare its use of libogg + (zero? + (system* "./configure" (string-append "--prefix=" out) + ,@(if (string=? "mips64el-linux" + (%current-system)) + '("--host=mips64el-unknown-linux-gnu") + '()) + ))))) + (add-after 'configure 'configure-players + (lambda* (#:key inputs #:allow-other-keys) + ;; To avoid propagating the mpg321 and vorbis-tools inputs, we can + ;; make the orpheus application execute the needed players from the + ;; store. + (let ((ogg123 (string-append (assoc-ref inputs "vorbis-tools") + "/bin/ogg123")) + (mpg321 (string-append (assoc-ref inputs "mpg321") + "/bin/mpg321")) + (which (string-append (assoc-ref inputs "which") + "/bin/which"))) + (substitute* "src/orpheusconf.cc" + (("ogg123") ogg123) + (("which") which) + (("mpg321") mpg321)) + #t))) + (add-before 'build 'patch-shells + (lambda _ + (substitute* '("src/mp3track.cc" + "src/streamtrack.cc" + "src/oggtrack.cc") + (("/bin/sh") (which "bash"))) + #t))))) (home-page "http://thekonst.net/en/orpheus") (synopsis "Text-mode audio player") (description -- cgit v1.2.3 From 0f5de84e983bdb65db261ecf5963d4208a8474e4 Mon Sep 17 00:00:00 2001 From: ng0 Date: Mon, 19 Sep 2016 18:10:15 +0000 Subject: gnu: Add nickle. * gnu/packages/nickle.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 + gnu/packages/nickle.scm | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 gnu/packages/nickle.scm diff --git a/gnu/local.mk b/gnu/local.mk index d71d1c4efc..3d494ba9a3 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -259,6 +259,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/nettle.scm \ %D%/packages/networking.scm \ %D%/packages/nfs.scm \ + %D%/packages/nickle.scm \ %D%/packages/ninja.scm \ %D%/packages/node.scm \ %D%/packages/noweb.scm \ diff --git a/gnu/packages/nickle.scm b/gnu/packages/nickle.scm new file mode 100644 index 0000000000..1312aecbbd --- /dev/null +++ b/gnu/packages/nickle.scm @@ -0,0 +1,54 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 ng0 +;;; +;;; 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 . + +(define-module (gnu packages nickle) + #:use-module (gnu packages) + #:use-module (gnu packages readline) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages)) + +(define-public nickle + (package + (name "nickle") + (version "2.77") + (source (origin + (method url-fetch) + (uri (string-append "https://nickle.org/release/nickle-" + version ".tar.gz")) + (sha256 + (base32 + "0rhij7cn1zkn8wzxyjkamz9fs262zyg80p6v6i864hdalg4plpm3")))) + (build-system gnu-build-system) + (native-inputs + `(("readline" ,readline))) + (synopsis "Numeric oriented programming language") + (description + "Nickle is a programming language based prototyping environment with +powerful programming and scripting capabilities. Nickle supports a variety of +datatypes, especially arbitrary precision numbers. The programming language +vaguely resembles C. Some things in C which do not translate easily are +different, some design choices have been made differently, and a very few +features are simply missing. Nickle provides the functionality of Unix bc, dc +and expr in a different form. It is also an ideal environment for prototyping +complex algorithms. Nickle's scripting capabilities make it a replacement for +spreadsheets in some applications, and its numeric features complement the +limited numeric functionality of text-oriented languages such as AWK and Perl.") + (home-page "https://nickle.org/") + (license license:expat))) -- cgit v1.2.3 From 03ddad84bae4c862c728f617ff70734df709bf63 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Wed, 14 Sep 2016 22:09:06 +0200 Subject: gnu: flashrom: Update to 0.9.9 * gnu/packages/flashing-tools.scm (flashrom): Update to 0.9.9. [source]: Use HTTPS URL. Remove "flashrom-use-libftdi1.patch". [aruments]: Add 'CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no' to #:make-flags. * gnu/packages/patches/flashrom-use-libftdi1.patch: Delete file. * gnu/local.mk (dist_patch_DATA): Remove it. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 - gnu/packages/flashing-tools.scm | 11 ++-- gnu/packages/patches/flashrom-use-libftdi1.patch | 70 ------------------------ 3 files changed, 6 insertions(+), 76 deletions(-) delete mode 100644 gnu/packages/patches/flashrom-use-libftdi1.patch diff --git a/gnu/local.mk b/gnu/local.mk index 3d494ba9a3..9ebe99ac8c 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -512,7 +512,6 @@ dist_patch_DATA = \ %D%/packages/patches/fasthenry-spFactor.patch \ %D%/packages/patches/findutils-localstatedir.patch \ %D%/packages/patches/findutils-test-xargs.patch \ - %D%/packages/patches/flashrom-use-libftdi1.patch \ %D%/packages/patches/flint-ldconfig.patch \ %D%/packages/patches/fltk-shared-lib-defines.patch \ %D%/packages/patches/fltk-xfont-on-demand.patch \ diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm index d0c164eff4..a55ed96edd 100644 --- a/gnu/packages/flashing-tools.scm +++ b/gnu/packages/flashing-tools.scm @@ -38,16 +38,15 @@ (define-public flashrom (package (name "flashrom") - (version "0.9.7") + (version "0.9.9") (source (origin (method url-fetch) (uri (string-append - "http://download.flashrom.org/releases/flashrom-" + "https://download.flashrom.org/releases/flashrom-" version ".tar.bz2")) (sha256 (base32 - "1s9pc4yls2s1gcg2ar4q75nym2z5v6lxq36bl6lq26br00nj2mas")) - (patches (search-patches "flashrom-use-libftdi1.patch")))) + "0i9wg1lyfg99bld7d00zqjm9f0lk6m0q3h3n9c195c9yysq5ccfb")))) (build-system gnu-build-system) (inputs `(("dmidecode" ,dmidecode) ("pciutils" ,pciutils) @@ -55,7 +54,9 @@ ("libftdi" ,libftdi))) (native-inputs `(("pkg-config" ,pkg-config))) (arguments - '(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output)) + '(#:make-flags (list "CC=gcc" + (string-append "PREFIX=" %output) + "CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no") #:tests? #f ; no 'check' target #:phases (alist-delete diff --git a/gnu/packages/patches/flashrom-use-libftdi1.patch b/gnu/packages/patches/flashrom-use-libftdi1.patch deleted file mode 100644 index a6051df30a..0000000000 --- a/gnu/packages/patches/flashrom-use-libftdi1.patch +++ /dev/null @@ -1,70 +0,0 @@ -Update to libftdi-1.0 is advertised as a drop-in replacement for libftdi, -running on top of libusb-1.0. This also removes indirect dependency to -libusb-0.1. - -Patch by Kyösti Mälkki . -See . - ---- flashrom/Makefile.orig 2013-08-13 18:00:00.000000000 -0400 -+++ flashrom/Makefile 2014-08-05 03:10:40.217145375 -0400 -@@ -492,19 +492,21 @@ - ifeq ($(CONFIG_FT2232_SPI), yes) - # This is a totally ugly hack. - FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_FT2232_SPI=1'") --NEED_FTDI := yes -+NEED_FTDI1 := yes - PROGRAMMER_OBJS += ft2232_spi.o - endif - - ifeq ($(CONFIG_USBBLASTER_SPI), yes) - # This is a totally ugly hack. - FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_USBBLASTER_SPI=1'") --NEED_FTDI := yes -+NEED_LIBUSB1 := yes -+NEED_FTDI1 := yes - PROGRAMMER_OBJS += usbblaster_spi.o - endif - --ifeq ($(NEED_FTDI), yes) --FTDILIBS := $(shell pkg-config --libs libftdi 2>/dev/null || printf "%s" "-lftdi -lusb") -+ifeq ($(NEED_FTDI1), yes) -+FTDILIBS := $(shell pkg-config --libs libftdi1 2>/dev/null || printf "%s" "-lftdi1 -lusb-1.0") -+FEATURE_CFLAGS += $(shell pkg-config --cflags libftdi1 2>/dev/null) - FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FT232H := yes" .features && printf "%s" "-D'HAVE_FT232H=1'") - FEATURE_LIBS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "$(FTDILIBS)") - # We can't set NEED_USB here because that would transform libftdi auto-enabling -@@ -781,6 +783,7 @@ - endif - - define FTDI_TEST -+#include - #include - struct ftdi_context *ftdic = NULL; - int main(int argc, char **argv) -@@ -793,6 +796,7 @@ - export FTDI_TEST - - define FTDI_232H_TEST -+#include - #include - enum ftdi_chip_type type = TYPE_232H; - endef -@@ -826,15 +830,15 @@ - - features: compiler - @echo "FEATURES := yes" > .features.tmp --ifeq ($(NEED_FTDI), yes) -+ifeq ($(NEED_FTDI1), yes) - @printf "Checking for FTDI support... " - @echo "$$FTDI_TEST" > .featuretest.c -- @$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 && \ -+ @$(CC) $(CPPFLAGS) $(CFLAGS) $(FEATURE_CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 && \ - ( echo "found."; echo "FTDISUPPORT := yes" >> .features.tmp ) || \ - ( echo "not found."; echo "FTDISUPPORT := no" >> .features.tmp ) - @printf "Checking for FT232H support in libftdi... " - @echo "$$FTDI_232H_TEST" >> .featuretest.c -- @$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 && \ -+ @$(CC) $(CPPFLAGS) $(CFLAGS) $(FEATURE_CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 && \ - ( echo "found."; echo "FT232H := yes" >> .features.tmp ) || \ - ( echo "not found."; echo "FT232H := no" >> .features.tmp ) - endif -- cgit v1.2.3 From 93666cf7837edfe85c7c0960252d6ad9b4962717 Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 15 Sep 2016 15:01:14 +0000 Subject: gnu: Add enet. * gnu/packages/networking.scm (enet): New variable. Signed-off-by: Leo Famulari --- gnu/packages/networking.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index 6010e86ac7..ba8d08227c 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -831,3 +831,29 @@ in dynamically linked programs and redirects them through one or more SOCKS or HTTP proxies.") (home-page "https://github.com/rofl0r/proxychains-ng") (license license:gpl2+))) + +(define-public enet + (package + (name "enet") + (version "1.3.13") + (source (origin + (method url-fetch) + (uri (string-append "http://enet.bespin.org/download/" + name "-" version ".tar.gz")) + (sha256 + (base32 + "0p53mnmjbm56wizwraznynx13fcibcxiqny110dp6a5a3w174q73")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis + "Network communication layer on top of UDP") + (description + "ENet's purpose is to provide a relatively thin, simple and robust network +communication layer on top of UDP. The primary feature it provides is optional +reliable, in-order delivery of packets. ENet omits certain higher level +networking features such as authentication, server discovery, encryption, or +other similar tasks that are particularly application specific so that the +library remains flexible, portable, and easily embeddable.") + (home-page "http://enet.bespin.org") + (license license:expat))) -- cgit v1.2.3 From 80588800176c3cfb2443fa22fbd0ab627f0f7a6c Mon Sep 17 00:00:00 2001 From: Erik Edrosa Date: Tue, 20 Sep 2016 22:22:54 -0400 Subject: gnu: Add cmark. * gnu/packages/markdown.scm (cmark): New variable. Signed-off-by: Leo Famulari --- gnu/packages/markdown.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/markdown.scm b/gnu/packages/markdown.scm index dab3d4eab1..ae54b0b172 100644 --- a/gnu/packages/markdown.scm +++ b/gnu/packages/markdown.scm @@ -24,6 +24,7 @@ #:use-module (guix packages) #:use-module (guix build-system gnu) #:use-module (guix build-system trivial) + #:use-module (guix build-system cmake) #:use-module (gnu packages perl) #:use-module (gnu packages python) #:use-module (gnu packages web) @@ -99,3 +100,33 @@ you to write using an easy-to-read, easy-to-write plain text format, then convert it to structurally valid XHTML (or HTML).") (license (non-copyleft "file://License.text" "See License.text in the distribution.")))) + +(define-public cmark + (package + (name "cmark") + (version "0.26.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/jgm/cmark/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1mpmcy4bbmc8m058zqs9dwx49lcfi7bdnfszsr9y66cwgylia1mm")))) + (build-system cmake-build-system) + (arguments + '(#:test-target "test")) + (native-inputs `(("python" ,python))) + (synopsis "CommonMark Markdown reference implementation") + (description "CommonMark is a strongly defined, highly compatible +specification of Markdown. cmark is the C reference implementation of +CommonMark. It provides @code{libcmark} shared library for parsing +CommonMark to an abstract syntax tree (AST) and rendering the document +as HTML, groff man, LaTeX, CommonMark, or an XML representation of the +AST. The package also provides the command-line program @command{cmark} +for parsing and rendering CommonMark.") + (home-page "http://commonmark.org") + ;; cmark is distributed with a BSD-2 license, but some components are Expat + ;; licensed. The CommonMark specification is Creative Commons CC-BY-SA 4.0 + ;; licensed. See 'COPYING' in the source distribution for more information. + (license (list bsd-2 expat cc-by-sa4.0)))) -- cgit v1.2.3 From 54021cd8c653f72fec5e487448a1b6aedb0c4fbe Mon Sep 17 00:00:00 2001 From: Rene Saavedra Date: Fri, 23 Sep 2016 07:53:09 -0500 Subject: gnu: Add gnome-calculator. * gnu/packages/gnome.scm (gnome-calculator): New variable. Signed-off-by: Kei Kebreau --- gnu/packages/gnome.scm | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 01736e9389..e4ff0ef2c4 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -14,7 +14,6 @@ ;;; Copyright © 2015, 2016 Efraim Flashner ;;; Copyright © 2016 Rene Saavedra ;;; Copyright © 2016 Jochem Raat -;;; Copyright © 2016 Rene Saavedra ;;; Copyright © 2016 Kei Kebreau ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016 Roel Janssen @@ -110,6 +109,7 @@ #:use-module (gnu packages freedesktop) #:use-module (gnu packages mail) #:use-module (gnu packages mit-krb5) + #:use-module (gnu packages multiprecision) #:use-module (gnu packages backup) #:use-module (gnu packages nettle) #:use-module (gnu packages ncurses) @@ -5501,3 +5501,33 @@ write this kind of application, by providing a base class, taking care of all the IPC machinery needed to send messages to a running instance, and also handling the startup notification side.") (license license:lgpl2.1+))) + +(define-public gnome-calculator + (package + (name "gnome-calculator") + (version "3.20.2") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1yx86kyd54y3k3b6rmdazvmpxzl0zn791zr1q87zjc5228mc3w9a")))) + (build-system glib-or-gtk-build-system) + (native-inputs + `(("glib:bin" ,glib "bin") ; for glib-compile-schemas, gio-2.0. + ("intltool" ,intltool) + ("itstool" ,itstool) + ("pkg-config" ,pkg-config))) + (inputs + `(("gtksourceview" ,gtksourceview) + ("libsoup" ,libsoup) + ("mpfr" ,mpfr))) + (home-page "https://wiki.gnome.org/Apps/Calculator") + (synopsis "Desktop calculator") + (description + "Calculator is an application that solves mathematical equations and +is suitable as a default application in a Desktop environment.") + (license license:gpl3))) -- cgit v1.2.3 From 6fc48c2ee2475b004b090b9cb047d4c1ccbb5175 Mon Sep 17 00:00:00 2001 From: ng0 Date: Sat, 17 Sep 2016 20:23:34 +0000 Subject: gnu: Add gforth. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/gforth.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Co-authored-by: 宋文武 --- gnu/local.mk | 1 + gnu/packages/gforth.scm | 60 +++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 61 insertions(+) create mode 100644 gnu/packages/gforth.scm diff --git a/gnu/local.mk b/gnu/local.mk index 9ebe99ac8c..2f06ec46f6 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -142,6 +142,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/geo.scm \ %D%/packages/geeqie.scm \ %D%/packages/gettext.scm \ + %D%/packages/gforth.scm \ %D%/packages/ghostscript.scm \ %D%/packages/gimp.scm \ %D%/packages/gkrellm.scm \ diff --git a/gnu/packages/gforth.scm b/gnu/packages/gforth.scm new file mode 100644 index 0000000000..b2a67ce58c --- /dev/null +++ b/gnu/packages/gforth.scm @@ -0,0 +1,60 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Sou Bunnbu +;;; +;;; 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 . + +(define-module (gnu packages gforth) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix build-system gnu) + #:use-module (gnu packages m4)) + +(define-public gforth + (package + (name "gforth") + (version "0.7.3") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gforth/gforth-" + version ".tar.gz")) + (sha256 + (base32 + "1c1bahc9ypmca8rv2dijiqbangm1d9av286904yw48ph7ciz4qig")))) + (build-system gnu-build-system) + (arguments + '(#:parallel-build? #f ; XXX: parallel build fails + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-gforth.el + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (emacs-sitedir (string-append + out "/share/emacs/site-lisp"))) + ;; TODO: compile and autoload it. + (install-file "gforth.el" emacs-sitedir) + #t)))))) + (native-inputs + `(("m4" ,m4))) + (synopsis "Forth interpreter") + (description + "Gforth is a fast and portable implementation of the ANSI Forth language. +It includes an editing mode for Emacs and an interpreter featuring completion +and history. A generic virtual machine environment, vmgen, is also +included.") + (home-page "https://www.gnu.org/software/gforth/") + (license license:gpl3+))) -- cgit v1.2.3 From d7b342d81556ddee9e369f78255bc76367a004ae Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sat, 24 Sep 2016 17:39:00 +0900 Subject: system: 'read-boot-parameters' reads the 'initrd' parameter. * gnu/system.scm ()[initrd]: New field. (read-boot-parameters): Read the 'initrd' element and fill in the 'initrd' field of the result. --- gnu/system.scm | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index 7edb018f00..bf79bf1c27 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -101,6 +101,7 @@ boot-parameters-root-device boot-parameters-kernel boot-parameters-kernel-arguments + boot-parameters-initrd read-boot-parameters local-host-aliases @@ -770,7 +771,8 @@ this file is the reconstruction of GRUB menu entries for old configurations." (label boot-parameters-label) (root-device boot-parameters-root-device) (kernel boot-parameters-kernel) - (kernel-arguments boot-parameters-kernel-arguments)) + (kernel-arguments boot-parameters-kernel-arguments) + (initrd boot-parameters-initrd)) (define (read-boot-parameters port) "Read boot parameters from PORT and return the corresponding @@ -794,7 +796,14 @@ this file is the reconstruction of GRUB menu entries for old configurations." (kernel-arguments (match (assq 'kernel-arguments rest) ((_ args) args) - (#f '()))))) ;the old format + (#f '()))) ;the old format + + (initrd + (match (assq 'initrd rest) + (('initrd ('string-append directory file)) ;the old format + (string-append directory file)) + (('initrd (? string? file)) + file))))) (x ;unsupported format (warning (_ "unrecognized boot parameters for '~a'~%") system) -- cgit v1.2.3 From 0f65f54ebd76324653fd5506a7dab42ee44d9255 Mon Sep 17 00:00:00 2001 From: Carlos Sánchez de La Lama Date: Wed, 14 Sep 2016 16:13:24 +0200 Subject: system: grub.cfg uses correct file names when store is not in root partition. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes . Reported by csanchezdll@gmail.com (Carlos Sánchez de La Lama). * guix/scripts/system.scm (previous-grub-entries): Get the initrd file name from PARAMS. * gnu/system.scm (operating-system-grub.cfg): Use 'operating-system-initrd-file' to retrieve the initrd file name. * gnu/system/grub.scm (strip-mount-point): New procedure. (grub-configuration-file)[entry->gexp]: Call 'strip-mount-point' for LINUX and INITRD. Co-authored-by: Ludovic Courtès --- gnu/system.scm | 3 ++- gnu/system/grub.scm | 30 +++++++++++++++++++++++------- guix/scripts/system.scm | 9 +++++---- 3 files changed, 30 insertions(+), 12 deletions(-) diff --git a/gnu/system.scm b/gnu/system.scm index bf79bf1c27..38ae8f1771 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -727,6 +727,7 @@ listed in OS. The C library expects to find it under (store-fs -> (operating-system-store-file-system os)) (label -> (kernel->grub-label (operating-system-kernel os))) (kernel -> (operating-system-kernel-file os)) + (initrd (operating-system-initrd-file os)) (root-device -> (if (eq? 'uuid (file-system-title root-fs)) (uuid->string (file-system-device root-fs)) (file-system-device root-fs))) @@ -739,7 +740,7 @@ listed in OS. The C library expects to find it under #~(string-append "--load=" #$system "/boot") (operating-system-kernel-arguments os))) - (initrd (file-append system "/initrd")))))) + (initrd initrd))))) (grub-configuration-file (operating-system-bootloader os) store-fs entries #:old-entries old-entries))) diff --git a/gnu/system/grub.scm b/gnu/system/grub.scm index 4592747083..3d294284e4 100644 --- a/gnu/system/grub.scm +++ b/gnu/system/grub.scm @@ -62,6 +62,17 @@ ;;; ;;; Code: +(define (strip-mount-point fs file) + "Strip the mount point of FS from FILE, which is a gexp or other lowerable +object denoting a file name." + (let ((mount-point (file-system-mount-point fs))) + (if (string=? mount-point "/") + file + #~(let ((file #$file)) + (if (string-prefix? #$mount-point file) + (substring #$file #$(string-length mount-point)) + file))))) + (define-record-type* grub-image make-grub-image grub-image? @@ -183,7 +194,8 @@ the store is. SYSTEM must be the target system string---e.g., (symbol->string (assoc-ref colors 'bg))))) (define font-file - #~(string-append #$grub "/share/grub/unicode.pf2")) + (strip-mount-point root-fs + (file-append grub "/share/grub/unicode.pf2"))) (mlet* %store-monad ((image (grub-background-image config))) (return (and image @@ -209,7 +221,7 @@ fi~%" #$(grub-root-search root-fs font-file) #$font-file - #$image + #$(strip-mount-point root-fs image) #$(theme-colors grub-theme-color-normal) #$(theme-colors grub-theme-color-highlight)))))) @@ -249,15 +261,19 @@ corresponding to old generations of the system." (define entry->gexp (match-lambda (($ label linux arguments initrd) - #~(format port "menuentry ~s { + ;; Use the right file names for LINUX and STORE-FS in case STORE-FS is + ;; not the "/" file system. + (let ((linux (strip-mount-point store-fs linux)) + (initrd (strip-mount-point store-fs initrd))) + #~(format port "menuentry ~s { ~a linux ~a ~a initrd ~a }~%" - #$label - #$(grub-root-search store-fs linux) - #$linux (string-join (list #$@arguments)) - #$initrd)))) + #$label + #$(grub-root-search store-fs linux) + #$linux (string-join (list #$@arguments)) + #$initrd))))) (mlet %store-monad ((sugar (eye-candy config store-fs system #~port))) (define builder diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index 953c6243ed..a2cd97ac1f 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -383,7 +383,8 @@ it atomically, and then run OS's activation script." (uuid->string root) root)) (kernel (boot-parameters-kernel params)) - (kernel-arguments (boot-parameters-kernel-arguments params))) + (kernel-arguments (boot-parameters-kernel-arguments params)) + (initrd (boot-parameters-initrd params))) (menu-entry (label (string-append label " (#" (number->string number) ", " @@ -391,10 +392,10 @@ it atomically, and then run OS's activation script." (linux kernel) (linux-arguments (cons* (string-append "--root=" root-device) - #~(string-append "--system=" #$system) - #~(string-append "--load=" #$system "/boot") + (string-append "--system=" system) + (string-append "--load=" system "/boot") kernel-arguments)) - (initrd #~(string-append #$system "/initrd")))))) + (initrd initrd))))) (let* ((numbers (generation-numbers profile)) (systems (map (cut generation-file-name profile <>) -- cgit v1.2.3 From 0ab57b0d04cfb79b3f57e5d51c9284da78759309 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 24 Sep 2016 22:26:30 +0300 Subject: gnu: tor: Update to 0.2.8.8. * gnu/packages/tor.scm (tor): Update to 0.2.8.8. [source]: Update source url. [home-page]: Use https. --- gnu/packages/tor.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index 0dc72a3cb9..db1be83970 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -40,14 +40,14 @@ (define-public tor (package (name "tor") - (version "0.2.8.7") + (version "0.2.8.8") (source (origin (method url-fetch) - (uri (string-append "https://www.torproject.org/dist/tor-" + (uri (string-append "https://dist.torproject.org/tor-" version ".tar.gz")) (sha256 (base32 - "1iigfi8ljl88s8b5y1g4ak8im57simazscl467zvfbg8k6vf4i5f")))) + "1pp3h0a1cl25fv04b3j6wp8aw1sfpbd2lmag397dpp2k2b305bxi")))) (build-system gnu-build-system) (native-inputs `(("python" ,python-2))) ; for tests @@ -58,7 +58,7 @@ ;; TODO: Recommend `torsocks' since `torify' needs it. - (home-page "http://www.torproject.org/") + (home-page "https://www.torproject.org/") (synopsis "Anonymous network router to improve privacy on the Internet") (description "Tor protects you by bouncing your communications around a distributed -- cgit v1.2.3 From a8f3d492805b4f7314db7d75e90205f2faed27ec Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Sat, 24 Sep 2016 23:08:44 +0300 Subject: gnu: privoxy: Update to 3.0.26. * gnu/packages/tor.scm (privoxy): Update to 3.0.26. [home-page]: Use https. --- gnu/packages/tor.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/tor.scm b/gnu/packages/tor.scm index db1be83970..42d882e4bc 100644 --- a/gnu/packages/tor.scm +++ b/gnu/packages/tor.scm @@ -107,7 +107,7 @@ rejects UDP traffic from the application you're using.") (define-public privoxy (package (name "privoxy") - (version "3.0.24") + (version "3.0.26") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/ijbswa/Sources/" @@ -115,7 +115,7 @@ rejects UDP traffic from the application you're using.") version "-stable-src.tar.gz")) (sha256 (base32 - "04mhkz5g713i2crvjd6s783hhrlsjjjlfb9llbaf13ghg3fgd0d3")))) + "1n4wpxmahl8m2y3d1azxa8lrdbpaad007k458skxrpz57ss1br2p")))) (build-system gnu-build-system) (arguments '(;; The default 'sysconfdir' is $out/etc; change that to @@ -137,7 +137,7 @@ rejects UDP traffic from the application you're using.") ("zlib" ,zlib) ("autoconf" ,autoconf) ("automake" ,automake))) - (home-page "http://www.privoxy.org") + (home-page "https://www.privoxy.org") (synopsis "Web proxy with advanced filtering capabilities for enhancing privacy") (description "Privoxy is a non-caching web proxy with advanced filtering capabilities -- cgit v1.2.3 From 94c5dc8c03b22ee1208226cc34f9fa434536f9db Mon Sep 17 00:00:00 2001 From: John Darrington Date: Sun, 11 Sep 2016 10:05:17 +0200 Subject: gnu: Add pam-krb5 * gnu/packages/admin.scm (pam-krb5): New variable. --- gnu/packages/admin.scm | 54 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 6d6961752f..c0eed7bf4f 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2016 John J. Foerch ;;; Coypright © 2016 ng0 ;;; Coypright © 2016 Tobias Geerinckx-Rice +;;; Coypright © 2016 John Darrington ;;; ;;; This file is part of GNU Guix. ;;; @@ -74,6 +75,7 @@ #:use-module (gnu packages man) #:use-module (gnu packages autotools) #:use-module (gnu packages gnome) + #:use-module (gnu packages mit-krb5) #:use-module (gnu packages gtk)) (define-public aide @@ -1792,3 +1794,55 @@ the status of your battery in the system tray.") shortcut syntax and completion options.") (home-page "https://github.com/TrilbyWhite/interrobang") (license license:gpl3+)))) + + + +(define-public pam-krb5 + (package + (name "pam-krb5") + (version "4.7") + (source (origin + (method url-fetch) + (uri (string-append + "https://archives.eyrie.org/software/kerberos/" name "-" + version ".tar.xz")) + (sha256 + (base32 + "0abf8cfpkprmhw5ca8iyqgrggh65lgqvmfllc1y6qz7zw1gas894")))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'disable-tests + (lambda _ + ;; The build container seems to interfere with some tests. + (substitute* "tests/TESTS" + (("module/basic\n") "")) + (substitute* "tests/TESTS" + (("pam-util/vector\n") "")) + #t))))) + (inputs + `(("linux-pam" ,linux-pam) + ("mit-krb5" ,mit-krb5))) + (native-inputs + `(("perl" ,perl) + ("perl-test-pod" ,perl-test-pod))) ; required for tests + (synopsis "Kerberos PAM module") + (description + "Pam-krb5 is a Kerberos PAM module for either MIT Kerberos or Heimdal. +It supports ticket refreshing by screen savers, configurable +authorization handling, authentication of non-local accounts for network +services, password changing, and password expiration, as well as all the +standard expected PAM features. It works correctly with OpenSSH, even +with ChallengeResponseAuthentication and PrivilegeSeparation enabled, +and supports extensive configuration either by PAM options or in +krb5.conf or both. PKINIT is supported with recent versions of both MIT +Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.") + (home-page "http://www.eyrie.org/~eagle/software/pam-krb5") + ;; Dual licenced under a homebrew non-copyleft OR GPL (any version) + ;; However, the tarball does not contain a copy of the GPL, so unless + ;; we put one in, we cannot distribute it under GPL without violating + ;; clause requiring us to give all recipients a copy. + (license license:gpl1+))) + +;;http://archives.eyrie.org/software/kerberos/pam-krb5-4.7.tar.xz -- cgit v1.2.3 From dfcce0cc8dcfe2ec1031b71b9ef9747df1228f8e Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 25 Sep 2016 03:55:37 -0400 Subject: gnu: linux-libre@4.4: Update to 4.4.22. * gnu/packages/linux.scm (linux-libre-4.4): Update to 4.4.22. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 9f48e0c2c5..e6db736d58 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -324,8 +324,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) (define-public linux-libre-4.4 - (make-linux-libre "4.4.21" - "0wl57p045yazccl5x35ibajv8s05zf0qvi3l8sas12lz5bji3ajp" + (make-linux-libre "4.4.22" + "0pwqp5hain26p3wmiqgq3qasyp4j7nl2ai49sq2n8xdi3g2vnmii" %intel-compatible-systems #:configuration-file kernel-config)) -- cgit v1.2.3 From 1535c0a6b60a77a2083f3bb5dc052996771a35ae Mon Sep 17 00:00:00 2001 From: Mark H Weaver Date: Sun, 25 Sep 2016 03:57:57 -0400 Subject: gnu: linux-libre: Update to 4.7.5. * gnu/packages/linux.scm (linux-libre): Update to 4.7.5. --- gnu/packages/linux.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index e6db736d58..c8be533614 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -318,8 +318,8 @@ It has been modified to remove all non-free binary blobs.") (define %intel-compatible-systems '("x86_64-linux" "i686-linux")) (define-public linux-libre - (make-linux-libre "4.7.4" - "16nmc5l7dxd8f4g2avlskghcn4mw8msk31r6p4piqm3xc4sws7f6" + (make-linux-libre "4.7.5" + "1v5xzagc7zmf0dszq623h83rzhn2qwcapg2fwlihrrb6h9317xqx" %intel-compatible-systems #:configuration-file kernel-config)) @@ -336,8 +336,8 @@ It has been modified to remove all non-free binary blobs.") #:configuration-file kernel-config)) ;; Avoid rebuilding kernel variants when there is a minor version bump. -(define %linux-libre-version "4.7.4") -(define %linux-libre-hash "16nmc5l7dxd8f4g2avlskghcn4mw8msk31r6p4piqm3xc4sws7f6") +(define %linux-libre-version "4.7.5") +(define %linux-libre-hash "1v5xzagc7zmf0dszq623h83rzhn2qwcapg2fwlihrrb6h9317xqx") (define-public linux-libre-arm-generic (make-linux-libre %linux-libre-version -- cgit v1.2.3 From 58d04dbaf08f425bc6c5a349bbc6a6083aeac230 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sat, 24 Sep 2016 09:58:16 +0200 Subject: gnu: python-virtualenv: Update to 15.0.3. * gnu/packages/python.scm (python-virtualenv): Update to 15.0.3. [arguments]: Disable failing test. --- gnu/packages/python.scm | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 353443018a..688a5d4ee8 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -2612,20 +2612,25 @@ object.") (define-public python-virtualenv (package (name "python-virtualenv") - (version "13.1.2") + (version "15.0.3") (source (origin (method url-fetch) (uri (pypi-uri "virtualenv" version)) (sha256 (base32 - "1p732accxwqfjbdna39k8w8lp9gyw91vr4kzkhm8mgfxikqqxg5a")))) + "07cbajzk8l05k5zhlw0b9wbf2is65bl9v6zrn2a0iyn57w6pd73d")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - (replace 'check - (lambda _ (zero? (system* "py.test"))))))) + (replace 'check + (lambda _ + ;; Disable failing test. See upstream bug report + ;; https://github.com/pypa/virtualenv/issues/957 + (substitute* "tests/test_virtualenv.py" + (("skipif.*") "skipif(True, reason=\"Guix\")\n")) + (zero? (system* "py.test"))))))) (inputs `(("python-setuptools" ,python-setuptools) ("python-mock" ,python-mock) -- cgit v1.2.3 From 9f58932ecc972af97efe7be2ec2f7ca6df3f3579 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 25 Sep 2016 13:01:21 +0200 Subject: gnu: epiphany: Update to 3.22.0. * gnu/packages/gnome.scm (epiphany): Update to 3.22.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e4ff0ef2c4..402791074a 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3581,7 +3581,7 @@ work and the interface is well tested.") (define-public epiphany (package (name "epiphany") - (version "3.20.3") + (version "3.22.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/" name "/" @@ -3589,7 +3589,7 @@ work and the interface is well tested.") name "-" version ".tar.xz")) (sha256 (base32 - "18i4nk4k4q2yaj4zw0gbyp7ja2g67pm05p56bbras52cnjyy37ad")))) + "09rscbmyjxzd8wlibn1fbmbwmlwnahzfl1kkcka6dhm121yd2id6")))) (build-system glib-or-gtk-build-system) (arguments ;; FIXME: tests run under Xvfb, but fail with: -- cgit v1.2.3 From 7acd71d13d22fd318b3f136e344ba86bc62521fb Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Sun, 25 Sep 2016 13:01:55 +0200 Subject: gnu: epiphany: Drop NSS and libwnck. These dependencies were dropped in Epiphany 3.21.x. * gnu/packages/gnome.scm (epiphany)[inputs]: Remove "nss" and "libwnck". --- gnu/packages/gnome.scm | 2 -- 1 file changed, 2 deletions(-) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 402791074a..e47e4352e9 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -3614,9 +3614,7 @@ work and the interface is well tested.") ("iso-codes" ,iso-codes) ("libnotify" ,libnotify) ("libsecret" ,libsecret) - ("libwnck" ,libwnck) ("libxslt" ,libxslt) - ("nss" ,nss) ("sqlite" ,sqlite) ("webkitgtk" ,webkitgtk))) (home-page "https://wiki.gnome.org/Apps/Web") -- cgit v1.2.3 From 5babe521c8adc722c2411b255cbeeef308339d06 Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Mon, 26 Sep 2016 00:12:50 +0900 Subject: system: Don't emit a GRUB 'search' command when passed a GRUB file name. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reported by Tomáš Čech at . * gnu/system/grub.scm (grub-root-search): Don't emit anything when FILE is a string that does not denote an absolute file name. --- gnu/system/grub.scm | 29 +++++++++++++++++------------ 1 file changed, 17 insertions(+), 12 deletions(-) diff --git a/gnu/system/grub.scm b/gnu/system/grub.scm index 3d294284e4..ead48f0e32 100644 --- a/gnu/system/grub.scm +++ b/gnu/system/grub.scm @@ -234,18 +234,23 @@ fi~%" "Return the GRUB 'search' command to look for ROOT-FS, which contains FILE, a gexp. The result is a gexp that can be inserted in the grub.cfg-generation code." - (case (file-system-title root-fs) - ;; Preferably refer to ROOT-FS by its UUID or label. This is more - ;; efficient and less ambiguous, see <>. - ((uuid) - (format #f "search --fs-uuid --set ~a" - (uuid->string (file-system-device root-fs)))) - ((label) - (format #f "search --label --set ~a" - (file-system-device root-fs))) - (else - ;; As a last resort, look for any device containing FILE. - #~(format #f "search --file --set ~a" #$file)))) + ;; Usually FILE is a file name gexp like "/gnu/store/…-linux/vmlinuz", but + ;; it can also be something like "(hd0,msdos1)/vmlinuz" in the case of + ;; custom menu entries. In the latter case, don't emit a 'search' command. + (if (and (string? file) (not (string-prefix? "/" file))) + "" + (case (file-system-title root-fs) + ;; Preferably refer to ROOT-FS by its UUID or label. This is more + ;; efficient and less ambiguous, see <>. + ((uuid) + (format #f "search --fs-uuid --set ~a" + (uuid->string (file-system-device root-fs)))) + ((label) + (format #f "search --label --set ~a" + (file-system-device root-fs))) + (else + ;; As a last resort, look for any device containing FILE. + #~(format #f "search --file --set ~a" #$file))))) (define* (grub-configuration-file config store-fs entries #:key -- cgit v1.2.3 From 93117227034666db18c8b0c7fd89cca72a3eeca8 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Mon, 26 Sep 2016 01:58:32 +0530 Subject: gnu: Add optipng. * gnu/packages/image.scm (optipng): New variable. Signed-off-by: Kei Kebreau --- gnu/packages/image.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index 931cad1a6d..4039c1a00b 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Tobias Geerinckx-Rice ;;; Copyright © 2016 Eric Bavier +;;; Copyright © 2016 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -932,3 +933,35 @@ statistical tests.") all included libraries only the image loading and decoding library is installed as @code{stb_image}.") (license license:public-domain)))) + +(define-public optipng + (package + (name "optipng") + (version "0.7.6") + (source + (origin + (method url-fetch) + (uri (string-append "http://prdownloads.sourceforge.net/optipng/optipng-" + version ".tar.gz")) + (sha256 + (base32 + "105yk5qykvhiahzag67gm36s2kplxf6qn5hay02md0nkrcgn6w28")))) + (build-system gnu-build-system) + (inputs + `(("zlib" ,zlib))) + (arguments + '(#:phases + (modify-phases %standard-phases + ;; configure script does not accept arguments CONFIG_SHELL and SHELL + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (zero? (system* "sh" "configure" + (string-append "--prefix=" (assoc-ref outputs "out"))))))))) + (synopsis "Optimizer that recompresses PNG image files to a +smaller size") + (description "OptiPNG is a PNG optimizer that recompresses image +files to a smaller size, without losing any information. This program +also converts external formats (BMP, GIF, PNM and TIFF) to optimized +PNG, and performs PNG integrity checks and corrections.") + (home-page "http://optipng.sourceforge.net/") + (license license:zlib))) -- cgit v1.2.3 From 57a31efb4b2690f8198c751f01a8091ba5f9d0a3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 03:00:01 +0200 Subject: gnu: tcc: Disable build on MIPS. * gnu/packages/c.scm (tcc)[supported-systems]: Disable build on mips64el. --- gnu/packages/c.scm | 3 +++ 1 file changed, 3 insertions(+) diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm index 6e16d1365b..4b9791348e 100644 --- a/gnu/packages/c.scm +++ b/gnu/packages/c.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016 Ludovic Courtès +;;; Copyright © 2016 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -58,6 +59,8 @@ (assoc-ref %build-inputs "libc") "/lib")) #:test-target "test")) + ;; Fails to build on MIPS: "Unsupported CPU" + (supported-systems (delete "mips64el-linux" %supported-systems)) (synopsis "Tiny and fast C compiler") (description "TCC, also referred to as \"TinyCC\", is a small and fast C compiler -- cgit v1.2.3 From bbed0ab6b4492d86918241b50f9d0fbfba482877 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:17 +0200 Subject: gnu: Add r-hwriter. * gnu/packages/web.scm (r-hwriter): New variable. --- gnu/packages/web.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index e632d9c874..d028999e4c 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3315,6 +3315,25 @@ where data can be processed either in memory, on disk, or streaming via the callback or connection interfaces.") (license l:expat))) +(define-public r-hwriter + (package + (name "r-hwriter") + (version "1.3.2") + (source + (origin + (method url-fetch) + (uri (cran-uri "hwriter" version)) + (sha256 + (base32 + "0arjsz854rfkfqhgvpqbm9lfni97dcjs66isdsfvwfd2wz932dbb")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/hwriter") + (synopsis "Output R objects in HTML format") + (description + "This package provides easy-to-use and versatile functions to output R +objects in HTML format.") + (license l:lgpl2.1+))) + (define-public gumbo-parser (package (name "gumbo-parser") -- cgit v1.2.3 From 356c6d61a66a1b31ec06c309ace8ae6fc68049d3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:18 +0200 Subject: gnu: Add r-rjson. * gnu/packages/web.scm (r-rjson): New variable. --- gnu/packages/web.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index d028999e4c..923b39ee8f 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -3334,6 +3334,25 @@ callback or connection interfaces.") objects in HTML format.") (license l:lgpl2.1+))) +(define-public r-rjson + (package + (name "r-rjson") + (version "0.2.15") + (source + (origin + (method url-fetch) + (uri (cran-uri "rjson" version)) + (sha256 + (base32 + "1vzjyvf57k1fjizlk28rby65y5lsww5qnfvgnhln74qwda7hvl3p")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/rjson") + (synopsis "JSON library for R") + (description + "This package provides functions to convert R objects into JSON objects +and vice-versa.") + (license l:gpl2+))) + (define-public gumbo-parser (package (name "gumbo-parser") -- cgit v1.2.3 From 2213730c5b3d080b5776953116317cc23629f5c6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:19 +0200 Subject: gnu: Add r-rpart. * gnu/packages/statistics.scm (r-rpart): New variable. --- gnu/packages/statistics.scm | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 2a9a31e3e2..806aacb73b 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -2958,6 +2958,25 @@ noncentral hypergeometric distribution (also called extended hypergeometric distribution).") (license license:gpl3+))) +(define-public r-rpart + (package + (name "r-rpart") + (version "4.1-10") + (source + (origin + (method url-fetch) + (uri (cran-uri "rpart" version)) + (sha256 + (base32 + "119dvh2cpab4vq9blvbkil5hgq6w018amiwlda3ii0fki39axpf5")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/rpart") + (synopsis "Recursive partitioning and regression trees") + (description + "This package provides recursive partitioning functions for +classification, regression and survival trees.") + (license (list license:gpl2+ license:gpl3+)))) + (define-public r-runit (package (name "r-runit") -- cgit v1.2.3 From 8c6de58849f8199f660e89887f0c418c4248762a Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:20 +0200 Subject: gnu: Add r-annotate. * gnu/packages/bioinformatics.scm (r-annotate): New variable. --- gnu/packages/bioinformatics.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1bf91a958e..f9f270305e 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5048,6 +5048,32 @@ dissimilarity analysis. Most of its multivariate tools can be used for other data types as well.") (license license:gpl2+))) +(define-public r-annotate + (package + (name "r-annotate") + (version "1.50.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "annotate" version)) + (sha256 + (base32 + "00wnhbjp5i6a5vyvlq4f5hs8qngjxz7fm869kla1spmd0dp2ynsy")))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-dbi" ,r-dbi) + ("r-xml" ,r-xml) + ("r-xtable" ,r-xtable))) + (home-page + "http://bioconductor.org/packages/annotate") + (synopsis "Annotation for microarrays") + (description "This package provides R enviroments for the annotation of +microarrays.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 07a664cde0a050ffc95184761cbb4759cf2e035e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:21 +0200 Subject: gnu: Add r-geneplotter. * gnu/packages/bioinformatics.scm (r-geneplotter): New variable. --- gnu/packages/bioinformatics.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f9f270305e..8ed35a8fa3 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5074,6 +5074,31 @@ data types as well.") microarrays.") (license license:artistic2.0))) +(define-public r-geneplotter + (package + (name "r-geneplotter") + (version "1.50.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "geneplotter" version)) + (sha256 + (base32 + "0lvrywl0251g4y0h0qlgkbg4l83ja5544c85z1wj30qxiy77iqc2")))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-lattice" ,r-lattice) + ("r-rcolorbrewer" ,r-rcolorbrewer))) + (home-page "http://bioconductor.org/packages/geneplotter") + (synopsis "Graphics functions for genomic data") + (description + "This package provides functions for plotting genomic data.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 2d21d44dbdf871e95bb416026d9075da93e460ec Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:22 +0200 Subject: gnu: Add r-hmisc. * gnu/packages/statistics.scm (r-hmisc): New variable. --- gnu/packages/statistics.scm | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 806aacb73b..4a8c64bde8 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -41,6 +41,7 @@ #:use-module (gnu packages icu4c) #:use-module (gnu packages image) #:use-module (gnu packages java) + #:use-module (gnu packages machine-learning) #:use-module (gnu packages maths) #:use-module (gnu packages multiprecision) #:use-module (gnu packages pcre) @@ -2977,6 +2978,44 @@ distribution).") classification, regression and survival trees.") (license (list license:gpl2+ license:gpl3+)))) +(define-public r-hmisc + (package + (name "r-hmisc") + (version "3.17-4") + (source + (origin + (method url-fetch) + (uri (cran-uri "Hmisc" version)) + (sha256 + (base32 + "1hr2kycpm0h3li9gnlbx9pl6h13das7g2wqfk6cip1kx6lv00ypw")))) + (properties `((upstream-name . "Hmisc"))) + (build-system r-build-system) + (native-inputs + `(("gfortran" ,gfortran))) + (propagated-inputs + `(("r-acepack" ,r-acepack) + ("r-cluster" ,r-cluster) + ("r-data-table" ,r-data-table) + ("r-foreign" ,r-foreign) + ("r-formula" ,r-formula) + ("r-ggplot2" ,r-ggplot2) + ("r-gridextra" ,r-gridextra) + ("r-gtable" ,r-gtable) + ("r-lattice" ,r-lattice) + ("r-latticeextra" ,r-latticeextra) + ("r-nnet" ,r-nnet) + ("r-rpart" ,r-rpart))) + (home-page "http://biostat.mc.vanderbilt.edu/Hmisc") + (synopsis "Miscellaneous data analysis and graphics functions") + (description + "This package contains many functions useful for data analysis, +high-level graphics, utility operations, functions for computing sample size +and power, importing and annotating datasets, imputing missing values, +advanced table making, variable clustering, character string manipulation, +conversion of R objects to LaTeX code, and recoding variables.") + (license license:gpl2+))) + (define-public r-runit (package (name "r-runit") -- cgit v1.2.3 From 2301fd3e4d3d1789f63e19d9f46146e157d7e610 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:23 +0200 Subject: gnu: Add r-genefilter. * gnu/packages/bioinformatics.scm (r-genefilter): New variable. --- gnu/packages/bioinformatics.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 8ed35a8fa3..f11a89ec45 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5099,6 +5099,32 @@ microarrays.") "This package provides functions for plotting genomic data.") (license license:artistic2.0))) +(define-public r-genefilter + (package + (name "r-genefilter") + (version "1.54.2") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "genefilter" version)) + (sha256 + (base32 + "1hmz6as0njvrsrdbgmk72jyclnnqvfdvp6kqv456h43ldq2ajfv5")))) + (build-system r-build-system) + (native-inputs + `(("gfortran" ,gfortran))) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-s4vectors" ,r-s4vectors))) + (home-page "http://bioconductor.org/packages/genefilter") + (synopsis "Filter genes from high-throughput experiments") + (description + "This package provides basic functions for filtering genes from +high-throughput sequencing experiments.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From ad34f0ac96f6f3f074d438b6c19d8211eefc3fa3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:24 +0200 Subject: gnu: Add r-deseq2. * gnu/packages/bioinformatics.scm (r-deseq2): New variable. --- gnu/packages/bioinformatics.scm | 45 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index f11a89ec45..0787d4bfeb 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5125,6 +5125,51 @@ microarrays.") high-throughput sequencing experiments.") (license license:artistic2.0))) +(define-public r-deseq2 + (package + (name "r-deseq2") + (version "1.12.4") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "DESeq2" version)) + (sha256 + (base32 + "12h77f0dpi5xaj7aqf50kkyn6lq9j7bcsly1r0ffmyfcszrp1sfx")))) + (properties `((upstream-name . "DESeq2"))) + (build-system r-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'link-against-armadillo + (lambda _ + (substitute* "src/Makevars" + (("PKG_LIBS =" prefix) + (string-append prefix "-larmadillo")))))))) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) + ("r-genefilter" ,r-genefilter) + ("r-geneplotter" ,r-geneplotter) + ("r-genomicranges" ,r-genomicranges) + ("r-ggplot2" ,r-ggplot2) + ("r-hmisc" ,r-hmisc) + ("r-iranges" ,r-iranges) + ("r-locfit" ,r-locfit) + ("r-rcpp" ,r-rcpp) + ("r-rcpparmadillo" ,r-rcpparmadillo) + ("r-s4vectors" ,r-s4vectors) + ("r-summarizedexperiment" ,r-summarizedexperiment))) + (home-page "http://bioconductor.org/packages/DESeq2") + (synopsis "Differential gene expression analysis") + (description + "This package provides functions to estimate variance-mean dependence in +count data from high-throughput nucleotide sequencing assays and test for +differential expression based on a model using the negative binomial +distribution.") + (license license:lgpl3+))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 092197a54870d2d76c135e30a21c980e47cd3c66 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:25 +0200 Subject: gnu: Add r-matrix. * gnu/packages/statistics.scm (r-matrix): New variable. --- gnu/packages/statistics.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 4a8c64bde8..495445acb8 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -381,6 +381,28 @@ and Francois (2011, JSS), and the book by Eddelbuettel (2013, Springer); see 'citation(\"Rcpp\")' for details on these last two.") (license license:gpl2+))) +(define-public r-matrix + (package + (name "r-matrix") + (version "1.2-7") + (source + (origin + (method url-fetch) + (uri (cran-uri "Matrix" version)) + (sha256 + (base32 + "18x3mdq5cdhbk1lw5cj7vbr41lk8w9p4i5kzh8wslgq6p3d9ac3c")))) + (properties `((upstream-name . "Matrix"))) + (build-system r-build-system) + (propagated-inputs + `(("r-lattice" ,r-lattice))) + (home-page "http://Matrix.R-forge.R-project.org/") + (synopsis "Sparse and dense matrix classes and methods") + (description + "This package provides classes and methods for dense and sparse matrices +and operations on them using LAPACK and SuiteSparse.") + (license license:gpl2+))) + (define-public r-mgcv (package (name "r-mgcv") -- cgit v1.2.3 From 0c77fd50f815041f72e596f33f264be3a4fadd2b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:26 +0200 Subject: gnu: Add r-pheatmap. * gnu/packages/statistics.scm (r-pheatmap): New variable. --- gnu/packages/statistics.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 495445acb8..728f0fd0cc 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -299,6 +299,30 @@ non-estimable cases correctly.") \"tables\" of grobs.") (license license:gpl2+))) +(define-public r-pheatmap + (package + (name "r-pheatmap") + (version "1.0.8") + (source + (origin + (method url-fetch) + (uri (cran-uri "pheatmap" version)) + (sha256 + (base32 + "1ik0k69kb4n7xl3bkx4p09kw08ri93855zcsxq1c668171jqfiji")))) + (build-system r-build-system) + (propagated-inputs + `(("r-gtable" ,r-gtable) + ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-scales" ,r-scales))) + (home-page + "http://cran.r-project.org/web/packages/pheatmap") + (synopsis "Pretty heatmaps") + (description + "This package provides an implementation of heatmaps that offers more +control over dimensions and appearance.") + (license license:gpl2+))) + (define-public r-labeling (package (name "r-labeling") -- cgit v1.2.3 From 8e1bfc7e8c5292cfe04a06732bc11cf03777247f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:27 +0200 Subject: gnu: Add r-sendmailr. * gnu/packages/statistics.scm (r-sendmailr): New variable. --- gnu/packages/statistics.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 728f0fd0cc..d05dfce907 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -530,6 +530,29 @@ designed by Cynthia Brewer as described at http://colorbrewer2.org") ;; Includes code licensed under bsd-4 (license license:asl2.0))) +(define-public r-sendmailr + (package + (name "r-sendmailr") + (version "1.2-1") + (source + (origin + (method url-fetch) + (uri (cran-uri "sendmailR" version)) + (sha256 + (base32 + "0z7ipywnzgkhfvl4zb2fjwl1xq7b5wib296vn9c9qgbndj6b1zh4")))) + (properties `((upstream-name . "sendmailR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-base64enc" ,r-base64enc))) + (home-page + "http://cran.r-project.org/web/packages/sendmailR") + (synopsis "Send email using R") + (description + "This package contains a simple SMTP client which provides a portable +solution for sending email, including attachments, from within R.") + (license license:gpl2+))) + (define-public r-stringi (package (name "r-stringi") -- cgit v1.2.3 From 0d90462fa322201e3a59621e959afa9d5aaf0173 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:28 +0200 Subject: gnu: Add r-backports. * gnu/packages/statistics.scm (r-backports): New variable. --- gnu/packages/statistics.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index d05dfce907..c3dadbdf60 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1610,6 +1610,29 @@ previous R versions and their release dates.") limited to R.") (license license:gpl3+))) +(define-public r-backports + (package + (name "r-backports") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "backports" version)) + (sha256 + (base32 + "0s04mbb7imqc00jl37i081y4yf7qdimk687dyrkvb20nixvjvjyh")))) + (build-system r-build-system) + (home-page "http://cran.r-project.org/web/packages/backports") + (synopsis "Reimplementations of functions introduced since R 3.0.0") + (description + "Provides implementations of functions which have been introduced in R +since version 3.0.0. The backports are conditionally exported which results +in R resolving the function names to the version shipped with R (if available) +and uses the implemented backports as fallback. This way package developers +can make use of the new functions without worrying about the minimum required +R version.") + (license license:gpl2+))) + (define-public r-brew (package (name "r-brew") -- cgit v1.2.3 From 929d4aaea10e899479958eff6bc6c5adb34745fd Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:29 +0200 Subject: gnu: Add r-checkmate. * gnu/packages/statistics.scm (r-checkmate): New variable. --- gnu/packages/statistics.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index c3dadbdf60..1e6f3fd3ee 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1633,6 +1633,28 @@ can make use of the new functions without worrying about the minimum required R version.") (license license:gpl2+))) +(define-public r-checkmate + (package + (name "r-checkmate") + (version "1.8.1") + (source + (origin + (method url-fetch) + (uri (cran-uri "checkmate" version)) + (sha256 + (base32 + "1nqyi58jl33af82y8kw8iy9xbna2080y1khhy90kf6lim6q74024")))) + (build-system r-build-system) + (propagated-inputs + `(("r-backports" ,r-backports))) + (home-page "https://github.com/mllg/checkmate") + (synopsis "Fast and versatile argument checks") + (description + "This package provides tests and assertions to perform frequent argument +checks. A substantial part of the package was written in C to minimize any +worries about execution time overhead.") + (license license:bsd-3))) + (define-public r-brew (package (name "r-brew") -- cgit v1.2.3 From cd26ec3bbffb8dd7090ae8f97ba38573a9e00665 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:30 +0200 Subject: gnu: Add r-bbmisc. * gnu/packages/statistics.scm (r-bbmisc): New variable. --- gnu/packages/statistics.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 1e6f3fd3ee..c8ad5a8696 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1655,6 +1655,28 @@ checks. A substantial part of the package was written in C to minimize any worries about execution time overhead.") (license license:bsd-3))) +(define-public r-bbmisc + (package + (name "r-bbmisc") + (version "1.10") + (source + (origin + (method url-fetch) + (uri (cran-uri "BBmisc" version)) + (sha256 + (base32 + "0cw2mhw7qhdrx91zzd5iwyh7ch9fy4wxga8j63731q6sxr1airjl")))) + (properties `((upstream-name . "BBmisc"))) + (build-system r-build-system) + (propagated-inputs + `(("r-checkmate" ,r-checkmate))) + (home-page "https://github.com/berndbischl/BBmisc") + (synopsis "Miscellaneous functions for R package development") + (description + "This package provides miscellaneous helper functions for the development +of R packages.") + (license license:bsd-3))) + (define-public r-brew (package (name "r-brew") -- cgit v1.2.3 From dc4fb16d2521903b86a76931e778a8112cf5f0fe Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:31 +0200 Subject: gnu: Add r-fail. * gnu/packages/statistics.scm (r-fail): New variable. --- gnu/packages/statistics.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index c8ad5a8696..afe3d7e439 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1677,6 +1677,28 @@ worries about execution time overhead.") of R packages.") (license license:bsd-3))) +(define-public r-fail + (package + (name "r-fail") + (version "1.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "fail" version)) + (sha256 + (base32 + "0vfm6kmpmgsamda5p0sl771kbnsscan31l2chzssyw93kwmams7d")))) + (build-system r-build-system) + (propagated-inputs + `(("r-bbmisc" ,r-bbmisc) + ("r-checkmate" ,r-checkmate))) + (home-page "https://github.com/mllg/fail") + (synopsis "File abstraction interface layer (FAIL)") + (description + "This package provides a more comfortable interface to work with R data +or source files in a key-value fashion.") + (license license:bsd-3))) + (define-public r-brew (package (name "r-brew") -- cgit v1.2.3 From 9e330278eee73f9f79a7e457abe41be90b72a86d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:32 +0200 Subject: gnu: Add r-batchjobs. * gnu/packages/statistics.scm (r-batchjobs): New variable. --- gnu/packages/statistics.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index afe3d7e439..9cf79ef7c9 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -1699,6 +1699,37 @@ of R packages.") or source files in a key-value fashion.") (license license:bsd-3))) +(define-public r-batchjobs + (package + (name "r-batchjobs") + (version "1.6") + (source + (origin + (method url-fetch) + (uri (cran-uri "BatchJobs" version)) + (sha256 + (base32 + "1kb99024jih5bycc226bl4jyvbbl1sg72q3m2wnlshl7s8p6vva0")))) + (properties `((upstream-name . "BatchJobs"))) + (build-system r-build-system) + (propagated-inputs + `(("r-bbmisc" ,r-bbmisc) + ("r-brew" ,r-brew) + ("r-checkmate" ,r-checkmate) + ("r-dbi" ,r-dbi) + ("r-digest" ,r-digest) + ("r-fail" ,r-fail) + ("r-rsqlite" ,r-rsqlite) + ("r-sendmailr" ,r-sendmailr) + ("r-stringr" ,r-stringr))) + (home-page "https://github.com/tudo-r/BatchJobs") + (synopsis "Batch computing with R") + (description + "This package provides @code{Map}, @code{Reduce} and @code{Filter} +variants to generate jobs on batch computing systems like PBS/Torque, LSF, +SLURM and Sun Grid Engine. Multicore and SSH systems are also supported.") + (license license:bsd-2))) + (define-public r-brew (package (name "r-brew") -- cgit v1.2.3 From e8163773746bad6e20072d52b577d5209ba47cdc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:33 +0200 Subject: gnu: Add r-annotationforge. * gnu/packages/bioinformatics.scm (r-annotationforge): New variable. --- gnu/packages/bioinformatics.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0787d4bfeb..27646ff34c 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5170,6 +5170,35 @@ differential expression based on a model using the negative binomial distribution.") (license license:lgpl3+))) +(define-public r-annotationforge + (package + (name "r-annotationforge") + (version "1.14.2") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "AnnotationForge" version)) + (sha256 + (base32 + "1vkdd1qdv5g680ipw4vwjvn52xn66xpg6ngmwyknz77ckxnnpf4q")))) + (properties + `((upstream-name . "AnnotationForge"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-dbi" ,r-dbi) + ("r-rsqlite" ,r-rsqlite) + ("r-s4vectors" ,r-s4vectors) + ("r-xml" ,r-xml))) + (home-page "http://bioconductor.org/packages/AnnotationForge") + (synopsis "Code for building annotation database packages") + (description + "This package provides code for generating Annotation packages and their +databases. Packages produced are intended to be used with AnnotationDbi.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From cd9e7dc7ff32e04accd1910cd2bc060bf6c23857 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:34 +0200 Subject: gnu: Add r-rbgl. * gnu/packages/bioinformatics.scm (r-rbgl): New variable. --- gnu/packages/bioinformatics.scm | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 27646ff34c..0456cc61c7 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5199,6 +5199,27 @@ distribution.") databases. Packages produced are intended to be used with AnnotationDbi.") (license license:artistic2.0))) +(define-public r-rbgl + (package + (name "r-rbgl") + (version "1.48.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "RBGL" version)) + (sha256 + (base32 + "1k82zcbyfx3p9hc8r0hwq73krbhakjan8fgbfr6w8z2crfkv3zmz")))) + (properties `((upstream-name . "RBGL"))) + (build-system r-build-system) + (propagated-inputs `(("r-graph" ,r-graph))) + (home-page "http://www.bioconductor.org/packages/RBGL") + (synopsis "Interface to the Boost graph library") + (description + "This package provides a fairly extensive and comprehensive interface to +the graph algorithms contained in the Boost library.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From ad740ff818b834dc58bd37584f786bac7ef52d2e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:35 +0200 Subject: gnu: Add r-gseabase. * gnu/packages/bioinformatics.scm (r-gseabase): New variable. --- gnu/packages/bioinformatics.scm | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0456cc61c7..2cbda0cd73 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5220,6 +5220,33 @@ databases. Packages produced are intended to be used with AnnotationDbi.") the graph algorithms contained in the Boost library.") (license license:artistic2.0))) +(define-public r-gseabase + (package + (name "r-gseabase") + (version "1.34.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "GSEABase" version)) + (sha256 + (base32 + "1mvgja8malrnbzfakzjl5mmi7g080kj8zgxwc5964hcmn33i937j")))) + (properties `((upstream-name . "GSEABase"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-graph" ,r-graph) + ("r-xml" ,r-xml))) + (home-page "http://bioconductor.org/packages/GSEABase") + (synopsis "Gene set enrichment data structures and methods") + (description + "This package provides classes and methods to support @dfn{Gene Set +Enrichment Analysis} (GSEA).") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 1a1931f7e04aefa9dd0df715d6d701e76b73b106 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:36 +0200 Subject: gnu: Add r-category. * gnu/packages/bioinformatics.scm (r-category): New variable. --- gnu/packages/bioinformatics.scm | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 2cbda0cd73..14be1e36fd 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5247,6 +5247,37 @@ the graph algorithms contained in the Boost library.") Enrichment Analysis} (GSEA).") (license license:artistic2.0))) +(define-public r-category + (package + (name "r-category") + (version "2.38.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "Category" version)) + (sha256 + (base32 + "0c8px9ar589f3iqkbk9vfhwj30dpnxj81h8sfq20cl1cbmcx2a04")))) + (properties `((upstream-name . "Category"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-annotationdbi" ,r-annotationdbi) + ("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-genefilter" ,r-genefilter) + ("r-graph" ,r-graph) + ("r-gseabase" ,r-gseabase) + ("r-matrix" ,r-matrix) + ("r-rbgl" ,r-rbgl) + ("r-rsqlite" ,r-rsqlite))) + (home-page "http://bioconductor.org/packages/Category") + (synopsis "Category analysis") + (description + "This package provides a collection of tools for performing category +analysis.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 89f40c5e4eea65cf93627fdd64d667b06598226f Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:37 +0200 Subject: gnu: Add r-gostats. * gnu/packages/bioinformatics.scm (r-gostats): New variable. --- gnu/packages/bioinformatics.scm | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 14be1e36fd..107e720601 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5278,6 +5278,36 @@ Enrichment Analysis} (GSEA).") analysis.") (license license:artistic2.0))) +(define-public r-gostats + (package + (name "r-gostats") + (version "2.38.1") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "GOstats" version)) + (sha256 + (base32 + "1hhw6vqr8f3g4jzq0v8f2za0r1h117j5s6av87zxs41cv7dq1wb3")))) + (properties `((upstream-name . "GOstats"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-annotationdbi" ,r-annotationdbi) + ("r-annotationforge" ,r-annotationforge) + ("r-biobase" ,r-biobase) + ("r-category" ,r-category) + ("r-go-db" ,r-go-db) + ("r-graph" ,r-graph) + ("r-rbgl" ,r-rbgl))) + (home-page "http://bioconductor.org/packages/GOstats") + (synopsis "Tools for manipulating GO and microarrays") + (description + "This package provides a set of tools for interacting with GO and +microarray data. A variety of basic manipulation tools for graphs, hypothesis +testing and other simple calculations.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From cb99d457f02d7eaf014b777a2d9ff94133512dc1 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:38 +0200 Subject: gnu: Add r-shortread. * gnu/packages/bioinformatics.scm (r-shortread): New variable. --- gnu/packages/bioinformatics.scm | 42 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 107e720601..4dcf661dca 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5308,6 +5308,48 @@ microarray data. A variety of basic manipulation tools for graphs, hypothesis testing and other simple calculations.") (license license:artistic2.0))) +(define-public r-shortread + (package + (name "r-shortread") + (version "1.30.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "ShortRead" version)) + (sha256 + (base32 + "0qlxns4bhwfpafx3km2lnivgl2qyp7n4g1ardm6vrinpq8paxbjg")))) + (properties `((upstream-name . "ShortRead"))) + (build-system r-build-system) + (inputs + `(("zlib" ,zlib))) + (propagated-inputs + `(("r-biobase" ,r-biobase) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biocparallel" ,r-biocparallel) + ("r-biostrings" ,r-biostrings) + ("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-hwriter" ,r-hwriter) + ("r-iranges" ,r-iranges) + ("r-lattice" ,r-lattice) + ("r-latticeextra" ,r-latticeextra) + ("r-rsamtools" ,r-rsamtools) + ("r-s4vectors" ,r-s4vectors) + ("r-xvector" ,r-xvector) + ("r-zlibbioc" ,r-zlibbioc))) + (home-page "http://bioconductor.org/packages/ShortRead") + (synopsis "FASTQ input and manipulation tools") + (description + "This package implements sampling, iteration, and input of FASTQ files. +It includes functions for filtering and trimming reads, and for generating a +quality assessment report. Data are represented as +@code{DNAStringSet}-derived objects, and easily manipulated for a diversity of +purposes. The package also contains legacy support for early single-end, +ungapped alignment formats.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 7f903d7300059a34f2bbb11dc2c07ee1d0b59c0b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:39 +0200 Subject: gnu: Add r-systempiper. * gnu/packages/bioinformatics.scm (r-systempiper): New variable. --- gnu/packages/bioinformatics.scm | 46 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 4dcf661dca..fdd71137cd 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5350,6 +5350,52 @@ purposes. The package also contains legacy support for early single-end, ungapped alignment formats.") (license license:artistic2.0))) +(define-public r-systempiper + (package + (name "r-systempiper") + (version "1.6.4") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "systemPipeR" version)) + (sha256 + (base32 + "0s2g46a5d5bvx45i3cgmib48wf8hrniyladhm0f7kgcbfx57248m")))) + (properties `((upstream-name . "systemPipeR"))) + (build-system r-build-system) + (propagated-inputs + `(("r-annotate" ,r-annotate) + ("r-batchjobs" ,r-batchjobs) + ("r-biocgenerics" ,r-biocgenerics) + ("r-biostrings" ,r-biostrings) + ("r-deseq2" ,r-deseq2) + ("r-edger" ,r-edger) + ("r-genomicfeatures" ,r-genomicfeatures) + ("r-genomicranges" ,r-genomicranges) + ("r-ggplot2" ,r-ggplot2) + ("r-go-db" ,r-go-db) + ("r-gostats" ,r-gostats) + ("r-limma" ,r-limma) + ("r-pheatmap" ,r-pheatmap) + ("r-rjson" ,r-rjson) + ("r-rsamtools" ,r-rsamtools) + ("r-shortread" ,r-shortread) + ("r-summarizedexperiment" ,r-summarizedexperiment) + ("r-variantannotation" ,r-variantannotation))) + (home-page "https://github.com/tgirke/systemPipeR") + (synopsis "Next generation sequencing workflow and reporting environment") + (description + "This R package provides tools for building and running automated +end-to-end analysis workflows for a wide range of @dfn{next generation +sequence} (NGS) applications such as RNA-Seq, ChIP-Seq, VAR-Seq and Ribo-Seq. +Important features include a uniform workflow interface across different NGS +applications, automated report generation, and support for running both R and +command-line software, such as NGS aligners or peak/variant callers, on local +computers or compute clusters. Efficient handling of complex sample sets and +experimental designs is facilitated by a consistently implemented sample +annotation infrastructure.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 684f29bd2e7ae7d51be4b873a01bf0836c3fa64b Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:40 +0200 Subject: gnu: Add r-grohmm. * gnu/packages/bioinformatics.scm (r-grohmm): New variable. --- gnu/packages/bioinformatics.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index fdd71137cd..3837879626 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5396,6 +5396,32 @@ experimental designs is facilitated by a consistently implemented sample annotation infrastructure.") (license license:artistic2.0))) +(define-public r-grohmm + (package + (name "r-grohmm") + (version "1.6.0") + (source + (origin + (method url-fetch) + (uri (bioconductor-uri "groHMM" version)) + (sha256 + (base32 + "1l9mcyzyc548114ysb9r0q7hgzw3yy7gpiahrzkzj6hblc4f1jyp")))) + (properties `((upstream-name . "groHMM"))) + (build-system r-build-system) + (propagated-inputs + `(("r-genomeinfodb" ,r-genomeinfodb) + ("r-genomicalignments" ,r-genomicalignments) + ("r-genomicranges" ,r-genomicranges) + ("r-iranges" ,r-iranges) + ("r-rtracklayer" ,r-rtracklayer) + ("r-s4vectors" ,r-s4vectors))) + (home-page "https://github.com/Kraus-Lab/groHMM") + (synopsis "GRO-seq analysis pipeline") + (description + "This package provides a pipeline for the analysis of GRO-seq data.") + (license license:gpl3+))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From f3cfe4515ad747fe64999b9904d9866ef0921081 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 21 Sep 2016 22:45:41 +0200 Subject: gnu: Add r-txdb-hsapiens-ucsc-hg19-knowngene. * gnu/packages/bioinformatics.scm (r-txdb-hsapiens-ucsc-hg19-knowngene): New variable. --- gnu/packages/bioinformatics.scm | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3837879626..fbff139c9a 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5422,6 +5422,38 @@ annotation infrastructure.") "This package provides a pipeline for the analysis of GRO-seq data.") (license license:gpl3+))) +(define-public r-txdb-hsapiens-ucsc-hg19-knowngene + (package + (name "r-txdb-hsapiens-ucsc-hg19-knowngene") + (version "3.2.2") + (source (origin + (method url-fetch) + ;; We cannot use bioconductor-uri here because this tarball is + ;; located under "data/annotation/" instead of "bioc/". + (uri (string-append "http://bioconductor.org/packages/" + "release/data/annotation/src/contrib" + "/TxDb.Hsapiens.UCSC.hg19.knownGene_" + version ".tar.gz")) + (sha256 + (base32 + "1sajhcqqwazgz2lqbik7rd935i7kpnh08zxbp2ra10j72yqy4g86")))) + (properties + `((upstream-name . "TxDb.Hsapiens.UCSC.hg19.knownGene"))) + (build-system r-build-system) + ;; As this package provides little more than a very large data file it + ;; doesn't make sense to build substitutes. + (arguments `(#:substitutable? #f)) + (propagated-inputs + `(("r-genomicfeatures" ,r-genomicfeatures))) + (home-page + "http://bioconductor.org/packages/TxDb.Hsapiens.UCSC.hg19.knownGene/") + (synopsis "Annotation package for human genome in TxDb format") + (description + "This package provides an annotation database of Homo sapiens genome +data. It is derived from the UCSC hg19 genome and based on the \"knownGene\" +track. The database is exposed as a @code{TxDb} object.") + (license license:artistic2.0))) + (define-public vsearch (package (name "vsearch") -- cgit v1.2.3 From 2c9f4786c967d2e5090cef2a18bebf8d840e9428 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 22 Sep 2016 22:25:12 +0200 Subject: profiles: manifest-lookup-package: Optionally match version prefix. * guix/profiles.scm (manifest-lookup-package): Optionally filter store item matches by version prefix. --- guix/profiles.scm | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/guix/profiles.scm b/guix/profiles.scm index 4a2ba1c2f4..78deeb7977 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -472,21 +472,30 @@ replace it." (cons (gexp-input thing output) deps))) (manifest-entries manifest))) -(define (manifest-lookup-package manifest name) +(define* (manifest-lookup-package manifest name #:optional version) "Return as a monadic value the first package or store path referenced by -MANIFEST that named NAME, or #f if not found." +MANIFEST that is named NAME and optionally has the given VERSION prefix, or #f +if not found." ;; Return as a monadic value the package or store path referenced by the ;; manifest ENTRY, or #f if not referenced. (define (entry-lookup-package entry) (define (find-among-inputs inputs) (find (lambda (input) (and (package? input) - (equal? name (package-name input)))) + (equal? name (package-name input)) + (if version + (string-prefix? version (package-version input)) + #t))) inputs)) (define (find-among-store-items items) (find (lambda (item) - (equal? name (package-name->name+version - (store-path-package-name item)))) + (let-values (((pkg-name pkg-version) + (package-name->name+version + (store-path-package-name item)))) + (and (equal? name pkg-name) + (if version + (string-prefix? version pkg-version) + #t)))) items)) ;; TODO: Factorize. -- cgit v1.2.3 From 7ddc178093a4e705c9221ef2758eeeb9af7284f8 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Thu, 22 Sep 2016 22:27:06 +0200 Subject: profiles: Build GTK+ input module cache. * guix/profiles.scm (gtk-im-modules): New procedure. (%default-profile-hooks): Add it. --- guix/profiles.scm | 62 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 62 insertions(+) diff --git a/guix/profiles.scm b/guix/profiles.scm index 78deeb7977..e7319a8a10 100644 --- a/guix/profiles.scm +++ b/guix/profiles.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2014, 2016 Alex Kost ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2015 Sou Bunnbu +;;; Copyright © 2016 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -723,6 +724,66 @@ creates the GTK+ 'icon-theme.cache' file for each theme." #:substitutable? #f) (return #f)))) +(define (gtk-im-modules manifest) + "Return a derivation that builds the cache files for input method modules +for both major versions of GTK+." + + (mlet %store-monad ((gtk+ (manifest-lookup-package manifest "gtk+" "3")) + (gtk+-2 (manifest-lookup-package manifest "gtk+" "2"))) + + (define (build gtk gtk-version) + (let ((major (string-take gtk-version 1))) + (with-imported-modules '((guix build utils) + (guix build union) + (guix build profiles) + (guix search-paths) + (guix records)) + #~(begin + (use-modules (guix build utils) + (guix build union) + (guix build profiles) + (ice-9 popen) + (srfi srfi-1) + (srfi srfi-26)) + + (let* ((prefix (string-append "/lib/gtk-" #$major ".0/" + #$gtk-version)) + (query (string-append #$gtk "/bin/gtk-query-immodules-" + #$major ".0")) + (destdir (string-append #$output prefix)) + (moddirs (cons (string-append #$gtk prefix "/immodules") + (filter file-exists? + (map (cut string-append <> prefix "/immodules") + '#$(manifest-inputs manifest))))) + (modules (append-map (cut find-files <> "\\.so$") + moddirs))) + + ;; Generate a new immodules cache file. + (mkdir-p (string-append #$output prefix)) + (let ((pipe (apply open-pipe* OPEN_READ query modules)) + (outfile (string-append #$output prefix + "/immodules-gtk" #$major ".cache"))) + (dynamic-wind + (const #t) + (lambda () + (call-with-output-file outfile + (lambda (out) + (while (not (eof-object? (peek-char pipe))) + (write-char (read-char pipe) out)))) + #t) + (lambda () + (close-pipe pipe))))))))) + + ;; Don't run the hook when there's nothing to do. + (let ((gexp #~(begin + #$(if gtk+ (build gtk+ "3.0.0") #t) + #$(if gtk+-2 (build gtk+-2 "2.10.0") #t)))) + (if (or gtk+ gtk+-2) + (gexp->derivation "gtk-im-modules" gexp + #:local-build? #t + #:substitutable? #f) + (return #f))))) + (define (xdg-desktop-database manifest) "Return a derivation that builds the @file{mimeinfo.cache} database from desktop files. It's used to query what applications can handle a given @@ -844,6 +905,7 @@ files for the truetype fonts of the @var{manifest} entries." ghc-package-cache-file ca-certificate-bundle gtk-icon-themes + gtk-im-modules xdg-desktop-database xdg-mime-database)) -- cgit v1.2.3 From 3ef08dceb3689470191e2c74758efc3d3c4219f3 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 08:16:13 +0200 Subject: gnu: qtractor: Update to 0.7.9. * gnu/packages/music.scm (qtractor): Update to 0.7.9. --- gnu/packages/music.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index a7715bce24..796ec7a1af 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1540,14 +1540,14 @@ computer's keyboard.") (define-public qtractor (package (name "qtractor") - (version "0.7.7") + (version "0.7.9") (source (origin (method url-fetch) (uri (string-append "http://downloads.sourceforge.net/qtractor/" "qtractor-" version ".tar.gz")) (sha256 (base32 - "0q8kvy1ynlg64v1w7jxix1rpq0lp2ixgb2y8cbbwxd2b28r3r2vl")))) + "0pp459kfgrnngj373gnwwl43xjz32lmyf7v62p2nnjh6c7wr1ryq")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; no "check" target (inputs -- cgit v1.2.3 From 204adc301785073bc07a936d4f3c494876f68449 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 10:47:58 +0200 Subject: gnu: azr3: Fix libsigc++ build errors. * gnu/packages/audio.scm (azr3)[arguments]: Add "-std=gnu++11" flag. [source]: Add patch. * gnu/packages/patches/azr3.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/audio.scm | 5 +- gnu/packages/patches/azr3.patch | 151 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 156 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/azr3.patch diff --git a/gnu/local.mk b/gnu/local.mk index 2f06ec46f6..c2cdf8b448 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -458,6 +458,7 @@ dist_patch_DATA = \ %D%/packages/patches/avahi-localstatedir.patch \ %D%/packages/patches/avidemux-install-to-lib.patch \ %D%/packages/patches/awesome-reproducible-png.patch \ + %D%/packages/patches/azr3.patch \ %D%/packages/patches/bash-completion-directories.patch \ %D%/packages/patches/bigloo-gc-shebangs.patch \ %D%/packages/patches/binutils-ld-new-dtags.patch \ diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index d818216047..9699a55030 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -266,12 +266,15 @@ engineers, musicians, soundtrack editors and composers.") ".tar.bz2")) (sha256 (base32 - "18mdw6nc0vgj6k9rsy0x8w64wvzld0frqshrxxbxfj9qi9843vlc")))) + "18mdw6nc0vgj6k9rsy0x8w64wvzld0frqshrxxbxfj9qi9843vlc")) + (patches (search-patches "azr3.patch")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target #:make-flags (list "LV2PEG=ttl2c" + "CXXFLAGS=-std=gnu++11" + "CFLAGS=-std=gnu++11" (string-append "prefix=" %output) (string-append "pkgdatadir=" %output "/share/azr3-jack")))) (inputs diff --git a/gnu/packages/patches/azr3.patch b/gnu/packages/patches/azr3.patch new file mode 100644 index 0000000000..5849383c5b --- /dev/null +++ b/gnu/packages/patches/azr3.patch @@ -0,0 +1,151 @@ +This patch adds the "sigc" and "std" namespace prefixes where needed. It also +replaces a double single-argument "bind" with a single two-argument "bind", +because the former would confuse the compiler. + +The patch has been sent to the developer on 2016-09-26. + +--- azr3-jack-1.2.3/azr3/knob.cpp 2016-09-26 10:29:27.653375902 +0200 ++++ azr3-jack-1.2.3/azr3/knob.cpp 2016-09-26 10:29:38.693430647 +0200 +@@ -44,7 +44,7 @@ + set_size_request(44, 44); + add_events(EXPOSURE_MASK | BUTTON1_MOTION_MASK | + BUTTON_PRESS_MASK | SCROLL_MASK); +- m_adj.signal_value_changed().connect(mem_fun(*this, &Knob::queue_draw)); ++ m_adj.signal_value_changed().connect(sigc::mem_fun(*this, &Knob::queue_draw)); + } + + +--- azr3-jack-1.2.3/azr3/drawbar.cpp 2016-09-26 10:27:40.632845216 +0200 ++++ azr3-jack-1.2.3/azr3/drawbar.cpp 2016-09-26 10:27:48.952886473 +0200 +@@ -37,7 +37,7 @@ + set_size_request(22, 150); + add_events(EXPOSURE_MASK | BUTTON1_MOTION_MASK | + BUTTON_PRESS_MASK | SCROLL_MASK); +- m_adj.signal_value_changed().connect(mem_fun(*this, &Drawbar::queue_draw)); ++ m_adj.signal_value_changed().connect(sigc::mem_fun(*this, &Drawbar::queue_draw)); + } + + +--- azr3-jack-1.2.3/azr3/switch.cpp 2016-09-26 10:28:48.169180111 +0200 ++++ azr3-jack-1.2.3/azr3/switch.cpp 2016-09-26 10:28:55.713217520 +0200 +@@ -49,7 +49,7 @@ + } + set_size_request(m_width, m_height); + add_events(EXPOSURE_MASK | BUTTON_PRESS_MASK | SCROLL_MASK); +- m_adj.signal_value_changed().connect(mem_fun(*this, &Switch::queue_draw)); ++ m_adj.signal_value_changed().connect(sigc::mem_fun(*this, &Switch::queue_draw)); + } + + +--- azr3-jack-1.2.3/azr3/azr3gui.cpp 2016-09-26 09:05:10.106963561 +0200 ++++ azr3-jack-1.2.3/azr3/azr3gui.cpp 2016-09-26 10:26:47.480581648 +0200 +@@ -73,19 +73,19 @@ + m_tbox = add_textbox(m_fbox, pixmap, 391, 19, 3, 140, 39); + m_tbox->add_events(SCROLL_MASK); + m_tbox->signal_scroll_display. +- connect(mem_fun(*this, &AZR3GUI::display_scroll)); ++ connect(sigc::mem_fun(*this, &AZR3GUI::display_scroll)); + m_splitpoint_adj = new Adjustment(0, 0, 1); + m_adj[n_splitpoint] = m_splitpoint_adj; + m_splitpoint_adj->signal_value_changed(). +- connect(mem_fun(*this, &AZR3GUI::splitpoint_changed)); ++ connect(sigc::mem_fun(*this, &AZR3GUI::splitpoint_changed)); + Menu* menu = create_menu(); + m_tbox->signal_button_press_event(). +- connect(bind(mem_fun(*this, &AZR3GUI::popup_menu), menu)); ++ connect(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::popup_menu), menu)); + + // keyboard split switch + m_splitswitch = add_switch(m_fbox, -1, 537, 49, Switch::Mini); + m_splitswitch->get_adjustment().signal_value_changed(). +- connect(mem_fun(*this, &AZR3GUI::splitbox_clicked)); ++ connect(sigc::mem_fun(*this, &AZR3GUI::splitbox_clicked)); + + // upper knobs + add_switch(m_fbox, n_mono, 61, 105, Switch::Mini); +@@ -141,8 +141,8 @@ + // mode switcher + Widget* eb = add_clickbox(m_fbox, 14, 319, 14, 44); + eb->signal_button_press_event(). +- connect(sigc::hide(bind(bind(mem_fun(*this, &AZR3GUI::change_mode), +- ref(m_fbox)), false))); ++ connect(sigc::hide(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::change_mode), ++ false, std::ref(m_fbox)))); + m_fx_widgets.push_back(eb); + + // Mr Valve controls +@@ -182,8 +182,8 @@ + // mode switcher 2 + Widget* eb2 = add_clickbox(m_vbox, 14, 53, 14, 44); + eb2->signal_button_press_event(). +- connect(sigc::hide(bind(bind(mem_fun(*this, &AZR3GUI::change_mode), +- ref(m_fbox)), true))); ++ connect(sigc::hide(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::change_mode), ++ true, std::ref(m_fbox)))); + + // vibrato controls + add_switch(m_vbox, n_1_vibrato, 39, 17, Switch::Green); +@@ -352,9 +352,9 @@ + knob->set_style(s); + if (port >= 0 && port < m_adj.size()) { + knob->get_adjustment().signal_value_changed(). +- connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port), +- mem_fun(knob->get_adjustment(), +- &Adjustment::get_value))); ++ connect(compose(sigc::bind<0>(sigc::mem_fun(*this, &AZR3GUI::control_changed), port), ++ sigc::mem_fun(knob->get_adjustment(), ++ &Adjustment::get_value))); + assert(m_adj[port] == 0); + m_adj[port] = &knob->get_adjustment(); + } +@@ -382,8 +382,8 @@ + db->set_style(s); + if (port >= 0 && port < m_adj.size()) { + db->get_adjustment().signal_value_changed(). +- connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed), port), +- mem_fun(db->get_adjustment(), &Adjustment::get_value))); ++ connect(compose(sigc::bind<0>(sigc::mem_fun(*this, &AZR3GUI::control_changed), port), ++ sigc::mem_fun(db->get_adjustment(), &Adjustment::get_value))); + assert(m_adj[port] == 0); + m_adj[port] = &db->get_adjustment(); + } +@@ -397,8 +397,8 @@ + fbox.put(*sw, xoffset, yoffset); + if (port >= 0 && port < m_adj.size()) { + sw->get_adjustment().signal_value_changed(). +- connect(compose(bind<0>(mem_fun(*this, &AZR3GUI::control_changed),port), +- mem_fun(sw->get_adjustment(), &Adjustment::get_value))); ++ connect(compose(sigc::bind<0>(sigc::mem_fun(*this, &AZR3GUI::control_changed),port), ++ sigc::mem_fun(sw->get_adjustment(), &Adjustment::get_value))); + assert(m_adj[port] == 0); + m_adj[port] = &sw->get_adjustment(); + } +@@ -489,7 +489,7 @@ + oss<first<<' '<second.substr(0, 23); + MenuItem* item = manage(new MenuItem(oss.str())); + item->signal_activate(). +- connect(bind(mem_fun(*this, &AZR3GUI::program_changed), iter->first)); ++ connect(sigc::bind(sigc::mem_fun(*this, &AZR3GUI::program_changed), iter->first)); + m_program_menu->items().push_back(*item); + item->show(); + item->get_child()->modify_bg(STATE_NORMAL, m_menu_bg); +@@ -503,8 +503,8 @@ + for (int i = 0; i < 128; ++i) { + MenuItem* item = manage(new MenuItem(note2str(i))); + item->signal_activate(). +- connect(bind(mem_fun(*m_splitpoint_adj, &Adjustment::set_value), +- i / 128.0)); ++ connect(sigc::bind(sigc::mem_fun(*m_splitpoint_adj, &Adjustment::set_value), ++ i / 128.0)); + m_split_menu->items().push_back(*item); + item->show(); + item->get_child()->modify_bg(STATE_NORMAL, m_menu_bg); +@@ -533,7 +533,7 @@ + + MenuItem* save_item = manage(new MenuItem("Save program")); + save_item->signal_activate(). +- connect(mem_fun(*this, &AZR3GUI::save_program)); ++ connect(sigc::mem_fun(*this, &AZR3GUI::save_program)); + save_item->show(); + save_item->get_child()->modify_fg(STATE_NORMAL, m_menu_bg); + save_item->get_child()->modify_fg(STATE_NORMAL, m_menu_fg); -- cgit v1.2.3 From af8de20386bc38305ca653becdfb260d3a9a39de Mon Sep 17 00:00:00 2001 From: Ben Woodcroft Date: Mon, 26 Sep 2016 20:35:32 +1000 Subject: gnu: vsearch: Update to 2.1.1. * gnu/packages/bioinformatics.scm (vsearch): Update to 2.1.1. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index fbff139c9a..b0bb2379e2 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -5457,7 +5457,7 @@ track. The database is exposed as a @code{TxDb} object.") (define-public vsearch (package (name "vsearch") - (version "2.1.0") + (version "2.1.1") (source (origin (method url-fetch) @@ -5467,7 +5467,7 @@ track. The database is exposed as a @code{TxDb} object.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1937yzchsxnnf6j1xxifpa219zlwpkkz0a5nh4hdgnccscrszw6z")) + "0rn40inkpgv0j1r1j9kmgjkb7nc8v5c9ijvbhzr17iayannxvlq9")) (modules '((guix build utils))) (snippet '(begin -- cgit v1.2.3 From 7f5ca399bfe43c32f3a61acb2b7440737e7bbcc5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 12:08:13 +0200 Subject: gnu: tbb: Use modify-phases syntax. * gnu/packages/tbb.scm (tbb)[arguments]: Use "modify-phases" syntax. --- gnu/packages/tbb.scm | 59 ++++++++++++++++++++++++++-------------------------- 1 file changed, 29 insertions(+), 30 deletions(-) diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm index c19391abfb..eab51f8a1e 100644 --- a/gnu/packages/tbb.scm +++ b/gnu/packages/tbb.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Ricardo Wurmus +;;; Copyright © 2015, 2016 Ricardo Wurmus ;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. @@ -49,35 +49,34 @@ `(#:test-target "test" #:make-flags (list (string-append "LDFLAGS=-Wl,-rpath=" (assoc-ref %outputs "out") "/lib")) - #:phases (alist-replace - 'configure - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "build/linux.gcc.inc" - (("LIB_LINK_FLAGS =") - (string-append "LIB_LINK_FLAGS = -Wl,-rpath=" - (assoc-ref outputs "out") "/lib")))) - (alist-replace - 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((doc (string-append - (assoc-ref outputs "doc") "/doc")) - (examples (string-append doc "/examples")) - (lib (string-append - (assoc-ref outputs "out") "/lib")) - (include (string-append - (assoc-ref outputs "out") "/include"))) - (mkdir-p lib) - (for-each - (lambda (f) - (copy-file f - (string-append lib "/" - (basename f)))) - (find-files "build/guix_release" "\\.so")) - (copy-recursively "doc" doc) - (copy-recursively "examples" examples) - (copy-recursively "include" include) - #t)) - %standard-phases)))) + #:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "build/linux.gcc.inc" + (("LIB_LINK_FLAGS =") + (string-append "LIB_LINK_FLAGS = -Wl,-rpath=" + (assoc-ref outputs "out") "/lib"))))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((doc (string-append + (assoc-ref outputs "doc") "/doc")) + (examples (string-append doc "/examples")) + (lib (string-append + (assoc-ref outputs "out") "/lib")) + (include (string-append + (assoc-ref outputs "out") "/include"))) + (mkdir-p lib) + (for-each + (lambda (f) + (copy-file f + (string-append lib "/" + (basename f)))) + (find-files "build/guix_release" "\\.so")) + (copy-recursively "doc" doc) + (copy-recursively "examples" examples) + (copy-recursively "include" include) + #t)))))) (home-page "https://www.threadingbuildingblocks.org") (synopsis "C++ library for parallel programming") (description -- cgit v1.2.3 From ba4529c4f76a455076a0b4a74e6af5fca3140064 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 12:39:52 +0200 Subject: gnu: ghc-tls: Update to 1.3.8. * gnu/packages/haskell.scm (ghc-tls): Update to 1.3.8. --- gnu/packages/haskell.scm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index dcd21e2a46..f366a9f391 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016 Ludovic Courtès ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2015, 2016 Ricardo Wurmus ;;; ;;; This file is part of GNU Guix. ;;; @@ -6152,14 +6153,14 @@ for X.509 certificates.") (define-public ghc-tls (package (name "ghc-tls") - (version "1.3.3") + (version "1.3.8") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "tls/tls-" version ".tar.gz")) (sha256 (base32 - "096ay54bwy6qi9z8ypncww3ls853zj37yaficvcg7qcqj42zn0wz")))) + "1rdidf18i781c0vdvy9yn79yh08hmcacf6fp3sgghyiy3h0wyh5l")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-mtl" ,ghc-mtl) -- cgit v1.2.3 From 1a545a1e7c30db76e562af527673081b490c4a11 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 12:41:46 +0200 Subject: gnu: tbb: Fail on test errors. * gnu/packages/tbb.scm (tbb)[arguments]: Add phase "fail-on-test-errors". --- gnu/packages/tbb.scm | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm index eab51f8a1e..43e9288fee 100644 --- a/gnu/packages/tbb.scm +++ b/gnu/packages/tbb.scm @@ -51,6 +51,11 @@ (assoc-ref %outputs "out") "/lib")) #:phases (modify-phases %standard-phases + (add-after 'unpack 'fail-on-test-errors + (lambda _ + (substitute* "Makefile" + (("-\\$\\(MAKE") "$(MAKE")) + #t)) (replace 'configure (lambda* (#:key outputs #:allow-other-keys) (substitute* "build/linux.gcc.inc" -- cgit v1.2.3 From 1da48e430265c3dbca5eb3130efa8720edf44ad6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 14:26:17 +0200 Subject: gnu: ghc-tagsoup: Update to 0.14. * gnu/packages/haskell.scm (ghc-tagsoup): Update to 0.14. --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index f366a9f391..52698450f2 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -4291,7 +4291,7 @@ indexed variants.") (define-public ghc-tagsoup (package (name "ghc-tagsoup") - (version "0.13.3") + (version "0.14") (source (origin (method url-fetch) @@ -4301,7 +4301,7 @@ indexed variants.") ".tar.gz")) (sha256 (base32 - "13b6zy6346r3cxhaivys84fnxarg8wbv7r2znazfjdkqil8n5a1j")))) + "07pax7i0bl79dmqqz58zy09yrgpnyyr2ya0z183hv96kp65jv0lh")))) (build-system haskell-build-system) (inputs `(("ghc-text" ,ghc-text))) (home-page -- cgit v1.2.3 From ae87e4fcde75db1767bd8ba807e61a6ef22e1032 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 14:26:53 +0200 Subject: gnu: ghc-pandoc-types: Update to 1.16.1.1. * gnu/packages/haskell.scm (ghc-pandoc-types): Update to 1.16.1.1. --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 52698450f2..158bdfc516 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5116,7 +5116,7 @@ providing an 'rnf' implementation.") (define-public ghc-pandoc-types (package (name "ghc-pandoc-types") - (version "1.12.4.7") + (version "1.16.1.1") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" @@ -5124,7 +5124,7 @@ providing an 'rnf' implementation.") version ".tar.gz")) (sha256 (base32 - "108n11kbdaj2ii3cyf0xczhsx90p1gjbxwqp1f0wyn2m3cls632n")))) + "094mzgdxva84kcpjf9m8b5n3chm1wm44bzflh5x6xhddz6pb7zpq")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-syb" ,ghc-syb) -- cgit v1.2.3 From 8f1e2dca5554a943c3f4091b982c95e2dd93c4a6 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 14:27:21 +0200 Subject: gnu: ghc-highlighting-kate: Update to 0.6.3. * gnu/packages/haskell.scm (ghc-highlighting-kate): Update to 0.6.3. --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 158bdfc516..c2ada11590 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5216,7 +5216,7 @@ and utilities for pretty printing.") (define-public ghc-highlighting-kate (package (name "ghc-highlighting-kate") - (version "0.6") + (version "0.6.3") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" @@ -5224,7 +5224,7 @@ and utilities for pretty printing.") version ".tar.gz")) (sha256 (base32 - "16334fbiyq6017zbgc59qc00h0bk24xh4dcrbqx63dvf72ac37dk")))) + "03c4flh4h1jd48bx0qmplax3q8w6wj1dhbh6j0xhaf5h95fbinki")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-diff" ,ghc-diff) -- cgit v1.2.3 From 2e9b1276b7896cf735532f3c2173d3edbec9eca5 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 14:27:53 +0200 Subject: gnu: ghc-cmark: Update to 0.5.3.1. * gnu/packages/haskell.scm (ghc-cmark): Update to 0.5.3.1. --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index c2ada11590..630c54b60b 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5248,14 +5248,14 @@ descriptions.") (define-public ghc-cmark (package (name "ghc-cmark") - (version "0.4.1") + (version "0.5.3.1") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "cmark/cmark-" version ".tar.gz")) (sha256 (base32 - "0c134qh65viaq4q6pv7bnnr5wchzivg94nv0dj8pc1326sx0dw12")))) + "09515h9b26az9c2mbl6l7azimaixa6yff8w359k0ml8jwykjvqaa")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-text" ,ghc-text))) -- cgit v1.2.3 From 5a502d9abd549cf06a37c0a00a5200c6cd05269e Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 14:28:18 +0200 Subject: gnu: ghc-texmath: Update to 0.8.6.5. * gnu/packages/haskell.scm (ghc-texmath): Update to 0.8.6.5. --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 630c54b60b..0a62698e4f 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -5141,14 +5141,14 @@ building up, manipulating and serialising @code{Pandoc} structures.") (define-public ghc-texmath (package (name "ghc-texmath") - (version "0.8.4") + (version "0.8.6.5") (source (origin (method url-fetch) (uri (string-append "https://hackage.haskell.org/package/" "texmath/texmath-" version ".tar.gz")) (sha256 (base32 - "15821jg64fbr4rwaglp5ksah6q8qqz1vkjxlqp6d3bbb1rj8v2ri")))) + "143c8k7dyhwa9blpa8svy23ybx7i4xzb9jnfcimj8iigizbw7y1k")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-syb" ,ghc-syb) -- cgit v1.2.3 From bc600b80a2bdf66142b9ff44d1765f3ff4d0c36d Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 14:28:50 +0200 Subject: gnu: ghc-pandoc: Update to 1.17.2. * gnu/packages/haskell.scm (ghc-pandoc): Update to 1.17.2. --- gnu/packages/haskell.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/haskell.scm b/gnu/packages/haskell.scm index 0a62698e4f..3bd3e1476d 100644 --- a/gnu/packages/haskell.scm +++ b/gnu/packages/haskell.scm @@ -6280,7 +6280,7 @@ libraries, such as http-conduit.") (define-public ghc-pandoc (package (name "ghc-pandoc") - (version "1.15.2.1") + (version "1.17.2") (source (origin (method url-fetch) @@ -6288,7 +6288,7 @@ libraries, such as http-conduit.") version ".tar.gz")) (sha256 (base32 - "0nfzwsdvrvg9zypgyqk0246p10yzlpqsqnkds8yraqybbvkb1g30")))) + "1v78zq12p71gq0pc24h08inxcq5gxd0xb7m5ds0xw9pv9l2pswl1")))) (build-system haskell-build-system) (propagated-inputs `(("ghc-syb" ,ghc-syb) -- cgit v1.2.3 From 675d7ae26f65996c41bf08f39fc2b61baef4b785 Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Mon, 26 Sep 2016 14:29:25 +0200 Subject: gnu: ncbi-vdb: Only build on i686 and x86_64. * gnu/packages/bioinformatics.scm (ncbi-vdb)[supported-systems]: Only build on i686 and x86_64. [arguments]: Add mandatory "-msse2" flag to CFLAGS. --- gnu/packages/bioinformatics.scm | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index b0bb2379e2..1f11052aa8 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4216,6 +4216,10 @@ simultaneously.") (("LIBRARIES_TO_INSTALL =") "LIBRARIES_TO_INSTALL = kdf5.$(VERSION_LIBX) kdf5.$(VERSION_SHLX)")) + (substitute* "build/Makefile.env" + (("CFLAGS =" prefix) + (string-append prefix "-msse2 "))) + ;; The 'configure' script doesn't recognize things like ;; '--enable-fast-install'. (zero? (system* @@ -4258,6 +4262,8 @@ simultaneously.") ("libmagic" ,file) ("hdf5" ,hdf5))) (native-inputs `(("perl" ,perl))) + ;; NCBI-VDB requires SSE capability. + (supported-systems '("i686-linux" "x86_64-linux")) (home-page "https://github.com/ncbi/ncbi-vdb") (synopsis "Database engine for genetic information") (description -- cgit v1.2.3 From 58478cc1cb225e2eed979afa4021f850f3ebf121 Mon Sep 17 00:00:00 2001 From: Danny Milosavljevic Date: Mon, 26 Sep 2016 14:30:22 +0200 Subject: gnu: libftdi: Propagate the libusb input. * gnu/packages/libftdi.scm (libftdi): Change libusb from an input to a propagated-input. Signed-off-by: Leo Famulari --- gnu/packages/libftdi.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/libftdi.scm b/gnu/packages/libftdi.scm index 5c2671aac7..208e13546e 100644 --- a/gnu/packages/libftdi.scm +++ b/gnu/packages/libftdi.scm @@ -37,8 +37,8 @@ (base32 "088yh8pxd6q53ssqndydcw1dkq51cjqyahc03lm6iip22cdazcf0")))) (build-system cmake-build-system) - (inputs - `(("libusb" ,libusb))) + (propagated-inputs + `(("libusb" ,libusb))) ; required by libftdi1.pc (home-page "http://www.intra2net.com/en/developer/libftdi/") (synopsis "FTDI USB driver with bitbang mode") (description -- cgit v1.2.3 From 8be42e5dafd09c1ccc9400ac87b3812dae829f32 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 26 Sep 2016 12:51:39 -0400 Subject: gnu: openssl: Update replacement to 1.0.2j [fixes CVE-2016-7052]. * gnu/packages/tls.scm (openssl): Update replacement to 1.0.2j. (openssl-1.0.2i): Replace with... (openssl-1.0.2j): ... new variable. --- gnu/packages/tls.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 15e3e43167..93c78aee5d 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -229,7 +229,7 @@ required structures.") (define-public openssl (package (name "openssl") - (replacement openssl-1.0.2i) + (replacement openssl-1.0.2j) (version "1.0.2h") (source (origin (method url-fetch) @@ -368,11 +368,11 @@ required structures.") (license license:openssl) (home-page "http://www.openssl.org/"))) -(define openssl-1.0.2i +(define openssl-1.0.2j (package (inherit openssl) (source (let ((name "openssl") - (version "1.0.2i")) + (version "1.0.2j")) (origin (method url-fetch) (uri (list (string-append "ftp://ftp.openssl.org/source/" @@ -382,7 +382,7 @@ required structures.") "/" name "-" version ".tar.gz"))) (sha256 (base32 - "0vyy038676cv3m2523fi9ll9nkjxadqdnz18zdp5nm6925yli1wj")) + "0cf4ar97ijfc7mg35zdgpad6x8ivkdx9qii6mz35khi1ps9g5bz7")) (patches (search-patches "openssl-runpath.patch" "openssl-c-rehash-in.patch"))))))) -- cgit v1.2.3 From 9ad09652280deb3eb0ff1d75f3d10e1436d5bc2d Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 26 Sep 2016 12:53:00 -0400 Subject: gnu: openssl-next: Update to 1.1.0b [fixes CVE-2016-6309]. * gnu/packages/tls.scm (openssl-next): Update to 1.1.0b. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 93c78aee5d..9d91f153f8 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -391,7 +391,7 @@ required structures.") (inherit openssl) (name "openssl") (replacement #f) - (version "1.1.0a") + (version "1.1.0b") (source (origin (method url-fetch) (uri (list (string-append "ftp://ftp.openssl.org/source/" @@ -402,7 +402,7 @@ required structures.") (patches (search-patches "openssl-1.1.0-c-rehash-in.patch")) (sha256 (base32 - "0as40a1lipl9qfax7495jc1xfb049ygavkaxxk4y5kcn8birdrn2")))) + "1xznrqvb1dbngv2k2nb6da6fdw00c01sy2i36yjdxr4vpxrf0pd4")))) (outputs '("out" "doc" ;1.3MiB of man3 pages "static")) ; 5.5MiB of .a files -- cgit v1.2.3 From 3c185b24f593c982aeb33996324fa6878c6ed21b Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 27 Sep 2016 11:20:40 +0200 Subject: Add missing exports. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Reported by Taylan Ulrich Bayırlı/Kammer at . * gnu/system/file-systems.scm (%tty-gid): Export. * guix/build-system/python.scm (default-python, default-python2): Export. --- gnu/system/file-systems.scm | 1 + guix/build-system/python.scm | 2 ++ 2 files changed, 3 insertions(+) diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm index 0dc472e3c7..b51d57f079 100644 --- a/gnu/system/file-systems.scm +++ b/gnu/system/file-systems.scm @@ -47,6 +47,7 @@ %binary-format-file-system %shared-memory-file-system %pseudo-terminal-file-system + %tty-gid %immutable-store %control-groups %elogind-file-systems diff --git a/guix/build-system/python.scm b/guix/build-system/python.scm index 705943eb73..adeceb4a89 100644 --- a/guix/build-system/python.scm +++ b/guix/build-system/python.scm @@ -33,6 +33,8 @@ #:export (%python-build-system-modules package-with-python2 strip-python2-variant + default-python + default-python2 python-build python-build-system pypi-uri)) -- cgit v1.2.3 From 8a54c0ec694ad6e22b155d167552b8fd0914e82d Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Tue, 27 Sep 2016 11:44:56 +0200 Subject: guix build: Gracefully handle packages without source for '-S'. Fixes . Reported by Ricardo Wurmus . * guix/scripts/build.scm (options->derivations): Gracefully handle (package-source p) = #f. --- guix/scripts/build.scm | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/guix/scripts/build.scm b/guix/scripts/build.scm index a9f649d2ee..b64138ec0e 100644 --- a/guix/scripts/build.scm +++ b/guix/scripts/build.scm @@ -595,8 +595,16 @@ build." (#f (list (package->derivation store p system))) (#t - (let ((s (package-source p))) - (list (package-source-derivation store s)))) + (match (package-source p) + (#f + (format (current-error-port) + (_ "~a: warning: \ +package '~a' has no source~%") + (location->string (package-location p)) + (package-name p)) + '()) + (s + (list (package-source-derivation store s))))) (proc (map (cut package-source-derivation store <>) (proc p)))))) -- cgit v1.2.3 From fd49eb213f53e6030d94f8b50446b5985952c380 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 16 Sep 2016 18:05:15 +0100 Subject: gnu: python-pysam: Update to 0.9.1.4. * gnu/packages/bioinformatics.scm (python-pysam, python2-pysam): Update to 0.9.1.4. --- gnu/packages/bioinformatics.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 1f11052aa8..0440ed5de8 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1290,13 +1290,13 @@ multiple sequence alignments.") (define-public python-pysam (package (name "python-pysam") - (version "0.8.4") + (version "0.9.1.4") (source (origin (method url-fetch) (uri (pypi-uri "pysam" version)) (sha256 (base32 - "1slx5mb94mzm5qzk52q270sab0sar95j67w1g1k452nz3s9j7krh")))) + "1i1djacqbr88y7w18b4aa78zxnsyr4sz7yqdq2spi7gs0y6pzvjn")))) (build-system python-build-system) (arguments `(#:tests? #f ; tests are excluded in the manifest -- cgit v1.2.3 From c2efe1aea8e17b5b59a964623857008931fc352a Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 17 Sep 2016 10:33:28 +0100 Subject: gnu: Add python-pyxb. * gnu/packages/xml.scm (python-pyxb, python2-pyxb): New variables. --- gnu/packages/xml.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 7befad54aa..cd3426b55f 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Tobias Geerinckx-Rice +;;; Copyright © 2016 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -729,6 +730,30 @@ different Unicode encodings which happen automatically during parsing/saving.") (license license:expat))) +(define-public python-pyxb + (package + (name "python-pyxb") + (version "1.2.5") + (source (origin + (method url-fetch) + (uri (pypi-uri "PyXB" version)) + (sha256 + (base32 + "0rzzwibfqa28gxgcxx4cybx1qcg0g6fand06ykj3gz7z5kp653sf")))) + (build-system python-build-system) + (home-page "http://pyxb.sourceforge.net/") + (synopsis "Python XML Schema Bindings") + (description + "PyXB (\"pixbee\") is a pure Python package that generates Python source +code for classes that correspond to data structures defined by XMLSchema.") + (license (list license:asl2.0 ; Most files. + license:expat ; pyxb/utils/six.py + license:gpl2 ; bundled jquery in doc is dual MIT/GPL2 + license:psfl)))) ; pyxb/utils/activestate.py + +(define-public python2-pyxb + (package-with-python2 python-pyxb)) + (define-public xmlto (package (name "xmlto") -- cgit v1.2.3 From e301bfc886c90acc1a82dc64ff3a15481396f540 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 17 Sep 2016 10:42:56 +0100 Subject: gnu: python2-pbcore: Update to 1.2.10. * gnu/packages/bioinformatics.scm (python2-pbcore): Update to 1.2.10. [propagated-inputs]: New field. Add python2-pyxb. --- gnu/packages/bioinformatics.scm | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0440ed5de8..3816c14916 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -3376,13 +3376,13 @@ interrupted by stop codons. OrfM finds and prints these ORFs.") (define-public python2-pbcore (package (name "python2-pbcore") - (version "1.2.8") + (version "1.2.10") (source (origin (method url-fetch) (uri (pypi-uri "pbcore" version)) (sha256 (base32 - "02pfn5raa3zf739672bg0dkx7z3j2c4nx7vmpfjqy5b12jrqpymk")))) + "1kjmv891d6qbpp4shhhvkl02ff4q5xlpnls2513sm2cjcrs52f1i")))) (build-system python-build-system) (arguments `(#:python ,python-2)) ; pbcore requires Python 2.7 (inputs @@ -3395,6 +3395,8 @@ interrupted by stop codons. OrfM finds and prints these ORFs.") ("python-nose" ,python2-nose) ("python-setuptools" ,python2-setuptools) ("python-sphinx" ,python2-sphinx))) + (propagated-inputs + `(("python-pyxb" ,python2-pyxb))) (home-page "http://pacificbiosciences.github.io/pbcore/") (synopsis "Library for reading and writing PacBio data files") (description -- cgit v1.2.3 From bdc7be59ebfdce21184ccacb863414d0cbf6fae6 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 22 Sep 2016 13:47:53 +0100 Subject: gnu: Add bcftools. * gnu/packages/bioinformatics.scm (bcftools): New variable. --- gnu/packages/bioinformatics.scm | 58 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 58 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3816c14916..e7eb4c0f26 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -265,6 +265,64 @@ instance, it implements several methods to assess contig-wise read coverage.") BAM files.") (license license:expat))) +(define-public bcftools + (package + (name "bcftools") + (version "1.3.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/samtools/bcftools/releases/download/" + version "/bcftools-" version ".tar.bz2")) + (sha256 + (base32 + "095ry68vmz9q5s1scjsa698dhgyvgw5aicz24c19iwfbai07mhqj")) + (modules '((guix build utils))) + (snippet + ;; Delete bundled htslib. + '(delete-file-recursively "htslib-1.3.1")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "test" + #:make-flags + (list + "USE_GPL=1" + (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.a") + (string-append "BGZIP=" (assoc-ref %build-inputs "htslib") "/bin/bgzip") + (string-append "TABIX=" (assoc-ref %build-inputs "htslib") "/bin/tabix")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-Makefile + (lambda _ + (substitute* "Makefile" + ;; Do not attempt to build htslib. + (("^include \\$\\(HTSDIR\\)/htslib\\.mk") "") + ;; Link against GSL cblas. + (("-lcblas") "-lgslcblas")) + #t)) + (delete 'configure) + (add-before 'check 'patch-tests + (lambda _ + (substitute* "test/test.pl" + (("/bin/bash") (which "bash"))) + #t))))) + (native-inputs + `(("htslib" ,htslib) + ("perl" ,perl))) + (inputs + `(("gsl" ,gsl) + ("zlib" ,zlib))) + (home-page "https://samtools.github.io/bcftools/") + (synopsis "Utilities for variant calling and manipulating VCFs and BCFs") + (description + "BCFtools is a set of utilities that manipulate variant calls in the +Variant Call Format (VCF) and its binary counterpart BCF. All commands work +transparently with both VCFs and BCFs, both uncompressed and BGZF-compressed.") + ;; The sources are dual MIT/GPL, but becomes GPL-only when USE_GPL=1. + (license (list license:gpl3+ license:expat)))) + (define-public bedops (package (name "bedops") -- cgit v1.2.3 From 397d463a12b719146ffe4f444f5f3e83cee4794e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 23 Sep 2016 06:40:40 +0100 Subject: gnu: python-pysam: Use 'modify-phases'. * gnu/packages/bioinformatics.scm (python-pysam)[arguments]: Use 'modify-phases'. --- gnu/packages/bioinformatics.scm | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index e7eb4c0f26..a6e3218a26 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1359,12 +1359,12 @@ multiple sequence alignments.") (arguments `(#:tests? #f ; tests are excluded in the manifest #:phases - (alist-cons-before - 'build 'set-flags - (lambda _ - (setenv "LDFLAGS" "-lncurses") - (setenv "CFLAGS" "-D_CURSES_LIB=1")) - %standard-phases))) + (modify-phases %standard-phases + (add-before 'build 'set-flags + (lambda _ + (setenv "LDFLAGS" "-lncurses") + (setenv "CFLAGS" "-D_CURSES_LIB=1") + #t))))) (inputs `(("ncurses" ,ncurses) ("zlib" ,zlib))) -- cgit v1.2.3 From dff26b2363c1735e3d84e0dbd2b958760b08f848 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 22 Sep 2016 14:08:05 +0100 Subject: gnu: python-pysam: Delete bundled htslib. * gnu/packages/bioinformatics.scm (python-pysam)[source]: Add snippet to delete htslib. [arguments]: Add htslib flags in 'set-flags phase. [propagated-inputs]: New field. Add htslib. --- gnu/packages/bioinformatics.scm | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index a6e3218a26..3ca6fd6c34 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1354,17 +1354,28 @@ multiple sequence alignments.") (uri (pypi-uri "pysam" version)) (sha256 (base32 - "1i1djacqbr88y7w18b4aa78zxnsyr4sz7yqdq2spi7gs0y6pzvjn")))) + "1i1djacqbr88y7w18b4aa78zxnsyr4sz7yqdq2spi7gs0y6pzvjn")) + (modules '((guix build utils))) + (snippet + ;; Drop bundled htslib. TODO: Also remove samtools and bcftools. + '(delete-file-recursively "htslib")))) (build-system python-build-system) (arguments `(#:tests? #f ; tests are excluded in the manifest #:phases (modify-phases %standard-phases (add-before 'build 'set-flags - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) + (setenv "HTSLIB_MODE" "external") + (setenv "HTSLIB_LIBRARY_DIR" + (string-append (assoc-ref inputs "htslib") "/lib")) + (setenv "HTSLIB_INCLUDE_DIR" + (string-append (assoc-ref inputs "htslib") "/include")) (setenv "LDFLAGS" "-lncurses") (setenv "CFLAGS" "-D_CURSES_LIB=1") #t))))) + (propagated-inputs + `(("htslib" ,htslib))) ; Included from installed header files. (inputs `(("ncurses" ,ncurses) ("zlib" ,zlib))) -- cgit v1.2.3 From f536dce522e08315c468f60448507af2cac619ac Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 22 Sep 2016 14:11:59 +0100 Subject: gnu: python-pysam: Enable tests. * gnu/packages/bioinformatics.scm (python-pysam)[source]: Change from PyPi to source archive due to missing test data. [arguments]: Add check phase after install. [native-inputs]: Add python-nose, samtools and bcftools. --- gnu/packages/bioinformatics.scm | 36 ++++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 3ca6fd6c34..078b0a69e0 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1351,18 +1351,21 @@ multiple sequence alignments.") (version "0.9.1.4") (source (origin (method url-fetch) - (uri (pypi-uri "pysam" version)) + ;; 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")) (sha256 (base32 - "1i1djacqbr88y7w18b4aa78zxnsyr4sz7yqdq2spi7gs0y6pzvjn")) + "0y41ssbg6nvn2jgcbnrvkzblpjcwszaiv1rgyd8dwzjkrbfsgsmc")) (modules '((guix build utils))) (snippet ;; Drop bundled htslib. TODO: Also remove samtools and bcftools. '(delete-file-recursively "htslib")))) (build-system python-build-system) (arguments - `(#:tests? #f ; tests are excluded in the manifest - #:phases + `(#:phases (modify-phases %standard-phases (add-before 'build 'set-flags (lambda* (#:key inputs #:allow-other-keys) @@ -1373,7 +1376,24 @@ multiple sequence alignments.") (string-append (assoc-ref inputs "htslib") "/include")) (setenv "LDFLAGS" "-lncurses") (setenv "CFLAGS" "-D_CURSES_LIB=1") - #t))))) + #t)) + (delete 'check) + (add-after 'install 'check + (lambda* (#:key inputs outputs #:allow-other-keys) + (setenv "PYTHONPATH" + (string-append + (getenv "PYTHONPATH") + ":" (assoc-ref outputs "out") + "/lib/python" + (string-take (string-take-right + (assoc-ref inputs "python") 5) 3) + "/site-packages")) + ;; Step out of source dir so python does not import from CWD. + (chdir "tests") + (setenv "HOME" "/tmp") + (and (zero? (system* "make" "-C" "pysam_data")) + (zero? (system* "make" "-C" "cbcf_data")) + (zero? (system* "nosetests" "-v")))))))) (propagated-inputs `(("htslib" ,htslib))) ; Included from installed header files. (inputs @@ -1381,7 +1401,11 @@ multiple sequence alignments.") ("zlib" ,zlib))) (native-inputs `(("python-cython" ,python-cython) - ("python-setuptools" ,python-setuptools))) + ("python-setuptools" ,python-setuptools) + ;; Dependencies below are are for tests only. + ("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 -- cgit v1.2.3 From 67f66812f5ef1bfba59cfd53ace6f41196cd0227 Mon Sep 17 00:00:00 2001 From: Ben J Woodcroft Date: Mon, 26 Sep 2016 15:26:17 +1000 Subject: gnu: Add python-termcolor. * gnu/packages/python.scm (python-termcolor, python2-termcolor): New variables. --- gnu/packages/python.scm | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 688a5d4ee8..529b7fdb09 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -6295,6 +6295,30 @@ a hash value.") (name "python2-tlsh") (inputs `(("python" ,python-2))))) +(define-public python-termcolor + (package + (name "python-termcolor") + (version "1.1.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "python-termcolor" version)) + (sha256 + (base32 + "0fv1vq14rpqwgazxg4981904lfyp84mnammw7y046491cv76jv8x")))) + (build-system python-build-system) + (arguments + ;; There are no tests. + `(#:tests? #f)) + (home-page "http://pypi.python.org/pypi/termcolor") + (synopsis "ANSII Color formatting for terminal output") + (description + "This package provides ANSII Color formatting for output in terminals.") + (license license:expat))) + +(define-public python2-termcolor + (package-with-python2 python-termcolor)) + (define-public python-libarchive-c (package (name "python-libarchive-c") -- cgit v1.2.3 From 99caa6f75f8e737cbadab8fdd4148c33946a3028 Mon Sep 17 00:00:00 2001 From: Ben J Woodcroft Date: Mon, 26 Sep 2016 14:19:29 +1000 Subject: gnu: python-plastid: Update to 1.4.6. * gnu/packages/bioinformatics.scm (python-plastid, python2-plastid): Update to 1.4.6. [propagated-inputs]: Add python-termcolor. --- gnu/packages/bioinformatics.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 078b0a69e0..ea76f8d00f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -1448,13 +1448,13 @@ UCSC genome browser.") (define-public python-plastid (package (name "python-plastid") - (version "0.4.5") + (version "0.4.6") (source (origin (method url-fetch) (uri (pypi-uri "plastid" version)) (sha256 (base32 - "1nhxw8a5gn9as58i2ih52c5cjwj48ik418pzsjwph3s66mmy9yvq")))) + "1sqkz5d3b9kf688mp7k771c87ins42j7j0whmkb49cb3fsg8s8lj")))) (properties `((python2-variant . ,(delay python2-plastid)))) (build-system python-build-system) (arguments @@ -1467,7 +1467,8 @@ UCSC genome browser.") ("python-pysam" ,python-pysam) ("python-matplotlib" ,python-matplotlib) ("python-biopython" ,python-biopython) - ("python-twobitreader" ,python-twobitreader))) + ("python-twobitreader" ,python-twobitreader) + ("python-termcolor" ,python-termcolor))) (native-inputs `(("python-cython" ,python-cython) ("python-nose" ,python-nose))) -- cgit v1.2.3 From a777535cd7399c06d2eb036f926689778f44be73 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Tue, 27 Sep 2016 14:52:05 +0300 Subject: gnu: aria2: Update to 1.27.1. * gnu/packages/bittorrent.scm (aria2): Update to 1.27.1. --- gnu/packages/bittorrent.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/bittorrent.scm b/gnu/packages/bittorrent.scm index bed9a014b2..b1daf02bf9 100644 --- a/gnu/packages/bittorrent.scm +++ b/gnu/packages/bittorrent.scm @@ -207,7 +207,7 @@ interface, for the Transmission BitTorrent daemon.") (define-public aria2 (package (name "aria2") - (version "1.26.1") + (version "1.27.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/tatsuhiro-t/aria2/" @@ -215,7 +215,7 @@ interface, for the Transmission BitTorrent daemon.") name "-" version ".tar.xz")) (sha256 (base32 - "00d8r631w4g05jf202arhn0c3jsszb2m0apfw471qpmgajblxrpl")))) + "023g22yn91pnvv7jvx43gl4x5rszn31sc9crgkxgsb3067pjg5n0")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-libaria2" -- cgit v1.2.3 From 66329c23a113201de2ead168a400cc068caafc85 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Sun, 4 Sep 2016 18:01:40 +0200 Subject: gnu: New default Dovecot service postmaster_address * gnu/services/mail.scm (dovecot-configuration): Change default for postmaster-address, as dovecot is now requiring a non-empty value and will fail to start up otherwise. * doc/guix.texi (Mail Services): Update. --- doc/guix.texi | 4 ++-- gnu/services/mail.scm | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/doc/guix.texi b/doc/guix.texi index 808fbdceb4..c159e12b1b 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -9964,8 +9964,8 @@ Defaults to @samp{""}. @deftypevr {@code{dovecot-configuration} parameter} string postmaster-address Address to use when sending rejection mails. -Default is postmaster@@. %d expands to recipient domain. -Defaults to @samp{""}. +%d expands to recipient domain. +Defaults to @samp{"postmaster@@%d"}. @end deftypevr @deftypevr {@code{dovecot-configuration} parameter} string hostname diff --git a/gnu/services/mail.scm b/gnu/services/mail.scm index d94532c353..cb0f119f43 100644 --- a/gnu/services/mail.scm +++ b/gnu/services/mail.scm @@ -1352,7 +1352,7 @@ regeneration entirely.") "SSL crypto device to use, for valid values run \"openssl engine\".") (postmaster-address - (string "") + (string "postmaster@%d") "Address to use when sending rejection mails. Default is postmaster@@. %d expands to recipient domain.") -- cgit v1.2.3 From b61d9627235aa6de8f2c0adc71147b2ed7ad13a9 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 27 Sep 2016 14:24:31 +0200 Subject: gnu: Add libxml++-2. * gnu/packages/gnome.scm (libxml++-2): New variable. --- gnu/packages/gnome.scm | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index e47e4352e9..e33f744759 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -4531,6 +4531,20 @@ the available networks and allows users to easily switch between them.") libxml2.") (license license:lgpl2.1+))) +(define-public libxml++-2 + (package + (inherit libxml++) + (name "libxml++") + (version "2.40.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 + "1sb3akryklvh2v6m6dihdnbpf1lkx441v972q9hlz1sq6bfspm2a")))))) + (define-public gdm (package (name "gdm") -- cgit v1.2.3 From c8105e811b1f3a1f01d6942bd9ddeb8004ce30f3 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 27 Sep 2016 14:25:56 +0200 Subject: gnu: Add libnet6. * gnu/packages/gobby.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add new file. --- gnu/local.mk | 1 + gnu/packages/gobby.scm | 68 ++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 69 insertions(+) create mode 100644 gnu/packages/gobby.scm diff --git a/gnu/local.mk b/gnu/local.mk index c2cdf8b448..a690b6e25d 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -156,6 +156,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/gnustep.scm \ %D%/packages/gnuzilla.scm \ %D%/packages/gnu-pw-mgr.scm \ + %D%/packages/gobby.scm \ %D%/packages/golang.scm \ %D%/packages/gperf.scm \ %D%/packages/gprolog.scm \ diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm new file mode 100644 index 0000000000..f1df9b4d15 --- /dev/null +++ b/gnu/packages/gobby.scm @@ -0,0 +1,68 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 Andy Wingo +;;; +;;; 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 . + +(define-module (gnu packages gobby) + #:use-module (guix packages) + #:use-module (guix download) + #:use-module (guix utils) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix build-system gnu) + #:use-module (gnu packages) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) + #:use-module (gnu packages gtk) + #:use-module (gnu packages pkg-config) + #:use-module (gnu packages tls) + #:use-module (gnu packages xml)) + +(define-public libnet6 + (package + (name "libnet6") + (version "1.3.14") + (source (origin + (method url-fetch) + (uri (string-append "http://releases.0x539.de/net6/net6-" + version ".tar.gz")) + (sha256 + (base32 + "088yqq60wjx3jqjlhl12893p15gl9asjpavrbhh590qzpqndhp8m")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(#:configure-flags + '("CXXFLAGS=-std=c++11") ; required by libsigc++ + #:phases + (modify-phases %standard-phases + (add-before 'configure 'update-gnutls-api + (lambda _ + (substitute* "src/encrypt.cpp" + ;; The GnuTLS API to set authentication and other parameters + ;; and priorities changed in 3.4; update to allow ANON_DH via + ;; the new API. + (("gnutls_kx_set_priority\\(session, kx_prio\\)") + (string-append "gnutls_priority_set_direct" + "(session, \"NORMAL:+ANON-DH\", NULL)")))))))) + (inputs + `(("libsigc++" ,libsigc++) + ("gnutls" ,gnutls))) + (home-page "https://gobby.github.io/") + (synopsis "Network access framework for IPv4/IPv6") + (description + "Library which that provides a TCP protocol abstraction for C++.") + (license license:lgpl2.1))) -- cgit v1.2.3 From 22a3cff3c81d58c9d7d80c8beebec680ee90d9c3 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 27 Sep 2016 14:26:48 +0200 Subject: gnu: Add obby. * gnu/packages/gobby.scm (obby): New variable. --- gnu/packages/gobby.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm index f1df9b4d15..0502af799e 100644 --- a/gnu/packages/gobby.scm +++ b/gnu/packages/gobby.scm @@ -66,3 +66,32 @@ (description "Library which that provides a TCP protocol abstraction for C++.") (license license:lgpl2.1))) + +(define-public obby + (package + (name "obby") + (version "0.4.8") + (source (origin + (method url-fetch) + (uri (string-append "http://releases.0x539.de/obby/obby-" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0rwvp0kzsb8y6mq73rzb8yk4kvsrz64i2zf4lfqs3kh0x2k7n7bx")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("libsigc++" ,libsigc++) + ("gnutls" ,gnutls) + ("libnet6" ,libnet6))) + (arguments + ;; Required by libsigc++. + `(#:configure-flags '("CXXFLAGS=-std=c++11"))) + (home-page "https://gobby.github.io/") + (synopsis "Library for building collaborative editors") + (description + "Library that provides synced document buffers. It supports multiple +documents in one session. Obby is used by the Gobby collaborative editor.") + (license license:gpl2+))) -- cgit v1.2.3 From e9070933bfe23412fce21237c51c6d2d86cb8681 Mon Sep 17 00:00:00 2001 From: Andy Wingo Date: Tue, 27 Sep 2016 14:27:07 +0200 Subject: gnu: Add gobby. * gnu/packages/gobby.scm (gobby): New variable. --- gnu/packages/gobby.scm | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/gnu/packages/gobby.scm b/gnu/packages/gobby.scm index 0502af799e..961028d00a 100644 --- a/gnu/packages/gobby.scm +++ b/gnu/packages/gobby.scm @@ -95,3 +95,37 @@ "Library that provides synced document buffers. It supports multiple documents in one session. Obby is used by the Gobby collaborative editor.") (license license:gpl2+))) + +(define-public gobby + (package + (name "gobby") + (version "0.4.13") + (source (origin + (method url-fetch) + (uri (string-append "http://releases.0x539.de/gobby/gobby-" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0w8q01lf6bcdz537b29m7rwlbc7k87b12vnpm1h6219ypvzqkgcc")))) + (build-system gnu-build-system) + (native-inputs + `(("pkg-config" ,pkg-config) + ("intltool" ,intltool))) + (inputs + `(("libxml++-2" ,libxml++-2) + ("gnutls" ,gnutls) + ("gtkmm-2" ,gtkmm-2) + ("gtksourceview-2" ,gtksourceview-2) + ("libnet6" ,libnet6) + ("obby" ,obby))) + (arguments + ;; Required by libsigc++. + `(#:configure-flags '("CXXFLAGS=-std=c++11"))) + (home-page "https://gobby.github.io/") + (synopsis "Collaborative editor") + (description + "Collaborative editor that supports multiple documents in one session and +a multi-user chat. Gobby allows multiple users to edit the same document +together over the internet in real-time.") + (license license:gpl2+))) -- cgit v1.2.3 From 419fb3f1acc834e7cfc7e395b43be3cc1ddfadbf Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 22 Sep 2016 09:08:03 +0000 Subject: gnu: femtolisp: Don't build on mips64el or armhf. * gnu/packages/lisp.scm (femtolisp)[supported-systems]: New field, remove support for mips64el and armhf. Signed-off-by: Leo Famulari --- gnu/packages/lisp.scm | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index d1180a7d6d..439433a22b 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -3,7 +3,7 @@ ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer ;;; Copyright © 2015 Mark H Weaver ;;; Copyright © 2016 Federico Beffa -;;; Copyright © 2016 ng0 +;;; Copyright © 2016 ng0 ;;; Copyright © 2016 Andy Patterson ;;; ;;; This file is part of GNU Guix. @@ -44,7 +44,8 @@ #:use-module (gnu packages ed) #:use-module (gnu packages m4) #:use-module (gnu packages version-control) - #:use-module (ice-9 match)) + #:use-module (ice-9 match) + #:use-module (srfi srfi-1)) (define-public gcl (package @@ -501,6 +502,11 @@ the InterLisp Standard.") (sha256 (base32 "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja")))) + ;; See "utils.h" for supported systems. Upstream bug: + ;; https://github.com/JeffBezanson/femtolisp/issues/25 + (supported-systems + (fold delete %supported-systems + '("armhf-linux" "mips64el-linux"))) (build-system gnu-build-system) (arguments `(#:make-flags '("CC=gcc" "release") -- cgit v1.2.3 From 3973e137f083229c819bcfa6bb8c08ab2d5e50ff Mon Sep 17 00:00:00 2001 From: ng0 Date: Thu, 15 Sep 2016 21:46:46 +0000 Subject: gnu: Add gloox. * gnu/packages/messaging.scm (gloox): New variable. Signed-off-by: Leo Famulari --- gnu/packages/messaging.scm | 30 ++++++++++++++++++++++++++++-- 1 file changed, 28 insertions(+), 2 deletions(-) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 55247bef58..5a618c2742 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015 Andreas Enge ;;; Copyright © 2015, 2016 Ricardo Wurmus ;;; Copyright © 2015 Efraim Flashner -;;; Copyright © 2016 ng0 +;;; Copyright © 2016 ng0 ;;; ;;; This file is part of GNU Guix. ;;; @@ -759,7 +759,6 @@ for sending encrypted messages to one person or many subscribers.") (synopsis "Distributed peer-to-peer communication") (home-page "https://bitmessage.org/"))) - (define-public ytalk (package (name "ytalk") @@ -783,5 +782,32 @@ once. It supports both talk protocols (\"talk\" and \"ntalk\") and can communic with several different talk daemons at the same time.") (license license:gpl2+))) +(define-public gloox + (package + (name "gloox") + (version "1.0.17") + (source + (origin + (method url-fetch) + (uri (string-append "https://camaya.net/download/gloox-" + version ".tar.bz2")) + (sha256 + (base32 + "09c01jr5nrm7f1ly42wg0pqqscmp48pv8y2fjx1vwbavjxdq59ri")))) + (build-system gnu-build-system) + (inputs + `(("libidn" ,libidn) + ("gnutls" ,gnutls) + ("zlib" ,zlib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Portable high-level Jabber/XMPP library for C++") + (description + "gloox is a full-featured Jabber/XMPP client library, +written in ANSI C++. It makes writing spec-compliant clients easy +and allows for hassle-free integration of Jabber/XMPP functionality +into existing applications.") + (home-page "https://camaya.net/gloox") + (license license:gpl3))) ;;; messaging.scm ends here -- cgit v1.2.3 From 32f70e1f86141ed30f1026ea0cf8a4bd377004b0 Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Fri, 17 Jun 2016 10:41:50 +0200 Subject: gnu: Add gctp. * gnu/packages/maths.scm (gctp): New variable. Signed-off-by: Leo Famulari --- gnu/packages/maths.scm | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 1e7f4ca5b0..0401cd3bd5 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -418,6 +418,32 @@ plotting engine by third-party applications like Octave.") (license (license:fsf-free "http://gnuplot.cvs.sourceforge.net/gnuplot/gnuplot/Copyright"))))) +(define-public gctp + (package + (name "gctp") + (version "2.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "https://github.com/OkoSanto/GCTP/archive/v" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0l9aqnqynh9laicn5dxf3rsb1n14xiks79wbyqccirzmjqd1c1x4")))) + (native-inputs + `(("fortran" ,gfortran))) + (build-system gnu-build-system) + (synopsis "General Cartographic Transformation Package (GCTP)") + (description + "The General Cartographic Transformation Package (GCTP) is a system of +software routines designed to permit the transformation of coordinate pairs +from one map projection to another. The GCTP is the standard computer +software used by the National Mapping Division for map projection +computations.") + (home-page "https://github.com/OkoSanto/GCTP") + (license 'license:public-domain))) ; https://www2.usgs.gov/laws/info_policies.html + (define-public hdf5 (package (name "hdf5") -- cgit v1.2.3 From b9bc6e842066b066ebdf9eaf75d41753598d75b5 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Mon, 12 Sep 2016 16:54:45 -0400 Subject: gnu: expat: Fix regression caused by fix for CVE-2016-0718. * gnu/packages/xml.scm (expat)[replacement]: New field. (expat/fixed): New variable. * gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. Signed-off-by: Leo Famulari --- gnu/local.mk | 1 + .../expat-CVE-2016-0718-fix-regression.patch | 35 ++++++++++++++++++++++ gnu/packages/xml.scm | 12 ++++++++ 3 files changed, 48 insertions(+) create mode 100644 gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch diff --git a/gnu/local.mk b/gnu/local.mk index a690b6e25d..e8bae66d40 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -506,6 +506,7 @@ dist_patch_DATA = \ %D%/packages/patches/expat-CVE-2012-6702-and-CVE-2016-5300.patch \ %D%/packages/patches/expat-CVE-2015-1283-refix.patch \ %D%/packages/patches/expat-CVE-2016-0718.patch \ + %D%/packages/patches/expat-CVE-2016-0718-fix-regression.patch \ %D%/packages/patches/fastcap-mulGlobal.patch \ %D%/packages/patches/fastcap-mulSetup.patch \ %D%/packages/patches/fasthenry-spAllocate.patch \ diff --git a/gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch b/gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch new file mode 100644 index 0000000000..b489401fea --- /dev/null +++ b/gnu/packages/patches/expat-CVE-2016-0718-fix-regression.patch @@ -0,0 +1,35 @@ +Fix regression caused by fix for CVE-2016-0718 when building with -DXML_UNICODE. + +Discussion: + +https://sourceforge.net/p/expat/bugs/539/ + +Patch copied from upstream source repository: + +https://sourceforge.net/p/expat/code_git/ci/af507cef2c93cb8d40062a0abe43a4f4e9158fb2/ + +From af507cef2c93cb8d40062a0abe43a4f4e9158fb2 Mon Sep 17 00:00:00 2001 +From: Sebastian Pipping +Date: Sun, 17 Jul 2016 20:22:29 +0200 +Subject: [PATCH 1/2] Fix regression bug #539 (needs -DXML_UNICODE) + +Thanks to Andy Wang and Karl Waclawek! +--- + expat/lib/xmlparse.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/expat/lib/xmlparse.c b/expat/lib/xmlparse.c +index b308e67..0d5dd7b 100644 +--- a/lib/xmlparse.c ++++ b/lib/xmlparse.c +@@ -2468,7 +2468,7 @@ doContent(XML_Parser parser, + &fromPtr, rawNameEnd, + (ICHAR **)&toPtr, (ICHAR *)tag->bufEnd - 1); + convLen = (int)(toPtr - (XML_Char *)tag->buf); +- if ((convert_res == XML_CONVERT_COMPLETED) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) { ++ if ((fromPtr >= rawNameEnd) || (convert_res == XML_CONVERT_INPUT_INCOMPLETE)) { + tag->name.strLen = convLen; + break; + } +-- +2.10.0 diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index cd3426b55f..879b37a337 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -52,6 +52,7 @@ (define-public expat (package (name "expat") + (replacement expat/fixed) (version "2.1.1") (source (origin (method url-fetch) @@ -72,6 +73,17 @@ stream-oriented parser in which an application registers handlers for things the parser might find in the XML document (like start tags).") (license license:expat))) +(define expat/fixed + (package + (inherit expat) + (source (origin + (inherit (package-source expat)) + (patches (search-patches + "expat-CVE-2012-6702-and-CVE-2016-5300.patch" + "expat-CVE-2015-1283-refix.patch" + "expat-CVE-2016-0718.patch" + "expat-CVE-2016-0718-fix-regression.patch")))))) + (define-public libxml2 (package (name "libxml2") -- cgit v1.2.3 From e8c9b010908d33c9103839b8d8fddd9e33a731ef Mon Sep 17 00:00:00 2001 From: Stefan Reichoer Date: Fri, 16 Sep 2016 23:00:06 +0200 Subject: gnu: Add python-q. * gnu/packages/python.scm (python-q, python2-q): New variables. Signed-off-by: Leo Famulari --- gnu/packages/python.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 529b7fdb09..90dd1b7d4d 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -5008,6 +5008,35 @@ as possible in order to be comprehensible and easily extensible.") (define-public python2-sympy (package-with-python2 python-sympy)) +(define-public python-q + (package + (name "python-q") + (version "2.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "q" version)) + (sha256 + (base32 + "1mgfazh8fkizh6walra2zv885f3lcgr3nb02v1frfm4p8ddcy3yy")))) + (build-system python-build-system) + (home-page "https://github.com/zestyping/q") + (synopsis "Quick-and-dirty debugging output for tired programmers") + (description + "q is a Python module for \"print\" style of debugging Python code. It +provides convenient short API for print out of values, tracebacks, and +falling into the Python interpreter.") + (license license:asl2.0) + (properties `((python2-variant . ,(delay python2-q)))))) + +(define-public python2-q + (let ((base (package-with-python2 (strip-python2-variant python-q)))) + (package + (inherit base) + (native-inputs + `(("python2-setuptools" ,python2-setuptools) + ,@(package-native-inputs base)))))) + (define-public python-testlib (package (name "python-testlib") -- cgit v1.2.3 From cc132e0f38ed71148655109ef2c93cc1d8911c76 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 27 Sep 2016 15:03:16 -0400 Subject: gnu: bind: Update to 9.10.4-P3 [fixes CVE-2016-2776]. * gnu/packages/dns.scm (bind): Update to 9.10.4-P3. --- gnu/packages/dns.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index 57fd183287..3e79e57adb 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -67,7 +67,7 @@ and BOOTP/TFTP for network booting of diskless machines.") (define-public bind (package (name "bind") - (version "9.10.4-P2") + (version "9.10.4-P3") (source (origin (method url-fetch) (uri (string-append @@ -75,7 +75,7 @@ and BOOTP/TFTP for network booting of diskless machines.") version ".tar.gz")) (sha256 (base32 - "08s48h5p916ixjiwgar4w6skc20crmg7yj1y7g89c083zvw8lnxk")))) + "1vxs29w4hnl7jcd7sknga58xv1qk2rcpsxyich7cpp7xi77faxd0")))) (build-system gnu-build-system) (outputs `("out" "utils")) (inputs -- cgit v1.2.3 From 8be2428e852905b34212eefa65f7b086e08fba17 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 27 Sep 2016 15:10:57 -0400 Subject: gnu: isc-dhcp: Update bundled bind to 9.9.9-P3 [fixes CVE-2016-2776]. * gnu/packages/admin.scm (isc-dhcp)[inputs]: Update bundled bind to 9.9.9-P3. --- gnu/packages/admin.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index c0eed7bf4f..6981242819 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -458,8 +458,8 @@ connection alive.") (let* ((bind-major-version "9") (bind-minor-version "9") (bind-patch-version "9") - (bind-release-type "") ; for patch release, use "-P" - (bind-release-version "") ; for patch release, e.g. "4" + (bind-release-type "-P") ; for patch release, use "-P" + (bind-release-version "3") ; for patch release, e.g. "4" (bind-version (string-append bind-major-version "." bind-minor-version @@ -575,7 +575,7 @@ connection alive.") "/bind-" bind-version ".tar.gz")) (sha256 (base32 - "0w8qqm6p2y6x57j2l0a3278g173wd84dsr4py9z00191f3wra74q")))) + "1qlii6syr491yjn6kpyqknlvbsrkwlsqa0grmmfbq1g3471fyfyn")))) ;; When cross-compiling, we need the cross Coreutils and sed. ;; Otherwise just use those from %FINAL-INPUTS. -- cgit v1.2.3 From 8c120e4f3b5b18321a6545cbf60fa496f3774df3 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Sat, 20 Aug 2016 19:27:20 +0200 Subject: gnu: zip: Use 'modify-phases'. * gnu/packages/zip.scm (zip)[arguments]: Use 'modify-phases'. --- gnu/packages/zip.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/gnu/packages/zip.scm b/gnu/packages/zip.scm index 6defbda49e..c9fb70c031 100644 --- a/gnu/packages/zip.scm +++ b/gnu/packages/zip.scm @@ -48,11 +48,12 @@ (list "-f" "unix/Makefile" (string-append "prefix=" out) (string-append "MANDIR=" out "/share/man/man1"))) - #:phases (alist-replace - 'build - (lambda* (#:key (make-flags '()) #:allow-other-keys) - (zero? (apply system* "make" "generic_gcc" make-flags))) - (alist-delete 'configure %standard-phases)))) + #:phases + (modify-phases %standard-phases + (replace 'build + (lambda* (#:key (make-flags '()) #:allow-other-keys) + (zero? (apply system* "make" "generic_gcc" make-flags)))) + (delete 'configure)))) (home-page "http://www.info-zip.org/Zip.html") (synopsis "Compression and file packing utility") (description -- cgit v1.2.3 From 9da3c49837a3af0c2f0fa0c9246a0331cefb01d1 Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 27 Sep 2016 12:22:53 +0200 Subject: gnu: btrfs-progs: Update to 4.7.3. * gnu/packages/linux.scm (btrfs-progs): Update to 4.7.3. --- gnu/packages/linux.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c8be533614..59a21002ba 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -2576,7 +2576,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "4.7.2") + (version "4.7.3") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -2584,7 +2584,7 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "03z6zgvjb94jk0q1xx2hicznfxj5c8xyyw5xqmh05rpz8ghwk6zl")))) + "073pvx8vz6rkw2d8mm1m60b3i8743pc712pasvydbgm8wl66zkch")))) (build-system gnu-build-system) (outputs '("out" "static")) ; static versions of binaries in "out" (~16MiB!) -- cgit v1.2.3 From ffabdc185c52f2adef49e326d76e1f304872161e Mon Sep 17 00:00:00 2001 From: Tobias Geerinckx-Rice Date: Tue, 27 Sep 2016 14:21:56 +0200 Subject: gnu: encfs: Update to 1.9.1. * gnu/packages/crypto.scm (encfs): Update to 1.9.1. --- gnu/packages/crypto.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 8280384ad8..40c9a74552 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -171,7 +171,7 @@ communication.") (define-public encfs (package (name "encfs") - (version "1.9") + (version "1.9.1") (source (origin (method url-fetch) @@ -180,7 +180,7 @@ communication.") version "/encfs-" version ".tar.gz")) (sha256 (base32 - "1gzlhq2dlwan3hll414wqinj92lb05wd4j370j190dgcalaxplih")) + "1906254dg5hwljh0h4gyrw09ms3b57dlhjfzhfzffv50yzpkl837")) (modules '((guix build utils))) ;; Remove bundled dependencies in favour of proper inputs. (snippet '(for-each delete-file-recursively -- cgit v1.2.3 From a7c9b062ad3be97cb86589f5b9a43b1053023247 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 27 Sep 2016 20:40:13 -0400 Subject: gnu: libressl: Update to 2.5.0. * gnu/packages/tls.scm (libressl): Update to 2.5.0. --- gnu/packages/tls.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 9d91f153f8..c73131a9c0 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -425,7 +425,7 @@ required structures.") (define-public libressl (package (name "libressl") - (version "2.4.2") + (version "2.5.0") (source (origin (method url-fetch) @@ -434,7 +434,7 @@ required structures.") version ".tar.gz")) (sha256 (base32 - "1qyrcyzrrn6r9cqvm66ib72qyr65q4hrdyiq1vb24a6nwmwdg1sz")))) + "1bkfvapi4z826slycmicvs7hwgk4l82gd8w6nqvznldbammvyll6")))) (build-system gnu-build-system) (native-search-paths ;; FIXME: These two variables must designate a single file or directory -- cgit v1.2.3 From 89eb7581a41c59956db7ff3d2062186e6a527624 Mon Sep 17 00:00:00 2001 From: Lukas Gradl Date: Thu, 21 Jul 2016 08:39:54 -0500 Subject: gnu: Add dbus-c++. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/glib.scm (dbus-c++): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/glib.scm | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index a85a5659ba..9167c6de22 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2013 Nikita Karetnikov ;;; Copyright © 2014, 2015, 2016 Mark H Weaver ;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016 Lukas Gradl ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,6 +32,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages bison) #:use-module (gnu packages compression) + #:use-module (gnu packages enlightenment) #:use-module (gnu packages flex) #:use-module (gnu packages gettext) #:use-module (gnu packages gnome) @@ -43,6 +45,7 @@ #:use-module (gnu packages xml) #:use-module (gnu packages bash) #:use-module (gnu packages file) + #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (gnu packages m4) @@ -659,3 +662,44 @@ many applications simultaneously. This package provides the library for GLib applications.") (license license:lgpl2.1+))) + + +(define-public dbus-c++ + (package + (name "dbus-c++") + (version "0.9.0") + (source (origin + (method url-fetch) + (uri + (string-append + "mirror://sourceforge/dbus-cplusplus/dbus-c%2B%2B/" + version "/libdbus-c%2B%2B-" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "0qafmy2i6dzx4n1dqp6pygyy6gjljnb7hwjcj2z11c1wgclsq4dw")))) + (build-system gnu-build-system) + (propagated-inputs + `(("dbus" ,dbus))) ;mentioned in the pkg-config file + (inputs + `(("efl" ,efl) + ("expat" ,expat) + ("glib" ,glib))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (arguments + `(;; The 'configure' machinery fails to detect that it needs -lpthread. + #:configure-flags (list "LDFLAGS=-lpthread") + #:phases + (modify-phases %standard-phases + (add-before 'configure 'add-missing-header + (lambda _ + (substitute* "include/dbus-c++/eventloop-integration.h" + (("#include ") + "#include \n#include "))))))) + (synopsis "D-Bus API for C++") + (description "This package provides D-Bus client API bindings for the C++ +programming langauage. It also contains the utility +@command{dbuscxx-xml2cpp}.") + (home-page "https://sourceforge.net/projects/dbus-cplusplus/") + (license license:lgpl2.1))) -- cgit v1.2.3 From 9a4c032cc448ca77e41cad1455b2b3e53e04d1c6 Mon Sep 17 00:00:00 2001 From: Lukas Gradl Date: Tue, 9 Aug 2016 16:43:36 -0500 Subject: gnu: Add gsm. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/audio.scm (gsm): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/audio.scm | 46 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 46 insertions(+) diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 9699a55030..ed1a8f62d7 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -7,6 +7,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016 ng0 +;;; Copyright © 2016 Lukas Gradl ;;; ;;; This file is part of GNU Guix. ;;; @@ -2519,3 +2520,48 @@ loudness of audio and video files to the same level.") code, used in @code{libtoxcore}.") (home-page "https://github.com/irungentoo/filter_audio") (license license:bsd-3)))) + +(define-public gsm + (package + (name "gsm") + (version "1.0.14") + (source + (origin + (method url-fetch) + (uri + (string-append "http://www.quut.com/" name "/" name + "-" version ".tar.gz")) + (sha256 + (base32 + "0b1mx69jq88wva3wk0hi6fcl5a52qhnq2f9p3f3jdh5k61ma252q")))) + (build-system gnu-build-system) + (arguments + `(#:test-target "tst" + #:phases + (modify-phases %standard-phases + (add-before 'install 'pre-install + (lambda _ + (let ((out (assoc-ref %outputs "out"))) + (substitute* "Makefile" + (("INSTALL_ROOT\t=") + (string-append "INSTALL_ROOT\t=\t" out))) + (mkdir-p (string-append out "/inc")) + (mkdir-p (string-append out "/man")) + (mkdir-p (string-append out "/man/man1")) + (mkdir-p (string-append out "/man/man3")) + (mkdir-p (string-append out "/bin")) + (mkdir-p (string-append out "/lib"))))) + (add-after 'install 'post-install + (lambda _ + (let ((out (assoc-ref %outputs "out"))) + (rename-file (string-append out "/inc") + (string-append out "/include")) + (mkdir-p (string-append out "/include/gsm")) + (copy-recursively "inc" + (string-append out "/include/gsm"))))) + (delete 'configure)))) + (synopsis "GSM 06.10 lossy speech compression library") + (description "This C library provides an encoder and a decoder for the GSM +06.10 RPE-LTP lossy speech compression algorithm.") + (home-page "http://quut.com/gsm/") + (license (license:non-copyleft "file://COPYRIGHT")))) -- cgit v1.2.3 From 974aaf71e581cb82b5822e4ca3f76923af91caf5 Mon Sep 17 00:00:00 2001 From: Lukas Gradl Date: Sun, 28 Aug 2016 12:40:21 -0500 Subject: gnu: telephony: Add 'license:' prefix. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/telephony.scm (commoncpp) [license]: Add prefix. (ucommon) [license]: Add prefix. (ccrtp) [license]: Add prefix. (osip) [license]: Add prefix. (exosip) [license]: Add prefix. (sipwitch) [license]: Add prefix. (libsrtp) [license]: Add prefix. (libiax2) [license]: Add prefix. (seren) [license]: Add prefix. (pjproject-sfl) [license]: Add prefix. Signed-off-by: Ludovic Courtès --- gnu/packages/telephony.scm | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index d8a33ddf3d..8f2a10f2c5 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -31,7 +31,7 @@ #:use-module (gnu packages pkg-config) #:use-module (gnu packages tls) #:use-module (gnu packages xiph) - #:use-module (guix licenses) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu)) @@ -61,7 +61,7 @@ threaded applications, supporting concurrent synchronization, inter-process communications via sockets, and various methods for data handling, such as serialization and XML parsing. It includes the uCommon C++ library, a smaller reimplementation.") - (license gpl2+) ; plus runtime exception + (license license:gpl2+) ; plus runtime exception (home-page "http://www.gnu.org/software/commoncpp"))) (define-public ucommon @@ -81,7 +81,7 @@ reimplementation.") to facilitate using C++ design patterns even for very deeply embedded applications, such as for systems using uclibc along with posix threading support.") - (license gpl3+) + (license license:gpl3+) (home-page "http://www.gnu.org/software/commoncpp") (properties '((ftp-directory . "/gnu/commoncpp"))))) @@ -105,7 +105,7 @@ protocol from the IETF. It is suitable both for high capacity servers and personal client applications. It is flexible in its design, allowing it to function as a framework for the framework, rather than just being a packet-manipulation library.") - (license gpl2+) ; plus runtime exception + (license license:gpl2+) ; plus runtime exception (home-page "http://www.gnu.org/software/ccrtp"))) @@ -124,7 +124,7 @@ packet-manipulation library.") (description "GNU oSIP is an implementation of the SIP protocol. It is used to provide multimedia and telecom software developers with an interface to initiate and control SIP sessions.") - (license lgpl2.1+) + (license license:lgpl2.1+) (home-page "http://www.gnu.org/software/osip"))) @@ -147,7 +147,7 @@ SIP protocol for multimedia session establishment. This protocol is mainly to be used by VoIP telephony applications (endpoints or conference server) but might be also useful for any application that wish to establish sessions like multiplayer games.") - (license gpl2+) + (license license:gpl2+) ;; (plus OpenSSL linking exception) ;; http://git.savannah.gnu.org/cgit/exosip.git/plain/LICENSE.OpenSSL (home-page "http://savannah.nongnu.org/projects/exosip"))) @@ -192,7 +192,7 @@ without the need for a service provider. Its peer-to-peer design ensures that there is no central point for media intercept or capture and thus it can be used to construct a secure telephone system that operates over the public internet.") - (license gpl3+) + (license license:gpl3+) (home-page "http://www.gnu.org/software/sipwitch"))) (define-public libsrtp @@ -216,7 +216,7 @@ internet.") Real-time Transport Protocol (SRTP), the Universal Security Transform (UST), and a supporting cryptographic kernel.") (home-page "https://github.com/cisco/libsrtp") - (license bsd-3))) + (license license:bsd-3))) (define-public libiax2 (let ((commit "0e5980f1d78ce462e2d1ed6bc39ff35c8341f201")) @@ -255,7 +255,9 @@ Voice-over-IP (VoIP) communications.") ;; 'src/options.c', 'src/options.h', 'src/ring10.h', 'src/winiphone.c' are ;; covered under the 'GPL'. ;; The package as a whole is distributed under the LGPL 2.0. - (license (list lgpl2.0 public-domain gpl2+))))) + (license (list license:lgpl2.0 + license:public-domain + license:gpl2+))))) (define-public seren (package @@ -285,4 +287,4 @@ without having to register accounts, exchange emails, or add people to contact lists. All you need to join an existing conference is the host name or IP address of one of the participants.") (home-page "http://holdenc.altervista.org/seren/") - (license gpl3+))) + (license license:gpl3+))) -- cgit v1.2.3 From 615c999055a3e830b5bea61b541e0cce857dd6c8 Mon Sep 17 00:00:00 2001 From: Lukas Gradl Date: Mon, 12 Sep 2016 21:29:06 -0500 Subject: gnu: opendht: Propagate msgpack. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/crypto.scm (opendht)[inputs]: Remove msgpack. [propagated-inputs]: Add it. Signed-off-by: Ludovic Courtès --- gnu/packages/crypto.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 40c9a74552..14084c91b1 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -147,9 +147,10 @@ OpenBSD tool of the same name.") (inputs `(("gnutls" ,gnutls) ("nettle" ,nettle) - ("msgpack" ,msgpack) ("readline" ,readline) ("argon2" ,argon2))) + (propagated-inputs + `(("msgpack" ,msgpack))) ;included in several installed headers (native-inputs `(("autoconf" ,autoconf) ("pkg-config" ,pkg-config) -- cgit v1.2.3 From a3af70aca8166bd535e90d7b8afc930aa46fcbc2 Mon Sep 17 00:00:00 2001 From: David Craven Date: Fri, 23 Sep 2016 12:52:17 +0200 Subject: gnu: Add picocom. * gnu/packages/terminals.scm (picocom): New variable. --- gnu/packages/terminals.scm | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index d5c24d2455..1f08bc88a7 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -259,3 +259,38 @@ multi-seat support, a replacement for @command{mingetty}, and more.") license:gpl2+)) (supported-systems (filter (cut string-suffix? "-linux" <>) %supported-systems)))) + +(define-public picocom + (package + (name "picocom") + (version "2.1") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/npat-efault/picocom" + "/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1v891cx18vx3lnpfaq90f5y6njgigkn4qsikhrmyzshnz32jy5bb")))) + (build-system gnu-build-system) + (arguments + `(#:make-flags '("CC=gcc") + #:tests? #f ; No tests + #:phases + (modify-phases %standard-phases + (delete 'configure) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (man (string-append out "/share/man/man1"))) + (install-file "picocom" bin) + (install-file "picocom.1" man))))))) + (home-page "https://github.com/npat-efault/picocom") + (synopsis "Minimal dumb-terminal emulation program") + (description "It was designed to serve as a simple, manual, modem +configuration, testing, and debugging tool. It has also serves well +as a low-tech serial communications program to allow access to all +types of devices that provide serial consoles.") + (license license:gpl2+))) -- cgit v1.2.3 From 33619c3ae00f25af7fac325914fc47ee734d8f16 Mon Sep 17 00:00:00 2001 From: David Craven Date: Tue, 27 Sep 2016 19:39:26 +0200 Subject: gnu: Add sdcc. * gnu/packages/sdcc.scm (sdcc): New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. --- gnu/local.mk | 1 + gnu/packages/sdcc.scm | 69 +++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 70 insertions(+) create mode 100644 gnu/packages/sdcc.scm diff --git a/gnu/local.mk b/gnu/local.mk index e8bae66d40..b864ea9020 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -318,6 +318,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/screen.scm \ %D%/packages/scribus.scm \ %D%/packages/scsi.scm \ + %D%/packages/sdcc.scm \ %D%/packages/sdl.scm \ %D%/packages/search.scm \ %D%/packages/serialization.scm \ diff --git a/gnu/packages/sdcc.scm b/gnu/packages/sdcc.scm new file mode 100644 index 0000000000..c3d4bced26 --- /dev/null +++ b/gnu/packages/sdcc.scm @@ -0,0 +1,69 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2016 David Craven +;;; +;;; 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 . + +(define-module (gnu packages sdcc) + #:use-module (gnu packages bison) + #:use-module (gnu packages boost) + #:use-module (gnu packages flex) + #:use-module (gnu packages python) + #:use-module (gnu packages texinfo) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module (guix packages) + #:use-module ((guix licenses) #:prefix license:)) + +(define-public sdcc + (package + (name "sdcc") + (version "3.6.0") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://sourceforge/sdcc/sdcc" + "/" version "/sdcc-src-" version ".tar.bz2")) + (sha256 + (base32 + "0x53gh5yrrfjvlnkk29mjn8hq4v52alrsf7c8nsyzzq13sqwwpg8")))) + (build-system gnu-build-system) + (native-inputs + `(("bison" ,bison) + ("boost" ,boost) + ("flex" ,flex) + ("python-2" ,python-2) + ("texinfo" ,texinfo))) + (arguments + `(;; gputils is required for PIC ports + #:configure-flags + '("--disable-pic14-port" "--disable-pic16-port") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-makefile + (lambda _ + (substitute* (find-files "." "(\\.mk$|\\.in$)") + (("/bin/sh") (which "sh"))) + #t))))) + (home-page "http://sdcc.sourceforge.net") + (synopsis "Small devices C compiler") + (description "SDCC is a retargettable, optimizing Standard C compiler suite +that targets the Intel MCS51 based microprocessors (8031, 8032, 8051, 8052, ...), +Maxim (formerly Dallas) DS80C390 variants, Freescale (formerly Motorola) +HC08 based (hc08, s08), Zilog Z80 based MCUs (z80, z180, gbz80, Rabbit +2000/3000, Rabbit 3000A, TLCS-90) and STMicroelectronics STM8. +Work is in progress on supporting the Microchip PIC16 and PIC18 targets. +It can be retargeted for other microprocessors.") + (license license:gpl2+))) -- cgit v1.2.3 From 50dbc03647170fded9e0bca0cc4b7e1614aa38db Mon Sep 17 00:00:00 2001 From: David Craven Date: Mon, 26 Sep 2016 12:08:15 +0200 Subject: gnu: %default-extra-linux-options: Remove redundant options. * gnu/packages/linux.scm (%default-extra-linux-options): Remove redundant options. --- gnu/packages/linux.scm | 14 ++------------ 1 file changed, 2 insertions(+), 12 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 59a21002ba..0891c7401e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -187,18 +187,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (search-path %load-path file))) (define %default-extra-linux-options - `(("CONFIG_NET_9P" . m) - ("CONFIG_NET_9P_VIRTIO" . m) - ("CONFIG_VIRTIO_BLK" . m) - ("CONFIG_VIRTIO_NET" . m) - ;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html - ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t) - ("CONFIG_VIRTIO_PCI" . m) - ("CONFIG_VIRTIO_BALLOON" . m) - ("CONFIG_VIRTIO_MMIO" . m) - ("CONFIG_FUSE_FS" . m) - ("CONFIG_CIFS" . m) - ("CONFIG_9P_FS" . m))) + `(;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html + ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t))) (define (config->string options) (string-join (map (match-lambda -- cgit v1.2.3 From e4e9c0a083962a770ff4f56c69082cf4b7046a6c Mon Sep 17 00:00:00 2001 From: David Craven Date: Mon, 26 Sep 2016 12:10:21 +0200 Subject: gnu: make-linux-libre: Install device tree files. * gnu/packages/linux.scm (make-linux-libre): Install device tree files. --- gnu/packages/linux.scm | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 0891c7401e..0a8e2f347d 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -263,8 +263,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (let ((build (assoc-ref %standard-phases 'build)) (config (assoc-ref inputs "kconfig"))) - ;; Use the architecture-specific config if available, and - ;; 'defconfig' otherwise. + ;; Use a custom kernel configuration file or a default + ;; configuration file. (if config (begin (copy-file config ".config") @@ -283,13 +283,16 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (lambda* (#:key inputs native-inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (moddir (string-append out "/lib/modules")) - (kmod (assoc-ref (or native-inputs inputs) "kmod"))) + (dtbdir (string-append out "/lib/dtbs")) + (kmod (assoc-ref (or native-inputs inputs) "kmod"))) + ;; Install kernel image, kernel configuration and link map. + (for-each (lambda (file) (install-file file out)) + (find-files "." "^(\\.config|bzImage|zImage|vmlinuz|System\\.map)$")) + ;; Install device tree files + (for-each (lambda (file) (install-file file dtbdir)) + (find-files "." "\\.dtb$")) + ;; Install kernel modules (mkdir-p moddir) - (for-each (lambda (file) - (copy-file file - (string-append out "/" (basename file)))) - (find-files "." "^(bzImage|zImage|vmlinuz|System\\.map)$")) - (copy-file ".config" (string-append out "/config")) (zero? (system* "make" (string-append "DEPMOD=" kmod "/bin/depmod") (string-append "MODULE_DIR=" moddir) -- cgit v1.2.3 From 7a0630035cf940d4abe7d8c946a974325097c86b Mon Sep 17 00:00:00 2001 From: David Craven Date: Mon, 26 Sep 2016 12:11:28 +0200 Subject: gnu: linux-libre-beagle-bone-black: Remove kernel variant. linux-libre-beagle-bone-black is misslabeled. This kernel variant is for the original beagle board. * gnu/packages/linux.scm (linux-libre-beagle-bone-black): Remove. --- gnu/packages/linux.scm | 7 ------- 1 file changed, 7 deletions(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 0a8e2f347d..9c7570a27e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -339,13 +339,6 @@ It has been modified to remove all non-free binary blobs.") #:defconfig "multi_v7_defconfig" #:extra-version "arm-generic")) -(define-public linux-libre-beagle-bone-black - (make-linux-libre %linux-libre-version - %linux-libre-hash - '("armhf-linux") - #:defconfig "omap2plus_defconfig" - #:extra-version "beagle-bone-black")) - ;;; ;;; Pluggable authentication modules (PAM). -- cgit v1.2.3 From fbe9c1012820ab72f022a6ec958c35b431ae7a74 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 22 Sep 2016 11:25:31 +0200 Subject: import: Reorder imports in (guix import utils). * guix/import/utils.scm (define-module): Reorder imports alphabetically. --- guix/import/utils.scm | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/guix/import/utils.scm b/guix/import/utils.scm index 93cd0f0fa5..4ec3b67f4e 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -17,14 +17,15 @@ ;;; along with GNU Guix. If not, see . (define-module (guix import utils) - #:use-module (ice-9 match) - #:use-module (ice-9 regex) - #:use-module (srfi srfi-1) - #:use-module (guix hash) #:use-module (guix base32) + #:use-module ((guix build download) #:prefix build:) + #:use-module (guix hash) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix utils) - #:use-module ((guix build download) #:prefix build:) + #:use-module (ice-9 match) + #:use-module (ice-9 regex) + #:use-module (json) + #:use-module (srfi srfi-1) #:export (factorize-uri hash-table->alist -- cgit v1.2.3 From 263ac57fc22680395453bed34eaae8e63ea85bbb Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 22 Sep 2016 11:30:17 +0200 Subject: import: Move string->license to importers. * guix/import/gem.scm (string->license): Move from (guix import utils). * guix/import/pypi.scm (string->license): Move from (guix import utils). --- guix/import/gem.scm | 13 ++++++++++++- guix/import/pypi.scm | 13 ++++++++++++- guix/import/utils.scm | 9 --------- 3 files changed, 24 insertions(+), 11 deletions(-) diff --git a/guix/import/gem.scm b/guix/import/gem.scm index fc06b0d748..3d0c190656 100644 --- a/guix/import/gem.scm +++ b/guix/import/gem.scm @@ -29,7 +29,7 @@ #:use-module (guix import json) #:use-module (guix packages) #:use-module (guix upstream) - #:use-module (guix licenses) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix base32) #:use-module (guix build-system ruby) #:export (gem->guix-package @@ -155,6 +155,17 @@ package on RubyGems." ;; e.g. "https://rubygems.org/downloads/hashery-2.1.1.gem" (substring source-url 31 (string-rindex source-url #\-)))) +(define (string->license str) + "Convert the string STR into a license object." + (match str + ("GNU LGPL" license:lgpl2.0) + ("GPL" license:gpl3) + ((or "BSD" "BSD License") license:bsd-3) + ((or "MIT" "MIT license" "Expat license") license:expat) + ("Public domain" license:public-domain) + ((or "Apache License, Version 2.0" "Apache 2.0") license:asl2.0) + (_ #f))) + (define (gem-package? package) "Return true if PACKAGE is a gem package from RubyGems." diff --git a/guix/import/pypi.scm b/guix/import/pypi.scm index 343445aa22..8aeffb2326 100644 --- a/guix/import/pypi.scm +++ b/guix/import/pypi.scm @@ -41,7 +41,7 @@ #:use-module (guix import json) #:use-module (guix packages) #:use-module (guix upstream) - #:use-module (guix licenses) + #:use-module ((guix licenses) #:prefix license:) #:use-module (guix build-system python) #:use-module (gnu packages python) #:export (guix-package->pypi-name @@ -294,6 +294,17 @@ VERSION, SOURCE-URL, HOME-PAGE, SYNOPSIS, DESCRIPTION, and LICENSE." (make-pypi-sexp name version release wheel home-page synopsis description license)))))) +(define (string->license str) + "Convert the string STR into a license object." + (match str + ("GNU LGPL" license:lgpl2.0) + ("GPL" license:gpl3) + ((or "BSD" "BSD License") license:bsd-3) + ((or "MIT" "MIT license" "Expat license") license:expat) + ("Public domain" license:public-domain) + ((or "Apache License, Version 2.0" "Apache 2.0") license:asl2.0) + (_ #f))) + (define (pypi-package? package) "Return true if PACKAGE is a Python package from PyPI." diff --git a/guix/import/utils.scm b/guix/import/utils.scm index 4ec3b67f4e..69e623a67f 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -35,7 +35,6 @@ url-fetch guix-hash-url - string->license license->symbol snake-case @@ -110,15 +109,7 @@ recursively apply the procedure to the sub-list." "Return the hash of FILENAME in nix-base32 format." (bytevector->nix-base32-string (file-sha256 filename))) -(define (string->license str) - "Convert the string STR into a license object." (match str - ("GNU LGPL" license:lgpl2.0) - ("GPL" license:gpl3) - ((or "BSD" "BSD License") license:bsd-3) - ((or "MIT" "MIT license" "Expat license") license:expat) - ("Public domain" license:public-domain) - ((or "Apache License, Version 2.0" "Apache 2.0") license:asl2.0) (_ #f))) (define (license->symbol license) -- cgit v1.2.3 From 59b2034787909cf7efa4e8d672a815b466d7d09d Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 22 Sep 2016 11:33:46 +0200 Subject: import: utils: Add spdx-string->license. * guix/import/utils.scm (spdx-string->license): New variable. * guix/licenses.scm (agpl1, fdl1.2+): New variables. --- guix/import/utils.scm | 70 +++++++++++++++++++++++++++++++++++++++++++++++++++ guix/licenses.scm | 12 ++++++++- 2 files changed, 81 insertions(+), 1 deletion(-) diff --git a/guix/import/utils.scm b/guix/import/utils.scm index 69e623a67f..ce0ba99fc0 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -1,5 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013 Ludovic Courtès +;;; Copyright © 2016 Jelle Licht ;;; ;;; This file is part of GNU Guix. ;;; @@ -35,6 +36,7 @@ url-fetch guix-hash-url + spdx-string->license license->symbol snake-case @@ -109,7 +111,75 @@ recursively apply the procedure to the sub-list." "Return the hash of FILENAME in nix-base32 format." (bytevector->nix-base32-string (file-sha256 filename))) +(define (spdx-string->license str) + "Convert STR, a SPDX formatted license identifier, to a license object. + Return #f if STR does not match any known identifiers." + ;; https://spdx.org/licenses/ + ;; The psfl, gfl1.0, nmap, repoze + ;; licenses doesn't have SPDX identifiers (match str + ("AGPL-1.0" 'license:agpl-1.0) + ("AGPL-3.0" 'license:agpl-3.0) + ("Apache-1.1" 'license:asl1.1) + ("Apache-2.0" 'license:asl2.0) + ("BSL-1.0" 'license:boost1.0) + ("BSD-2-Clause-FreeBSD" 'license:bsd-2) + ("BSD-3-Clause" 'license:bsd-3) + ("BSD-4-Clause" 'license:bsd-4) + ("CC0-1.0" 'license:cc0) + ("CC-BY-2.0" 'license:cc-by2.0) + ("CC-BY-3.0" 'license:cc-by3.0) + ("CC-BY-SA-2.0" 'license:cc-by-sa2.0) + ("CC-BY-SA-3.0" 'license:cc-by-sa3.0) + ("CC-BY-SA-4.0" 'license:cc-by-sa4.0) + ("CDDL-1.0" 'license:cddl1.0) + ("CECILL-C" 'license:cecill-c) + ("Artistic-2.0" 'license:artistic2.0) + ("ClArtistic" 'license:clarified-artistic) + ("CPL-1.0" 'license:cpl1.0) + ("EPL-1.0" 'license:epl1.0) + ("MIT" 'license:expat) + ("FTL" 'license:freetype) + ("GFDL-1.1" 'license:fdl1.1+) + ("GFDL-1.2" 'license:fdl1.2+) + ("GFDL-1.3" 'license:fdl1.3+) + ("Giftware" 'license:giftware) + ("GPL-1.0" 'license:gpl1) + ("GPL-1.0+" 'license:gpl1+) + ("GPL-2.0" 'license:gpl2) + ("GPL-2.0+" 'license:gpl2+) + ("GPL-3.0" 'license:gpl3) + ("GPL-3.0+" 'license:gpl3+) + ("ISC" 'license:isc) + ("IJG" 'license:ijg) + ("Imlib2" 'license:imlib2) + ("IPA" 'license:ipa) + ("IPL-1.0" 'license:ibmpl1.0) + ("LGPL-2.0" 'license:lgpl2.0) + ("LGPL-2.0+" 'license:lgpl2.0+) + ("LGPL-2.1" 'license:lgpl2.1) + ("LGPL-2.1+" 'license:lgpl2.1+) + ("LGPL-3.0" 'license:lgpl3.0) + ("LGPL-3.0+" 'license:lgpl3.0+) + ("MPL-1.0" 'license:mpl1.0) + ("MPL-1.1" 'license:mpl1.1) + ("MPL-2.0" 'license:mpl2.0) + ("MS-PL" 'license:ms-pl) + ("NCSA" 'license:ncsa) + ("OpenSSL" 'license:openssl) + ("OLDAP-2.8" 'license:openldap2.8) + ("CUA-OPL-1.0" 'license:opl1.0) + ("QPL-1.0" 'license:qpl) + ("Ruby" 'license:ruby) + ("SGI-B-2.0" 'license:sgifreeb2.0) + ("OFL-1.1" 'license:silofl1.1) + ("Sleepycat" 'license:sleepycat) + ("TCL" 'license:tcl/tk) + ("Unlicense" 'license:unlicense) + ("Vim" 'license:vim) + ("X11" 'license:x11) + ("ZPL-2.1" 'license:zpl2.1) + ("Zlib" 'license:zlib) (_ #f))) (define (license->symbol license) diff --git a/guix/licenses.scm b/guix/licenses.scm index 265f048278..8a98b0960a 100644 --- a/guix/licenses.scm +++ b/guix/licenses.scm @@ -27,7 +27,7 @@ (define-module (guix licenses) #:use-module (srfi srfi-9) #:export (license? license-name license-uri license-comment - agpl3 agpl3+ + agpl1 agpl3 agpl3+ asl1.1 asl2.0 boost1.0 bsd-2 bsd-3 bsd-4 @@ -91,6 +91,11 @@ ;;; ;;; Code: +(define agpl1 + (license "AGPL 1" + "https://gnu.org/licenses/agpl.html" + "https://gnu.org/licenses/why-affero-gpl.html")) + (define agpl3 (license "AGPL 3" "https://gnu.org/licenses/agpl.html" @@ -271,6 +276,11 @@ at URI, which may be a file:// URI pointing the package's tree." "https://www.gnu.org/licenses/fdl-1.1" "https://www.gnu.org/licenses/license-list#FDL")) +(define fdl1.2+ + (license "FDL 1.2+" + "https://www.gnu.org/licenses/fdl-1.2" + "https://www.gnu.org/licenses/license-list#FDL")) + (define fdl1.3+ (license "FDL 1.3+" "https://www.gnu.org/licenses/fdl.html" -- cgit v1.2.3 From 11e296ef3092de1e5b659822d4dad4465abad34f Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 22 Sep 2016 11:35:13 +0200 Subject: import: utils: Refactor license->symbol. * guix/import/utils.scm (license->symbol): Work for all licenses. * tests/import-utils.scm (license->symbol): Add test. --- guix/import/utils.scm | 14 +++++--------- tests/import-utils.scm | 5 +++++ 2 files changed, 10 insertions(+), 9 deletions(-) diff --git a/guix/import/utils.scm b/guix/import/utils.scm index ce0ba99fc0..e4059ca114 100644 --- a/guix/import/utils.scm +++ b/guix/import/utils.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013 Ludovic Courtès ;;; Copyright © 2016 Jelle Licht +;;; Copyright © 2016 David Craven ;;; ;;; This file is part of GNU Guix. ;;; @@ -185,15 +186,10 @@ recursively apply the procedure to the sub-list." (define (license->symbol license) "Convert license to a symbol representing the variable the object is bound to in the (guix licenses) module, or #f if there is no such known license." - ;; TODO: Traverse list public variables in (guix licenses) instead so we - ;; don't have to maintain a list manualy. - (assoc-ref `((,license:lgpl2.0 . license:lgpl2.0) - (,license:gpl3 . license:gpl3) - (,license:bsd-3 . license:bsd-3) - (,license:expat . license:expat) - (,license:public-domain . license:public-domain) - (,license:asl2.0 . license:asl2.0)) - license)) + (define licenses + (module-map (lambda (sym var) `(,(variable-ref var) . ,sym)) + (resolve-interface '(guix licenses) #:prefix 'license:))) + (assoc-ref licenses license)) (define (snake-case str) "Return a downcased version of the string STR where underscores are replaced diff --git a/tests/import-utils.scm b/tests/import-utils.scm index 3b11875c4a..8d44b9e0e2 100644 --- a/tests/import-utils.scm +++ b/tests/import-utils.scm @@ -20,6 +20,7 @@ (define-module (test-import-utils) #:use-module (guix tests) #:use-module (guix import utils) + #:use-module ((guix licenses) #:prefix license:) #:use-module (srfi srfi-64)) (test-begin "import-utils") @@ -33,4 +34,8 @@ "This package provides a function to establish world peace" (beautify-description "A function to establish world peace")) +(test-equal "license->symbol" + 'license:lgpl2.0 + (license->symbol license:lgpl2.0)) + (test-end "import-utils") -- cgit v1.2.3 From b411517a1939612517378987ff2675b809b7074c Mon Sep 17 00:00:00 2001 From: Thomas Danckaert Date: Tue, 27 Sep 2016 15:38:51 +0200 Subject: gnu: git: Add input perl-term-readkey for 'git-svn'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/version-control.scm (git)[inputs]: Add perl-term-readkeys. [arguments]: Add perl-term-readkeys to the PERL5LIB of `git-svn'. Signed-off-by: 宋文武 --- gnu/packages/version-control.scm | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index 29559bd9b3..ef65a03451 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -143,6 +143,7 @@ as well as the classic centralized workflow.") ;; For 'git-svn'. ("subversion" ,subversion) + ("perl-term-readkey" ,perl-term-readkey) ;; For 'git-send-email' ("perl-authen-sasl" ,perl-authen-sasl) @@ -227,14 +228,15 @@ as well as the classic centralized workflow.") (list gitk git-gui git-cit git-se git-svn) (list gitk* git-gui* git-cit* git-se* git-svn*)) - ;; Tell 'git-svn' where Subversion is. + ;; Tell 'git-svn' where Subversion and perl-term-readkey are. (wrap-program git-svn* `("PATH" ":" prefix (,(string-append (assoc-ref inputs "subversion") "/bin"))) `("PERL5LIB" ":" prefix - (,(string-append (assoc-ref inputs "subversion") - "/lib/perl5/site_perl"))) + ,(map (lambda (i) (string-append (assoc-ref inputs i) + "/lib/perl5/site_perl")) + '("subversion" "perl-term-readkey"))) ;; XXX: The .so for SVN/Core.pm lacks a RUNPATH, so ;; help it find 'libsvn_client-1.so'. -- cgit v1.2.3 From dac65f90b6a6926950869a1bacff6ce3d35fa6d5 Mon Sep 17 00:00:00 2001 From: Taylan Ulrich Bayırlı/Kammer Date: Wed, 14 Sep 2016 21:38:30 +0200 Subject: gnu: higan: Update to version 101. * gnu/packages/games.scm (higan): Update to version 101. --- gnu/packages/games.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index 409e2842b9..b2ab98c38f 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -2263,7 +2263,7 @@ Red Eclipse provides fast paced and accessible gameplay.") (define-public higan (package (name "higan") - (version "099") + (version "101") (source (origin (method url-fetch) @@ -2272,7 +2272,7 @@ Red Eclipse provides fast paced and accessible gameplay.") version)) (file-name (string-append name "-" version ".tar.gz")) (sha256 - (base32 "0xlzjqrd308hmg6yjzjkmxkkr9p3w387kf6yxyplb47jcbx2sq4n")) + (base32 "0qavwkmzc63p6qplmxii4gc541z5mcs8gjwh3m4y7i576r7rcbk9")) (patches (search-patches "higan-remove-march-native-flag.patch")))) (build-system gnu-build-system) (native-inputs -- cgit v1.2.3 From 415ee287faca319f53ba908843a30750afcfc451 Mon Sep 17 00:00:00 2001 From: Taylan Ulrich Bayırlı/Kammer Date: Wed, 21 Sep 2016 20:29:21 +0200 Subject: gnu: nestopia-ue: Update to version 1.47. --- gnu/packages/games.scm | 27 ++++++++++----------------- 1 file changed, 10 insertions(+), 17 deletions(-) diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index b2ab98c38f..cd5cf6f346 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -1780,7 +1780,7 @@ towards a working Mupen64Plus for casual users.") (define-public nestopia-ue (package (name "nestopia-ue") - (version "1.46.2") + (version "1.47") (source (origin (method url-fetch) (uri (string-append @@ -1789,7 +1789,7 @@ towards a working Mupen64Plus for casual users.") (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "07h49xwvg61dx20rk5p4r3ax2ar5y0ppvm60cqwqljyi9rdfbh7p")) + "1dzrrjmvyqks64q5l5pfly80jb6qcsbj5b3dm40fijd5xnpbapci")) (modules '((guix build utils))) (snippet '(begin @@ -1815,21 +1815,14 @@ towards a working Mupen64Plus for casual users.") (modify-phases %standard-phases ;; The Nestopia build system consists solely of a Makefile. (delete 'configure) - ;; XXX Should be unnecessary with the next release. - (add-before - 'build 'patch-makefile - (lambda _ - (substitute* "Makefile" - (("@mkdir \\$@") "@mkdir -p $@") - (("CC =") "CC ?=") - (("CXX =") "CXX ?=") - (("PREFIX =") "PREFIX ?=") - (("^install:\n$") "install:\n\tmkdir -p $(BINDIR)\n")))) - (add-before - 'build 'remove-xdg-desktop-menu-call - (lambda _ - (substitute* "Makefile" - (("xdg-desktop-menu install .*") ""))))) + (add-before 'build 'remove-xdg-desktop-menu-call + (lambda _ + (substitute* "Makefile" + (("xdg-desktop-menu install .*") "")))) + (add-before 'build 'remove-gdkwayland-include + (lambda _ + (substitute* "source/unix/gtkui/gtkui.h" + (("#include ") ""))))) #:make-flags (let ((out (assoc-ref %outputs "out"))) (list "CC=gcc" "CXX=g++" (string-append "PREFIX=" out))) ;; There are no tests. -- cgit v1.2.3 From b2fe918302de7a1e978cf820a55beb110362ecce Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Fri, 23 Sep 2016 23:36:48 -0400 Subject: gnu: attic: Superseded by borg. * gnu/packages/backup.scm (attic)[properties]: New field. --- gnu/packages/backup.scm | 85 +++++++++++++++++++++++++------------------------ 1 file changed, 43 insertions(+), 42 deletions(-) diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index e77c4f20a9..c6f1321d77 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -358,48 +358,6 @@ to a remote location, and only the differences will be transmitted. Finally, rdiff-backup is easy to use and settings have sensible defaults.") (license license:gpl2+))) -(define-public attic - (package - (name "attic") - (version "0.16") - (source (origin - (method url-fetch) - (uri (string-append - "https://pypi.python.org/packages/source/A/Attic/Attic-" - version ".tar.gz")) - (sha256 - (base32 - "0b5skd36r4c0915lwpkqg5hxm49gls9pprs1b7hc40910wlcsl36")))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before - 'build 'set-openssl-prefix - (lambda* (#:key inputs #:allow-other-keys) - (setenv "ATTIC_OPENSSL_PREFIX" (assoc-ref inputs "openssl")) - #t))))) - (inputs - `(("acl" ,acl) - ("openssl" ,openssl) - ("python-msgpack" ,python-msgpack) - - ;; Attic is probably incompatible with llfuse > 0.41. - ;; These links are to discussions of llfuse compatibility from - ;; the borg project. Borg is a recent fork of attic, and attic - ;; has not been updated since the fork, so it's likely that - ;; llfuse compatibility requirements are still the same. - ;; https://github.com/borgbackup/borg/issues/642 - ;; https://github.com/borgbackup/borg/issues/643 - ("python-llfuse" ,python-llfuse-0.41))) - (synopsis "Deduplicating backup program") - (description "Attic is a deduplicating backup program. The main goal of -Attic is to provide an efficient and secure way to backup data. The data -deduplication technique used makes Attic suitable for daily backups since only -changes are stored.") - (home-page "https://attic-backup.org/") - (license license:bsd-3))) - (define-public libchop (package (name "libchop") @@ -497,3 +455,46 @@ stored. The authenticated encryption technique makes it suitable for backups to not fully trusted targets. Borg is a fork of Attic.") (home-page "https://borgbackup.github.io/borgbackup/") (license license:bsd-3))) + +(define-public attic + (package + (name "attic") + (version "0.16") + (source (origin + (method url-fetch) + (uri (string-append + "https://pypi.python.org/packages/source/A/Attic/Attic-" + version ".tar.gz")) + (sha256 + (base32 + "0b5skd36r4c0915lwpkqg5hxm49gls9pprs1b7hc40910wlcsl36")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before + 'build 'set-openssl-prefix + (lambda* (#:key inputs #:allow-other-keys) + (setenv "ATTIC_OPENSSL_PREFIX" (assoc-ref inputs "openssl")) + #t))))) + (inputs + `(("acl" ,acl) + ("openssl" ,openssl) + ("python-msgpack" ,python-msgpack) + + ;; Attic is probably incompatible with llfuse > 0.41. + ;; These links are to discussions of llfuse compatibility from + ;; the borg project. Borg is a recent fork of attic, and attic + ;; has not been updated since the fork, so it's likely that + ;; llfuse compatibility requirements are still the same. + ;; https://github.com/borgbackup/borg/issues/642 + ;; https://github.com/borgbackup/borg/issues/643 + ("python-llfuse" ,python-llfuse-0.41))) + (synopsis "Deduplicating backup program") + (description "Attic is a deduplicating backup program. The main goal of +Attic is to provide an efficient and secure way to backup data. The data +deduplication technique used makes Attic suitable for daily backups since only +changes are stored.") + (home-page "https://attic-backup.org/") + (license license:bsd-3) + (properties `((superseded . ,borg))))) -- cgit v1.2.3 From 1d51585573f49105edd1a577ba53e86367ffd821 Mon Sep 17 00:00:00 2001 From: Stefan Reichoer Date: Wed, 21 Sep 2016 21:58:52 +0200 Subject: gnu: Add xonsh. * gnu/packages/shells.scm (xonsh): New variable. Signed-off-by: Leo Famulari --- gnu/packages/shells.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 183ef7f289..c165f99d4c 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -33,6 +33,7 @@ #:use-module (gnu packages python) #:use-module (gnu packages readline) #:use-module (guix build-system gnu) + #:use-module (guix build-system python) #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix licenses) @@ -269,3 +270,25 @@ ksh, and tcsh.") ;; The whole thing is under an MIT/X11-style license, but there's one ;; command, 'Completion/Unix/Command/_darcs', which is under GPLv2+. (license gpl2+))) + +(define-public xonsh + (package + (name "xonsh") + (version "0.4.6") + (source + (origin + (method url-fetch) + (uri (pypi-uri "xonsh" version)) + (sha256 + (base32 + "0byxd9kjl99q2pyvjh9jy18l0di1i35wr0qqgnw4i6jh6ig3zcki")))) + (build-system python-build-system) + (home-page "http://xon.sh/") + (synopsis "Python-ish shell") + (description + "Xonsh is a Python-ish, BASHwards-looking shell language and command +prompt. The language is a superset of Python 3.4+ with additional shell +primitives that you are used to from Bash and IPython. It works on all major +systems including Linux, Mac OSX, and Windows. Xonsh is meant for the daily +use of experts and novices alike.") + (license bsd-2))) -- cgit v1.2.3 From 37042a0fb443199007daec20ad1a39decc7619e0 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Wed, 28 Sep 2016 21:38:38 +0300 Subject: gnu: tilda: Update to 1.3.3. * gnu/packages/terminals.scm (tilda): Update to 1.3.3. --- gnu/packages/terminals.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index 1f08bc88a7..948906a2fa 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2015 Efraim Flashner +;;; Copyright © 2015, 2016 Efraim Flashner ;;; Copyright © 2016 Mckinley Olsen ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016 David Craven @@ -50,14 +50,14 @@ (define-public tilda (package (name "tilda") - (version "1.3.1") + (version "1.3.3") (source (origin (method url-fetch) (uri (string-append "https://github.com/lanoxx/tilda/archive/" "tilda-" version ".tar.gz")) (sha256 (base32 - "1nh0kw8f6srriglj55gmir1hvakcwrak1wcydz3vpnmwipgy6jib")))) + "1cc4qbg1m3i04lj5p6i6xbd0zvy1320pxdgmjhz5p3j95ibsbfki")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 2320e76b8263eed4e753a7ae31c8b91b826ce2dc Mon Sep 17 00:00:00 2001 From: Ricardo Wurmus Date: Wed, 28 Sep 2016 22:28:51 +0200 Subject: gnu: sra-tools: Fix build on i686. * gnu/packages/bioinformatics.scm (sra-tools)[arguments]: Pass "VDB_LIBDIR" in make-flags; dynamically link libmagic. --- gnu/packages/bioinformatics.scm | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index ea76f8d00f..3cf1ffcd1f 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -4580,6 +4580,14 @@ sequence itself can be retrieved from these databases.") (arguments `(#:parallel-build? #f ; not supported #:tests? #f ; no "check" target + #:make-flags + (list (string-append "VDB_LIBDIR=" + (assoc-ref %build-inputs "ncbi-vdb") + ,(if (string-prefix? "x86_64" + (or (%current-target-system) + (%current-system))) + "/lib64" + "/lib32"))) #:phases (alist-replace 'configure @@ -4598,6 +4606,10 @@ sequence itself can be retrieved from these databases.") (("my \\$ilibdir = File::Spec->catdir\\(\\$builddir, 'ilib'\\);") "my $ilibdir = File::Spec->catdir($dir, 'ilib');")) + ;; Dynamic linking + (substitute* "tools/copycat/Makefile" + (("smagic-static") "lmagic")) + ;; The 'configure' script doesn't recognize things like ;; '--enable-fast-install'. (zero? (system* -- cgit v1.2.3 From 5564c011d9f0979fb0c477fcafd136c019a477b3 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Tue, 27 Sep 2016 14:12:02 -0400 Subject: doc: Give the full key fingerprint instead of the long key ID. * doc/guix.texi (OPENPGP-SIGNING-KEY-ID): Use fingerprint instead of long key ID. --- doc/guix.texi | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index c159e12b1b..239428a75a 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -10,7 +10,7 @@ @include version.texi @c Identifier of the OpenPGP key used to sign tarballs and such. -@set OPENPGP-SIGNING-KEY-ID 090B11993D9AEBB5 +@set OPENPGP-SIGNING-KEY-ID 3CE464558A84FDC69DB40CFB090B11993D9AEBB5 @copying Copyright @copyright{} 2012, 2013, 2014, 2015, 2016 Ludovic Courtès@* -- cgit v1.2.3 From d06ce0466f2a9a12d2cb9529c1a6179c1f28d7ae Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Wed, 28 Sep 2016 14:13:55 +0200 Subject: gnu: dbus-c++: License has "or later" clause. * gnu/packages/glib.scm (dbus-c++)[license]: Change to LGPL2.1+. --- gnu/packages/glib.scm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 9167c6de22..9ac67c6b2b 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -702,4 +702,4 @@ This package provides the library for GLib applications.") programming langauage. It also contains the utility @command{dbuscxx-xml2cpp}.") (home-page "https://sourceforge.net/projects/dbus-cplusplus/") - (license license:lgpl2.1))) + (license license:lgpl2.1+))) -- cgit v1.2.3 From b9f7895d39b9857ddb893f2fe19d0a4bd6ec53d7 Mon Sep 17 00:00:00 2001 From: David Craven Date: Thu, 29 Sep 2016 12:50:47 +0200 Subject: Revert "gnu: %default-extra-linux-options: Remove redundant options." Options aren't redundant and are required for building the initrd. This reverts commit 50dbc03647170fded9e0bca0cc4b7e1614aa38db. --- gnu/packages/linux.scm | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 9c7570a27e..7089af3044 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -188,7 +188,18 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration." (define %default-extra-linux-options `(;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html - ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t))) + ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t) + ;; Modules required for initrd: + ("CONFIG_NET_9P" . m) + ("CONFIG_NET_9P_VIRTIO" . m) + ("CONFIG_VIRTIO_BLK" . m) + ("CONFIG_VIRTIO_NET" . m) + ("CONFIG_VIRTIO_PCI" . m) + ("CONFIG_VIRTIO_BALLOON" . m) + ("CONFIG_VIRTIO_MMIO" . m) + ("CONFIG_FUSE_FS" . m) + ("CONFIG_CIFS" . m) + ("CONFIG_9P_FS" . m))) (define (config->string options) (string-join (map (match-lambda -- cgit v1.2.3 From 0da1b7062af798423eeaf37733467dca224b5029 Mon Sep 17 00:00:00 2001 From: Leo Famulari Date: Thu, 29 Sep 2016 11:12:55 -0400 Subject: gnu: c-ares: Update to 1.12.0 [fixes CVE-2016-5180]. * gnu/packages/adns.scm (c-ares): Update to 1.12.0. [source]: Use HTTPS URL. [home-page]: Use HTTPS URL. --- gnu/packages/adns.scm | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gnu/packages/adns.scm b/gnu/packages/adns.scm index 81e51d8eb2..29d3fa26e3 100644 --- a/gnu/packages/adns.scm +++ b/gnu/packages/adns.scm @@ -59,19 +59,19 @@ scripts.") (define-public c-ares (package (name "c-ares") - (version "1.11.0") + (version "1.12.0") (source (origin (method url-fetch) (uri (string-append - "http://c-ares.haxx.se/download/" name "-" version + "https://c-ares.haxx.se/download/" name "-" version ".tar.gz")) (sha256 (base32 - "1z9y1f835dpi1ka2a2vzjygm3djdvr01036ml4l2js6r2xk2wqdk")))) + "1yv5ygkd813glz8hbagykgp1hlb6450chig061hr7pyw7i0gk4l6")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) - (home-page "http://c-ares.haxx.se/") + (home-page "https://c-ares.haxx.se/") (synopsis "C library for asynchronous DNS requests") (description "C-ares is a C library that performs DNS requests and name resolution -- cgit v1.2.3 From 154c71e0036798aa7b19e8caeb93c3e3bbb3e540 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Tue, 27 Sep 2016 22:47:20 +0530 Subject: gnu: Add m17n-db. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (m17n-db): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 57fe8a9fd4..55a3914019 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -16,6 +16,7 @@ ;;; Copyright © 2016 Alex Griffin ;;; Copyright © 2016 Nicolas Goaziou ;;; Copyright © 2016 Alex Vong +;;; Copyright © 2016 Arun Isaac ;;; ;;; This file is part of GNU Guix. ;;; @@ -74,6 +75,7 @@ #:use-module (gnu packages statistics) #:use-module (gnu packages xiph) #:use-module (gnu packages mp3) + #:use-module (gnu packages gettext) #:use-module (guix utils) #:use-module (srfi srfi-1)) @@ -3104,3 +3106,37 @@ that allows users to concentrate more on their own work. Its features are: a visual interface, reduce overhead of completion by using statistic method, extensibility.") (license license:gpl3+))) + +(define-public m17n-db + (package + (name "m17n-db") + (version "1.7.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://savannah/m17n/m17n-db-" + version ".tar.gz")) + (sha256 + (base32 "1w08hnsbknrcjlzp42c99bgwc9hzsnf5m4apdv0dacql2s09zfm2")))) + (build-system gnu-build-system) + (inputs + `(("gettext" ,gnu-gettext))) + (arguments + `(#:configure-flags + (list (string-append "--with-charmaps=" + (assoc-ref %build-inputs "libc") + "/share/i18n/charmaps")))) + ;; With `guix lint' the home-page URI returns a small page saying + ;; that your browser does not handle frames. This triggers the "URI + ;; returns suspiciously small file" warning. + (home-page "http://www.nongnu.org/m17n/") + (synopsis "Multilingual text processing library (database)") + (description "The m17n library realizes multilingualization of +many aspects of applications. The m17n library represents +multilingual text as an object named M-text. M-text is a string with +attributes called text properties, and designed to substitute for +string in C. Text properties carry any information required to input, +display and edit the text. + +This package contains the library database.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From a80b60f4848be927511864e9d5a94b98d8f6b734 Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Tue, 27 Sep 2016 22:47:21 +0530 Subject: gnu: Add m17n-lib. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (m17n-lib): New variable. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs.scm | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index 55a3914019..e8350486dd 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -76,6 +76,9 @@ #:use-module (gnu packages xiph) #:use-module (gnu packages mp3) #:use-module (gnu packages gettext) + #:use-module (gnu packages fribidi) + #:use-module (gnu packages gd) + #:use-module (gnu packages fontutils) #:use-module (guix utils) #:use-module (srfi srfi-1)) @@ -3140,3 +3143,40 @@ display and edit the text. This package contains the library database.") (license license:lgpl2.1+))) + +(define-public m17n-lib + (package + (name "m17n-lib") + (version "1.7.0") + (source + (origin + (method url-fetch) + (uri (string-append + "http://download.savannah.gnu.org/releases/m17n/m17n-lib-" + version ".tar.gz")) + (sha256 + (base32 "10yv730i25g1rpzv6q49m6xn4p8fjm7jdwvik2h70sn8w3hm7f4f")))) + (build-system gnu-build-system) + (inputs + `(("fribidi" ,fribidi) + ("gd" ,gd) + ("libotf" ,libotf) + ("libxft" ,libxft) + ("libxml2" ,libxml2) + ("m17n-db" ,m17n-db))) + (arguments + `(#:parallel-build? #f)) + ;; With `guix lint' the home-page URI returns a small page saying + ;; that your browser does not handle frames. This triggers the "URI + ;; returns suspiciously small file" warning. + (home-page "http://www.nongnu.org/m17n/") + (synopsis "Multilingual text processing library (runtime)") + (description "The m17n library realizes multilingualization of +many aspects of applications. The m17n library represents +multilingual text as an object named M-text. M-text is a string with +attributes called text properties, and designed to substitute for +string in C. Text properties carry any information required to input, +display and edit the text. + +This package contains the library runtime.") + (license license:lgpl2.1+))) -- cgit v1.2.3 From 01c5c21a67e8386b9572274c3aafa4cb0d2f07ef Mon Sep 17 00:00:00 2001 From: Arun Isaac Date: Tue, 27 Sep 2016 22:47:22 +0530 Subject: gnu: emacs: Build with m17n support. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/emacs.scm (emacs): Build with m17n support. Signed-off-by: Ludovic Courtès --- gnu/packages/emacs.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index e8350486dd..df9f4496fb 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -160,7 +160,11 @@ ("libsm" ,libsm) ("alsa-lib" ,alsa-lib) ("dbus" ,dbus) - ("guix-src" ,(package-source guix)))) + ("guix-src" ,(package-source guix)) + + ;; multilingualization support + ("libotf" ,libotf) + ("m17n-lib" ,m17n-lib))) (native-inputs `(("pkg-config" ,pkg-config) ("texinfo" ,texinfo))) -- cgit v1.2.3 From 86d8f6d3efb8300a3354735cbf06be6c01e23243 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Fri, 5 Aug 2016 15:20:15 +0200 Subject: services: Add 'openssh-service'. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * gnu/packages/ssh.scm (openssh)[arguments]: Set sysconfdir to /etc/ssh. * gnu/services/ssh.scm (): New record type. (%openssh-accounts): New variable. (openssh-activation, openssh-config-file, openssh-shepherd-service) (openssh-service): New procedures. (openssh-service-type): New variable. * doc/guix.texi (Networking Services): Document 'openssh-services'. Co-authored-by: Ludovic Courtès --- doc/guix.texi | 34 +++++++++++++ gnu/packages/ssh.scm | 2 +- gnu/services/ssh.scm | 131 +++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 166 insertions(+), 1 deletion(-) diff --git a/doc/guix.texi b/doc/guix.texi index 239428a75a..f5bbb92c7c 100644 --- a/doc/guix.texi +++ b/doc/guix.texi @@ -8199,6 +8199,40 @@ root. The other options should be self-descriptive. @end deffn +@deffn {Scheme Procedure} openssh-service [#:pid-file "/var/run/sshd.pid"] @ + [#:port-number 22] [#:permit-root-login 'without-password] @ + [#:allow-empty-passwords #f] [#:password-authentication? #t] @ + [#:pubkey-authentication? #t] [#:rsa-authentication? #t] @ + [#:x11-forwarding? #f] [#:protocol-number "2"] +Run the @command{sshd} program from @var{openssh} on port +@var{port-number}. @command{sshd} runs an SSH daemon and writes its PID +to @var{pid-file}. It understands SSH protocol +@var{protocol-number}. The @var{protocol-number} can be either 1 or 2. + +@var{permit-root-login} takes one of @code{#t}, @code{'without-password} +and @code{#f}. It is used to allow root login through SSH. +@code{'without-password} means that root login is allowed, but not with +password-based authentication. + +When @var{allow-empty-passwords?} is true, users with empty passwords +may log in. When false, they may not. + +When @var{password-authentication?} is true, users may log in with their +password. When false, they have to use other means of authentication. + +When @var{pubkey-authentication?} is true, users may log in using public +key authentication. When false, users have to use other means of +authentication. Authorized public keys are stored in +@file{~/.ssh/authorized_keys}. This is used only by protocol version 2. + +When @var{rsa-authentication?} is true, users may log in using pure RSA +authentication. When false, users have to use other means of +authentication. This is used only by protocol 1. + +When @var{x11-forwarding?} is true, @command{ssh} options @option{-X} +and @option{-Y} will work. +@end deffn + @deffn {Scheme Procedure} dropbear-service [@var{config}] Run the @uref{https://matt.ucc.asn.au/dropbear/dropbear.html,Dropbear SSH daemon} with the given @var{config}, a @code{} diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index b2612a495f..88bfd062df 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -144,7 +144,7 @@ a server that supports the SSH-2 protocol.") ("xauth" ,xauth))) ;for 'ssh -X' and 'ssh -Y' (arguments `(#:test-target "tests" - #:configure-flags '("--sysconfdir=/etc" + #:configure-flags '("--sysconfdir=/etc/ssh" ;; Default value of 'PATH' used by sshd. "--with-default-path=/run/current-system/profile/bin" diff --git a/gnu/services/ssh.scm b/gnu/services/ssh.scm index 462988cc80..084f8fa4ea 100644 --- a/gnu/services/ssh.scm +++ b/gnu/services/ssh.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2014, 2015, 2016 Ludovic Courtès ;;; Copyright © 2016 David Craven +;;; Copyright © 2016 Julien Lepiller ;;; ;;; This file is part of GNU Guix. ;;; @@ -19,17 +20,25 @@ (define-module (gnu services ssh) #:use-module (gnu packages ssh) + #:use-module (gnu packages admin) #:use-module (gnu services) #:use-module (gnu services shepherd) #:use-module (gnu system pam) + #:use-module (gnu system shadow) #:use-module (guix gexp) #:use-module (guix records) #:use-module (srfi srfi-26) + #:use-module (ice-9 match) #:export (lsh-configuration lsh-configuration? lsh-service lsh-service-type + openssh-configuration + openssh-configuration? + openssh-service-type + openssh-service + dropbear-configuration dropbear-configuration? dropbear-service-type @@ -244,6 +253,128 @@ The other options should be self-descriptive." public-key-authentication?) (initialize? initialize?)))) + +;;; +;;; OpenSSH. +;;; + +(define-record-type* + openssh-configuration make-openssh-configuration + openssh-configuration? + (pid-file openssh-configuration-pid-file) ;string + (port-number openssh-configuration-port-number) ;integer + (permit-root-login openssh-configuration-permit-root-login) ;Boolean | 'without-password + (allow-empty-passwords? openssh-configuration-allow-empty-passwords?) ;Boolean + (password-authentication? openssh-configuration-password-authentication?) ;Boolean + (pubkey-authentication? openssh-configuration-pubkey-authentication?) ;Boolean + (rsa-authentication? openssh-configuration-rsa-authentication?) ;Boolean + (x11-forwarding? openssh-configuration-x11-forwarding?) ;Boolean + (protocol-number openssh-configuration-protocol-number)) ;integer + +(define %openssh-accounts + (list (user-group (name "sshd") (system? #t)) + (user-account + (name "sshd") + (group "sshd") + (system? #t) + (comment "sshd privilege separation user") + (home-directory "/var/run/sshd") + (shell #~(string-append #$shadow "/sbin/nologin"))))) + +(define (openssh-activation config) + "Return the activation GEXP for CONFIG." + #~(begin + (mkdir-p "/etc/ssh") + (mkdir-p (dirname #$(openssh-configuration-pid-file config))) + + ;; Generate missing host keys. + (system* (string-append #$openssh "/bin/ssh-keygen") "-A"))) + +(define (openssh-config-file config) + "Return the sshd configuration file corresponding to CONFIG." + (computed-file + "sshd_config" + #~(call-with-output-file #$output + (lambda (port) + (display "# Generated by 'openssh-service'.\n" port) + (format port "Protocol ~a\n" + #$(if (eq? (openssh-configuration-protocol-number config) 1) + "1" "2")) + (format port "Port ~a\n" + #$(number->string (openssh-configuration-port-number config))) + (format port "PermitRootLogin ~a\n" + #$(match (openssh-configuration-permit-root-login config) + (#t "yes") + (#f "no") + ('without-password "without-password"))) + (format port "PermitEmptyPasswords ~a\n" + #$(if (openssh-configuration-allow-empty-passwords? config) + "yes" "no")) + (format port "PasswordAuthentication ~a\n" + #$(if (openssh-configuration-password-authentication? config) + "yes" "no")) + (format port "PubkeyAuthentication ~a\n" + #$(if (openssh-configuration-pubkey-authentication? config) + "yes" "no")) + (format port "RSAAuthentication ~a\n" + #$(if (openssh-configuration-rsa-authentication? config) + "yes" "no")) + (format port "X11Forwarding ~a\n" + #$(if (openssh-configuration-x11-forwarding? config) + "yes" "no")) + (format port "PidFile ~a\n" + #$(openssh-configuration-pid-file config)) + #t)))) + +(define (openssh-shepherd-service config) + "Return a for openssh with CONFIG." + + (define pid-file + (openssh-configuration-pid-file config)) + + (define openssh-command + #~(list (string-append #$openssh "/sbin/sshd") + "-D" "-f" #$(openssh-config-file config))) + + (list (shepherd-service + (documentation "OpenSSH server.") + (requirement '(networking syslogd)) + (provision '(ssh-daemon)) + (start #~(make-forkexec-constructor #$openssh-command + #:pid-file #$pid-file)) + (stop #~(make-kill-destructor))))) + +(define openssh-service-type + (service-type (name 'openssh) + (extensions + (list (service-extension shepherd-root-service-type + openssh-shepherd-service) + (service-extension activation-service-type + openssh-activation) + (service-extension account-service-type + (const %openssh-accounts)))))) + +(define* (openssh-service #:key + (pid-file "/var/run/sshd.pid") + (port-number 22) + (permit-root-login 'without-password) + (allow-empty-passwords? #f) + (password-authentication? #t) + (pubkey-authentication? #t) + (rsa-authentication? #t) + (x11-forwarding? #f) + (protocol-number 2)) + (service openssh-service-type (openssh-configuration + (pid-file pid-file) + (port-number port-number) + (permit-root-login permit-root-login) + (allow-empty-passwords? allow-empty-passwords?) + (password-authentication? password-authentication?) + (pubkey-authentication? pubkey-authentication?) + (rsa-authentication? rsa-authentication?) + (x11-forwarding? x11-forwarding?) + (protocol-number protocol-number)))) + ;;; ;;; Dropbear. -- cgit v1.2.3