Re: [PATCH -v3] Fix gtk-im-modules for gtk+3

2017-02-04 Thread 宋文武
huang_ying_cari...@163.com writes:

> From: "Huang, Ying" 
>
> Gtk+3 now have multiple outputs, so the gtk-query-immodules-3.0 should be find
> in output "bin" instead of "out".
>
> * guix/profiles.scm (manifest-lookup-package): New argument output to select
>   package or store path.
>   (gtk-im-modules): Use "bin" output to find gtk-query-immodules-3.0
>
> The fix works, but appears hacky, because I haven't read much guix source
> code, so I don't know the best solution.
>

Thank you!  The patch looks good to me, but:

I think we can split this into 2 patches, one for adding output
selecting to 'manifest-lookup-package' and another for fixing
'gtk-im-modules'.

And to fix 'gtk-im-modules', we can pass the path of current
'gtk-query-modules-x.x' instead of the one in profile to the build
procedure, so users don't need to install gtk+:bin explicitly (but it
always pull in the dependency of latest gtk+:bin).  This may or may not
be the desired behavior...

Here is what I mean:

>From 54a9b4de63f87084984a1632800a039b155592f0 Mon Sep 17 00:00:00 2001
From: "huang_ying_cari...@163.com" 
Date: Sun, 5 Feb 2017 13:41:47 +0800
Subject: [PATCH] profiles: gtk-im-modules: Fix for gtk3.

Gtk+3 now have multiple outputs, so the gtk-query-immodules-3.0 should be find
in output "bin" instead of "out".

* guix/profiles.scm (gtk-im-modules): Pass the path of gtk-query-immodules-x.x
as 'query' argument to the 'build' procedure.
---
 guix/profiles.scm | 20 ++--
 1 file changed, 14 insertions(+), 6 deletions(-)

