Re: [PATCH 07/24] gnu: compression: Add snappy.

2016-08-17 Thread Leo Famulari
On Wed, Aug 17, 2016 at 09:20:42PM +0200, David Craven wrote:
> Oh, that's embarrassing. I must have forgotten to change the hash and
> guix cached the tarball. Is that possible?

If the hash is matched in the store, the URL is not used, so you won't
see an incorrect URL fail to match the hash.

This is a common cause of buggy patches.

I wonder, are there any drawbacks of making the linter check that the
URL provides the data named by the hash?



Re: [PATCH 17/24] gnu: kwidgetsaddons: Fix test failure.

2016-08-17 Thread David Craven
I'll withhold this patch pending further investigation.

Thank you!



Re: [PATCH 16/24] gnu: gstreamer: Add qt-gstreamer.

2016-08-17 Thread David Craven
I'll withhold this patch for now pending further investigation...

Thank you!



Re: [PATCH] gnu: gnome-maps: Update to 3.18.3.

2016-08-17 Thread ng0
Alex Griffin  writes:

> This patch updates GNOME Maps to 3.18.3, which changes the map tile
> provider to Mapbox after Mapquest revoked GNOME's access.
>
> I tried updating straight to 3.20.2 (the latest), but there were some
> issues I wasn't willing to investigate.

https://mail.gnome.org/archives/distributor-list/2016-July/msg0.html

Earlier versions are also updated, but version bumping the application
also makes sense.

> -- 
> Alex Griffin
> From 14ce2c74c39c4ec26353e28b1dcf2e89b74905ca Mon Sep 17 00:00:00 2001
> From: Alex Griffin 
> Date: Wed, 17 Aug 2016 16:37:58 -0500
> Subject: [PATCH 1/2] gnu: gnome-maps: Update to 3.18.3.
>
> * gnu/packages/geo.scm (gnome-maps): Update to 3.18.3.
> ---
>  gnu/packages/geo.scm | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
> index 1ef5eeb..86828e7 100644
> --- a/gnu/packages/geo.scm
> +++ b/gnu/packages/geo.scm
> @@ -1,5 +1,6 @@
>  ;;; GNU Guix --- Functional package management for GNU
>  ;;; Copyright © 2016 Leo Famulari 
> +;;; Copyright © 2016 Alex Griffin 
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -35,7 +36,7 @@
>  (define-public gnome-maps
>(package
>  (name "gnome-maps")
> -(version "3.18.2")
> +(version "3.18.3")
>  (source (origin
>(method url-fetch)
>(uri (string-append "mirror://gnome/sources/" name "/"
> @@ -43,7 +44,7 @@
>name "-" version ".tar.xz"))
>(sha256
> (base32
> -"0y4jmh5hwskh2mnladh9hxp9k8as7crm8wwwiifvxsjjj9az2gv9"
> +"1vdnr2wmhqhql2gxd5n1ijwk88qhim14izbkczncg35846hfsr5i"
>  (build-system glib-or-gtk-build-system)
>  (arguments
>   `(#:configure-flags ; Ensure that geoclue is referred to by output.
> -- 
> 2.9.3
>

-- 
ng0
For non-prism friendly talk find me on http://www.psyced.org



Re: [PATCH] gnu: libpsl: Update to 0.14.0.

2016-08-17 Thread Tobias Geerinckx-Rice
Andreas,

On 04/08/16 10:09, Andreas Enge wrote:
> I think you can push such trivial changes without asking on the list

Oh, I absolutely agree, but then HACKING reads:

  Non-trivial patches should always be posted to
  guix-devel@gnu.org (trivial patches include fixing typos, etc.)

Choosing typos as an example seemed oddly specific and deliberate to me,
not on the same level as even minor revision bumps.

Glad to hear I was being overly cautious :-)

Kind regards,

T G-R



[PATCH] gnu: gnome-maps: Update to 3.18.3.

2016-08-17 Thread Alex Griffin
This patch updates GNOME Maps to 3.18.3, which changes the map tile
provider to Mapbox after Mapquest revoked GNOME's access.

I tried updating straight to 3.20.2 (the latest), but there were some
issues I wasn't willing to investigate.
-- 
Alex Griffin
From 14ce2c74c39c4ec26353e28b1dcf2e89b74905ca Mon Sep 17 00:00:00 2001
From: Alex Griffin 
Date: Wed, 17 Aug 2016 16:37:58 -0500
Subject: [PATCH 1/2] gnu: gnome-maps: Update to 3.18.3.

* gnu/packages/geo.scm (gnome-maps): Update to 3.18.3.
---
 gnu/packages/geo.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 1ef5eeb..86828e7 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2016 Leo Famulari 
+;;; Copyright © 2016 Alex Griffin 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -35,7 +36,7 @@
 (define-public gnome-maps
   (package
 (name "gnome-maps")
-(version "3.18.2")
+(version "3.18.3")
 (source (origin
   (method url-fetch)
   (uri (string-append "mirror://gnome/sources/" name "/"
@@ -43,7 +44,7 @@
   name "-" version ".tar.xz"))
   (sha256
(base32
-"0y4jmh5hwskh2mnladh9hxp9k8as7crm8wwwiifvxsjjj9az2gv9"
+"1vdnr2wmhqhql2gxd5n1ijwk88qhim14izbkczncg35846hfsr5i"
 (build-system glib-or-gtk-build-system)
 (arguments
  `(#:configure-flags ; Ensure that geoclue is referred to by output.
-- 
2.9.3



Re: [PATCH] gnu: Add interrobang.

2016-08-17 Thread ng0
ng0  writes:

> ng0  writes:
>
>> This patch adds interrobang. It should function, but I don't have zsh
>> configured here in GuixSD, so my old config does not work here, and the
>> system default is up to testing by other people.
>
> To explain this noisy comment:
> I have a special interrobang-zsh-completion script which I prefer to the
> default, bash. I ran interrobang but I still need to figure out why no
> application launches.
> I would prefer additional input.

It works and is functional. I just had to alter the "set shell" in the
config.

>> From 91cc74e39a7ca001d24610f595fe6ce2cf38af0b Mon Sep 17 00:00:00 2001
>> From: ng0 
>> Date: Wed, 17 Aug 2016 20:18:44 +
>> Subject: [PATCH] gnu: Add interrobang.
>>
>> * gnu/packages/admin.scm (interrobang): New variable.
>> ---
>>  gnu/packages/admin.scm | 33 +
>>  1 file changed, 33 insertions(+)
>>
>> diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
>> index 09a883c..4cc3757 100644
>> --- a/gnu/packages/admin.scm
>> +++ b/gnu/packages/admin.scm
>> @@ -1734,3 +1734,36 @@ highly portable.  Great for heterogenous networks.")
>>  the status of your battery in the system tray.")
>>  (home-page "https://github.com/valr/cbatticon;)
>>  (license license:gpl2+)))
>> +
>> +(define-public interrobang
>> +  (let ((revision "1")
>> +(commit "896543735e1c99144765fdbd7b6e6b5afbd8b881"))
>> +(package
>> +  (name "interrobang")
>> +  (version (string-append "0.0.0." revision "." (string-take commit 8)))
>> +  (source (origin
>> +(method git-fetch)
>> +(uri (git-reference
>> +  (url "git://github.com/TrilbyWhite/interrobang")
>> +  (commit commit)))
>> +(file-name (string-append name "-" version "-checkout"))
>> +(sha256
>> + (base32
>> +  "1n13m70p1hfba5dy3i8hfclbr6k9q3d9dai3dg4jvhdhmxcpjzdf"
>> +  (build-system gnu-build-system)
>> +  (arguments
>> +   `(#:tests? #f ; no tests
>> + #:phases
>> + (modify-phases %standard-phases
>> +   (delete 'configure)) ; no configure script
>> + #:make-flags (list (string-append "PREFIX="
>> +   (assoc-ref %outputs "out")
>> +  (inputs
>> +   `(("libx11" ,libx11)))
>> +  (native-inputs
>> +   `(("pkg-config" ,pkg-config)))
>> +  (synopsis "Tiny launcher menu packing a big bang syntax")
>> +  (description "Interrobang is a scriptable launcher menu with a 
>> customizable
>> +shortcut syntax and completion options.")
>> +  (home-page "https://github.com/TrilbyWhite/interrobang;)
>> +  (license license:gpl3
>> -- 
>> 2.9.3
>>
>>
>> -- 
>> ng0
>> For non-prism friendly talk find me on http://www.psyced.org
>
> -- 
> ng0
> For non-prism friendly talk find me on http://www.psyced.org
>

-- 
ng0
For non-prism friendly talk find me on http://www.psyced.org



Re: [PATCH] gnu: Add interrobang.

2016-08-17 Thread ng0
ng0  writes:

> This patch adds interrobang. It should function, but I don't have zsh
> configured here in GuixSD, so my old config does not work here, and the
> system default is up to testing by other people.

To explain this noisy comment:
I have a special interrobang-zsh-completion script which I prefer to the
default, bash. I ran interrobang but I still need to figure out why no
application launches.
I would prefer additional input.

> From 91cc74e39a7ca001d24610f595fe6ce2cf38af0b Mon Sep 17 00:00:00 2001
> From: ng0 
> Date: Wed, 17 Aug 2016 20:18:44 +
> Subject: [PATCH] gnu: Add interrobang.
>
> * gnu/packages/admin.scm (interrobang): New variable.
> ---
>  gnu/packages/admin.scm | 33 +
>  1 file changed, 33 insertions(+)
>
> diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
> index 09a883c..4cc3757 100644
> --- a/gnu/packages/admin.scm
> +++ b/gnu/packages/admin.scm
> @@ -1734,3 +1734,36 @@ highly portable.  Great for heterogenous networks.")
>  the status of your battery in the system tray.")
>  (home-page "https://github.com/valr/cbatticon;)
>  (license license:gpl2+)))
> +
> +(define-public interrobang
> +  (let ((revision "1")
> +(commit "896543735e1c99144765fdbd7b6e6b5afbd8b881"))
> +(package
> +  (name "interrobang")
> +  (version (string-append "0.0.0." revision "." (string-take commit 8)))
> +  (source (origin
> +(method git-fetch)
> +(uri (git-reference
> +  (url "git://github.com/TrilbyWhite/interrobang")
> +  (commit commit)))
> +(file-name (string-append name "-" version "-checkout"))
> +(sha256
> + (base32
> +  "1n13m70p1hfba5dy3i8hfclbr6k9q3d9dai3dg4jvhdhmxcpjzdf"
> +  (build-system gnu-build-system)
> +  (arguments
> +   `(#:tests? #f ; no tests
> + #:phases
> + (modify-phases %standard-phases
> +   (delete 'configure)) ; no configure script
> + #:make-flags (list (string-append "PREFIX="
> +   (assoc-ref %outputs "out")
> +  (inputs
> +   `(("libx11" ,libx11)))
> +  (native-inputs
> +   `(("pkg-config" ,pkg-config)))
> +  (synopsis "Tiny launcher menu packing a big bang syntax")
> +  (description "Interrobang is a scriptable launcher menu with a 
> customizable
> +shortcut syntax and completion options.")
> +  (home-page "https://github.com/TrilbyWhite/interrobang;)
> +  (license license:gpl3
> -- 
> 2.9.3
>
>
> -- 
> ng0
> For non-prism friendly talk find me on http://www.psyced.org

-- 
ng0
For non-prism friendly talk find me on http://www.psyced.org



Re: Hardening

2016-08-17 Thread ng0
Alex Vong  writes:

> Hi,
>
> Wow, this was long time ago. I've forgot this completely.
>
> Ricardo Wurmus  writes:
>
>> Leo Famulari  writes:
>>
>>> On Wed, Dec 30, 2015 at 05:06:30PM +0100, Ludovic Courtès wrote:
 Alex Vong  skribis:
 > Yes, I grep for `fstack-protector-strong' in the guix code base and no
 > matches are found. It appears no packages are setting this flag
 > currently. I think this flag (perhaps also a couple others) should be
 > set by default since they help protect against buffer overflow
 > .
 
 I definitely agree, that’s something I’ve been wanting to try out.
 
 The question is more how.  Do we change the default #:configure-flags
 for ‘gnu-build-system’ to something like:
 
   '("CPPFLAGS=-D_FORTIFY_SOURCE=2"
 "CFLAGS=-O2 -g -fstack-protector-strong")
 
 ?
 
 That sounds like a good starting point, but I expect that (1) one third
 of the packages will fail to build, and (2) another third of the
 packages will not get these flags, for instance because they pass their
 own #:configure-flags.
 
 IOW, it will take a whole rebuild to find out exactly what’s going on
 and to fix any issues.
 
 Would you like to start working on it?  Then we could create a branch,
 have Hydra build it, and incrementally fix things.
>>>
>>> We should pick this project back up. I was suprised to find we haven't
>>> done anything like this after reading this recent blog post about Nix's
>>> hardening effort:
>>>
>>> https://blog.mayflower.de/5800-Hardening-Compiler-Flags-for-NixOS.html?utm_source=twitterfeed_medium=twitter
>>
>> Are the above flags the only flags we’d like to play with?  There’s no
>> harm in letting hydra rebuild the world with these flags on a separate
>> branch — provided that all build nodes are usable.
>>
> There are indeed additional flags (for debian's hardening).
>
>
> Here is the complete output (from the testing distribution):
>
> alexvong1995@debian:~$ DEB_BUILD_MAINT_OPTIONS=hardening=+all dpkg-buildflags
> CFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
> -fstack-protector-strong -Wformat -Werror=format-security
> CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2
> CXXFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
> -fstack-protector-strong -Wformat -Werror=format-security
> FCFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
> -fstack-protector-strong
> FFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
> -fstack-protector-strong
> GCJFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
> -fstack-protector-strong
> LDFLAGS=-fPIE -pie -Wl,-z,relro -Wl,-z,now
> OBJCFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
> -fstack-protector-strong -Wformat -Werror=format-security
> OBJCXXFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
> -fstack-protector-strong -Wformat -Werror=format-security
>
>
> The `-fdebug-prefix-map' flag seems to be using the current working
> directory.
>
>> ~~ Ricardo
>
> Cheers,
> Alex
>

I think there's even more, I can add to this thread when I have access
to my hardened vm systems again.

Good to see that this is being picked up again.
-- 
ng0
For non-prism friendly talk find me on http://www.psyced.org



[PATCH] gnu: Add interrobang.

2016-08-17 Thread ng0
This patch adds interrobang. It should function, but I don't have zsh
configured here in GuixSD, so my old config does not work here, and the
system default is up to testing by other people.

>From 91cc74e39a7ca001d24610f595fe6ce2cf38af0b Mon Sep 17 00:00:00 2001
From: ng0 
Date: Wed, 17 Aug 2016 20:18:44 +
Subject: [PATCH] gnu: Add interrobang.

* gnu/packages/admin.scm (interrobang): New variable.
---
 gnu/packages/admin.scm | 33 +
 1 file changed, 33 insertions(+)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 09a883c..4cc3757 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1734,3 +1734,36 @@ highly portable.  Great for heterogenous networks.")
 the status of your battery in the system tray.")
 (home-page "https://github.com/valr/cbatticon;)
 (license license:gpl2+)))
+
+(define-public interrobang
+  (let ((revision "1")
+(commit "896543735e1c99144765fdbd7b6e6b5afbd8b881"))
+(package
+  (name "interrobang")
+  (version (string-append "0.0.0." revision "." (string-take commit 8)))
+  (source (origin
+(method git-fetch)
+(uri (git-reference
+  (url "git://github.com/TrilbyWhite/interrobang")
+  (commit commit)))
+(file-name (string-append name "-" version "-checkout"))
+(sha256
+ (base32
+  "1n13m70p1hfba5dy3i8hfclbr6k9q3d9dai3dg4jvhdhmxcpjzdf"
+  (build-system gnu-build-system)
+  (arguments
+   `(#:tests? #f ; no tests
+ #:phases
+ (modify-phases %standard-phases
+   (delete 'configure)) ; no configure script
+ #:make-flags (list (string-append "PREFIX="
+   (assoc-ref %outputs "out")
+  (inputs
+   `(("libx11" ,libx11)))
+  (native-inputs
+   `(("pkg-config" ,pkg-config)))
+  (synopsis "Tiny launcher menu packing a big bang syntax")
+  (description "Interrobang is a scriptable launcher menu with a customizable
+shortcut syntax and completion options.")
+  (home-page "https://github.com/TrilbyWhite/interrobang;)
+  (license license:gpl3
-- 
2.9.3


-- 
ng0
For non-prism friendly talk find me on http://www.psyced.org


Re: [PATCH 07/24] gnu: compression: Add snappy.

2016-08-17 Thread David Craven
>> I don't believe you :-)
>
> Oh, that's embarrassing. I must have forgotten to change the hash and
> guix cached the tarball. Is that possible?

Sorry about that. I make many stupid mistakes, but I'm not a liar... ;-)



Re: [PATCH 07/24] gnu: compression: Add snappy.

2016-08-17 Thread David Craven
> I don't believe you :-)

Oh, that's embarrassing. I must have forgotten to change the hash and
guix cached the tarball. Is that possible?



Re: [PATCH 07/24] gnu: compression: Add snappy.

2016-08-17 Thread Alex Kost
David Craven (2016-08-17 11:30 +0300) wrote:

>> Also there is a real release that shouldn't require autoreconf phase:
>> 
>> Did you try using it?
>
> Just did, and requires running autoreconf too...

I don't believe you :-)

I've just tried, and autoreconf is not needed for this tarball:

(define-public snappy
  (package
(name "snappy")
(version "1.1.3")
(source (origin
  (method url-fetch)
  (uri (string-append
"https://github.com/google/snappy/releases/download/;
version "/" name "-" version ".tar.gz"))
  (sha256
   (base32
"1wzf8yif5ym2gj52db6v5m1pxnmn258i38x7llk9x346y2nq47ig"
(build-system gnu-build-system)
(home-page "https://github.com/google/snappy;)
(synopsis "Fast compressor/decompressor")
(description "Snappy is a compression/decompression library. It does not
aim for maximum compression, or compatibility with any other compression 
library;
instead, it aims for very high speeds and reasonable compression. For instance,
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)))

-- 
Alex



Re: [PATCH v3] gnu: Add python-lirc, python2-lirc.

2016-08-17 Thread Alex Kost
Leo Famulari (2016-08-17 00:41 +0300) wrote:

> On Tue, Aug 16, 2016 at 11:28:09PM +0200, Danny Milosavljevic wrote:
>> gnu: Add python-lirc, python2-lirc.
>> 
>> * gnu/packages/lirc.scm (python-lirc, python2-lirc): New variables.
>
> Thanks, applied as 231313f76!

Ahem, you both are fast: I was commenting on the first patch, and
suddenly found that the third revision is already pushed :-)
Anyway, some comments:

Danny Milosavljevic (2016-08-17 00:28 +0300) wrote:

> gnu: Add python-lirc, python2-lirc.
>
> * gnu/packages/lirc.scm (python-lirc, python2-lirc): New variables.
> ---
>  gnu/packages/lirc.scm | 51 
> +++
>  1 file changed, 51 insertions(+)
>
>
> diff --git a/gnu/packages/lirc.scm b/gnu/packages/lirc.scm
> index e3f60e3..d055bc4 100644
> --- a/gnu/packages/lirc.scm
> +++ b/gnu/packages/lirc.scm
> @@ -19,7 +19,9 @@
>  (define-module (gnu packages lirc)
>#: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 ((guix licenses) #:prefix license:)
>#:use-module (gnu packages)
>#:use-module (gnu packages pkg-config)
> @@ -85,3 +87,52 @@ user space applications allow you to control your computer 
> with a remote
>  control: you can send X events to applications, start programs and much more
>  on just one button press.")
>  (license license:gpl2+)))

Indentation of 'python-lirc' is not perfect:

> +(define-public python-lirc
> + (let ((commit "4091fe918f3eed2513dad008828565cace408d2f")
^^
should be moved one char to the right:

> +   (revision "1"))
> +  (package
 ^^^
Likewise (you did it right in 'python2-lirc' package):

(define-public python-lirc
  (let ((commit "4091fe918f3eed2513dad008828565cace408d2f")
(revision "1"))
(package ...)))

> +(name "python-lirc")
> +(version (string-append "1.2.1-" revision "." (string-take commit 7)))
> +(source
> +  (origin
> +(method git-fetch)
> +(uri (git-reference
> +   (url "https://github.com/tompreston/python-lirc.git;)
> +   (commit commit)))
> +(sha256
> +  (base32
> +"0cm47s5pvijfs3v2k7hmpxv3mvp4n5la0ihnsczk5ym3iq166jil"))
> +(file-name (string-append name "-" version ".tar.gz"

This is not a tarball, but a directory (git checkout) so it is a strange
name for it.  We usually name such things like this:

  (file-name (string-append name "-" version "-checkout"))


> +(build-system python-build-system)
> +(inputs
> + `(("lirc" ,lirc)))
> +(native-inputs
> + `(("python-cython" ,python-cython)))
> +(arguments
> + `(#:tests? #f ; the only tests that exist are human-interactive
> +   #:phases
> +(modify-phases %standard-phases
  ^^

this (modify-phases ...) should be shifted one char left

> +  (add-before 'build 'build-from-cython-files
> +(lambda _
> +  (zero? (system* "make" "py3")))
> +(home-page "https://github.com/tompreston/python-lirc;)
> +(synopsis "Python bindings for LIRC.")
> +(description "@code{lirc} is a Python module which provides LIRC 
> bindings.")

I don't think the description should begin with "@code{lirc}" as it is
not LIRC itself but a python library for LIRC.

> +(license license:gpl3)
> +(properties `((python2-variant . ,(delay python2-lirc)))
> +
> +(define-public python2-lirc
> +  (let ((base (package-with-python2 (strip-python2-variant python-lirc
> +(package
> +  (inherit base)
> +  (arguments
> +   `(#:tests? #f ; the only tests there are are human-interactive
> + #:phases
> +  (modify-phases %standard-phases
^^
the same as above

> +(add-before 'build 'build-from-cython-files
> +  (lambda _
> +(zero? (system* "make" "py2")))
> +  (native-inputs
> +   `(("python2-setuptools" ,python2-setuptools)
> + ("python2-cython" ,python2-cython))

-- 
Alex



Re: [PATCH 10/24] gnu: networkmanager-qt: Propagate network-manager.

2016-08-17 Thread David Craven
> Is it possible to avoid propagating?

Quoting the manual on the section on propagated-inputs:

> For example this is necessary when a C/C++ library needs headers of another 
> library to compile, ...

So the fact that the headers of networkmanager-qt include headers from
network-manager, means that a library that uses networkmanager-qt also
needs network-manager's header files. After compilation if there
aren't any references to network-manager it won't be included in the
RUNPATH.

> or when a pkg-config file refers to another one via its Requires field.

I think the equivalent for cmake packages is a find_dependency call
inside of /lib/cmake. In this case a library that links agains
networkmanager-qt doesn't need to link agains network-manager.

> find_dependency(Qt5Core 5.4.0)

So to build hawaii-shell that depends on networkmanager-qt I either
have to add network-manager as an input or propagate it in
networkmanager-qt. I don't think that propagating the input hurts:

guix gc --references $(guix build hawaii-shell) ~/guix
/gnu/store/1i3xmm18dw9kq6wi46f6sj9nxy9pckjl-alsa-lib-1.0.27.1
/gnu/store/3a3qhlr9ssczrkjr10jllb01mbdgsijp-pulseaudio-8.0
/gnu/store/8advwv6y780wf8l4inmrm4vzrqd56z5b-libxkbcommon-0.6.1
/gnu/store/9jfrsgr6jw9hzqj81p3vn632m79x5gla-wayland-1.11.0
/gnu/store/9nifwk709wajpyfwa0jzaa3p6mf10vxs-gcc-4.9.3-lib
/gnu/store/b8c1aaw3nghvvw6w6hc7r701rg40f5qw-qtdeclarative-5.7.0
/gnu/store/bski0qimql11q9b86h8jhhyksk1z52vp-greenisland-0.8.90
/gnu/store/hnbnz18xkkq83ckk2ph8qgbc8z4qzm6f-qtbase-5.7.0
/gnu/store/ig30hr17jq27b8wnimf9lnksgk6q4k7f-hawaii-shell-0.7.1
/gnu/store/l1s4cw9g58hmcpd2qgbckfl228143qzx-glib-2.48.0
/gnu/store/l878cqim3hl8mj7iz5a2v3mv1zn81qyr-solid-5.24.0
/gnu/store/lyisag3k6wx0pmrd0al0ipgcqaf0hpwi-qtwayland-5.7.0
/gnu/store/m4xna3zq2il5an61wxbmfv82ndvz70f6-linux-pam-1.2.1
/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23
/gnu/store/n3jss47pj11zq1viyibfcg0jf0ag519s-mesa-12.0.0
/gnu/store/qh2q5h2b81562ji5i9kb4nhg74gzk7n9-libhawaii-0.8.0
/gnu/store/qz5d1c538qigsws9k8hlys2hvhvbfrpc-networkmanager-qt-5.24.0
/gnu/store/r129q7kkd28xrp0slw2dqgmbs608gcgv-libqtxdg-1.2.0
/gnu/store/ykzwykkvr2c80rw4l1qh3mvfdkl7jibi-bash-4.3.42
/gnu/store/zvg8qyjsz20vjd170h4ilk7pnv7bqmm6-eudev-3.1.5

WDYT?



Re: [PATCH 10/24] gnu: networkmanager-qt: Propagate network-manager.

2016-08-17 Thread Alex Kost
David Craven (2016-08-17 12:34 +0300) wrote:

>> Also there should be a reason for propagating (probably written as a
>> comment).  Ideally it should be avoided.
>
> I added comments:
>
> (propagated-inputs
>   ; Headers contain #include  and
>   ;#include 
>   `(("network-manager" ,network-manager)))
>
> (propagated-inputs
>  ; Headers contain #include 
>  `(("modem-manager", modem-manager)))

These comments should begin with ";;", not with ";".  Sorry, but I still
don't understand the reason.  What exactly does not work when these are
simple inputs?  Is it possible to avoid propagating?

-- 
Alex



Re: [PATCH 08/24] gnu: xorg: Add lndir.

2016-08-17 Thread Alex Kost
David Craven (2016-08-17 11:35 +0300) wrote:

>> The patch looks good to me, except the indentation of this
>>
>> (string-append ...).  I usually write 'source' fields like this:
>>
>>(source (origin
>>  (method url-fetch)
>>  (uri (string-append "mirror://xorg/individual/util/lndir-"
>>  version ".tar.bz2"))
>>  (sha256
>>   (base32
>>"0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"
>>
>> But this is not a big deal, of course :-)
>
> I prefer
> (uri (string-append
> "mirror://xorg/individual/util/"
> "lndir-" version ".tar.bz2"))

OK, but then it should be (note the indentation of 'string-append'):

  (uri (string-append
"mirror://xorg/individual/util/"
"lndir-" version ".tar.bz2"))

> But in this case I thought that keeping consistent with how it was
> done in the xorg.scm file was more important than my preference. What
> do you think?

Many (probably most) packages in xorg.scm have bad indentation.

-- 
Alex



Re: [PATCH 1/1] Go: Update to 1.7

2016-08-17 Thread Petter

Hi Alex,

Great, thank you!


On 2016-08-17 17:54, Alex Griffin wrote:

On Wed, Aug 17, 2016, at 04:34 AM, Petter wrote:

Hi,

Made an attempt to update my first package.

Hope it's good!


Hi Petter,

Thanks for contributing! Your changes work for me, but it looks like
your mail client mangled the formatting of your patch. So I produced a
good patch with your changes, and added a copyright line and commit
message for you. Hopefully that will make it easier for someone with
commit access to look it over.




[PATCH] gnu: Add python-odfpy.

2016-08-17 Thread Marius Bakke
>From aa54aaee18b096780220f85a02b7e036458858a2 Mon Sep 17 00:00:00 2001
From: Marius Bakke 
Date: Wed, 17 Aug 2016 17:45:24 +0100
Subject: [PATCH] gnu: Add python-odfpy.

* gnu/packages/python.scm (python-odfpy, python2-odfpy): New variables.
---
 gnu/packages/python.scm | 32 
 1 file changed, 32 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index d7886d9..ca3df19 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -25,6 +25,7 @@
 ;;; Copyright © 2016 Troy Sankey 
 ;;; Copyright © 2016 ng0 
 ;;; Copyright © 2016 Dylan Jeffers 
+;;; Copyright © 2016 Marius Bakke 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -9983,3 +9984,34 @@ hardware-accelerated multitouch applications.")
 
 (define-public python2-kivy-next
   (package-with-python2 python-kivy-next))
+
+(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
+ `(#:phases
+   (modify-phases %standard-phases
+ (replace 'check
+   (lambda _ (zero? (system* "make" "-C" "tests")))
+(native-inputs
+ ;; The test runner wants to check both python versions at once.
+ ;; To avoid patching it, we add them here.
+ `(("python-2" ,python-2)
+   ("python-3" ,python-3)))
+(build-system python-build-system)
+(home-page "https://github.com/eea/odfpy;)
+(synopsis "API for OpenDocument in Python")
+(description "Collection of utility programs written in Python to
+manipulate OpenDocument 1.2 files.")
+(license (list asl2.0 gpl2+
+
+(define-public python2-odfpy
+  (package-with-python2 python-odfpy))
-- 
2.9.2




[PATCH] gnu: bs1770gain: Update to 0.4.11.

2016-08-17 Thread Alex Griffin
This patch just updates bs1770gain to 0.4.11, which includes a number of
bug fixes.
-- 
Alex Griffin
From c08d5616bdb579780d910429bd81ec7ec36491f3 Mon Sep 17 00:00:00 2001
From: Alex Griffin 
Date: Tue, 16 Aug 2016 13:58:07 -0500
Subject: [PATCH 1/2] gnu: bs1770gain: Update to 0.4.11.

* gnu/packages/audio.scm (bs1770gain): Update to 0.4.11.
---
 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 5c42aaa..de634c5 100644
--- a/gnu/packages/audio.scm
+++ b/gnu/packages/audio.scm
@@ -2430,7 +2430,7 @@ with support for HD extensions.")
 (define-public bs1770gain
   (package
 (name "bs1770gain")
-(version "0.4.10")
+(version "0.4.11")
 (source
  (origin
(method url-fetch)
@@ -2438,7 +2438,7 @@ with support for HD extensions.")
version "/bs1770gain-" version ".tar.gz"))
(sha256
 (base32
- "1syr8qchs8091z9ayivj723szlidx81gll099bmk9kgpykmckd62"
+ "0j765drdb7h3y5ipjv9sg1a0if6zh8cksbv3rdk5ppd7kxcrjnlb"
 (build-system gnu-build-system)
 (inputs `(("ffmpeg" ,ffmpeg)
   ("sox" ,sox)))
-- 
2.9.3



Re: [PATCH 00/13] KDE Frameworks Tier 2 packages and phonon/gpgmepp.

2016-08-17 Thread David Craven
Nope, tier 3 packages have quite a few inter-dependencies. There is
currently only one tier 4 package. Quoting the website:

"Tier 4 frameworks can be mostly ignored by application programmers;
this tier consists of plugins acting behind the scenes to provide
additional functionality or platform integration to existing
frameworks (including Qt)."

Currently I can build all tier 3 packages except kdewebkit, which I
think requires qtwebengine and qtwebview. Qtwebengine is going to take
some effort, I've already made some progress, since I also need it to
build calamares. Other than that I need to debug test failures, fixing
all the easy ones will probably take me an afternoon.

I've also made progress on sddm and hawaii-desktop. It would be nice
if we could get the mesa update in sometime, and I've got a patch to
xorg-server to enable Xephyr, which is required by sddm.

[0] https://api.kde.org/frameworks/index.html



Re: [PATCH 00/13] KDE Frameworks Tier 2 packages and phonon/gpgmepp.

2016-08-17 Thread Andreas Enge
On Sat, Aug 13, 2016 at 02:19:18PM +0200, David Craven wrote:
> kactivities-stats is also listed as a tier 2 package on the KDE Frameworks
> website, but since kactivities (a tier 3 package) is a dependency, I'm putting
> it with the tier 3 packages.

Well, it would be a tier 4 package then, no?

Andreas




Re: [PATCH 1/1] Go: Update to 1.7

2016-08-17 Thread Alex Griffin
On Wed, Aug 17, 2016, at 04:34 AM, Petter wrote:
> Hi,
> 
> Made an attempt to update my first package.
> 
> Hope it's good!

Hi Petter,

Thanks for contributing! Your changes work for me, but it looks like
your mail client mangled the formatting of your patch. So I produced a
good patch with your changes, and added a copyright line and commit
message for you. Hopefully that will make it easier for someone with
commit access to look it over.

-- 
Alex Griffin
From f2f28e088f2a3f833251c2b31de7e6f531bcdf9a Mon Sep 17 00:00:00 2001
From: Petter 
Date: Wed, 17 Aug 2016 10:27:04 -0500
Subject: [PATCH] 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".
---
 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 09d962d..afa3a36 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)
-- 
2.9.3



Re: [PATCH] gnu: libftdi: Propagate the libusb input.

2016-08-17 Thread Andreas Enge
Hello,

On Tue, Aug 16, 2016 at 08:09:52PM +0200, Danny Milosavljevic wrote:
> gnu: libftdi: Propagate the libusb input.
> * gnu/packages/libftdi.scm (libftdi): Modified.

Rather: "Move libusb from native-inputs to inputs."

> -(inputs
> +(propagated-inputs

Please add a quick comment why this is needed (.pc file, header file
is used or something similar).

Thanks!

Andreas




Re: [PATCH] gnu: Add re2.

2016-08-17 Thread Marius Bakke
Marius Bakke  writes:

> Leo Famulari  writes:
>
>> On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
>>> 
>>> I wasn't sure where to put this, so went with its own file. It does not
>>> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
>>> be renamed to regex.scm or similar.
>>
>> The patch looks good, but please put it in regex.scm! But, I don't want
>> to move all the regex packages into this new regex module. Perhaps tre,
>> since it appears to have no users in our tree.
>
> Moved to regex.scm. Thanks!

..and here is a patch that moves tre.scm over as well. The code is
unchanged apart from license: prefix.

>From 8e673ebd8c68c3a92fa60b56068339c011607752 Mon Sep 17 00:00:00 2001
From: Marius Bakke 
Date: Wed, 17 Aug 2016 16:10:15 +0100
Subject: [PATCH 2/2] gnu: tre: Move to regex.scm.

* gnu/packages/tre.scm (tre): Move from here ...
* gnu/packages/regex.scm (tre): ... to here.
* gnu/packages/tre.scm: Delete file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Remove tre.scm.
---
 gnu/local.mk   |  1 -
 gnu/packages/regex.scm | 34 ++
 gnu/packages/tre.scm   | 57 --
 3 files changed, 34 insertions(+), 58 deletions(-)
 delete mode 100644 gnu/packages/tre.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index a18ed44..ebf2d13 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -342,7 +342,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 cea9db8..b34b26d 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,35 @@
 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 721a350..000
--- 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
-

Re: [PATCH 16/24] gnu: gstreamer: Add qt-gstreamer.

2016-08-17 Thread Eric Bavier

On 2016-08-17 06:14, David Craven wrote:

Is boost propagated due to header references?


The include files reference these headers:

#include 
#include 
#include 
#include 


what is the reason for disabling runpath validation?


I'm getting a bunch of these errors. The problem seems to be that
/gnu/store/2g5xcc8hp16nfnf37449f3p492m8i03h-qt-gstreamer-1.2.0-1.fc159e5/lib64


Can you get qt-gstreamer to install its libraries into 
"/gnu/store/...-qt-gstreamer-1.2.0-=.fc159e5/lib"?  Things might Just 
Work™ then.


--
`~Eric



Re: [PATCH] gnu: Add dlib.

2016-08-17 Thread Marius Bakke
Ben Woodcroft  writes:

> On 17/08/16 09:45, Leo Famulari wrote:
>> On Wed, Aug 17, 2016 at 09:31:11AM +1000, Ben Woodcroft wrote:
>>>
>>> On 17/08/16 06:47, Leo Famulari wrote:
 On Tue, Aug 16, 2016 at 11:45:16AM +0100, Marius Bakke wrote:
> I initially made this package on a foreign distro without "lapack" in
> inputs and have verified that dropping LAPACK makes the tests pass.
>
> I also found some other optional dependencies after digging around the
> source, as well as a recommendation to disable/enable asserts:
>
> http://dlib.net/dlib/config.h.html
>
> Ben, Leo: Can you try the following patch and see if that works for you?
 Yes, this patch builds for me.
>>> Me too, although it appeared non-deterministic. I'm afraid I haven't time to
>>> see if this patch is suitable to push just now. Leo?
>> How did it appear non-deterministic to you?
> Just based on guix build --check:
>
> guix build: error: build failed: derivation 
> `/gnu/store/sxybcxw64q1ajzq6dysal75ffgq6238i-dlib-19.1.drv' may not be 
> deterministic: output 
> `/gnu/store/il57dcii4pzii11zlixjjxxxw699bg5x-dlib-19.1' differs
>
> I'm actually not sure, why does it say "may not be deterministic"? If it 
> builds twice and the second version is different, doesn't that mean it 
> is definitely not deterministic by counter-example, unless there has 
> been some leakage into the build container?
>
> I also tried building it with #parallel-build? #f and #parallel-tests? 
> #f. It worked in the first round but failed the second.
>
> Note also that the 'disable-asserts' phase should end with '#t'.

I've attached a patch with a #t in the disable-asserts phase, and also
deleting the 6MB static library.

Since `guix build --rounds=2` passes, is there any reason to delay this
patch? I've built this on GuixSD and a foreign distro and naively
verified that they are the same (the .so and all headers have the same
checksum; some of the recorded cmake input paths are different though).

Thanks,
Marius

>From 77f74972d095aeb08367e00c9d683137bd7a35f3 Mon Sep 17 00:00:00 2001
From: Marius Bakke 
Date: Sat, 13 Aug 2016 11:26:10 +0100
Subject: [PATCH] gnu: Add dlib.

* gnu/packages/machine-learning.scm (dlib): New variable.
---
 gnu/packages/machine-learning.scm | 67 ++-
 1 file changed, 66 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index f96672c..4332045 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015, 2016 Ricardo Wurmus 
 ;;; Copyright © 2016 Efraim Flashner 
+;;; Copyright © 2016 Marius Bakke 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -27,18 +28,21 @@
   #: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)
   #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages gcc)
+  #:use-module (gnu packages image)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages statistics)
   #:use-module (gnu packages swig)
-  #:use-module (gnu packages xml))
+  #:use-module (gnu packages xml)
+  #:use-module (gnu packages xorg))
 
 (define-public libsvm
   (package
@@ -467,3 +471,64 @@ geometric models.")
  "This package provides functions for feed-forward neural networks with a
 single hidden layer, and for multinomial log-linear models.")
 (license (list license:gpl2+ license:gpl3+
+
+(define-public dlib
+  (package
+(name "dlib")
+(version "19.1")
+(source (origin
+  (method url-fetch)
+  (uri (string-append
+"http://dlib.net/files/dlib-; version ".tar.bz2"))
+  (sha256
+   (base32
+"0p2pvcdalc6jhb6r99ybvjd9x74sclr0ngswdg9j2xl5pj7knbr4"))
+  (modules '((guix build utils)))
+  (snippet
+   '(begin
+  ;; Delete ~13MB of bundled dependencies.
+  (delete-file-recursively "dlib/external")
+  (delete-file-recursively "docs/dlib/external")
+(build-system cmake-build-system)
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'disable-asserts
+   (lambda _
+ ;; config.h recommends explicitly enabling or disabling asserts
+ ;; when building as a shared library. By default neither is set.
+ (substitute* "dlib/config.h"
+   (("^//#define 

Re: Hardening

2016-08-17 Thread Alex Vong
Hi,

Wow, this was long time ago. I've forgot this completely.

Ricardo Wurmus  writes:

> Leo Famulari  writes:
>
>> On Wed, Dec 30, 2015 at 05:06:30PM +0100, Ludovic Courtès wrote:
>>> Alex Vong  skribis:
>>> > Yes, I grep for `fstack-protector-strong' in the guix code base and no
>>> > matches are found. It appears no packages are setting this flag
>>> > currently. I think this flag (perhaps also a couple others) should be
>>> > set by default since they help protect against buffer overflow
>>> > .
>>> 
>>> I definitely agree, that’s something I’ve been wanting to try out.
>>> 
>>> The question is more how.  Do we change the default #:configure-flags
>>> for ‘gnu-build-system’ to something like:
>>> 
>>>   '("CPPFLAGS=-D_FORTIFY_SOURCE=2"
>>> "CFLAGS=-O2 -g -fstack-protector-strong")
>>> 
>>> ?
>>> 
>>> That sounds like a good starting point, but I expect that (1) one third
>>> of the packages will fail to build, and (2) another third of the
>>> packages will not get these flags, for instance because they pass their
>>> own #:configure-flags.
>>> 
>>> IOW, it will take a whole rebuild to find out exactly what’s going on
>>> and to fix any issues.
>>> 
>>> Would you like to start working on it?  Then we could create a branch,
>>> have Hydra build it, and incrementally fix things.
>>
>> We should pick this project back up. I was suprised to find we haven't
>> done anything like this after reading this recent blog post about Nix's
>> hardening effort:
>>
>> https://blog.mayflower.de/5800-Hardening-Compiler-Flags-for-NixOS.html?utm_source=twitterfeed_medium=twitter
>
> Are the above flags the only flags we’d like to play with?  There’s no
> harm in letting hydra rebuild the world with these flags on a separate
> branch — provided that all build nodes are usable.
>
There are indeed additional flags (for debian's hardening).


Here is the complete output (from the testing distribution):

alexvong1995@debian:~$ DEB_BUILD_MAINT_OPTIONS=hardening=+all dpkg-buildflags
CFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
-fstack-protector-strong -Wformat -Werror=format-security
CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2
CXXFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
-fstack-protector-strong -Wformat -Werror=format-security
FCFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
-fstack-protector-strong
FFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
-fstack-protector-strong
GCJFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
-fstack-protector-strong
LDFLAGS=-fPIE -pie -Wl,-z,relro -Wl,-z,now
OBJCFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
-fstack-protector-strong -Wformat -Werror=format-security
OBJCXXFLAGS=-g -O2 -fdebug-prefix-map=/home/alexvong1995=. -fPIE 
-fstack-protector-strong -Wformat -Werror=format-security


The `-fdebug-prefix-map' flag seems to be using the current working
directory.

> ~~ Ricardo

Cheers,
Alex



Re: [PATCH 16/24] gnu: gstreamer: Add qt-gstreamer.

2016-08-17 Thread David Craven
> Is boost propagated due to header references?

The include files reference these headers:

#include 
#include 
#include 
#include 

> what is the reason for disabling runpath validation?

I'm getting a bunch of these errors. The problem seems to be that
/gnu/store/2g5xcc8hp16nfnf37449f3p492m8i03h-qt-gstreamer-1.2.0-1.fc159e5/lib64
isn't in the RUNPATH. But isn't that folder implicitly in the RUNPATH
for libraries in the same directory? How can I get it in the RUNPATH,
is there a better way than using patchelf? what is the reason for
disabling runpath validation?

validating RUNPATH of 7 binaries in
"/gnu/store/2g5xcc8hp16nfnf37449f3p492m8i03h-qt-gstreamer-1.2.0-1.fc159e5/lib64"...
/gnu/store/2g5xcc8hp16nfnf37449f3p492m8i03h-qt-gstreamer-1.2.0-1.fc159e5/lib64/libQt5GStreamer-1.0.so:
error: depends on 'libQt5GLib-2.0.so.0', which cannot be found in
RUNPATH 
("/gnu/store/2g5xcc8hp16nfnf37449f3p492m8i03h-qt-gstreamer-1.2.0-1.fc159e5/lib"
"/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib"
"/gnu/store/9nifwk709wajpyfwa0jzaa3p6mf10vxs-gcc-4.9.3-lib/lib"
"/gnu/store/l1s4cw9g58hmcpd2qgbckfl228143qzx-glib-2.48.0/lib"
"/gnu/store/gspsx2v3zpfbl2s88xn7kb2ka9gv87bp-gstreamer-1.8.2/lib"
"/gnu/store/cc0192xs2lwcnkpjsv8msqv83d4s9zzv-gst-plugins-base-1.8.2/lib"
"/gnu/store/jz6wxyy2i279w92srv9p3qlabd7y0rjy-qtbase-5.7.0/lib"
"/gnu/store/9nifwk709wajpyfwa0jzaa3p6mf10vxs-gcc-4.9.3-lib/lib/gcc/x86_64-unknown-linux-gnu/4.9.3/../../..")



Re: QtHaveModule

2016-08-17 Thread 宋文武
David Craven  writes:

> Hi
>
>>> Hi, I just sent a patch to add 'QMAKEPATH' as search-path, which should
>>> fix this issue.
>
>> Thank you! Yes this fixes the issue and is a lot cleaner than what I
>> came up with...
>
> I sent a couple of patches to the mailing list that will require the
> qt and kde packages to be rebuilt (like the update to qt 5.7.0). Do
> you mind if I apply your patch when I push mine, so that we can avoid
> having unnecessary rebuilds?

That's great, yes please push!



Re: [PATCH] gnu: Add minced.

2016-08-17 Thread Ben Woodcroft



On 16/08/16 22:34, Marius Bakke wrote:

Ben Woodcroft  writes:


Hi Marius,

Excellent to see others interested in packaging microbial bioinformatics
tools.

You may want to look here before packaging other microbio tools:

https://github.com/MRC-CLIMB/guix-climb

I'm currently working on upstreaming most of these :)
Cool, and they generally look in quite good shape too. I'll be away next 
week, but I'd be happy to review them after that.



I tried this in a container and it seems that it calls out to a few
programs preventing it from working:

[env]# minced -h
/gnu/store/8asw2i54x53rrwdr8qw4j2rpbkc9fqzz-profile/bin/minced: line 7:
dirname: command not found
/gnu/store/8asw2i54x53rrwdr8qw4j2rpbkc9fqzz-profile/bin/minced: line 9:
dirname: command not found
/gnu/store/8asw2i54x53rrwdr8qw4j2rpbkc9fqzz-profile/bin/minced: line 11:
basename: command not found

So I think that (in order of preference), the source files themselves
should be patched with the absolute paths to these tools, the binary
should be wrapped, or coreutils should be propagated. For the first two
options, coreutils should be an input.

Good catch. Since the "minced" executable is just a wrapper script, I
opted to build my own wrapper to avoid the coreutils dependency.

Good idea.




Now some small comments on the patch itself.


+(arguments
+ `(#:test-target "test"
+   #:phases
+   (modify-phases %standard-phases
+ (delete 'configure)
+ (add-before 'check 'fix-test
+   (lambda _
+ ;; Fix test for latest version.
+ (substitute* "t/Aquifex_aeolicus_VF5.expected"
+   (("minced:0.1.6") "minced:0.2.0"

It might be more future-proof to use '(string-append "minced:"
,version)' instead of hard-coding 0.2.0.

I don't think this will be a problem in future releases. And it can also
cause problems, in case a user sets version to e.g. a commit hash.

OK.

Also, this phase (and the next two) should end in #t since the return
value of substitute* is undefined.



+ (add-before 'install 'qualify-java-path
+   (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "minced"
+   ;; Set full path to java binary in wrapper script.
+   (("^java") (string-append (assoc-ref inputs "jre")
+ "/bin/java")
+ (replace 'install
+   ;; No install target.
+   (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+(bin (string-append out "/bin")))
+   (for-each (lambda (file)
+   (install-file file bin))
+ (list "minced" "minced.jar"
+(native-inputs
+ `(("jdk", icedtea "jdk")))
+(inputs
+ `(("jre", icedtea)))

The commas should go after the space.

Oops, I should stop submitting patches late in the night!


+(home-page"https://github.com/ctSkennerton/minced;)
+(synopsis "Mining CRISPRs in Environmental Datasets")
+(description
+ "MinCED is a program to find Clustered Regularly Interspaced Short
+Palindromic Repeats (CRISPRs) in full genomes or environmental datasets such
+as metagenomes, in which sequence size can be anywhere from 100 to 800 bp.")

That description which you took from the README is a little dated at the
end. How about this?

"MinCED is a program to find Clustered Regularly Interspaced Short
Palindromic Repeats (CRISPRs) in both full genomes and shorter metagenomic 
sequences."

The rest LGTM. Thanks. Can you send an updated patch please?

Please find updated patch below. Thanks for the feedback!


Pushed as '318c0ae' after adding a space in the description and only 
using only using the "out" of icedtea in the inputs.


Thanks.
ben



Re: [PATCH] gnu: Add re2.

2016-08-17 Thread Marius Bakke
Leo Famulari  writes:

> On Mon, Aug 15, 2016 at 02:05:16PM +0100, Marius Bakke wrote:
>> 
>> I wasn't sure where to put this, so went with its own file. It does not
>> fully implement PCRE so pcre.scm seems inappropriate. Perhaps that could
>> be renamed to regex.scm or similar.
>
> The patch looks good, but please put it in regex.scm! But, I don't want
> to move all the regex packages into this new regex module. Perhaps tre,
> since it appears to have no users in our tree.

Moved to regex.scm. Thanks!

>From 137d7ca124c66d23862949228b678a2db1a940b0 Mon Sep 17 00:00:00 2001
From: Marius Bakke 
Date: Sun, 14 Aug 2016 20:16:01 +0100
Subject: [PATCH] gnu: Add re2.

* gnu/packages/regex.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
---
 gnu/local.mk   |  1 +
 gnu/packages/regex.scm | 57 ++
 2 files changed, 58 insertions(+)
 create mode 100644 gnu/packages/regex.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 7416850..7f4e397 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -297,6 +297,7 @@ GNU_SYSTEM_MODULES =\
   %D%/packages/rdesktop.scm			\
   %D%/packages/rdf.scm\
   %D%/packages/readline.scm			\
+  %D%/packages/regex.scm\
   %D%/packages/rrdtool.scm			\
   %D%/packages/rsync.scm			\
   %D%/packages/ruby.scm\
diff --git a/gnu/packages/regex.scm b/gnu/packages/regex.scm
new file mode 100644
index 000..cea9db8
--- /dev/null
+++ b/gnu/packages/regex.scm
@@ -0,0 +1,57 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2016 Marius Bakke 
+;;;
+;;; 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 regex)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu))
+
+(define-public re2
+   (package
+ (name "re2")
+ (version "2016-08-01")
+ (source (origin
+   (method url-fetch)
+   (uri
+(string-append
+ "https://github.com/google/re2/archive/;
+ version ".tar.gz"))
+   (file-name (string-append name "-" version ".tar.gz"))
+   (sha256
+(base32
+ "06pfm3xi5irrrij85m0c46rsn9jyg1rc2r431wi2knhjvbw9f0bx"
+ (build-system gnu-build-system)
+ (arguments
+  `(#:test-target "test"
+;; There is no configure step, but the Makefile respects a prefix.
+#:make-flags (list (string-append "prefix=" %output))
+#:phases
+(modify-phases %standard-phases
+  (delete 'configure)
+  (add-after 'install 'delete-static-library
+(lambda* (#:key outputs #:allow-other-keys)
+  ;; No make target for shared-only; delete the static version.
+  (delete-file (string-append (assoc-ref outputs "out")
+  "/lib/libre2.a")))
+ (home-page "https://github.com/google/re2;)
+ (synopsis "Fast, safe, thread-friendly regular expression engine")
+ (description "RE2 is a fast, safe, thread-friendly alternative to
+backtracking regular expression engines like those used in PCRE, Perl and
+Python.  It is a C++ library.")
+ (license license:bsd-3)))
-- 
2.9.2



Re: [PATCH 15/24] gnu: gstreamer: Symlink gstconfig.h into include directory.

2016-08-17 Thread David Craven
> In general, we should stick to upstream packaging unless it is clearly
> broken or there is a compelling reason to deviate.  In this case, if an
> application can't find , then it would seem to have a
> buggy build system, and we should fix the problem there.

The qt-gstreamer package doesn't build without this, but I agree that the
problem is with the qt-gstreamer package and not gstreamer and should
therefore be fixed there.



Re: [PATCH 17/24] gnu: kwidgetsaddons: Fix test failure.

2016-08-17 Thread David Craven
> Might (setenv "QT_QPA_PLATFORM" "offscreen") also be enough?

Interesting, that also fixes the problem, but causes a new one...

* Start testing of KDualActionTest *
Config: Using QtTest library 5.7.0, Qt 5.7.0
(x86_64-little_endian-lp64 shared (dynamic) release build; by GCC
4.9.3)
PASS   : KDualActionTest::initTestCase()
PASS   : KDualActionTest::testSetGuiItem()
FAIL!  : KDualActionTest::testSetIconForStates() Compared pointers are
not the same
   Actual   (action.inactiveIcon()): (nil)
   Expected (icon) : 0x65a4d0
   Loc: 
[/tmp/guix-build-kwidgetsaddons-5.24.0.drv-0/kwidgetsaddons-5.24.0/autotests/kdualactiontest.cpp(56)]
PASS   : KDualActionTest::testSetActive()
PASS   : KDualActionTest::testTrigger()
PASS   : KDualActionTest::cleanupTestCase()
Totals: 5 passed, 1 failed, 0 skipped, 0 blacklisted, 3ms
* Finished testing of KDualActionTest *

>  Starting an Xvfb server and then not stopping it again is kinda ... extreme.

Since the tests are run in a container, I'd expect all processes started inside
the container to receive a sigterm when the container is (shutdown?).

> Also, who says that :1 is free?

Again since the tests are run in a container, I'd expect that there
isn't a xserver
running unless I explicitly start it.

Are my assumptions wrong?
Do you think it's worth tracking down the test failure when my solution works?



Re: [PATCH 15/24] gnu: gstreamer: Symlink gstconfig.h into include directory.

2016-08-17 Thread Mark H Weaver
David Craven  writes:

>> What is the reason for this change?  Would it be appropriate to submit a
>> bug report upstream to add this to their "make install"?
>
> The reason is because applications may contain #include ,
> but gstconfig.h was moved to the lib directory because it contains "platform
> specific information".
>
> What do you suggest?

The pkgconfig file for gstreamer, $out/lib/pkgconfig/pkgconfig-1.0.pc,
includes this:

  Cflags: -I${includedir} -I${libdir}/gstreamer-1.0/include

Where ${libdir} is ${prefix}/lib.  So, the include path needed to find
 should automatically be included by non-broken build
systems.

What application(s) are you aware of that are unable to find
?

In general, we should stick to upstream packaging unless it is clearly
broken or there is a compelling reason to deviate.  In this case, if an
application can't find , then it would seem to have a
buggy build system, and we should fix the problem there.

What do you think?

Thanks,
  Mark



Re: [PATCH] gnu: Add libunique.

2016-08-17 Thread ng0
Leo Famulari  writes:

> On Mon, Aug 15, 2016 at 11:33:26PM +, ng0 wrote:
>> Leo Famulari  writes:
>> > Is this package required by something else that we are working on? What
>> > is the use case?
>> 
>> (gnunet-gtk):
>> 
>> (arguments
>>  `(#:configure-flags
>> (list "--without-libunique"
>
> Okay, then I think we should add the package with a comment that says
> it's unmaintained. What do you think of the attached patch?

Looks good to me. This way if some old application should require
libunique, we have it. I'll also ask about libunique at gnunet-devel
list with some other applications I need to question. As far as I
understand Christian, they want to avoid external dependencies where
possible. A ifcase for gnunet-gtk is in the HEAD of gnunet-gtk.

Thanks

> From fa8fbd899756cf948da23e9a29d92a5f48d4eb1c Mon Sep 17 00:00:00 2001
> From: ng0 
> Date: Wed, 3 Aug 2016 08:18:14 +
> Subject: [PATCH] gnu: Add libunique.
>
> * gnu/packages/gnome.scm (libunique): New variable.
>
> Signed-off-by: Leo Famulari 
> ---
>  gnu/packages/gnome.scm | 40 
>  1 file changed, 40 insertions(+)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 4a0be01..b094c30 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -5420,3 +5420,43 @@ GLib/GObject code.")
>   "Libgnomekbd is a keyboard configuration library for the GNOME desktop
>  environment, which can notably display keyboard layouts.")
>  (license license:lgpl2.0+)))
> +
> +;;; This package is no longer maintained:
> +;;; https://wiki.gnome.org/Attic/LibUnique
> +;;; "Unique is now in maintenance mode, and its usage is strongly 
> discouraged.
> +;;; Applications should use the GtkApplication class provided by GTK+ 3.0."
> +(define-public libunique
> +  (package
> +(name "libunique")
> +(version "3.0.2")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append "mirror://gnome/sources/" name "/"
> +  (version-major+minor version)  "/"
> +  name "-" version ".tar.xz"))
> +  (sha256
> +   (base32
> +"0f70lkw66v9cj72q0iw1s2546r6bwwcd8idcm3621fg2fgh2rw58"
> +(build-system glib-or-gtk-build-system)
> +(arguments
> + `(#:configure-flags '("--disable-static"
> +   "--disable-dbus" ; use gdbus
> +   "--enable-introspection")))
> +(native-inputs
> + `(("pkg-config" ,pkg-config)
> +   ("gobject-introspection" ,gobject-introspection)
> +   ("glib:bin" ,glib "bin")
> +   ("gtk-doc" ,gtk-doc)))
> +(propagated-inputs
> + ;; Referred to in .h files and .pc.
> + `(("gtk+" ,gtk+)))
> +(home-page "https://wiki.gnome.org/Attic/LibUnique;)
> +(synopsis "Library for writing single instance applications")
> +(description
> + "Libunique is a library for writing single instance applications.  If 
> you
> +launch a single instance application twice, the second instance will either 
> just
> +quit or will send a message to the running instance.  Libunique makes it 
> easy to
> +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+)))
> -- 
> 2.9.3
>

-- 
ng0
For non-prism friendly talk find me on http://www.psyced.org



Re: [PATCH 12/24] gnu: gnome: Add mobile-broadband-provider-info.

2016-08-17 Thread Mark H Weaver
David Craven  writes:

> * gnu/packages/gnome.scm (mobile-broadband-provider-info): New variable.

The summary line to should be "gnu: Add mobile-broadband-provider-info."
without the "gnome: ".  By our conventions, starting a summary line with
"gnu: gnome: " indicates a change to the 'gnome' package, which is not
the case here, and leads to confusion in practice.  I read this summary
line as meaning that 'mobile-broadband-provider-info' was added to
gnome's propagated-inputs.

This same issue applies to the other patches in this patch set as well.
When adding new packages, our convention is simply to write "gnu: Add
."

 Thanks,
   Mark

> ---
>  gnu/packages/gnome.scm | 22 ++
>  1 file changed, 22 insertions(+)
>
> diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> index 4a0be01..7bc0445 100644
> --- a/gnu/packages/gnome.scm
> +++ b/gnu/packages/gnome.scm
> @@ -21,6 +21,7 @@
>  ;;; Copyright © 2016 Leo Famulari 
>  ;;; Copyright © 2016 Alex Griffin 
>  ;;; Copyright © 2016 ng0 
> +;;; Copyright © 2016 David Craven 
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -4460,6 +4461,27 @@ devices, and provides VPN integration with a variety 
> of different VPN
>  services.")
>  (license license:gpl2+)))
>  
> +(define-public mobile-broadband-provider-info
> +  (package
> +(name "mobile-broadband-provider-info")
> +(version "20151214")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append
> +"mirror://gnome/sources/"
> +"mobile-broadband-provider-info/" version "/"
> +"mobile-broadband-provider-info-" version ".tar.xz"))
> +  (sha256
> +   (base32
> +"1905nab1h8p4hx0m1w0rn4mkg9209x680dcr4l77bngy21pmvr4a"
> +(build-system gnu-build-system)
> +(arguments
> + `(#:tests? #f)) ; No tests
> +(home-page "https://wiki.gnome.org/Projects/NetworkManager;)
> +(synopsis "Datbase of broadband connection configuration")
> +(description "Datbase of broadband connection configuration.")
> +(license license:public-domain)))
> +
>  (define-public network-manager-applet
>(package
>  (name "network-manager-applet")



[PATCH 1/1] Go: Update to 1.7

2016-08-17 Thread Petter

Hi,

Made an attempt to update my first package.

Hope it's good!


---
 gnu/packages/golang.scm | 17 ++---
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 09d962d..6e15cf6 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -185,11 +185,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 +197,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 +216,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 +278,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 +339,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)
--
2.9.3





Re: [PATCH 12/24] gnu: gnome: Add mobile-broadband-provider-info.

2016-08-17 Thread David Craven
> This same issue applies to the other patches in this patch set as well.
> When adding new packages, our convention is simply to write "gnu: Add
> ."

:thumbs up:



Re: [PATCH 15/24] gnu: gstreamer: Symlink gstconfig.h into include directory.

2016-08-17 Thread David Craven
> What is the reason for this change?  Would it be appropriate to submit a
> bug report upstream to add this to their "make install"?

The reason is because applications may contain #include ,
but gstconfig.h was moved to the lib directory because it contains "platform
specific information".

What do you suggest?



Re: [PATCH 10/24] gnu: networkmanager-qt: Propagate network-manager.

2016-08-17 Thread David Craven
> Also there should be a reason for propagating (probably written as a
> comment).  Ideally it should be avoided.

I added comments:

(propagated-inputs
  ; Headers contain #include  and
  ;#include 
  `(("network-manager" ,network-manager)))

(propagated-inputs
 ; Headers contain #include 
 `(("modem-manager", modem-manager)))



Re: [PATCH 15/24] gnu: gstreamer: Symlink gstconfig.h into include directory.

2016-08-17 Thread Mark H Weaver
David Craven  writes:

> * gnu/packages/gstreamer.scm (gstreamer)[arguments]: Add symlink-gstconfig.h
>   phase.

What is the reason for this change?  Would it be appropriate to submit a
bug report upstream to add this to their "make install"?

  Mark
  

> ---
>  gnu/packages/gstreamer.scm | 11 ++-
>  1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
> index bd99880..54919cd 100644
> --- a/gnu/packages/gstreamer.scm
> +++ b/gnu/packages/gstreamer.scm
> @@ -113,7 +113,16 @@ arrays of data.")
>   `(#:configure-flags
> (list (string-append "--with-html-dir="
>  (assoc-ref %outputs "doc")
> -"/share/gtk-doc/html"
> +"/share/gtk-doc/html"))
> +   #:phases
> +(modify-phases %standard-phases
> +  (add-after 'install 'symlink-gstconfig.h
> +(lambda* (#:key outputs #:allow-other-keys)
> +  (symlink
> +(string-append (assoc-ref outputs "out")
> + "/lib/gstreamer-1.0/include/gst/gstconfig.h")
> +(string-append (assoc-ref outputs "out")
> + "/include/gstreamer-1.0/gst/gstconfig.h")))
>  (propagated-inputs `(("glib" ,glib))) ; required by gstreamer-1.0.pc.
>  (native-inputs
>   `(("bison" ,bison)



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread David Craven
> That would be a massive refactoring - but can be done eventually.

I don't think it would be too hard, most work can be done through
applying a regex to the entire project and running the testsuite to
find the cases where it didn't work. I did this on the python.scm
file...

So then I'll leave the patch as it is?



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread Danny Milosavljevic
On Wed, 17 Aug 2016 10:53:23 +0200
David Craven  wrote:

> Ah, I was thinking more about lgpl2.1+ and the sorts... So is it a
> good idea to prefix all licenses in guix licenses itself (as Eric
> mentioned), and be done with it?

That would be a massive refactoring - but can be done eventually.

I would just #:prefix license: whenever one touches something that caused these 
problems. No need to modify everything in one go.



Re: [PATCH 5/5] gnu: Add arduino-makefile.

2016-08-17 Thread Danny Milosavljevic
> Should this not point to /gnu/store/...-python-3...?  If not, it could
> probably be left alone, since any package built with it will presumably
> have its shebangs patched.

It's just that Python 3 is incompatible with Python 2 but the source code has 
no marker in the file - so patch-shebang would have to use a crystal ball, tea 
leaves or whatever to find out it is indeed Python 3. I expect that 
patch-shebang will then see python3 and correct it - and it does.

> You can use 'install-file' from (guix build utils) here to remove much
> of the repitition.

Ah, nice!

> > +;(supported-systems '("avr"))  
> 
> You can remove this comment.

I wouldn't. It's nice to see that it's for AVR even if we don't use the whole 
target machinery (I tried invoking "guix build --target=avr" before and it 
rebuilt half the universe - not sure why. There are not many non-native inputs 
and the native inputs are... native).

> I don't have an arduino to test this package on.  Can anyone else help
> with this?

You can still test the compilation and linkage.

My Makefile to test this looks like this:

ARCHITECTURE = avr
BOARD_TAG= uno

# shouldn't be necessary but is
CPPFLAGS += -I${HOME}/.guix-profile/avr/include

# shouldn't be necessary but is. The "-L" flag order matters.
LDFLAGS += -L${HOME}/.guix-profile/avr/lib/avr5 -L${HOME}/.guix-profile/avr/lib 
-B${HOME}/.guix-profile/avr/lib

include 
/gnu/store/k21m6b7c8bmzxk5x73zqm0qaz769lx2d-arduino-makefile-1.5.1/share/arduino/Arduino.mk

Then create a file Blink.ino in the same directory which contains:

void setup() {
}

void loop() {
}

Then run

$ make



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread David Craven
> Expat causes a name collision.
>
> Also nmap, boost, cecill-c, freetype, imlib2, openldap2.0, openssl, ruby, 
> tcl/tk, vim, x11, zlib.
>
> Should there be new licenses it's a good guess it will be named like the 
> package it originated in.
>
> I would not advise removing the prefix. If anything, use it everywhere.

Ah, I was thinking more about lgpl2.1+ and the sorts... So is it a
good idea to prefix all licenses in guix licenses itself (as Eric
mentioned), and be done with it?



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread Danny Milosavljevic
On Wed, 17 Aug 2016 10:02:26 +0200
David Craven  wrote:

> I wonder who started the #:prefix/#:select thing in the first place. I
> don't think that anything from guix licenses is likely to cause a name
> collision. Maybe it's best to remove the #:prefix entirely?

Expat causes a name collision. 

Also nmap, boost, cecill-c, freetype, imlib2, openldap2.0, openssl, ruby, 
tcl/tk, vim, x11, zlib.

Should there be new licenses it's a good guess it will be named like the 
package it originated in.

I would not advise removing the prefix. If anything, use it everywhere.



Re: [PATCH 09/24] gnu: freedesktop: Add wayland-protocols.

2016-08-17 Thread David Craven
Wayland protocols only contains xml definitions, so the description is accurate:

find /gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/pkgconfig
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/pkgconfig/wayland-protocols.pc
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/fullscreen-shell
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/fullscreen-shell/fullscreen-shell-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/input-method
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/input-method/input-method-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/tablet
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/tablet/tablet-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/relative-pointer
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/relative-pointer/relative-pointer-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/xdg-shell
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/xdg-shell/xdg-shell-unstable-v5.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/linux-dmabuf
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/linux-dmabuf/linux-dmabuf-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/pointer-constraints
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/pointer-constraints/pointer-constraints-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/pointer-gestures
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/pointer-gestures/pointer-gestures-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/text-input
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/unstable/text-input/text-input-unstable-v1.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/stable
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/stable/viewporter
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/stable/viewporter/viewporter.xml
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/stable/presentation-time
/gnu/store/fy5lg7x7ln92gnb0da5nvkz0zswrf5z4-wayland-protocols-1.4/share/wayland-protocols/stable/presentation-time/presentation-time.xml



Re: [PATCH 08/24] gnu: xorg: Add lndir.

2016-08-17 Thread David Craven
> The patch looks good to me, except the indentation of this
>
> (string-append ...).  I usually write 'source' fields like this:
>
>(source (origin
>  (method url-fetch)
>  (uri (string-append "mirror://xorg/individual/util/lndir-"
>  version ".tar.bz2"))
>  (sha256
>   (base32
>"0pdngiy8zdhsiqx2am75yfcl36l7kd7d7nl0rss8shcdvsqgmx29"
>
> But this is not a big deal, of course :-)

I prefer
(uri (string-append
"mirror://xorg/individual/util/"
"lndir-" version ".tar.bz2"))

But in this case I thought that keeping consistent with how it was
done in the xorg.scm file was more important than my preference. What
do you think?



Re: [PATCH 07/24] gnu: compression: Add snappy.

2016-08-17 Thread David Craven
> Also there is a real release that shouldn't require autoreconf phase:
> 
> Did you try using it?

Just did, and requires running autoreconf too...



Re: [PATCH 14/24] gnu: gstreamer: Use license: prefix.

2016-08-17 Thread David Craven
I wonder who started the #:prefix/#:select thing in the first place. I
don't think that anything from guix licenses is likely to cause a name
collision. Maybe it's best to remove the #:prefix entirely?



Re: [PATCH 0/1] Perl 5.24.0 update

2016-08-17 Thread Ricardo Wurmus

Leo Famulari  writes:

> On Tue, Aug 16, 2016 at 06:43:57PM -0400, Leo Famulari wrote:
>> And the perl-no-build-time patch deactivated the code that embedded the
>> compilation timestamp that is normally printed by `perl -V`. Perl 5.24.0
>> can take this value from the macro PERL_BUILD_DATE [2], so I removed the
>> old patch and added perl-reproducible-build-date.patch.
>> 
>> I don't love this patch... we could instead do something like what
>> happens in the Erlang package. There we instead get SOURCE_DATE_EPOCH
>> from the environment and do some format string transformations to make a
>> pretty date string.
>
> We could also just keep the perl-no-build-time patch in place. There is
> not much point in doing work just to make `perl -V` print a nonsense
> date (Unix epoch) IMO.

What you sent looks good.  It is important to let “perl -V” print a date
(even if it is useless) to avoid breaking third-party software that
expects a date to be printed.

Your patch to just define the date as the epoch seems fine to me.

~~ Ricardo




Re: [PATCH] gnu: Move gtkglext from gnome to gtk.

2016-08-17 Thread Ricardo Wurmus

Leo Famulari  writes:

> On Wed, Aug 17, 2016 at 01:12:07AM +0200, Danny Milosavljevic wrote:
>> I'll send a patch. We can think of what we want to do with it - but at least 
>> we can see the extent then.
>
> Oh, I see you already sent it. You'd also need to be sure to move the
> copyright authorship lines around properly. I don't think it's worth all
> the noise, to be honest.

I agree that this seems like a lot of noise for little gain (and in some
cases I think the new location isn’t actually an improvement).

~~ Ricardo




Re: Hardening

2016-08-17 Thread Ricardo Wurmus

Leo Famulari  writes:

> On Wed, Dec 30, 2015 at 05:06:30PM +0100, Ludovic Courtès wrote:
>> Alex Vong  skribis:
>> > Yes, I grep for `fstack-protector-strong' in the guix code base and no
>> > matches are found. It appears no packages are setting this flag
>> > currently. I think this flag (perhaps also a couple others) should be
>> > set by default since they help protect against buffer overflow
>> > .
>> 
>> I definitely agree, that’s something I’ve been wanting to try out.
>> 
>> The question is more how.  Do we change the default #:configure-flags
>> for ‘gnu-build-system’ to something like:
>> 
>>   '("CPPFLAGS=-D_FORTIFY_SOURCE=2"
>> "CFLAGS=-O2 -g -fstack-protector-strong")
>> 
>> ?
>> 
>> That sounds like a good starting point, but I expect that (1) one third
>> of the packages will fail to build, and (2) another third of the
>> packages will not get these flags, for instance because they pass their
>> own #:configure-flags.
>> 
>> IOW, it will take a whole rebuild to find out exactly what’s going on
>> and to fix any issues.
>> 
>> Would you like to start working on it?  Then we could create a branch,
>> have Hydra build it, and incrementally fix things.
>
> We should pick this project back up. I was suprised to find we haven't
> done anything like this after reading this recent blog post about Nix's
> hardening effort:
>
> https://blog.mayflower.de/5800-Hardening-Compiler-Flags-for-NixOS.html?utm_source=twitterfeed_medium=twitter

Are the above flags the only flags we’d like to play with?  There’s no
harm in letting hydra rebuild the world with these flags on a separate
branch — provided that all build nodes are usable.

~~ Ricardo




Re: [PATCH 2/2] gnu: Add python-kivy

2016-08-17 Thread Mark H Weaver
Dylan Jeffers  writes:

> Alright I think this is the final patch :) 
>
> From c6f8d8948c0bf0b740022f5e4860c6adca267431 Mon Sep 17 00:00:00 2001
> From: Dylan Jeffers 
> Date: Sat, 13 Aug 2016 13:22:49 -0700
> Subject: [PATCH] gnu: Add python-kivy.
>
> * gnu/packages/python.scm (python-kivy, python2-kivy, python-kivy-next,
> * python2-kivy-next): New variables.

Pushed with formatting fixes to the commit log.

 Thanks!
   Mark



Re: Maven

2016-08-17 Thread Ricardo Wurmus

Danny Milosavljevic  writes:

> I also tried to package the Arduino GUI - but it has lots of Apache
> Commons dependencies and those use the Maven repo system.
>
> Has anyone already packaged Apache Commons libraries?

I have not, but the few Java packages I contributed were added because
they are needed to bootstrap dependencies that eventually lead to Maven.
You may find that to package the Apache Commons libraries you need to
dig deeper and package seemingly unrelated libraries first.

Many Java packages bundle dependencies or depend at build time on
binaries that are not easy to build from source.  I’d be happy if we had
more people looking at how to package more of Java.

~~ Ricardo