diff --git a/guix/profiles.scm b/guix/profiles.scm
index 495a9e2e7..cb93b8b67 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -739,7 +739,7 @@ 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)
+(define (build gtk gtk-version query)
   (let ((major (string-take gtk-version 1)))
 (with-imported-modules '((guix build utils)
  (guix build union)
@@ -756,8 +756,6 @@ for both major versions of GTK+."
 
   (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?
@@ -768,7 +766,7 @@ for both major versions of GTK+."
 
 ;; Generate a new immodules cache file.
 (mkdir-p (string-append #$output prefix))
-(let ((pipe(apply open-pipe* OPEN_READ query modules))
+(let ((pipe(apply open-pipe* OPEN_READ #$query modules))
   (outfile (string-append #$output prefix
   "/immodules-gtk" #$major ".cache")))
   (dynamic-wind
@@ -784,8 +782,18 @@ for both major versions of GTK+."
 
 ;; 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 gtk+
+  (build
+   gtk+ "3.0.0"
+   #~(string-append
+  #$gtk+:bin "/bin/gtk-query-immodules-3.0"))
+  #t)
+#$(if gtk+-2
+  (build
+   gtk+-2 "2.10.0"
+   #~(string-append
+  #$gtk+-2 "/bin/gtk-query-immodules-2.0"))
+  #t
   (if (or gtk+ gtk+-2)
   (gexp->derivation "gtk-im-modules" gexp
 #:local-build? #t
-- 
2.11.0


It seems works and doesn't pull in both version of gtk+ when only one is
installed, but I'm not sure :-)



Re: [PATCH] gnu: font-gnu-unifont: Call mkfontdir for pcf output

2017-02-04 Thread 宋文武
huang_ying_cari...@163.com writes:

> * gnu/packages/fonts.scm (font-gnu-unifont): call mkfontdir for pcf output.
>
> Signed-off-by: "Huang, Ying" 
> ---
>  gnu/packages/fonts.scm | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
> index 1f6d1d0c3..088a6bec9 100644
> --- a/gnu/packages/fonts.scm
> +++ b/gnu/packages/fonts.scm
> @@ -671,13 +671,15 @@ languages, plus Greek and Cyrillic.")
> (string-append "PCFDEST=" pcf)
> (string-append "CONSOLEDEST=" psf)
> "install")
> +  (system* "mkfontdir" pcf)

This will create 'share/fonts/misc/fonts.dir' in the 'pcf' output of
font-gnu-unifont package.  When multiple packages have this file,
collisions occour and then I guess it won't work as expected.  The right
place to create this file is the 'fonts-dir-file' hook in profiles.scm,
currently it does 'mkfontscale' and 'mkfontdir' only for truetype fonts
under 'share/fonts/truetype', which can be extended for each directory
under 'share/fonts'.  What do you think?




Re: [PATCH 5/7] gnu: Add gnome-disk-utility.

2017-02-04 Thread Maxim Cournoyer
Hi David,

David Craven  writes:

> * gnu/packages/gnome.scm (gnome-disk-utility): New variable.
> ---
>  gnu/packages/gnome.scm | 50 
> ++
>  1 file changed, 50 insertions(+)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 5fbd0c111..955ac610a 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -321,6 +321,56 @@ Gnome project.  It includes xml2po tool which makes it 
> easier to translate
>  and keep up to date translations of documentation.")
>  (license license:gpl2+))) ; xslt under lgpl
>  
> +(define-public gnome-disk-utility
> +  (package
> +(name "gnome-disk-utility")
> +(version "3.22.1")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append "mirror://gnome/sources/" name "/"
> +  (version-major+minor version) "/"
> +  name "-" version ".tar.xz"))
> +  (sha256
> +   (base32
> +"1hqynlcgwm72il2rdml98gcarz0alsgxs5xf6ww2x0czaj3s3953"
> +(build-system gnu-build-system)
> +(native-inputs
> + `(("glib:bin" ,glib "bin")
> +   ("intltool" ,intltool)
> +   ("pkg-config" ,pkg-config)
> +   ("docbook-xml" ,docbook-xml)
> +   ("docbook-xsl" ,docbook-xsl)
> +   ("libxslt" ,libxslt)))
> +(inputs
> + `(("glib" ,glib)
> +   ("appstream-glib" ,appstream-glib)
> +   ("gnome-settings-daemon" ,gnome-settings-daemon)
> +   ("gtk+" ,gtk+)
> +   ("libcanberra" ,libcanberra)
> +   ("libdvdread" ,libdvdread)
> +   ("libnotify" ,libnotify)
> +   ("libpwquality" ,libpwquality)
> +   ("libsecret" ,libsecret)
> +   ("udisks" ,udisks)))
> +(arguments
> + `(#:phases
> +   (modify-phases %standard-phases
> + (add-before 'configure 'fix-docbook
> +   (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "doc/man/Makefile.in"
> +   
> (("http://docbook.sourceforge.net/release/xsl/current/manpages/docbook.xsl;)
> +(string-append (assoc-ref inputs "docbook-xsl")
> +   "/xml/xsl/docbook-xsl-"
> +   ,(package-version docbook-xsl)
> +   "/manpages/docbook.xsl")))
> + (setenv "XML_CATALOG_FILES"
> + (string-append (assoc-ref inputs "docbook-xml")
> +"/xml/dtd/docbook/catalog.xml")))

I think it would be more elegant to pass the XML_CATALOG_FILES variable
by using the #;make-flags keyworded argument. XML_CATALOG_FILES can also
contain both the xml & xsl catalogs (the items are to be space
separated), which means no substitute* call are needed. See the commit
aef5055ff9 which does that.

> +(home-page "https://git.gnome.org/browse/gnome-disk-utility;)
> +(synopsis "Disk management utility for GNOME")
> +(description "Disk management utility for GNOME.")
> +(license license:gpl2)))

This should be gpl2+ (see files headers, such as:
https://git.gnome.org/browse/gnome-disk-utility/tree/src/disks/gduapplication.c)

> +
>  (define-public gcr
>(package
>  (name "gcr")

Thanks for this contribution!

Maxim


signature.asc
Description: PGP signature


[PATCH -v3] Fix gtk-im-modules for gtk+3

2017-02-04 Thread huang_ying_caritas
From: "Huang, Ying" 

Gtk+3 now have multiple outputs, so the gtk-query-immodules-3.0 should be find
in output "bin" instead of "out".

* guix/profiles.scm (manifest-lookup-package): New argument output to select
  package or store path.
  (gtk-im-modules): Use "bin" output to find gtk-query-immodules-3.0

The fix works, but appears hacky, because I haven't read much guix source
code, so I don't know the best solution.

Signed-off-by: "Huang, Ying" 
---
 guix/profiles.scm | 22 +++---
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git a/guix/profiles.scm b/guix/profiles.scm
index 495a9e2e7..3c32b86ba 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -476,10 +476,10 @@ replace it."
 (cons (gexp-input thing output) deps)))
   (manifest-entries manifest)))
 
-(define* (manifest-lookup-package manifest name #:optional version)
+(define* (manifest-lookup-package manifest name #:optional version output)
   "Return as a monadic value the first package or store path referenced by
-MANIFEST that is named NAME and optionally has the given VERSION prefix, or #f
-if not found."
+MANIFEST that is named NAME and optionally has the given VERSION prefix and
+OUTPUT, 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)
@@ -489,6 +489,9 @@ if not found."
(equal? name (package-name input))
(if version
(string-prefix? version (package-version input))
+   #t)
+   (if output
+   (member output (package-outputs input))
#t)))
 inputs))
 (define (find-among-store-items items)
@@ -499,6 +502,9 @@ if not found."
 (and (string=? name name*)
  (if version
  (string-prefix? version version*)
+ #t)
+ (if output
+ (string-suffix? (string-append "-" output) version*)
  #t
 items))
 
@@ -737,9 +743,10 @@ creates the GTK+ 'icon-theme.cache' file for each theme."
 for both major versions of GTK+."
 
   (mlet %store-monad ((gtk+   (manifest-lookup-package manifest "gtk+" "3"))
+  (gtk+-bin (manifest-lookup-package manifest "gtk+" "3" 
"bin"))
   (gtk+-2 (manifest-lookup-package manifest "gtk+" "2")))
 
-(define (build gtk gtk-version)
+(define (build gtk gtk-version gtk-bin out)
   (let ((major (string-take gtk-version 1)))
 (with-imported-modules '((guix build utils)
  (guix build union)
@@ -756,7 +763,8 @@ for both major versions of GTK+."
 
   (let* ((prefix  (string-append "/lib/gtk-" #$major ".0/"
  #$gtk-version))
- (query   (string-append #$gtk "/bin/gtk-query-immodules-"
+ (query   (string-append (ungexp gtk-bin out)
+ "/bin/gtk-query-immodules-"
  #$major ".0"))
  (destdir (string-append #$output prefix))
  (moddirs (cons (string-append #$gtk prefix "/immodules")
@@ -784,8 +792,8 @@ for both major versions of GTK+."
 
 ;; 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 gtk+   (build gtk+   "3.0.0"  gtk+-bin "bin")  #t)
+#$(if gtk+-2 (build gtk+-2 "2.10.0" gtk+-2 "out") #t
   (if (or gtk+ gtk+-2)
   (gexp->derivation "gtk-im-modules" gexp
 #:local-build? #t
-- 
2.11.1





[PATCH] gnu: font-gnu-unifont: Call mkfontdir for pcf output

2017-02-04 Thread huang_ying_caritas
* gnu/packages/fonts.scm (font-gnu-unifont): call mkfontdir for pcf output.

Signed-off-by: "Huang, Ying" 
---
 gnu/packages/fonts.scm | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm
index 1f6d1d0c3..088a6bec9 100644
--- a/gnu/packages/fonts.scm
+++ b/gnu/packages/fonts.scm
@@ -671,13 +671,15 @@ languages, plus Greek and Cyrillic.")
(string-append "PCFDEST=" pcf)
(string-append "CONSOLEDEST=" psf)
"install")
+  (system* "mkfontdir" pcf)
   ;; Move Texinfo file to the right place.
   (mkdir (string-append bin "/share/info"))
   (rename-file (string-append bin "/share/unifont/unifont.info.gz")
(string-append bin "/share/info/unifont.info.gz"))
   #t))
 (inputs
- `(("perl" ,perl))) ; for utilities
+ `(("perl" ,perl) ; for utilities
+   ("mkfontdir" ,mkfontdir)))
 (synopsis
  "Large bitmap font covering Unicode's Basic Multilingual Plane")
 (description
-- 
2.11.1





Re: postorius, v2

2017-02-04 Thread ng0
On 17-02-02 21:28:29, ng0 wrote:
> 
> Hartmut Goebel writes:
> 
> > Hi,
> >
> > I just found that I did not verify the inputs carefully enough. Sorry.
> > Here are my comments:
> >
> >   * python-defusedxml: okay
> >   * python-openid: okay
> >   * python-django-allauth:
> >   o openid, request-oauthlib requests ought to be propagated inputs
> >   o mock is native, okay, but only required for the python2 variant
> >   o Why is django a native input? See below for discussion
> >   * python-django-gravatar2, may be okay, see below for discussion.
> >   *  python-django-mailman3
> >   o All "inputs" except django need to be propagated inputs.
> >   o Regarding django: see below
> >   * * postorius: okay (this is an application, so no propagated inputs
> > are required)
> >
> >
> > And as we just learned about the licenses: python-django-mailman3 should
> > be gpl3+
> >
> >
> > I'm unsure about the correct handling of django in django-XXX. Can we
> > find rules for this to make future packager's life easier?
> >
> > Should django be a "normal" input or a "native" one? What does this
> > depend on?
> >
> 
> For now I will go with (input) and not (native-input). If that's
> not okay, we can still fix it afterwards?
> I will send the new patchseries tomorrow.
> 
> Thanks!

I will send the rebased series tomorrow afternoon. I will not be in the
position to answer very much next week, so if no one else replies to the
django issue, you could decide on what's the best approach practically.
Changes to individual packages can still be applied afterwards.

> > Clear is: django-XXX should not "propagate" django:
> >
> >   * django is a framework, django-XXX is an extension for this framework.
> >   * If some application is using django-XXX, I'd expect it to have
> > django specified as "input", too, since primary it is a django
> > application. Maybe even djangoXXX is an optional component
> >
> >
> > Just for the records:
> >
> >   * django-XXX should propagate other django extension it requires.
> >   o If some application is using django-XXX, if should not care
> > about other django extensions django-XXX requires. This is the
> > same like as it does not have to care about other python
> > packages django-XXX requires.
> 
> 
> -- 
> ng0 . https://www.inventati.org/patternsinthechaos/
> 

-- 
ng0 -- https://www.inventati.org/patternsinthechaos/



Re: [PATCH] gnu: new re2c package, version 0.16

2017-02-04 Thread ng0
On 17-02-04 17:43:23, Sergei Trofimovich wrote:
> Tested on x86_64-linux and i686-linux.
> 
> * gnu/local.mk: add re2c.scm to dist
> * gnu/packages/re2c.scm: new file

Cool! I had the same package somewhere, thanks for publishing yours :)
I think there's already a module this could go into. If there isn't (I
will check tomorrow), what about a more generic name which could hold a
class of applications? Just an idea.

I haven't run the code, these are just my initial remarks. Overall it
looks good, so the only criticism is really in the (description).
 
> Signed-off-by: Sergei Trofimovich 
> ---
>  gnu/local.mk  |  1 +
>  gnu/packages/re2c.scm | 47 +++
>  2 files changed, 48 insertions(+)
>  create mode 100644 gnu/packages/re2c.scm
> 
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 0948321c9..5c1634e02 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -318,6 +318,7 @@ GNU_SYSTEM_MODULES =  \
>%D%/packages/ratpoison.scm \
>%D%/packages/rdesktop.scm  \
>%D%/packages/rdf.scm   \
> +  %D%/packages/re2c.scm  \
>%D%/packages/readline.scm  \
>%D%/packages/regex.scm \
>%D%/packages/rrdtool.scm   \
> diff --git a/gnu/packages/re2c.scm b/gnu/packages/re2c.scm
> new file mode 100644
> index 0..7c5698a82
> --- /dev/null
> +++ b/gnu/packages/re2c.scm
> @@ -0,0 +1,47 @@
> +;;; GNU Guix --- Functional package management for GNU
> +;;; Copyright © 2017 Sergei Trofimovich 
> +;;;
> +;;; 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 re2c)
> +  #:use-module (guix licenses)
> +  #:use-module (guix packages)
> +  #:use-module (guix download)
> +  #:use-module (guix build-system gnu))
> +
> +(define-public re2c
> +  (package
> +(name "re2c")
> +(version "0.16")
> +(source (origin
> + (method url-fetch)
> + (uri (string-append "https://github.com/skvadrik/; name
> + "/releases/download/" version "/"
> + name "-" version ".tar.gz"))
> + (sha256
> +  (base32
> +   "114y0s4vmzip4hkf4cbz4yv8s498gzaylnphbzmwqhbn55j2bha8"
> +(build-system gnu-build-system)
> +(home-page "http://re2c.org/;)
> +(synopsis "Lexer generator for C/C++")
> +(description
> + "re2c generates minimalistic hard-coded state machine (as opposed to

I think the beginning should be "Re2c (...)" or "@code{re2c} (...)"

> +full-featured table-based lexers).  Flexible API allows generated code to
> +be wired into virtually any environment.  Instead of exposing traditional
> +yylex() style API, re2c exposes its internals.  Be sure to take a look at

I'm not sure, but I think the "yylex()" will have to be written as
@code{yylex()} or something similar.

> +examples, they cover a lot of real-world cases and shed some light on dark
> +corners of re2c API.")

I think "corners of the re2c API." would be correct?

> +(license public-domain)))
> -- 
> 2.11.1
> 
> 

-- 
ng0 -- https://www.inventati.org/patternsinthechaos/



[PATCH] gnu: new re2c package, version 0.16

2017-02-04 Thread Sergei Trofimovich
Tested on x86_64-linux and i686-linux.

* gnu/local.mk: add re2c.scm to dist
* gnu/packages/re2c.scm: new file

Signed-off-by: Sergei Trofimovich 
---
 gnu/local.mk  |  1 +
 gnu/packages/re2c.scm | 47 +++
 2 files changed, 48 insertions(+)
 create mode 100644 gnu/packages/re2c.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 0948321c9..5c1634e02 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -318,6 +318,7 @@ GNU_SYSTEM_MODULES =\
   %D%/packages/ratpoison.scm   \
   %D%/packages/rdesktop.scm\
   %D%/packages/rdf.scm \
+  %D%/packages/re2c.scm\
   %D%/packages/readline.scm\
   %D%/packages/regex.scm   \
   %D%/packages/rrdtool.scm \
diff --git a/gnu/packages/re2c.scm b/gnu/packages/re2c.scm
new file mode 100644
index 0..7c5698a82
--- /dev/null
+++ b/gnu/packages/re2c.scm
@@ -0,0 +1,47 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Sergei Trofimovich 
+;;;
+;;; 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 re2c)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu))
+
+(define-public re2c
+  (package
+(name "re2c")
+(version "0.16")
+(source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/skvadrik/; name
+ "/releases/download/" version "/"
+ name "-" version ".tar.gz"))
+ (sha256
+  (base32
+   "114y0s4vmzip4hkf4cbz4yv8s498gzaylnphbzmwqhbn55j2bha8"
+(build-system gnu-build-system)
+(home-page "http://re2c.org/;)
+(synopsis "Lexer generator for C/C++")
+(description
+ "re2c generates minimalistic hard-coded state machine (as opposed to
+full-featured table-based lexers).  Flexible API allows generated code to
+be wired into virtually any environment.  Instead of exposing traditional
+yylex() style API, re2c exposes its internals.  Be sure to take a look at
+examples, they cover a lot of real-world cases and shed some light on dark
+corners of re2c API.")
+(license public-domain)))
-- 
2.11.1




[PATCH] config-daemon.ac: detect host AR

2017-02-04 Thread Sergei Trofimovich
The problem is seen when we try to use explicit host:

./configure --prefix=/usr --localstatedir=/var/lib 
--host=x86_64-pc-linux-gnu
make V=1

Before the change:
ar cru libstore.a nix/libstore/libstore_a-gc.o
After the change:
x86_64-pc-linux-gnu-ar cru libstore.a

* config-daemon.ac: use AM_PROG_AR to detect host AR

Signed-off-by: Sergei Trofimovich 
---
 config-daemon.ac | 1 +
 1 file changed, 1 insertion(+)

diff --git a/config-daemon.ac b/config-daemon.ac
index 056c939e3..42b59819d 100644
--- a/config-daemon.ac
+++ b/config-daemon.ac
@@ -5,6 +5,7 @@ AC_MSG_RESULT([$guix_build_daemon])
 
 dnl C++ environment.  This macro must be used unconditionnaly.
 AC_PROG_CXX
+AM_PROG_AR
 AC_LANG([C++])
 
 if test "x$guix_build_daemon" = "xyes"; then
-- 
2.11.1




[PATCH] gnu: new re2c package, version 0.16

2017-02-04 Thread Sergei Trofimovich
Tested on x86_64-linux and i686-linux.

* gnu/local.mk: add re2c.scm to dist
* gnu/packages/re2c.scm: new file

Signed-off-by: Sergei Trofimovich 
---
 gnu/local.mk  |  1 +
 gnu/packages/re2c.scm | 47 +++
 2 files changed, 48 insertions(+)
 create mode 100644 gnu/packages/re2c.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 0948321c9..5c1634e02 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -318,6 +318,7 @@ GNU_SYSTEM_MODULES =\
   %D%/packages/ratpoison.scm   \
   %D%/packages/rdesktop.scm\
   %D%/packages/rdf.scm \
+  %D%/packages/re2c.scm\
   %D%/packages/readline.scm\
   %D%/packages/regex.scm   \
   %D%/packages/rrdtool.scm \
diff --git a/gnu/packages/re2c.scm b/gnu/packages/re2c.scm
new file mode 100644
index 0..7c5698a82
--- /dev/null
+++ b/gnu/packages/re2c.scm
@@ -0,0 +1,47 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Sergei Trofimovich 
+;;;
+;;; 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 re2c)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu))
+
+(define-public re2c
+  (package
+(name "re2c")
+(version "0.16")
+(source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/skvadrik/; name
+ "/releases/download/" version "/"
+ name "-" version ".tar.gz"))
+ (sha256
+  (base32
+   "114y0s4vmzip4hkf4cbz4yv8s498gzaylnphbzmwqhbn55j2bha8"
+(build-system gnu-build-system)
+(home-page "http://re2c.org/;)
+(synopsis "Lexer generator for C/C++")
+(description
+ "re2c generates minimalistic hard-coded state machine (as opposed to
+full-featured table-based lexers).  Flexible API allows generated code to
+be wired into virtually any environment.  Instead of exposing traditional
+yylex() style API, re2c exposes its internals.  Be sure to take a look at
+examples, they cover a lot of real-world cases and shed some light on dark
+corners of re2c API.")
+(license public-domain)))
-- 
2.11.1




[PATCH] config-daemon.ac: detect host AR

2017-02-04 Thread Sergei Trofimovich
The problem is seen when we try to use explicit host:

./configure --prefix=/usr --localstatedir=/var/lib 
--host=x86_64-pc-linux-gnu
make V=1

Before the change:
ar cru libstore.a nix/libstore/libstore_a-gc.o
After the change:
x86_64-pc-linux-gnu-ar cru libstore.a

* config-daemon.ac: use AM_PROG_AR to detect host AR

Signed-off-by: Sergei Trofimovich 
---
 config-daemon.ac | 1 +
 1 file changed, 1 insertion(+)

diff --git a/config-daemon.ac b/config-daemon.ac
index 056c939e3..42b59819d 100644
--- a/config-daemon.ac
+++ b/config-daemon.ac
@@ -5,6 +5,7 @@ AC_MSG_RESULT([$guix_build_daemon])
 
 dnl C++ environment.  This macro must be used unconditionnaly.
 AC_PROG_CXX
+AM_PROG_AR
 AC_LANG([C++])
 
 if test "x$guix_build_daemon" = "xyes"; then
-- 
2.11.1




[PATCH] gnu: new re2c package, version 0.16

2017-02-04 Thread Sergei Trofimovich
Tested on x86_64-linux and i686-linux.

* gnu/local.mk: add re2c.scm to dist
* gnu/packages/re2c.scm: new file

Signed-off-by: Sergei Trofimovich 
---
 gnu/local.mk  |  1 +
 gnu/packages/re2c.scm | 47 +++
 2 files changed, 48 insertions(+)
 create mode 100644 gnu/packages/re2c.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 0948321c9..5c1634e02 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -318,6 +318,7 @@ GNU_SYSTEM_MODULES =\
   %D%/packages/ratpoison.scm   \
   %D%/packages/rdesktop.scm\
   %D%/packages/rdf.scm \
+  %D%/packages/re2c.scm\
   %D%/packages/readline.scm\
   %D%/packages/regex.scm   \
   %D%/packages/rrdtool.scm \
diff --git a/gnu/packages/re2c.scm b/gnu/packages/re2c.scm
new file mode 100644
index 0..7c5698a82
--- /dev/null
+++ b/gnu/packages/re2c.scm
@@ -0,0 +1,47 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2017 Sergei Trofimovich 
+;;;
+;;; 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 re2c)
+  #:use-module (guix licenses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu))
+
+(define-public re2c
+  (package
+(name "re2c")
+(version "0.16")
+(source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/skvadrik/; name
+ "/releases/download/" version "/"
+ name "-" version ".tar.gz"))
+ (sha256
+  (base32
+   "114y0s4vmzip4hkf4cbz4yv8s498gzaylnphbzmwqhbn55j2bha8"
+(build-system gnu-build-system)
+(home-page "http://re2c.org/;)
+(synopsis "Lexer generator for C/C++")
+(description
+ "re2c generates minimalistic hard-coded state machine (as opposed to
+full-featured table-based lexers).  Flexible API allows generated code to
+be wired into virtually any environment.  Instead of exposing traditional
+yylex() style API, re2c exposes its internals.  Be sure to take a look at
+examples, they cover a lot of real-world cases and shed some light on dark
+corners of re2c API.")
+(license public-domain)))
-- 
2.11.1




[PATCH] config-daemon.ac: detect host AR

2017-02-04 Thread Sergei Trofimovich
The problem is seen when we try to use explicit host:

./configure --prefix=/usr --localstatedir=/var/lib 
--host=x86_64-pc-linux-gnu
make V=1

Before the change:
ar cru libstore.a nix/libstore/libstore_a-gc.o
After the change:
x86_64-pc-linux-gnu-ar cru libstore.a

* config-daemon.ac: use AM_PROG_AR to detect host AR

Signed-off-by: Sergei Trofimovich 
---
 config-daemon.ac | 1 +
 1 file changed, 1 insertion(+)

diff --git a/config-daemon.ac b/config-daemon.ac
index 056c939e3..42b59819d 100644
--- a/config-daemon.ac
+++ b/config-daemon.ac
@@ -5,6 +5,7 @@ AC_MSG_RESULT([$guix_build_daemon])
 
 dnl C++ environment.  This macro must be used unconditionnaly.
 AC_PROG_CXX
+AM_PROG_AR
 AC_LANG([C++])
 
 if test "x$guix_build_daemon" = "xyes"; then
-- 
2.11.1




Re: [PATCH -v2] Fix gtk-im-modules for Gtk+3

2017-02-04 Thread Huang, Ying
Hi, Danny,

Thanks for comments!

Danny Milosavljevic  writes:

> Hi,
>
> On Mon, 30 Jan 2017 11:06:49 +0800
> huang_ying_cari...@163.com wrote:
>
>> -(define* (manifest-lookup-package manifest name #:optional version)
>> +(define* (manifest-lookup-package manifest name #:optional version output)
>>"Return as a monadic value the first package or store path referenced by
>>  MANIFEST that is named NAME and optionally has the given VERSION prefix, or 
>> #f
>>  if not found."
>
> Please update the docstring too.

Sure.

>> + (if output
>> + (string-suffix? output version*)
>>   #t
>
> Should that include the separator between the parts? Otherwise it
> could maybe have false positives...

OK.

Best Regards,
Huang, Ying




Re: guix can't find (gnutls)

2017-02-04 Thread Alex Kost
Federico Beffa (2017-02-04 15:50 +0100) wrote:

> Hi,
>
> for some reason Guix can't find (gnutls) despite the module being
> installed and usable in Guile:
[...]
> Any suggestion?

Check that guix-daemon is also started with GUILE_LOAD_[COMPILED_]PATH
environment containing gnutls modules.

-- 
Alex



Re: [PATCH -v2] Fix gtk-im-modules for Gtk+3

2017-02-04 Thread Danny Milosavljevic
Hi,

On Mon, 30 Jan 2017 11:06:49 +0800
huang_ying_cari...@163.com wrote:

> -(define* (manifest-lookup-package manifest name #:optional version)
> +(define* (manifest-lookup-package manifest name #:optional version output)
>"Return as a monadic value the first package or store path referenced by
>  MANIFEST that is named NAME and optionally has the given VERSION prefix, or 
> #f
>  if not found."

Please update the docstring too.

> + (if output
> + (string-suffix? output version*)
>   #t

Should that include the separator between the parts? Otherwise it could maybe 
have false positives...



Re: Some searx requirements

2017-02-04 Thread ng0
On 17-02-04 16:34:57, contact@cryptolab.net wrote:
> These come from a branch so old I just had to start from from scratch again.
> While I was at it, I saw some of them were being added to a new python 
> branch, but I can't filter that out and rebase against a moving-target branch.
> 
> I'm trying to get searx to work again, 

Of course I meant to say: I'm trying to get searx to work. If we already
had it, that would be great ;)

>patches should work on their own, though I need a comment on gunicorn and the 
>one which adds pysocks as an input to some package. I never packaged a python 
>based server (? gunicorn is a server right?) and lately I haven't been messing 
>around with this branch so I don't know about the pysocks thing, except that 
>searx needs this for the tor capability.
> 
> 

-- 
ng0 -- https://www.inventati.org/patternsinthechaos/



[PATCH 5/9] gnu: Add python-pysocks.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/python.scm (python-pysocks): New variable.
---
 gnu/packages/python.scm | 24 
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index e8d1c5697..9c3a031e1 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -3970,6 +3970,30 @@ as the original project seems to have been abandoned 
circa 2007.")
 (define-public python2-socksipy-branch
   (package-with-python2 python-socksipy-branch))
 
+(define-public python-pysocks
+  (package
+(name "python-pysocks")
+(version "1.5.7")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "PySocks" version))
+   (sha256
+(base32
+ "124bydbcspzhkb6ynckvgqra1b79rh5mrq98kbyyd202n6a7c775"
+(build-system python-build-system)
+(arguments
+ `(#:tests? #f)) ; Tests are optional and use a prebuilt mocks
+(home-page "https://github.com/Anorov/PySocks;)
+(synopsis "Python SOCKS client module")
+(description
+ "Semi-actively maintained SocksiPy fork which contains many
+improvements to the original.")
+(license license:bsd-3)))
+
+(define-public python2-pysocks
+  (package-with-python2 python-pysocks))
+
 (define-public python-sqlalchemy
   (package
 (name "python-sqlalchemy")
-- 
2.11.0




[PATCH 6/9] gnu: Add python-pytest-httpbin-0.0.7.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/python.scm (python-pytest-httpbin-0.0.7): New variable.
---
 gnu/packages/python.scm | 23 +++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 9c3a031e1..7bdd371b5 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -1975,6 +1975,29 @@ thread running httpbin and provides your test with the 
URL in the fixture.")
 (define-public python2-pytest-httpbin
   (package-with-python2 python-pytest-httpbin))
 
+;; Some packages like "searx" need this old version.
+(define-public python-pytest-httpbin-0.0.7
+  (package
+(inherit python-pytest-httpbin)
+(version "0.0.7")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "pytest-httpbin" version))
+   (sha256
+(base32
+ "08ghq923dn33rllip3vap2p9fb680g0i96jdn5lcpfy8amq8mbq3"))
+
+(define-public python2-pytest-httpbin-0.0.7
+  (package
+(inherit (package-with-python2
+  (strip-python2-variant python-pytest-httpbin-0.0.7)))
+(inputs
+ `(("python2-flask" ,python2-flask)
+   ("python2-decorator" ,python2-decorator)
+   ("python2-httpbin" ,python2-httpbin)
+   ("python2-six" ,python2-six)
+
 (define-public python-scripttest
   (package
 (name "python-scripttest")
-- 
2.11.0




[PATCH 2/9] gnu: Add python-gunicorn.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/web.scm (python-gunicorn): New variable.
---
 gnu/packages/web.scm | 28 +++-
 1 file changed, 27 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 8cc80a2c4..1803f58e9 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Rene Saavedra 
 ;;; Copyright © 2016 Ben Woodcroft 
 ;;; Copyright © 2016 Clément Lassieur 
-;;; Copyright © 2016 ng0 
+;;; Copyright © 2016, 2017 ng0 
 ;;; Copyright © 2016 Arun Isaac 
 ;;; Copyright © 2016 Tobias Geerinckx-Rice 
 ;;; Copyright © 2016 Bake Timmons 
@@ -4018,3 +4018,29 @@ service for that request.  Requests are made using port 
numbers as identifiers
 and xinetd usually launches another daemon to handle the request.  It can be
 used to start services with both privileged and non-privileged port numbers.")
 (license (l:fsf-free "file://COPYRIGHT"
+
+(define-public python-gunicorn
+  (package
+(name "python-gunicorn")
+(version "19.6.0")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "gunicorn" version))
+   (sha256
+(base32
+ "065n5z91607q4l8wncqkz297cdcb60cz8wnyxy88wk4as4b6jgw1"
+(build-system python-build-system)
+(arguments
+ ;; XXX: Tests require older versions of pytest-cov and other packages.
+ `(#:tests? #f))
+(inputs
+ `(("python-sphinx" ,python-sphinx)))
+(home-page "http://gunicorn.org;)
+(synopsis "WSGI HTTP Server")
+(description
+ "Gunicorn ('Green Unicorn') is a WSGI HTTP Server.")
+(license l:expat)))
+
+(define-public python2-gunicorn
+  (package-with-python2 python-gunicorn))
-- 
2.11.0




[PATCH 3/9] gnu: Add python-httpbin.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/web.scm (python-httpbin): New variable.
---
 gnu/packages/web.scm | 34 ++
 1 file changed, 34 insertions(+)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 1803f58e9..244672c9d 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -4044,3 +4044,37 @@ used to start services with both privileged and 
non-privileged port numbers.")
 
 (define-public python2-gunicorn
   (package-with-python2 python-gunicorn))
+
+(define-public python-httpbin
+  (package
+(name "python-httpbin")
+(version "0.5.0")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "httpbin" version))
+   (sha256
+(base32
+ "1dc92lnk846hpilslrqnr63x55cxll4qx88gif8fm521gv9cbyvr"
+(build-system python-build-system)
+(inputs
+ `(("python-decorator" ,python-decorator)
+   ("python-flask" ,python-flask)
+   ("python-gevent" ,python-gevent)
+   ("python-greenlet" ,python-greenlet)
+   ("python-gunicorn" ,python-gunicorn)
+   ("python-itsdangerous" ,python-itsdangerous)
+   ("python-jinja2" ,python-jinja2)
+   ("python-markupsafe" ,python-markupsafe)
+   ("python-six" ,python-six)
+   ("python-werkzeug" ,python-werkzeug)))
+(home-page "https://httpbin.org/;)
+(synopsis "HTTP Request and Response Service")
+(description
+ "@code{httpbin} covers all kinds of HTTP scenarios for testing
+HTTP libraries.  Additional endpoints are being considered.
+All endpoint responses are JSON-encoded, it can be run as a WSGI App.")
+(license l:expat)))
+
+(define-public python2-httpbin
+  (package-with-python2 python-httpbin))
-- 
2.11.0




[PATCH 8/9] gnu: python-requests: Update to 2.12.4.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/python.scm (python-requests): Update to 2.12.4.
---
 gnu/packages/python.scm | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index a4179a67a..6ad40dfde 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -2492,19 +2492,20 @@ installed with a newer @code{pip} or with wheel's own 
command line utility.")
 (define-public python-requests
   (package
 (name "python-requests")
-(version "2.9.1")
+(version "2.12.4")
 (source (origin
  (method url-fetch)
  (uri (pypi-uri "requests" version))
  (sha256
   (base32
-   "0zsqrzlybf25xscgi7ja4s48y2abf9wvjkn47wh984qgs1fq2xy5"
+   "0d5fwxmw4ibynk3imph3n4n84m0n3ib1vj339fxhkqri0qd4767d"
 (build-system python-build-system)
 (native-inputs
  `(("python-py" ,python-py)
("python-pytest" ,python-pytest)
("python-pytest-cov" ,python-pytest-cov)
-   ("python-wheel" ,python-wheel)))
+   ("python-wheel" ,python-wheel)
+   ("python-pytest-httpbin-0.0.7" ,python-pytest-httpbin-0.0.7)))
 (home-page "http://python-requests.org/;)
 (synopsis "Python HTTP library")
 (description
-- 
2.11.0




[PATCH 4/9] gnu: Add python-pytest-httpbin.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/python.scm (python-pytest-httpbin): New variable.
---
 gnu/packages/python.scm | 29 +
 1 file changed, 29 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 5b4d2b09c..e8d1c5697 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -1946,6 +1946,35 @@ result back.")
 (define-public python2-pytest-xdist
   (package-with-python2 python-pytest-xdist))
 
+(define-public python-pytest-httpbin
+  (package
+(name "python-pytest-httpbin")
+(version "0.2.3")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "pytest-httpbin" version))
+   (sha256
+(base32
+ "1y0v2v7xpzpyd4djwp7ad8ifnlxp8r1y6dfbxg5ckzvllkgridn5"
+(build-system python-build-system)
+(propagated-inputs
+ `(("python-flask" ,python-flask)
+   ("python-decorator" ,python-decorator)
+   ("python-httpbin" ,python-httpbin)
+   ("python-pytest" ,python-pytest)
+   ("python-six" ,python-six)))
+(home-page "https://github.com/kevin1024/pytest-httpbin;)
+(synopsis "Test your HTTP library against a local copy of httpbin")
+(description
+ "Pytest-httpbin creates a pytest fixture that is dependency-injected
+into your tests.  It automatically starts up a HTTP server in a separate
+thread running httpbin and provides your test with the URL in the fixture.")
+(license license:expat)))
+
+(define-public python2-pytest-httpbin
+  (package-with-python2 python-pytest-httpbin))
+
 (define-public python-scripttest
   (package
 (name "python-scripttest")
-- 
2.11.0




Some searx requirements

2017-02-04 Thread contact . ng0
These come from a branch so old I just had to start from from scratch again.
While I was at it, I saw some of them were being added to a new python branch, 
but I can't filter that out and rebase against a moving-target branch.

I'm trying to get searx to work again, patches should work on their own, though 
I need a comment on gunicorn and the one which adds pysocks as an input to some 
package. I never packaged a python based server (? gunicorn is a server right?) 
and lately I haven't been messing around with this branch so I don't know about 
the pysocks thing, except that searx needs this for the tor capability.




[PATCH 7/9] gnu: python-pytest: Update to 3.0.5.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/python.scm (python-pytest): Update to 3.0.5.
[source]: Use "pypi-uri".
---
 gnu/packages/python.scm | 9 -
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 7bdd371b5..a4179a67a 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -1738,16 +1738,14 @@ code introspection, and logging.")
 (define-public python-pytest
   (package
 (name "python-pytest")
-(version "2.7.3")
+(version "3.0.5")
 (source
  (origin
(method url-fetch)
-   (uri (string-append
- "https://pypi.python.org/packages/source/p/pytest/pytest-;
- version ".tar.gz"))
+   (uri (pypi-uri "pytest" version))
(sha256
 (base32
- "1z4yi986f9n0p8qmzmn21m21m8j1x78hk3505f89baqm6pdw7afm"))
+ "1z9pj39w0r2gw5hsqndlmsqa80kgbrann5kfma8ww8zhaslkl02a"))
(modules '((guix build utils)))
(snippet
 ;; One of the tests involves the /usr directory, so it fails.
@@ -1758,6 +1756,7 @@ code introspection, and logging.")
 (propagated-inputs
  `(("python-py" ,python-py)))
 (native-inputs
+ ;; If we add python-hypothesis here, it creates an circular depedency.
  `(("python-nose" ,python-nose)
("python-mock" ,python-mock)))
 (home-page "http://pytest.org;)
-- 
2.11.0




[PATCH 9/9] gnu: python-requests: Add python-pysocks to propagated-inputs.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/python.scm (python-requests)[propagated-inputs]: Add 
python-pysocks.
---
 gnu/packages/python.scm | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 6ad40dfde..4d3b5e997 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -2506,6 +2506,8 @@ installed with a newer @code{pip} or with wheel's own 
command line utility.")
("python-pytest-cov" ,python-pytest-cov)
("python-wheel" ,python-wheel)
("python-pytest-httpbin-0.0.7" ,python-pytest-httpbin-0.0.7)))
+(propagated-inputs
+ `(("python-pysocks" ,python-pysocks)))
 (home-page "http://python-requests.org/;)
 (synopsis "Python HTTP library")
 (description
-- 
2.11.0




[PATCH 1/9] gnu: python-dateutils-2: Update to 2.5.3.

2017-02-04 Thread contact . ng0
From: ng0 

* gnu/packages/python.scm (python-dateutils-2): Update to 2.5.3.
---
 gnu/packages/python.scm | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index d53eea189..5b4d2b09c 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -23,7 +23,7 @@
 ;;; Copyright © 2016 Daniel Pimentel 
 ;;; Copyright © 2016 Sou Bunnbu 
 ;;; Copyright © 2016 Troy Sankey 
-;;; Copyright © 2016 ng0 
+;;; Copyright © 2016, 2017 ng0 
 ;;; Copyright © 2016 Dylan Jeffers 
 ;;; Copyright © 2016 David Craven 
 ;;; Copyright © 2016, 2017 Marius Bakke 
@@ -1063,14 +1063,14 @@ Python file, so it can be easily copied into your 
project.")
 (define-public python-dateutil-2
   (package
 (name "python-dateutil")
-(version "2.5.2")
+(version "2.5.3")
 (source
  (origin
   (method url-fetch)
   (uri (pypi-uri "python-dateutil" version))
   (sha256
(base32
-"0jrfpcgvgya6hs45dhrd9yiqgdgz9qp9aa07zsw8gqgn8zphff86"
+"1v9j9fmf8g911yg6k01xa2db6dx3wv73zkk7fncsj7vagjqgs20l"
 (build-system python-build-system)
 (propagated-inputs
  `(("python-six" ,python-six)))
-- 
2.11.0




Re: [PATCH] gnu: Add python-alabaster

2017-02-04 Thread Danny Milosavljevic
Hi,

okay, thanks anyway :)

Comparing them, the existing alabaster packagespec lists bsd-3 as license. But 
you list license:non-copyleft 
"https://github.com/bitprophet/alabaster/blob/master/LICENSE;. Is it actually 
different?

It seems  
specifies "Some rights reserved" in addition to mostly bsd-3. I wonder whether 
we should use your license reference instead...




CDN Mirrors for GNU Guix

2017-02-04 Thread Tom Li
Currently, GNU Guix is still in the early stage of development, and there is a 
great
lack of mirrors worldwide. For example. in my region, using GNU Guix is 
incredibly
slow, the speed is around 4 KiB/s and rendering it almost unusable.

Therefore, I created two CDN mirrors of https://mirror.hydra.gnu.org/, by using
CloudFlare and Amazon CloudFront's service. I know some have the concerns about
such type of centralized corporation-controlled service. Personally, I have 
done my
best to minimized the security risks (HTTPS only, untouched signatures) and set 
ip
up faithfully. Please use it according to your own judgement.

they are available at:

* https://guix-cloudflare.tomli.me/
* https://guix-amazon.tomli.me/

Since they are identical mirrors of Hydra, you just need to use 
`--substitute-urls=`
in order to use it.

I have no experience on setting up mirrors. I expected to have some problems
related to cache things for too long. Please report any problems.

Happy Hacking!
Tom.

guix can't find (gnutls)

2017-02-04 Thread Federico Beffa
Hi,

for some reason Guix can't find (gnutls) despite the module being
installed and usable in Guile:

--
$ echo $GUILE_LOAD_PATH
/home/beffa/.guix-profile/share/guile/site/2.0:/usr/local/share/guile/site/2.0:/usr/share/guile/site:/usr/share/guile/site/2.0
$ echo $GUILE_LOAD_COMPILED_PATH
/home/beffa/.guix-profile/lib/guile/2.0/site-ccache:/home/beffa/.guix-profile/share/guile/site/2.0
$ ls /home/beffa/.guix-profile/share/guile/site/2.0
cairo  cairo.scm  gnutls  gnutls.scm  json  json.go  json.scm
minikanren  minikanren.go  minikanren.scm  ssh
$ guix environment --ad-hoc ghc
substitute: warning: failed to install locale: Invalid argument
The following derivations will be built:
   /gnu/store/rgzwdcw04i0x56ywmg3glicvrn8xk7sd-profile.drv
   /gnu/store/rrakjd0ym7q2qcx1kr3xsp7y9kxf4sdv-fonts-dir.drv
   /gnu/store/r48q6lmxwlsxjq30h2mrv1sp30ahx0fw-ghc-package-cache.drv
   /gnu/store/p2ijlnhbbc0sj8v5qcd2vj5fxgm3qaim-ca-certificate-bundle.drv
   /gnu/store/50l8wnbkmw98svirfsjcamxfsdsiyjly-info-dir.drv
The following file will be downloaded:
   /gnu/store/h2zf6y4f52wmh4qa8lckssxzffnxjvrv-ghc-8.0.2
warning: failed to install locale: Invalid argument
Downloading 
https://mirror.hydra.gnu.org/nar/h2zf6y4f52wmh4qa8lckssxzffnxjvrv-ghc-8.0.2
(1011.3MiB installed)...
;;; Failed to autoload make-session in (gnutls):
;;; ERROR: missing interface for module (gnutls)
Backtrace:
In ice-9/boot-9.scm:
 160: 9 [catch #t # ...]
In unknown file:
   ?: 8 [apply-smob/1 #]
In ice-9/boot-9.scm:
  66: 7 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
 432: 6 [eval # #]
In ice-9/boot-9.scm:
2404: 5 [save-module-excursion #]
4056: 4 [#]
1727: 3 [%start-stack load-stack ...]
1732: 2 [#]
In unknown file:
   ?: 1 [primitive-load "/usr/local/bin/guix"]
In guix/ui.scm:
1228: 0 [run-guix-command substitute "--substitute" ...]

guix/ui.scm:1228:8: In procedure run-guix-command:
guix/ui.scm:1228:8: In procedure module-lookup: Unbound variable: make-session
guix environment: error: build failed: some substitutes for the
outputs of derivation
`/gnu/store/y8ih837wbsxlhsscj8yg37pa6ycarrp8-ghc-8.0.2.drv' failed
(usually happens due to networking issues); try `--fallback' to build
derivation from source
--

I can load the module in Guile without problems:
--
$ guile
GNU Guile 2.0.13
Copyright (C) 1995-2016 Free Software Foundation, Inc.

Guile comes with ABSOLUTELY NO WARRANTY; for details type `,show w'.
This program is free software, and you are welcome to redistribute it
under certain conditions; type `,show c' for details.

Enter `,help' for help.
scheme@(guile-user)> ,use (gnutls)
scheme@(guile-user)> make-session
$1 = #
scheme@(guile-user)>

--

Any suggestion?

Thanks,
Fede



Re: [PATCH] gnu: Update youtube-dl to 2017.02.01.

2017-02-04 Thread Hartmut Goebel
Am 04.02.2017 um 12:55 schrieb José Miguel Sánchez García:
>
>
Appliead as d1606983195a95963ea6cc0ca8c963b5df1e0b61
Thanks.

-- 
Regards
Hartmut Goebel

| Hartmut Goebel  | h.goe...@crazy-compilers.com   |
| www.crazy-compilers.com | compilers which you thought are impossible |




Re: [PATCH] gnu: Add python-rst2ansi

2017-02-04 Thread Hartmut Goebel
Am 04.02.2017 um 13:02 schrieb Frederick Muriithi:
> +   (uri (string-append
> + 
> "https://pypi.python.org/packages/3c/19/b29bc04524e7d1dbde13272fbb67e45a8eb2;
> + "4bb6d112cf10c46162b350d7/rst2ansi-"
> + version
> + ".tar.gz"))

Please use pypi-url here.

> +(native-inputs
> + `(("python-docutils" ,python-docutils)))

This must to be a propagated input. Please read the "Python apckages"
section in the manual about this.

> +(synopsis
> + "Python rst converter to ansi-decorated console output")

I suggest writing "reStructuredText" in the synopsis already.

What about: "Convert reStructuredText to ansi-decorated console output"?


> + "Python module dedicated to rendering RST (reStructuredText) documents 
> to
> + ansi-escaped strings suitable for display in a terminal")

"Python module for rendering …

-- 
Regards
Hartmut Goebel

| Hartmut Goebel  | h.goe...@crazy-compilers.com   |
| www.crazy-compilers.com | compilers which you thought are impossible |




substitute/regex (was [PATCH 2/2] gnu: Add python-lzo.)

2017-02-04 Thread Hartmut Goebel
Am 03.02.2017 um 17:36 schrieb ng0:
> I see. Okay, do you know which guix or guile module I do have to
> rtf to understand once and for all how the (substitute*) behaves?
> I'm doing this for too long to continue to run into problems with
> this.
>
> Just the (substitute*)? Or is there some complimentary literature
> I should consider (something in guile, grep, sed, …)?

I can't remember,

But it's two different things:

1) How to properly write strings in guile. For this I assume [1] is a
good guide (I did not read it yet). For regexp it comes down that you
need to escapw any backslash you need in the regex with another
backslash for passing guilse parser.

2) How to use substitute* properly. I'm not an expert on this, but
substitute* is defined in guix/build/utils.scm (grep is your friend :-)
Here I found a nice, but rarely used feature: Matching groups may be
assigned to variables like this:

  (substitute* file
 ((\"foo([a-z]+)bar(.*)$\" all letters end)
  (string-append \"baz\" letter end)))

Here ALL is bound to
the complete match, LETTERS is bound to the first sub-expression, and END is
bound to the last one.


[1]
https://www.gnu.org/software/guile/manual/html_node/Backslash-Escapes.html

-- 
Regards
Hartmut Goebel

| Hartmut Goebel  | h.goe...@crazy-compilers.com   |
| www.crazy-compilers.com | compilers which you thought are impossible |





Re: FOSDEM 2017 audio/video volunteers needed

2017-02-04 Thread Tobias Geerinckx-Rice
Guix,

On 03/02/17 14:49, Catonano wrote:
> On Tue, Jan 10, 2017 at 04:02:32AM +, Pjotr Prins wrote:
>> We need volunteers to man the FOSS setup that handles the camera
>> and mike.
> 
> Because of a hitch, Amirouche won't be there

Good news: I'll be at FOSDEM all Sunday as well (my original plans
having been made when the Guix devroom was still on Saturday, and them
proving hard to change).

I can help out wherever it's most needed.

Kind regards,

T G-R



signature.asc
Description: OpenPGP digital signature


[PATCH] gnu: Update youtube-dl to 2017.02.01.

2017-02-04 Thread José Miguel Sánchez García



--
José Miguel Sánchez GarcíaFrom 44bd8d238e6cc44fd8a7a1784787ee5214132097 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jos=C3=A9=20Miguel=20S=C3=A1nchez=20Garc=C3=ADa?=
 
Date: Sat, 4 Feb 2017 13:52:00 +0100
Subject: [PATCH] gnu: youtube-dl: Update to 2017.02.01

* gnu/packages/video.scm (youtube-dl): Update to 2017.02.01.
---
 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 ccc576063..8cbbb9d76 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -970,7 +970,7 @@ access to mpv's powerful playback capabilities.")
 (define-public youtube-dl
   (package
 (name "youtube-dl")
-(version "2017.01.29")
+(version "2017.02.01")
 (source (origin
   (method url-fetch)
   (uri (string-append "https://yt-dl.org/downloads/;
@@ -978,7 +978,7 @@ access to mpv's powerful playback capabilities.")
   version ".tar.gz"))
   (sha256
(base32
-"0visxc4rb6kw4hjcgcv5llis08z0syhian1m5hr1fdbz4w73hx9l"
+"1jkra0kgqg9ks76hwfcfsdaiknr9w8vavja0rc81ia644085axzz"
 (build-system python-build-system)
 (arguments
  ;; The problem here is that the directory for the man page and completion
-- 
2.11.0