Re: [PATCH] python-kivy and Adobe source-code-pro font

2016-08-08 Thread Leo Famulari
On Fri, Aug 05, 2016 at 07:35:16PM -0700, Dylan Jeffers wrote:
> Couldn't fix some "abiguous package" issues with
> font-adobe-source-code-pro package. Let me know if someone finds a
> solution.

This means that you have more than one packages providing
font-adobe-source-code-pro.



Re: core-updates merged!

2016-08-08 Thread Leo Famulari
On Tue, Aug 02, 2016 at 11:28:59PM +0200, Ludovic Courtès wrote:
> Leo Famulari  skribis:
> 
> > On Tue, Aug 02, 2016 at 07:32:23PM +0200, Ludovic Courtès wrote:
> >> As discussed on IRC, SNAFU!  For reasons yet to be elucidated, the
> >> glibc@2.23 package no longer honors /run/current-system/locale.

> > The variable 'libc_cv_localedir', which we set as
> > "/run/current-system/locale/" in the glibc/linux package definition, has
> > been renamed to 'libc_cv_complocaledir'.

> >  ;; See 
> > .
> > -;; FIXME: This hack no longer works on 2.23!
> > -(string-append "libc_cv_localedir=/run/current-system/locale/"
> > +(string-append 
> > "libc_cv_complocaledir=/run/current-system/locale/"
> > ,version)

> Otherwise LGTM; could you push it to core-updates-next?

I've rebuilt my GuixSD system with this change, and I can confirm that
it works.

Setting GUIX_LOCPATH does not work in all cases, at least for me.

For example, the remote shell program 'mosh' requires a UTF-8
environment on the host. Even with GUIX_LOCPATH set correctly in my
login profile, mosh does not find the locales.

Also, the calendar app 'ikhal' is no longer working, and setting
GUIX_LOCPATH does not work for me.

I think we should prioritize this fix.



Re: [PATCH] gnu: beets: Update to 1.3.19.

2016-08-08 Thread Leo Famulari
On Mon, Aug 08, 2016 at 02:55:33PM -0500, Alex Griffin wrote:
> Thanks for the feedback Leo!
> 
> On Sat, Aug 6, 2016, at 09:39 PM, Leo Famulari wrote:
> > Do you know how it works for Beets on "traditional" distros?
> 
> In Debian, some plugins' dependencies are optional, and the user has to
> install them explicitly. That's sort of what we're doing, except Guix
> doesn't have optional dependencies so you can't look at the package
> metadata to figure out what to install.
> 
> I don't think this approach works with python dependencies though,
> because you'll need to mess with the package description to get those
> working. If someone wanted to use the replaygain plugin with the
> gstreamer backend instead, for example, they couldn't just install
> python-gst.
> 
> I have one more patch coming to enable the acoustic fingerprinting
> plugin, then all the plugins I use will work. I think I'm just going to
> hard-code its dependencies for now, but we may need to use another
> approach if anyone wants to enable a bunch of other plugins.

Thanks for the explanation. I guess we will decide what to do when we
need to make a decision :)



Re: [PATCH v5 00/17] Add missing dependencies of Spamassassin

2016-08-08 Thread Leo Famulari
On Thu, Jul 28, 2016 at 11:38:16PM +0200, Danny Milosavljevic wrote:
> This patch series adds almost all of the dependencies of Spamassassin.

I pushed this series, with the previously discussed changes and some
style edits and linter fixes where necessary, bringing HEAD to
cccb4d2652.

>   gnu: Add perl-geo-ip.

I updated this to the latest release, 1.50, which was released on
2016-07-21.



Re: [PATCH v5 14/17] gnu: Add perl-crypt-openssl-bignum.

2016-08-08 Thread Leo Famulari
On Mon, Aug 08, 2016 at 11:18:09PM +0200, Danny Milosavljevic wrote:
> > I think it's better to reduce the proliferation of non-package variables in 
> > gnu/packages...  what do you think?
> 
> I'm fine with it either way. It's not that much.

I decided instead to reduce the proliferation of things I have to do ;)
I will leave it as is.



Re: [PATCH 0/1] fontconfig: CVE-2016-5384

2016-08-08 Thread Leo Famulari
On Mon, Aug 08, 2016 at 07:17:50PM -0400, Mark H Weaver wrote:
> Leo Famulari  writes:
> 
> > This patch uses a graft to apply the upstream fix to fontconfig for
> > CVE-2016-5384. I learned about the bug from a Debian security advisory:
> >
> > https://security-tracker.debian.org/tracker/CVE-2016-5384
> > https://www.debian.org/security/2016/dsa-3644
> 
> Looks good to me.  Please push.

Thanks for the review! Pushed as 6b5e654d



Re: [PATCH] ui: 'package->recutils' serializes the source field.

2016-08-08 Thread David Craven
> If I disagree with you doesn't mean I am wrong. Please don't act as if
> you were in a position to decide who is wrong.

You voiced your concern, I tried to find common ground.

You referred to the FSDG. I read it to understand.

You told me it was just my opinion of what is says, and referred me
to a mailing list thread. I read the thread and asked how it relates.

You told me you did not have to provide an answer and I had to
go on some mailing list to start a discussion, so that other people
can argue for you.

I haven't heard you provide an argument other that repeating
it's an FSDG issue, it's an FSDG issue.

That sounds to me like someone who's out of ammo but not willing
to admit it.

> Trying to persuade me that it would be better for my reputation to agree with 
> you won't work.

One can try.

> Sorry, but I don't understand what you are trying to say.

Trying to change the subject and end the mail with a smiley. Not that
I'm particularly skilled at it ;-)



Re: [PATCH] ui: 'package->recutils' serializes the source field.

2016-08-08 Thread Mathieu Lirzin
David Craven  writes:

> Sometimes it's hard to admit when you are wrong, but I think in
> practice people barely take notice if you quickly admit you are
> wrong and move on. If you drag it out, people are definitively
> going to remember.
>
> Claiming that you applied logic to arrive at the conclusion that
>
> - Providing a user tool to fetch a tarball
> - Displaying a direct link to a tarball in our UI
>
> are the same thing is nonsense.

If I disagree with you doesn't mean I am wrong.  Please don't act as if
you were in a position to decide who is wrong.  Trying to persuade me
that it would be better for my reputation to agree with you won't work.

> Asking me to start a discussion on the linux-libre mailing list over
> this is an unreasonable request.

Being careful about FSDG compliance is not unreasonable.

> The only way I can see these two things being equal is if you
> say:
>
> class Thing
> class UserTool extends Thing
> class DirectLink extends Thing
>
> typeof UserTool == typeof DirectLink ;-)
>
> I had a class on java - which I didn't attend - and passed
> an exam - but I never wrote a single line of java. Pretty
> interesting what will pass as a java programmer don't you
> think? =P

Sorry, but I don't understand what you are trying to say.

-- 
Mathieu Lirzin



Re: [PATCH 0/1] fontconfig: CVE-2016-5384

2016-08-08 Thread Mark H Weaver
Leo Famulari  writes:

> This patch uses a graft to apply the upstream fix to fontconfig for
> CVE-2016-5384. I learned about the bug from a Debian security advisory:
>
> https://security-tracker.debian.org/tracker/CVE-2016-5384
> https://www.debian.org/security/2016/dsa-3644

Looks good to me.  Please push.

   Thank you!
  Mark



Re: [PATCH] gnu: st: Mov to terminals.scm.

2016-08-08 Thread Mark H Weaver
Mathieu Lirzin  writes:

> iyzs...@member.fsf.org (宋文武) writes:
>
>> ng0  writes:
>>
>>> Hi,
>>>
>>> I think it's pointless to have a suckless.scm which bundles all software
>>> which just happens to follow suckless ideology/goals or be hosted
>>> there.
>>> That's why I did not commit ii to suckless but to irc.scm, no one will
>>> look into suckless.scm when what they really are looking for is not
>>> $suckless but application xy.
>>> I try to unbundle and remove suckless.scm with the next patches.
>>
>> Well, it's difficult to choose the "right" category for packages.
>> For example, 'dmenu' shouldn't go to 'wm.scm', it has nothing to
>> do with window managers.
>>
>> When a project makes multiple softwares, I think it's easier to
>> put all of them in one project file, eg: gnome and freedesktop.
>
> So you are in favour of keeping (gnu packages suckless)?

Fwiw, I'm in favor of keeping suckless.scm, and rejecting these proposed
package moves.

 Mark



[PATCH 0/1] fontconfig: CVE-2016-5384

2016-08-08 Thread Leo Famulari
This patch uses a graft to apply the upstream fix to fontconfig for
CVE-2016-5384. I learned about the bug from a Debian security advisory:

https://security-tracker.debian.org/tracker/CVE-2016-5384
https://www.debian.org/security/2016/dsa-3644

Another potential option is to try grafting the latest version of
fontconfig, 2.12.1.

One way or another, ~2000 packages are depend on fontconfig.

Thoughts?

Leo Famulari (1):
  gnu: fontconfig: Fix CVE-2016-5384.

 gnu/local.mk   |   1 +
 gnu/packages/fontutils.scm |   8 +
 .../patches/fontconfig-CVE-2016-5384.patch | 170 +
 3 files changed, 179 insertions(+)
 create mode 100644 gnu/packages/patches/fontconfig-CVE-2016-5384.patch

-- 
2.9.2




[PATCH 1/1] gnu: fontconfig: Fix CVE-2016-5384.

2016-08-08 Thread Leo Famulari
* gnu/packages/fontutils.scm (fontconfig)[replacement]: New field.
(fontconfig/fixed): New variable.
* gnu/packages/patches/fontconfig-CVE-2016-5384.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
---
 gnu/local.mk   |   1 +
 gnu/packages/fontutils.scm |   8 +
 .../patches/fontconfig-CVE-2016-5384.patch | 170 +
 3 files changed, 179 insertions(+)
 create mode 100644 gnu/packages/patches/fontconfig-CVE-2016-5384.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index c0671e8..7630b2d 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -505,6 +505,7 @@ dist_patch_DATA =   
\
   %D%/packages/patches/flint-ldconfig.patch\
   %D%/packages/patches/fltk-shared-lib-defines.patch   \
   %D%/packages/patches/fltk-xfont-on-demand.patch  \
+  %D%/packages/patches/fontconfig-CVE-2016-5384.patch  \
   %D%/packages/patches/fontforge-svg-modtime.patch \
   %D%/packages/patches/fossil-test-fixes.patch \
   %D%/packages/patches/freeimage-CVE-2015-0852.patch   \
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm
index 9ddbaec..4867164 100644
--- a/gnu/packages/fontutils.scm
+++ b/gnu/packages/fontutils.scm
@@ -223,6 +223,7 @@ fonts to/from the WOFF2 format.")
 (define-public fontconfig
   (package
(name "fontconfig")
+   (replacement fontconfig/fixed)
(version "2.11.94")
(source (origin
 (method url-fetch)
@@ -275,6 +276,13 @@ high quality, anti-aliased and subpixel rendered text on a 
display.")
"See COPYING in the distribution."))
(home-page "http://www.freedesktop.org/wiki/Software/fontconfig;)))
 
+(define fontconfig/fixed
+  (package
+(inherit fontconfig)
+(source (origin
+  (inherit (package-source fontconfig))
+  (patches (search-patches "fontconfig-CVE-2016-5384.patch"))
+
 (define-public t1lib
   (package
(name "t1lib")
diff --git a/gnu/packages/patches/fontconfig-CVE-2016-5384.patch 
b/gnu/packages/patches/fontconfig-CVE-2016-5384.patch
new file mode 100644
index 000..617d5af
--- /dev/null
+++ b/gnu/packages/patches/fontconfig-CVE-2016-5384.patch
@@ -0,0 +1,170 @@
+Fix CVE-2016-5384 (double-free resulting in arbitrary code execution):
+
+
+
+Copied from upstream code repository:
+
+
+
+From 7a4a5bd7897d216f0794ca9dbce0a4a5c9d14940 Mon Sep 17 00:00:00 2001
+From: Tobias Stoeckmann 
+Date: Sat, 25 Jun 2016 19:18:53 +0200
+Subject: Properly validate offsets in cache files.
+
+The cache files are insufficiently validated. Even though the magic
+number at the beginning of the file as well as time stamps are checked,
+it is not verified if contained offsets are in legal ranges or are
+even pointers.
+
+The lack of validation allows an attacker to trigger arbitrary free()
+calls, which in turn allows double free attacks and therefore arbitrary
+code execution. Due to the conversion from offsets into pointers through
+macros, this even allows to circumvent ASLR protections.
+
+This attack vector allows privilege escalation when used with setuid
+binaries like fbterm. A user can create ~/.fonts or any other
+system-defined user-private font directory, run fc-cache and adjust
+cache files in ~/.cache/fontconfig. The execution of setuid binaries will
+scan these files and therefore are prone to attacks.
+
+If it's not about code execution, an endless loop can be created by
+letting linked lists become circular linked lists.
+
+This patch verifies that:
+
+- The file is not larger than the maximum addressable space, which
+  basically only affects 32 bit systems. This allows out of boundary
+  access into unallocated memory.
+- Offsets are always positive or zero
+- Offsets do not point outside file boundaries
+- No pointers are allowed in cache files, every "pointer or offset"
+  field must be an offset or NULL
+- Iterating linked lists must not take longer than the amount of elements
+  specified. A violation of this rule can break a possible endless loop.
+
+If one or more of these points are violated, the cache is recreated.
+This is current behaviour.
+
+Even though this patch fixes many issues, the use of mmap() shall be
+forbidden in setuid binaries. It is impossible to guarantee with these
+checks that a malicious user does not change cache files after
+verification. This should be handled in a different patch.
+
+Signed-off-by: Tobias Stoeckmann 
+
+diff --git a/src/fccache.c b/src/fccache.c
+index 71e8f03..02ec301 100644
+--- a/src/fccache.c
 b/src/fccache.c
+@@ -27,6 +27,7 @@
+ #include 
+ #include 
+ #include 
++#include 
+ #include 
+ #include 
+ #include 
+@@ -587,6 +588,82 @@ 

Re: [PATCH] ui: 'package->recutils' serializes the source field.

2016-08-08 Thread David Craven
Hi Mathieu,

Sometimes it's hard to admit when you are wrong, but I think in
practice people barely take notice if you quickly admit you are
wrong and move on. If you drag it out, people are definitively
going to remember.

Claiming that you applied logic to arrive at the conclusion that

- Providing a user tool to fetch a tarball
- Displaying a direct link to a tarball in our UI

are the same thing is nonsense.

Asking me to start a discussion on the linux-libre mailing list over
this is an unreasonable request.

The only way I can see these two things being equal is if you
say:

class Thing
class UserTool extends Thing
class DirectLink extends Thing

typeof UserTool == typeof DirectLink ;-)

I had a class on java - which I didn't attend - and passed
an exam - but I never wrote a single line of java. Pretty
interesting what will pass as a java programmer don't you
think? =P



Re: [PATCH v5 12/17] gnu: Add perl-geo-ip.

2016-08-08 Thread Danny Milosavljevic
On Mon, 8 Aug 2016 15:46:16 -0400
Leo Famulari  wrote:

> On Thu, Jul 28, 2016 at 11:38:28PM +0200, Danny Milosavljevic wrote:
> > +;; TODO: Use the geolite-mirror-simple.pl script from the example
> > +;; directory to stay current with the databases. How?  
> 
> Good question. Any progress? 

Not really. The same problem should have existed with (glibc) timezone files, 
leap seconds and hddtemp config data. How has it been handled there?

(Aha, hddtemp is missing entirely)

> I don't think it should block the package, right?

No. I think that geoip locations are approximate anyway, so whether or not the 
database is up to date is not so important.



Re: [PATCH] for gnu/packages/*.scm rewrite http to https for gnu.org, emacs.scm: add tls for elpa (https://elpa.gnu.org)

2016-08-08 Thread ng0
ng0  writes:

> On 2016-06-11(06:33:24PM+0200), Mathieu Lirzin wrote:
>> Hello,
>>
>> ng0  writes:
>>
>> > Hi, last cosmetic patch for today.
>> > This patch does the following:
>> >
>> > 1. rewrite every occurence in gnu/packages/*.scm files of
>> >http://www.gnu.org to https://www.gnu.org
>> > 2. for gnu/packages/emacs.scm enable tls for elpa.gnu.org,
>> >which is now using a certificate by the LetsEncrypt CA.
>>
>> I think one patch for each of these 2 changes would be better.
>>
>> > From 389e846deaa379ca10b5d006afa26693dc0085d8 Mon Sep 17 00:00:00 2001
>> > From: ng0 
>> > Date: Sat, 11 Jun 2016 15:32:07 +
>> > Subject: [PATCH] gnu: gnu/packages/().scm: URL http->https corrections.
>>
>> I have noticed that this patch modifies the copying permission statement
>> too.  Since they are copied from
>> , I think it would be
>> preferable to modify the original before.
>>
>> Could you ask  to apply this change on the website first
>> and then make a separate patch for making Guix conform to it?
>>
>> Sorry for these administrative boredoms.  :)
>>
>> Thanks,
>>
>> --
>> Mathieu Lirzin
>>
>
> Adding to this:
>
> I want this patch to be paused,
> I will revert it locally and remove the changes in the header,
> and send in a separate patch for elpa.
>
> Email to g...@gnu.org has been sent and patch of the headers will be applied
> once this is resolved.
>
> thanks,

gnu.org has not replied so far, I either assume a long list with my
message being low priority, or they do not consider it worth replying
to.
Patches will be updated soon.

-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: [PATCH] gnu: st: Mov to terminals.scm.

2016-08-08 Thread Mathieu Lirzin
iyzs...@member.fsf.org (宋文武) writes:

> ng0  writes:
>
>> Hi,
>>
>> I think it's pointless to have a suckless.scm which bundles all software
>> which just happens to follow suckless ideology/goals or be hosted
>> there.
>> That's why I did not commit ii to suckless but to irc.scm, no one will
>> look into suckless.scm when what they really are looking for is not
>> $suckless but application xy.
>> I try to unbundle and remove suckless.scm with the next patches.
>
> Well, it's difficult to choose the "right" category for packages.
> For example, 'dmenu' shouldn't go to 'wm.scm', it has nothing to
> do with window managers.
>
> When a project makes multiple softwares, I think it's easier to
> put all of them in one project file, eg: gnome and freedesktop.

So you are in favour of keeping (gnu packages suckless)?

-- 
Mathieu Lirzin



Re: [PATCH] Add tintin.

2016-08-08 Thread ng0
Damn. I just realized this is called TinTin++ and that the "++" is part
of the name, as there were other tintin*.

Updated patch coming soon.
ng0  writes:

> This patch adds tintin. Functionality was tried with
> just connecting to the psyced.org chatserver, connection
> successful, interaction not possible due to unsupported or
> old tls on client side. I have to investigate that.
>
> From f132b8022ec0068d5b96a85a4038a8279d9a3596 Mon Sep 17 00:00:00 2001
> From: ng0 
> Date: Mon, 8 Aug 2016 19:54:50 +
> Subject: [PATCH] gnu: Add tintin.
>
> * gnu/packages/games.scm (tintin): New variable.
> ---
>  gnu/packages/games.scm | 38 ++
>  1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
> index e467dbe..25445ab 100644
> --- a/gnu/packages/games.scm
> +++ b/gnu/packages/games.scm
> @@ -99,6 +99,8 @@
>#:use-module (gnu packages xml)
>#:use-module (gnu packages tcl)
>#:use-module (gnu packages xdisorg)
> +  #:use-module (gnu packages tls)
> +  #:use-module (gnu packages pcre)
>#:use-module (guix build-system gnu)
>#:use-module (guix build-system haskell)
>#:use-module (guix build-system cmake)
> @@ -2731,3 +2733,39 @@ in a style similar to the original Super Mario games 
> covered under
>  the GNU GPL.")
> (home-page "https://supertuxproject.org/;)
> (license license:gpl3+)))
> +
> +(define-public tintin
> +  (package
> +(name "tintin")
> +(version "2.01.1")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append "https://sourceforge.net/projects/; name
> +  "/files" "/TinTin++ Source Code/"
> +  version "/" name "-" version ".tar.gz"))
> +  (file-name (string-append name "-" version ".tar.gz"))
> +  (sha256
> +   (base32
> +"195wrfcys8yy953gdrl1gxryhjnx9lg1vqgxm3dyzm8bi18aa2yc"
> +(inputs
> + `(("gnutls" ,gnutls)
> +   ("readline" ,readline)
> +   ("zlib" ,zlib)
> +   ("pcre" ,pcre)))
> +(arguments
> + '(#:tests? #f
> +   #:phases
> +   (modify-phases %standard-phases
> + ;; The source is in tt/src.
> + (add-before 'configure 'chdir-to-tt-src
> +   (lambda _
> + (chdir "src"))
> +(build-system gnu-build-system)
> +(home-page "http://tintin.sourceforge.net/;)
> +(synopsis "MUD client")
> +(description
> + "TinTin++ is a MUD client which supports MCCP (Mud Client Compression 
> Protocol),
> +MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used 
> by MUDs,
> +as well as those required to login via telnet on Linux / Mac OS X servers, 
> and an
> +auto mapper with a VT100 map display.")
> +(license license:gpl2+)))
> -- 
> 2.9.2
>
>
> -- 
> ♥Ⓐ  ng0
> Current Keys: https://we.make.ritual.n0.is/ng0.txt
> For non-prism friendly talk find me on http://www.psyced.org

-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: [PATCH v5 06/17] gnu: Add perl-net-patricia.

2016-08-08 Thread Danny Milosavljevic
> I will drop this comment unless you object.

Ok!



Re: [PATCH] Add tintin.

2016-08-08 Thread ng0
Updated patch.

From 27b7d8ea899cf54e62ef42e5993c0a883985799f Mon Sep 17 00:00:00 2001
From: ng0 
Date: Mon, 8 Aug 2016 19:54:50 +
Subject: [PATCH] gnu: Add tintin.

* gnu/packages/games.scm (tintin): New variable.
---
 gnu/packages/games.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index e467dbe..6d0af86 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -99,6 +99,8 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages pcre)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system haskell)
   #:use-module (guix build-system cmake)
@@ -2731,3 +2733,39 @@ in a style similar to the original Super Mario games covered under
 the GNU GPL.")
(home-page "https://supertuxproject.org/;)
(license license:gpl3+)))
+
+(define-public tintin++
+  (package
+(name "tintin++")
+(version "2.01.1")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "https://sourceforge.net/projects/tintin;
+  "/files/TinTin++ Source Code/" version
+  "/tintin" "-" version ".tar.gz"))
+  (file-name (string-append name "-" version ".tar.gz"))
+  (sha256
+   (base32
+"195wrfcys8yy953gdrl1gxryhjnx9lg1vqgxm3dyzm8bi18aa2yc"
+(inputs
+ `(("gnutls" ,gnutls)
+   ("readline" ,readline)
+   ("zlib" ,zlib)
+   ("pcre" ,pcre)))
+(arguments
+ '(#:tests? #f ; no test suite
+   #:phases
+   (modify-phases %standard-phases
+ ;; The source is in tt/src.
+ (add-before 'configure 'chdir-to-tt-src
+   (lambda _
+ (chdir "src"))
+(build-system gnu-build-system)
+(home-page "http://tintin.sourceforge.net/;)
+(synopsis "MUD client")
+(description
+ "TinTin++ is a MUD client which supports MCCP (Mud Client Compression Protocol),
+MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used by MUDs,
+as well as those required to login via telnet on Linux / Mac OS X servers, and an
+auto mapper with a VT100 map display.")
+(license license:gpl2+)))
-- 
2.9.2


-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org


signature.asc
Description: PGP signature


Re: [PATCHv2 2/2] gnu: bash-completion: Update to 2.3. Update the patch.

2016-08-08 Thread Leo Famulari
On Sun, Aug 07, 2016 at 12:07:15PM +0200, Tomáš Čech wrote:
> * gnu/packages/bash.scm(bash-completion): Update to 2.3.

Same nit-pick about leaving a space before the variable name :)

> * gnu/packages/patches/bash-completion-directories.patch: New version of
>   the patch for the same purpose.

LGTM



Re: [PATCHv2 1/2] gnu: bash-completion: Modify to modify-phases.

2016-08-08 Thread Leo Famulari
On Sun, Aug 07, 2016 at 12:07:14PM +0200, Tomáš Čech wrote:
> * gnu/packages/bash.scm(bash-completion): Use modify-phases instead of
>   alist-cons-after.

Please add a space before (bash-completion).

Otherwise, looks good to me!



Re: [PATCH v5 04/17] gnu: Add perl-net-dns-resolver-programmable.

2016-08-08 Thread Danny Milosavljevic
Hi Leo,

> Can you send a comment explaining why we have to apply this patch? Its
> URL does not enable me to "go back" to the relevant discussion and learn
> the context or identity of the author.

Mail-SPF uses a programmable (mock) DNS server to run its tests.

That's what Net-DNS-Resolver-Programmable is supposed to do. Unfortunately it 
doesn't work without the patch.

It said:
> t/00.04-class-server.t test fails: [...] ok 19 - Server "A" dns_lookup() 
> answer RR type Unknown error on DNS 'A' lookup of 'example.com' (EDNSError) 
> at 
> /home/test/fedora/perl-Mail-SPF/Mail-SPF-v2.9.0/blib/lib/Mail/SPF/Server.pm 
> line 573. # Looks like you planned 23 tests but ran 19. # Looks like your 
> test exited with 255 just after 19.

That's because it was using an undocumented internal method of Net::DNS which 
is not exposed anymore. The patch makes the call of the undefined method 
contigent upon it existing. That way, the DNS resolver will actually work.

See also .



Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread Leo Famulari
On Sun, Aug 07, 2016 at 10:24:57PM +, ng0 wrote:
> Troy Sankey  writes:
> > 2.1.4
> 
> I'd also advise to upgrade git to something more recent if your distro
> allows it :)

I agree, unless your distro is patching this version against security
bugs. There was a client and server arbitrary remote code execution bug
in Git < 2.7.4:

https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-2324
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2016-2315



Re: [PATCH v2] gnu: node: Update to 6.3.1.

2016-08-08 Thread Leo Famulari
On Sun, Aug 07, 2016 at 02:45:20PM +0200, Jelle Licht wrote:
> Leo Famulari  writes:
> >> - (replace 'patch-shebangs
> >> -   (lambda* (#:key outputs #:allow-other-keys #:rest all)
> >> - ;; Work around .
> >> - (let* ((patch  (assoc-ref %standard-phases 'patch-shebangs))
> >> -(npm(string-append (assoc-ref outputs "out")
> >> -   "/bin/npm"))
> >> + (add-after 'patch-shebangs 'patch-npm-shebang
> >> +   (lambda* (#:key outputs #:allow-other-keys)
> >> + (let* ((bindir (string-append (assoc-ref outputs "out")
> >> +   "/bin"))
> >> +(npm(string-append bindir "/npm"))
> >>  (target (readlink npm)))
> >> -   (and (apply patch all)
> >> -(with-directory-excursion (dirname npm)
> >> -  ;; Turn NPM into a symlink to TARGET again, which 
> >> 'npm'
> >> -  ;; relies on for the resolution of relative file 
> >> names
> >> -  ;; in JS files.
> >> -  (delete-file target)
> >> -  (rename-file npm target)
> >> -  (symlink target npm)
> >> -  #t
> >> +   (with-directory-excursion bindir
> >> + (patch-shebang target (list bindir))
> >> + #t)))
> >
> > Will you mention these changes in the commit message?
> What do you mean by this exactly? The short of it is that a change to
> the patch-shebangs phase was merged by way of the core-updates merge,
> which no longer necessitated this workaround.

The commit log should mention all changes made in the commit. So, I
think the commit message should have a line like this:

[arguments]: Disable more tests. Update code that does foo.

... where foo is the diff quoted above.



Re: [PATCH v5 14/17] gnu: Add perl-crypt-openssl-bignum.

2016-08-08 Thread Danny Milosavljevic
> I think it's better to reduce the proliferation of non-package variables in 
> gnu/packages...  what do you think?

I'm fine with it either way. It's not that much.

> I can amend the patches if you agree.

Yes please.



Re: [PATCH] ui: 'package->recutils' serializes the source field.

2016-08-08 Thread Mathieu Lirzin
Alex Kost  writes:

> Mathieu Lirzin (2016-08-08 20:53 +0300) wrote:
>
>> David Craven  writes:
>>
>>> Quoting Ludo from the thread you mentioned:
>>>
 (Besides, our package meta-data would probably still refer to the “real”
 home page of the package, from which it’s trivial to get the unmodified
 tarball.)
>>>
>>> The discussion only applies to 'guix build --source' and I can't see any
>>> indication from reading the thread that displaying the original source url
>>> would be in any way problematic. Can you quote something from that
>>> thread that would indicate otherwise?
>>
>> I don't need to quote anything to think that:
>>
>> - Providing a user tool to fetch a tarball
>> - Displaying a direct link to a tarball in our UI
>
> But a user already can look at any package info (including the source
> URL) using "guix edit" command, so I don't see a reason why "guix
> package --show" can't display the same info.

I am just claiming that the two things above are equivalent and that as
a consequence we can't refuse one and accept the other.  I am not
discussing the "why", only applying logic.

-- 
Mathieu Lirzin



Re: [PATCH] gnu: perl-io-socket-ssl: Add IDN support.

2016-08-08 Thread ng0
Leo Famulari  writes:

> On Sun, Aug 07, 2016 at 10:40:47PM +, ng0 wrote:
>> Second, is there something left to fix or did someone push this already
>> and I did not notice?
>
> I believe this patch corresponds to commit 578aeea6. Please let us know
> if it does not.

Indeed, it does.

Thanks.
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: [PATCH] gnu: perl-io-socket-ssl: Add IDN support.

2016-08-08 Thread Leo Famulari
On Sun, Aug 07, 2016 at 10:40:47PM +, ng0 wrote:
> Second, is there something left to fix or did someone push this already
> and I did not notice?

I believe this patch corresponds to commit 578aeea6. Please let us know
if it does not.



Re: [PATCH 06/12] gnu: python: Add python-pymongo.

2016-08-08 Thread Leo Famulari
On Mon, Aug 08, 2016 at 04:36:02PM -0400, Leo Famulari wrote:
> We have a "python2-variant" system that we use when the Python 2 version
> of some package requires a different set of inputs from the Python 3
> version that it is based on. There is a good example in python-lockfile
> / python2-lockfile.

For your reference, this is the bug report that led to the creation of
this tool:
http://bugs.gnu.org/22437



Re: [PATCH 04/12] gnu: python: Add python-binaryornot.

2016-08-08 Thread Leo Famulari
On Fri, Aug 05, 2016 at 08:37:22PM +0200, David Craven wrote:
> * gnu/packages/python.scm (python-binaryornot): New package.
>   (python2-binaryornot): New package.

> +(define-public python2-binaryornot
> +  (let ((binaryornot (package-with-python2 python-binaryornot)))
> +(package (inherit binaryornot)
> +  (propagated-inputs
> +`(("python2-enum34" ,python2-enum34)
> +  ,@(package-propagated-inputs binaryornot))

I believe this will need to use the python2-variant system, as in
python2-hypothesis.



Re: [PATCH 06/12] gnu: python: Add python-pymongo.

2016-08-08 Thread Leo Famulari
On Fri, Aug 05, 2016 at 08:37:24PM +0200, David Craven wrote:
> * gnu/packages/python.scm (python-pymongo): New package.
>   (python2-pymongo): New package.

s/package/variable

> +(inputs
> + `(("python-certifi" ,python-certifi)
> +   ("python-setuptools" ,python-setuptools)))

I notice several of these patches include setuptools as an input to the
Python 3 variant of the package.

While some Python 3 packages require setuptools, most don't, whereas
most Python 2 packages do require setuptools.

We have a "python2-variant" system that we use when the Python 2 version
of some package requires a different set of inputs from the Python 3
version that it is based on. There is a good example in python-lockfile
/ python2-lockfile.

It adds a few lines of code but if we use it consistently, it will
drastically reduce the number of packages that depend on
python-setuptools.

Can you check this patch series to see if the Python 3 variants require
setuptools?



Re: [PATCH 0/3] Fix ldc.

2016-08-08 Thread Roel Janssen

Danny Milosavljevic writes:

> Any news on this?

Sorry, I haven't found the time to review your patches yet.
Hopefully, someone else can help with these patches too.

> Meanwhile, I have a new patch to provide ldc-1.1.0-beta2. What should I do 
> with it? Make a new patch series and refer to this one as prerequisite? 
>
> I've also added dub and updated rdmd, should this be in a new-new patch 
> series?

Please provide separate patches for each package (update or new).



Re: [PATCH] Add tintin.

2016-08-08 Thread ng0
ng0  writes:

> This patch adds tintin. Functionality was tried with
> just connecting to the psyced.org chatserver, connection
> successful, interaction not possible due to unsupported or
> old tls on client side. I have to investigate that.

I know that psyced.org has very restrictive settings, so tintin with
default settings might not fullfill them.
Try connecting to nemesis.de port 23 with it, choose name "guest" and
you'll see that it works as intended.

> From f132b8022ec0068d5b96a85a4038a8279d9a3596 Mon Sep 17 00:00:00 2001
> From: ng0 
> Date: Mon, 8 Aug 2016 19:54:50 +
> Subject: [PATCH] gnu: Add tintin.
>
> * gnu/packages/games.scm (tintin): New variable.
> ---
>  gnu/packages/games.scm | 38 ++
>  1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
> index e467dbe..25445ab 100644
> --- a/gnu/packages/games.scm
> +++ b/gnu/packages/games.scm
> @@ -99,6 +99,8 @@
>#:use-module (gnu packages xml)
>#:use-module (gnu packages tcl)
>#:use-module (gnu packages xdisorg)
> +  #:use-module (gnu packages tls)
> +  #:use-module (gnu packages pcre)
>#:use-module (guix build-system gnu)
>#:use-module (guix build-system haskell)
>#:use-module (guix build-system cmake)
> @@ -2731,3 +2733,39 @@ in a style similar to the original Super Mario games 
> covered under
>  the GNU GPL.")
> (home-page "https://supertuxproject.org/;)
> (license license:gpl3+)))
> +
> +(define-public tintin
> +  (package
> +(name "tintin")
> +(version "2.01.1")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append "https://sourceforge.net/projects/; name
> +  "/files" "/TinTin++ Source Code/"
> +  version "/" name "-" version ".tar.gz"))
> +  (file-name (string-append name "-" version ".tar.gz"))
> +  (sha256
> +   (base32
> +"195wrfcys8yy953gdrl1gxryhjnx9lg1vqgxm3dyzm8bi18aa2yc"
> +(inputs
> + `(("gnutls" ,gnutls)
> +   ("readline" ,readline)
> +   ("zlib" ,zlib)
> +   ("pcre" ,pcre)))
> +(arguments
> + '(#:tests? #f
> +   #:phases
> +   (modify-phases %standard-phases
> + ;; The source is in tt/src.
> + (add-before 'configure 'chdir-to-tt-src
> +   (lambda _
> + (chdir "src"))
> +(build-system gnu-build-system)
> +(home-page "http://tintin.sourceforge.net/;)
> +(synopsis "MUD client")
> +(description
> + "TinTin++ is a MUD client which supports MCCP (Mud Client Compression 
> Protocol),
> +MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used 
> by MUDs,
> +as well as those required to login via telnet on Linux / Mac OS X servers, 
> and an
> +auto mapper with a VT100 map display.")
> +(license license:gpl2+)))
> -- 
> 2.9.2
>
>
> -- 
> ♥Ⓐ  ng0
> Current Keys: https://we.make.ritual.n0.is/ng0.txt
> For non-prism friendly talk find me on http://www.psyced.org

-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: [PATCH] gnu: Add tint2.

2016-08-08 Thread Mathieu Lirzin
l...@gnu.org (Ludovic Courtès) writes:

> Mathieu Lirzin  skribis:
>
>> +(synopsis "Lightweight taskbar")
>
> Nitpick: I’d write “task bar” as two words, but I’m conservative.
>
> Ludo’.

Pushed in commit 751f68717538ae0d145d348fca04aebc713740ac.

-- 
Mathieu Lirzin



Re: [PATCH]Add ALSA support for recordmydesktop.

2016-08-08 Thread Leo Famulari
On Mon, Aug 08, 2016 at 04:12:26PM +0300, Pak Pang wrote:
> 
> 07.08.2016, 05:06, "Leo Famulari" :
> 
>  
> 
>   What name do you want to use for the Git commit's Author field?
> 
>   As is, it looks like this:
> 
>   $ git log
>   commit fa58352d7a630f352ff4e84d1b7b175c3fcfc788
>   Author: 8p8c 
>   Date: Tue Aug 2 23:11:46 2016 +0300
> 
>   gnu: recordmydesktop: Add ALSA support.
> 
>   * gnu/packages/video.scm (recordmydesktop)[inputs]: Add ALSA-LIB
> 
>   It's fine to use 8p8c if you prefer.
> 
>  
> Let's use 8p8c this time. I've used this patch in a screencast I've made:

Okay, pushed as ed6ba9cc7. Thanks for fixing this!



Re: octave license is incompatible with openssl

2016-08-08 Thread Leo Famulari
On Sat, Aug 06, 2016 at 09:52:39AM +0800, Alex Vong wrote:
> Ricardo Wurmus  writes:
> 
> > Alex Vong  writes:
> >
> >> I notice 'octave 4.0.2' has 'openssl@1.0.2h' as one of its inputs. As
> >> far as I know, gplv3 is incompatible with openssl license
> >> (https://people.gnome.org/~markmc/openssl-and-the-gpl.html).
> >
> > Looks like you’re right.  Other projects add a special openSSL linking
> > exception, but Octave does not seem to account for this.
> >
> >> How should we fix this?
> >
> > It seems that the use of openssl in Octave is optional, so we could
> > probably just remove it.  From a cursory look it appears that it is used
> > for not much more than the MD5 algorithm.  Would you like to submit a
> > patch that removes openssl from the inputs?
> >
> Here it is. It takes a long time to track down that curl is pulling the
> openssl depedency. I also upgrade octave to 4.0.3 and change to use
> 'tar.xz'.
> 
> > It would be good to ask the Octave project if it would be possible to
> > replace OpenSSL with, say, GnuTLS.
> >
> I agree, should we CC/forward this discussion to octave-devel list?

Yes, I think we should work with them to resolve this issue.



[PATCH] Add tintin.

2016-08-08 Thread ng0
This patch adds tintin. Functionality was tried with
just connecting to the psyced.org chatserver, connection
successful, interaction not possible due to unsupported or
old tls on client side. I have to investigate that.

From f132b8022ec0068d5b96a85a4038a8279d9a3596 Mon Sep 17 00:00:00 2001
From: ng0 
Date: Mon, 8 Aug 2016 19:54:50 +
Subject: [PATCH] gnu: Add tintin.

* gnu/packages/games.scm (tintin): New variable.
---
 gnu/packages/games.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index e467dbe..25445ab 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -99,6 +99,8 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages tcl)
   #:use-module (gnu packages xdisorg)
+  #:use-module (gnu packages tls)
+  #:use-module (gnu packages pcre)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system haskell)
   #:use-module (guix build-system cmake)
@@ -2731,3 +2733,39 @@ in a style similar to the original Super Mario games covered under
 the GNU GPL.")
(home-page "https://supertuxproject.org/;)
(license license:gpl3+)))
+
+(define-public tintin
+  (package
+(name "tintin")
+(version "2.01.1")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "https://sourceforge.net/projects/; name
+  "/files" "/TinTin++ Source Code/"
+  version "/" name "-" version ".tar.gz"))
+  (file-name (string-append name "-" version ".tar.gz"))
+  (sha256
+   (base32
+"195wrfcys8yy953gdrl1gxryhjnx9lg1vqgxm3dyzm8bi18aa2yc"
+(inputs
+ `(("gnutls" ,gnutls)
+   ("readline" ,readline)
+   ("zlib" ,zlib)
+   ("pcre" ,pcre)))
+(arguments
+ '(#:tests? #f
+   #:phases
+   (modify-phases %standard-phases
+ ;; The source is in tt/src.
+ (add-before 'configure 'chdir-to-tt-src
+   (lambda _
+ (chdir "src"))
+(build-system gnu-build-system)
+(home-page "http://tintin.sourceforge.net/;)
+(synopsis "MUD client")
+(description
+ "TinTin++ is a MUD client which supports MCCP (Mud Client Compression Protocol),
+MMCP (Mud Master Chat Protocol), xterm 256 colors, most TELNET options used by MUDs,
+as well as those required to login via telnet on Linux / Mac OS X servers, and an
+auto mapper with a VT100 map display.")
+(license license:gpl2+)))
-- 
2.9.2


-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org


signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add p7zip.

2016-08-08 Thread Leo Famulari
On Tue, Aug 02, 2016 at 01:38:17PM -0500, Eric Bavier wrote:
> On 2016-08-02 02:06, Ricardo Wurmus wrote:
> > Hi Kei,
> > 
> > > This patch should install p7zip correctly on every architecture
> > > supported by Guix. Ideally, this should be tested it on each arch for
> > > the sake of completeness and safety. I've got x86_64 covered so far.
> > > :-)
> > 
> > thank you for this patch!
> > 
> > I see that you took care of removing non-free parts in a patch and a
> > build phase.  Since “guix build -S p7zip” doesn’t run the build phase
> > users would still end up with a source archive containing the non-free
> > parts.  The best way is thus to remove things in a snippet.
> > 
> > In “shogun” from the “machine-learning” module we remove supporting code
> > for non-free features in a snippet by cutting out anything between some
> > ifdef markers, but looking at the patch I see that it wouldn’t be
> > feasible for p7zip.
> 
> Also note that it is not completely desirable for nonfree code to be removed
> with a patch, and is one of the reasons Guix supports snippets in the first
> place.

Is there a reason to not use a patch in this case? Or can we proceed
with packaging p7zip, using a patch to remove non-free parts?



Re: [PATCH] gnu: beets: Update to 1.3.19.

2016-08-08 Thread Alex Griffin
Thanks for the feedback Leo!

On Sat, Aug 6, 2016, at 09:39 PM, Leo Famulari wrote:
> Do you know how it works for Beets on "traditional" distros?

In Debian, some plugins' dependencies are optional, and the user has to
install them explicitly. That's sort of what we're doing, except Guix
doesn't have optional dependencies so you can't look at the package
metadata to figure out what to install.

I don't think this approach works with python dependencies though,
because you'll need to mess with the package description to get those
working. If someone wanted to use the replaygain plugin with the
gstreamer backend instead, for example, they couldn't just install
python-gst.

I have one more patch coming to enable the acoustic fingerprinting
plugin, then all the plugins I use will work. I think I'm just going to
hard-code its dependencies for now, but we may need to use another
approach if anyone wants to enable a bunch of other plugins.
-- 
Alex Griffin



Re: [PATCH v5 00/17] Add missing dependencies of Spamassassin

2016-08-08 Thread Leo Famulari
On Thu, Jul 28, 2016 at 11:38:16PM +0200, Danny Milosavljevic wrote:
> This patch series adds almost all of the dependencies of Spamassassin.

Thanks for taking on this big project!

I sent my comments. Please reply so we can have Spamassassin in Guix :)



Re: [PATCH v5 14/17] gnu: Add perl-crypt-openssl-bignum.

2016-08-08 Thread Leo Famulari
On Thu, Jul 28, 2016 at 11:38:30PM +0200, Danny Milosavljevic wrote:
> 
> gnu: Add perl-crypt-openssl-bignum.
> 
> * gnu/packages/tls.scm (perl-crypt-openssl-bignum, 
> perl-crypt-openssl-arguments): New variables.
> ---
>  gnu/packages/tls.scm | 36 
>  1 file changed, 36 insertions(+)
> 

> diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm
> index d992c51..fba130b 100644
> --- a/gnu/packages/tls.scm
> +++ b/gnu/packages/tls.scm
> @@ -556,3 +556,39 @@ servers or clients for more complicated applications.")
>  "RSA encoding and decoding, using the openSSL libraries")
>(description "Crypt::OpenSSL::RSA does RSA encoding and decoding (using 
> the OpenSSL libraries).")
>(license (package-license perl
> +
> +(define perl-crypt-arguments
> +   `(#:phases (modify-phases %standard-phases
> +  (add-before 'configure 'patch-Makefile.PL
> +(lambda* (#:key inputs #:allow-other-keys)
> +  (substitute* "Makefile.PL"
> +(("'LIBS'.*=>.*") (string-append "'LIBS' => ['-L"
> + (assoc-ref inputs "openssl")
> + "/lib -lcrypto'],")))
> +  #t)

I see this variable is also used in perl-crypt-openssl-random. I don't
have a very strong sense of Scheme style yet, but so far I've seen
things like this duplicated between package definitions. I think it's
better to reduce the proliferation of non-package variables in
gnu/packages...  what do you think?

I can amend the patches if you agree.



Re: [PATCH v5 12/17] gnu: Add perl-geo-ip.

2016-08-08 Thread Leo Famulari
On Thu, Jul 28, 2016 at 11:38:28PM +0200, Danny Milosavljevic wrote:
> 
> gnu: Add perl-geo-ip.
> 
> * gnu/packages/networking.scm (perl-geo-ip): Add variable.
> ---
>  gnu/packages/networking.scm | 24 
>  1 file changed, 24 insertions(+)
> 

> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index 134ad5d..660c025 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -588,3 +588,27 @@ offline emulation of DNS.")
>  "Perl extension for merging IPv4 or IPv6 CIDR addresses")
>(description "Net::CIDR::Lite merges IPv4 or IPv6 CIDR addresses.")
>(license license:gpl1+)))
> +
> +;; TODO: Use the geolite-mirror-simple.pl script from the example
> +;; directory to stay current with the databases. How?

Good question. Any progress? I don't think it should block the package,
right?



Re: [PATCH v5 06/17] gnu: Add perl-net-patricia.

2016-08-08 Thread Leo Famulari
On Thu, Jul 28, 2016 at 11:38:22PM +0200, Danny Milosavljevic wrote:
> 
> gnu: Add perl-net-patricia.
> 
> * gnu/packages/networking.scm (perl-net-patricia): Add variable.
> ---
>  gnu/packages/networking.scm | 31 +++
>  1 file changed, 31 insertions(+)
> 

> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index b575fce..0312fe5 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -535,3 +535,34 @@ offline emulation of DNS.")
>  "Manages IPv4 and IPv6 addresses and subnets")
>(description "NetAddr::IP manages IPv4 and IPv6 addresses and subsets.")
>(license (package-license perl
> +
> +;; Maybe makes sense to add patricialib dependency (it's bundled right now).
> +;; See  for the original package it was extracted from.
> +;; However, the site above doesn't actually work on my computer.

I will drop this comment unless you object. No need to send an updated
patch. And, the original site appears to be offline, with a
"cyber-squatter" on the domain.



Re: [PATCH v5 04/17] gnu: Add perl-net-dns-resolver-programmable.

2016-08-08 Thread Leo Famulari
On Thu, Jul 28, 2016 at 11:38:20PM +0200, Danny Milosavljevic wrote:
> 
> gnu: Add perl-net-dns-resolver-programmable.
> 
> * gnu/packages/networking.scm (perl-net-dns-resolver-programmable): New 
> variable.

I'm going through v5 of this patch series. This is the first patch I
have a question about.

> +(define-public perl-net-dns-resolver-programmable
> + (package
> +  (name "perl-net-dns-resolver-programmable")
> +  (version "v0.003")
> +  (source
> +(origin
> +  (method url-fetch)
> +  (uri (string-append
> + 
> "mirror://cpan/authors/id/J/JM/JMEHNLE/net-dns-resolver-programmable/"
> + "Net-DNS-Resolver-Programmable-" version ".tar.gz"))
> +  (sha256
> +(base32
> +  "1v3nl2kaj4fs55n1617n53q8sa3mir06898vpy1rq98zjih24h4d"))
> +  (patches
> +   (list (origin
> +   (method url-fetch)
> +   (uri 
> "https://rt.cpan.org/Public/Ticket/Attachment/1575108/841078/patch.txt;)
> +   (sha256
> + (base32
> +   
> "027fzq1dryqwhkprz4r32vj78qfdnx1mhjx6piag7p62p5npmdic")))

Can you send a comment explaining why we have to apply this patch? Its
URL does not enable me to "go back" to the relevant discussion and learn
the context or identity of the author.

Assuming we keep the upstream patch, I will download it and add it to
'gnu/packages/patches', and apply it using the method seen in the cpio
package definition. I can do that on my own, or you can submit a v6 of
this patch.



Re: [PATCH] ui: 'package->recutils' serializes the source field.

2016-08-08 Thread Alex Kost
Mathieu Lirzin (2016-08-08 20:53 +0300) wrote:

> David Craven  writes:
>
>> Quoting Ludo from the thread you mentioned:
>>
>>> (Besides, our package meta-data would probably still refer to the “real”
>>> home page of the package, from which it’s trivial to get the unmodified
>>> tarball.)
>>
>> The discussion only applies to 'guix build --source' and I can't see any
>> indication from reading the thread that displaying the original source url
>> would be in any way problematic. Can you quote something from that
>> thread that would indicate otherwise?
>
> I don't need to quote anything to think that:
>
> - Providing a user tool to fetch a tarball
> - Displaying a direct link to a tarball in our UI

But a user already can look at any package info (including the source
URL) using "guix edit" command, so I don't see a reason why "guix
package --show" can't display the same info.

-- 
Alex



Re: [PACKAGE] musl libc

2016-08-08 Thread Vincent Legoll
> Vincent, can you run file and readelf -d on the sinit binary you
> compiled using the gcc-musl wrapper? That will tell us if it worked.
>
> The output of readelf -d should look like this:
>
> 0x0001 (NEEDED) Shared library: [libc.so]
> 0x001d (RUNPATH)   Library runpath:
> [/nix/store/16c974l1kqra3cr475gcgy2gsii45liq-musl-1.1.14/lib]
>
> and the output of file should look like this:
>
> ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically
> linked, interpreter
> /nix/store/16c974l1kqra3cr475gcgy2gsii45liq-musl-1.1.14/lib/libc.so,
> not stripped

The default sinit build process uses -static, so I get:

$ l /gnu/store/zfbhkbcfjpmnarsid9wl0q4ssswps96p-sinit-1.0/bin/sinit
-r-xr-xr-x 2 root root 9.3K Jan  1  1970
/gnu/store/zfbhkbcfjpmnarsid9wl0q4ssswps96p-sinit-1.0/bin/sinit

$ file /gnu/store/zfbhkbcfjpmnarsid9wl0q4ssswps96p-sinit-1.0/bin/sinit
/gnu/store/zfbhkbcfjpmnarsid9wl0q4ssswps96p-sinit-1.0/bin/sinit: ELF
64-bit LSB executable, x86-64, version 1 (SYSV), statically linked,
stripped

$ readelf -d /gnu/store/zfbhkbcfjpmnarsid9wl0q4ssswps96p-sinit-1.0/bin/sinit
There is no dynamic section in this file.

And I think that shows it worked, just the static way...

Do you prefer dynamically linked ?

-- 
Vincent Legoll



Re: [PACKAGE] musl libc

2016-08-08 Thread David Craven
> Do you prefer dynamically linked ?

Usually we link stuff dynamically unless there is a reason to do
otherwise. I guess in this case it's ok... Maybe someone else wants to
answer this?



Re: [PATCH] ui: 'package->recutils' serializes the source field.

2016-08-08 Thread David Craven
> Feel free to disagree, however when doubt emerges about FSDG compliance,
> a consensus needs to be reached on .  If you
> want your change to be included in Guix, please start a discussion on
> that mailing list explaining what you are proposing and ask if other
> people thinks this is OK in regards of the FSDG.

I am not going to do that, since I don't have the time to start
pointless discussions
just to be able to say I told you so.

I hope you can appreciate my restraint in this reply.



Re: [PATCH 0/3] Fix ldc.

2016-08-08 Thread Danny Milosavljevic
Any news on this?

Meanwhile, I have a new patch to provide ldc-1.1.0-beta2. What should I do with 
it? Make a new patch series and refer to this one as prerequisite? 

I've also added dub and updated rdmd, should this be in a new-new patch series?



Re: [PACKAGE] musl libc

2016-08-08 Thread David Craven
Vincent, can you run file and readelf -d on the sinit binary you
compiled using the gcc-musl wrapper? That will tell us if it worked.

The output of readelf -d should look like this:

0x0001 (NEEDED) Shared library: [libc.so]
0x001d (RUNPATH)   Library runpath:
[/nix/store/16c974l1kqra3cr475gcgy2gsii45liq-musl-1.1.14/lib]

and the output of file should look like this:

ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically
linked, interpreter
/nix/store/16c974l1kqra3cr475gcgy2gsii45liq-musl-1.1.14/lib/libc.so,
not stripped



Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread Troy Sankey
Quoting Alex Kost (2016-08-08 04:35:12)
> I forgot one thing: since the source will be the same as the one of
> 'notmuch' package, I'm going to write it like this:
> 
> ;; Notmuch python bindings are now unavailable on pypi.  The
> ;; bindings are distributed via the notmuch release tarball.
> (source (package-source notmuch))

Neat!  It also occurs to me that guix doesn't need to re-download the tarball
because the /gnu/store is a local file cache---cool!

> Thanks again! (no need to resend the patches, I'll fix the mentioned
> notes)

Excellent, much appreciated.

Troy



Re: [PATCH]Add ALSA support for recordmydesktop.

2016-08-08 Thread Pak Pang
07.08.2016, 05:06, "Leo Famulari" :    What name do you want to use for the Git commit's Author field?  As is, it looks like this:  $ git log  commit fa58352d7a630f352ff4e84d1b7b175c3fcfc788  Author: 8p8c   Date: Tue Aug 2 23:11:46 2016 +0300  gnu: recordmydesktop: Add ALSA support.  * gnu/packages/video.scm (recordmydesktop)[inputs]: Add ALSA-LIB  It's fine to use 8p8c if you prefer. Let's use 8p8c this time. I've used this patch in a screencast I've made: https://www.youtube.com/watch?v=XmK0iZoj2ZQhttps://goblinrefuge.com/mediagoblin/u/duminico/m/patch-guix-package/Eventualy I will make a better video on patching and contributing. Dmitry Nikolaev

Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread Troy Sankey
Quoting ng0 (2016-08-08 03:05:46)
> > - '(#:tests? #f ;; FIXME: 662 tests; 168 fail and 99 are skipped
> > -   ;; with perl input: 50 fail and 99 are skipped
> > + '(#:tests? #f ; FIXME: 694 tests; 170 fail and 100 are skipped
> > +   ; with perl input: 50 fail and 100 are skipped
>
> I think this comment should not be updated in your patch, like I wrote
> before someone should update the comment when either the whole file is
> addressed in stylistic fixes or when the tests are changed from false to
> true or something test related is changed. Your version bump does not do
> this.

This also changes the numbers.  I assume these failing tests won't be
fixed in the immediate term, so I figured it would be best to at least
keep the comment accurate.

Troy



Re: [PATCH] gnu: st: Mov to terminals.scm.

2016-08-08 Thread 宋文武
ng0  writes:

> Hi,
>
> I think it's pointless to have a suckless.scm which bundles all software
> which just happens to follow suckless ideology/goals or be hosted
> there.
> That's why I did not commit ii to suckless but to irc.scm, no one will
> look into suckless.scm when what they really are looking for is not
> $suckless but application xy.
> I try to unbundle and remove suckless.scm with the next patches.

Well, it's difficult to choose the "right" category for packages.
For example, 'dmenu' shouldn't go to 'wm.scm', it has nothing to
do with window managers.

When a project makes multiple softwares, I think it's easier to
put all of them in one project file, eg: gnome and freedesktop.



Re: [PACKAGE] musl libc

2016-08-08 Thread Vincent Legoll
>> We usually don’t use the “gcc” package directly in Guix.  Instead we use
>> “gcc-toolchain”, which also comes with a wrapper around the linker that
>> ensures that binaries are linked with libraries in the store, ensuring
>> that things generally just work™.
>>
>> I think more work would be needed to ensure that packages can actually
>> successfully be linked with musl, but I’m not at all familiar with this.
>> I had mixed success with a GCC ARM cross-compiler toolchain linking with
>> newlib, so I know that it’s not exactly obvious how to do this right,
>> but I find it hard to understand this.
>>
>> Have you tried building something that links with the libc provided by
>> this musl package instead of the GNU libc?  I’m not opposed to adding
>> the package, but I’d like it to be usable.

I'm not sure...

I built musl, made the sinit package use the musl-wrapper as CC,
and it worked (it builds => it works) but couldn't test that sinit as
replacement for pid 1...

-- 
Vincent Legoll



Re: [PACKAGE] sinit

2016-08-08 Thread Vincent Legoll
> This should just work, Vincent. See the 'ii' package I sent today.

D'oh !

It (#:make-flags?) was already there in the scm I submitted, but that
wasn't working when I tested it first time, maybe because I did not
know about guix environment at that time and tried the build it outside
of one...

I'll clean that up and resubmit properly...

-- 
Vincent Legoll



[PATCH] daemon: Break CHROOT_ENABLED into CHROOT_ENABLED and CLONE_ENABLED.

2016-08-08 Thread Manolis Ragkousis
Hello everyone,

This patch breaks CHROOT_ENABLED into CHROOT_ENABLED and CLONE_ENABLED.

If you check the code below, you will see that in case clone() is not
available it will use fork(), which is the case on Hurd.

But because CHROOT_ENABLED checks for others things, like mount.h and
pivot_root(), it never actually got to the second part of the code
below. This is fixed with my patch.

#if CHROOT_ENABLED
if (useChroot) {
char stack[32 * 1024];
int flags = CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWIPC | CLONE_NEWUTS |
SIGCHLD;
if (!fixedOutput) flags |= CLONE_NEWNET;
pid = clone(childEntry, stack + sizeof(stack) - 8, flags, this);
if (pid == -1)
throw SysError("cloning builder process");
} else
#endif
{
pid = fork();
if (pid == 0) runChild();
}

Thank you,
Manolis
From 51d96cdea9aec679680c08add3a5ac03065760ba Mon Sep 17 00:00:00 2001
From: Manolis Ragkousis 
Date: Sun, 7 Aug 2016 17:48:30 +0300
Subject: [PATCH] daemon: Break CHROOT_ENABLED into CHROOT_ENABLED and
 CLONE_ENABLED.

We need to check for CLONE_NEWNS only when we want to use the
Linux specific clone(). Otherwise we use fork().

* nix/libstore/build.cc (CHROOT_ENABLED): Break into CHROOT_ENABLED
and CLONE_ENABLED.
(DerivationGoal::startBuilder): Replace CHROOT_ENABLED with CLONE_ENABLED.
---
 nix/libstore/build.cc | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc
index ae78e65..b8a5ce6 100644
--- a/nix/libstore/build.cc
+++ b/nix/libstore/build.cc
@@ -51,7 +51,8 @@
 #include 
 #endif
 
-#define CHROOT_ENABLED HAVE_CHROOT && HAVE_SYS_MOUNT_H && defined(MS_BIND) && defined(MS_PRIVATE) && defined(CLONE_NEWNS) && defined(SYS_pivot_root)
+#define CHROOT_ENABLED HAVE_CHROOT && HAVE_SYS_MOUNT_H && defined(MS_BIND) && defined(MS_PRIVATE) && defined(SYS_pivot_root)
+#define CLONE_ENABLED defined(CLONE_NEWNS)
 
 #if CHROOT_ENABLED
 #include 
@@ -1998,7 +1999,7 @@ void DerivationGoal::startBuilder()
- The UTS namespace ensures that builders see a hostname of
  localhost rather than the actual hostname.
 */
-#if CHROOT_ENABLED
+#if CLONE_ENABLED
 if (useChroot) {
 	char stack[32 * 1024];
 	int flags = CLONE_NEWPID | CLONE_NEWNS | CLONE_NEWIPC | CLONE_NEWUTS | SIGCHLD;
-- 
2.9.2



Re: PATCH [0/22]: Add roary.

2016-08-08 Thread Ben Woodcroft

Hi,


On 31/07/16 21:26, Ludovic Courtès wrote:

Hello,

Ben Woodcroft  skribis:


This patchset adds roary, a pipeline which at times is used for tracking
outbreaks of pathogenic bacteria in e.g. foodstuffs or hospitals, by comparing
whole genome sequences.

I looked briefly at this series and I guess you can take into account
Leo’s comments and the push.


Thanks, all your comments were helpful Leo. I pushed these after minor 
modifications now that Alex pushed his log4perl patch.

ben



[PATCH 23/26] gnu: kde-frameworks: Add networkmanager-qt.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks (networkmanager-qt): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 37 +
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 3fbc7bf..2e3037d 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -30,6 +30,7 @@
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
@@ -853,6 +854,42 @@ information available for your modem devices, like signal, 
location and
 messages.")
 (license license:lgpl2.1+)))
 
+(define-public networkmanager-qt
+  (package
+(name "networkmanager-qt")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "11wy0ds0hqbba900ggkcxjfqc9n65xlzc3h1zv9433nn5d75v6fy"
+ (build-system cmake-build-system)
+ (native-inputs
+  `(("extra-cmake-modules" ,extra-cmake-modules)
+("dbus" ,dbus)
+("pkg-config" ,pkg-config)))
+ (inputs
+  `(("network-manager", network-manager)
+("qtbase" ,qtbase)))
+ (arguments
+  `(#:phases
+ (modify-phases %standard-phases
+   (replace 'check
+ (lambda* _
+   (setenv "DBUS_FATAL_WARNINGS" "0")
+   (zero? (system* "dbus-launch" "ctest" ".")))
+ (home-page "https://community.kde.org/Frameworks;)
+ (synopsis "Qt wrapper for NetworkManager DBus API")
+ (description "NetworkManagerQt provides access to all NetworkManager
+features exposed on DBus. It allows you to manage your connections and control
+your network devices and also provides a library for parsing connection 
settings
+which are used in DBus communication.")
+ (license license:lgpl2.1+)))
+
 (define-public oxygen-icons
   (package
 (name "oxygen-icons")
-- 
2.9.0



[PATCH 22/26] gnu: kde-frameworks: Add modemmanager-qt.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (modemmanager-qt): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 37 +
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index b426e75..3fbc7bf 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -27,6 +27,7 @@
   #:use-module (guix utils)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
@@ -816,6 +817,42 @@ lower level classes for interaction with the X Windowing 
System.")
 ;; the lgpl2.1. Some source files are under non-copyleft licenses.
 (license license:lgpl2.1+)))
 
+(define-public modemmanager-qt
+  (package
+(name "modemmanager-qt")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "0khz5bf84xxa8aqpzwb6x839xx6dbiadwqhyj7cvgha65fh2xinh"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("dbus" ,dbus)
+   ("pkg-config" ,pkg-config)))
+(inputs
+ `(("modem-manager", modem-manager)
+   ("qtbase" ,qtbase)))
+(arguments
+ `(#:phases
+(modify-phases %standard-phases
+  (replace 'check
+(lambda* _
+  (setenv "DBUS_FATAL_WARNINGS" "0")
+  (zero? (system* "dbus-launch" "ctest" ".")))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Qt wrapper for ModemManager DBus API")
+(description "ModemManagerQt provides access to all ModemManager features
+exposed on DBus.  It allows you to manage modem devices and access to
+information available for your modem devices, like signal, location and
+messages.")
+(license license:lgpl2.1+)))
+
 (define-public oxygen-icons
   (package
 (name "oxygen-icons")
-- 
2.9.0



[PATCH 18/26] gnu: kde-frameworks: Add kitemviews.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kitemviews): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 40 
 1 file changed, 40 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index e9838fd..5c6e12d 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -616,6 +616,46 @@ model to observers
 @end itemize")
 (license license:lgpl2.1+)))
 
+(define-public kitemviews
+  (package
+(name "kitemviews")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "0y3fx9hk1x27arrmwfzq783a44cs7p8dpmhxrwzh0di4mwa8jafw"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("qttools" ,qttools)
+   ("xorg-server" ,xorg-server)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:phases
+(modify-phases %standard-phases
+  (add-before 'check 'check-setup
+(lambda* _
+  (setenv "DBUS_FATAL_WARNINGS" "0")))
+  (add-before 'check 'start-xorg-server
+(lambda* (#:key inputs #:allow-other-keys)
+  ;; The test suite requires a running X server.
+  (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+  (setenv "DISPLAY" ":1")
+ #t)
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Set of item views extending the Qt model-view framework")
+(description "KItemViews includes a set of views, which can be used with
+item models.  It includes views for categorizing lists and to add search 
filters
+to flat and hierarchical lists.")
+(license (list license:gpl2+ license:lgpl2.1+
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 21/26] gnu: kde-frameworks: Add kwidgetsaddons.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kwidgetsaddons): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 44 +
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index ef285ba..b426e75 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -732,6 +732,50 @@ are adjusted to be what a Qt developer expects - two 
arguments of int are
 represented by a QPoint or a QSize.")
 (license license:lgpl2.1+)))
 
+(define-public kwidgetsaddons
+  (package
+(name "kwidgetsaddons")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "1kppx0ppfhnb6q6sijs2dffyar86wkkx8miqavsjsgw1l2wiymcx"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("qttools" ,qttools)
+   ("xorg-server" ,xorg-server)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:tests? #f ; FIXME: libGL error: failed to load driver: swrast.
+   #:phases
+(modify-phases %standard-phases
+  (add-before 'check 'check-setup
+(lambda* _
+  (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output
+  (setenv "LIBGL_DEBUG" "verbose") ; enable debug output
+  (setenv "DBUS_FATAL_WARNINGS" "0")))
+  (add-before 'check 'start-xorg-server
+(lambda* (#:key inputs #:allow-other-keys)
+  ;; The test suite requires a running X server.
+  (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+  (setenv "DISPLAY" ":1")
+ #t)
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Large set of desktop widgets")
+(description "Provided are action classes that can be added to toolbars or
+menus, a wide range of widgets for selecting characters, fonts, colors, 
actions,
+dates and times, or MIME types, as well as platform-aware dialogs for
+configuration pages, message boxes, and password requests.")
+(license (list license:gpl2+ license:lgpl2.1+
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 14/26] gnu: kde-frameworks: Add kguiaddons.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kguiaddons): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 35 +++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 310b5e1..63a251a 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -450,6 +450,41 @@ such as printers, to be discovered without any user 
intervention or centralized
 infrastructure.")
 (license license:lgpl2.1+)))
 
+(define-public kguiaddons
+  (package
+(name "kguiaddons")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "0ig96ah20ybg5rwpswj9va2klvkh2q4amwxmgy3z4niwfsm2g3ic"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("xorg-server" ,xorg-server)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:phases
+(modify-phases %standard-phases
+  (add-before 'check 'start-xorg-server
+(lambda* (#:key inputs #:allow-other-keys)
+  ;; The test suite requires a running X server.
+  (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+  (setenv "DISPLAY" ":1")
+ #t)
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Utilities for graphical user interfaces")
+(description "The KDE GUI addons provide utilities for graphical user
+interfaces in the areas of colors, fonts, text, images, keyboard input.")
+(license (list license:gpl2+ license:lgpl2.1+
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 20/26] gnu: kde-frameworks: Add kwayland.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kwayland): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 5975df5..ef285ba 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -694,6 +694,44 @@ data being plotted.  KPlotWidget automatically converts 
everything to screen
 pixel units.")
 (license license:lgpl2.1+)))
 
+(define-public kwayland
+  (package
+(name "kwayland")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "1h5anbqrxcl1s8kx1l53vcsfr8ifamcjqd47dk8a7lwr1ga6myq2"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("pkg-config" ,pkg-config)))
+(inputs
+ `(("qtbase" ,qtbase)
+   ("wayland" ,wayland)))
+(arguments
+ `(#:tests? #f ; FIXME tests require weston to run
+   ; weston requires wayland flags in mesa
+   #:phases
+ (modify-phases %standard-phases
+   (add-before 'check 'check-setup
+ (lambda* _
+   (setenv "XDG_RUNTIME_DIR" "/tmp"))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Qt-style API to interact with the wayland client and server")
+(description "As the names suggest they implement a Client respectively a
+Server API for the Wayland protocol.  The API is Qt-styled removing the needs 
to
+interact with a for a Qt developer uncomfortable low-level C-API.  For example
+the callback mechanism from the Wayland API is replaced by signals, data types
+are adjusted to be what a Qt developer expects - two arguments of int are
+represented by a QPoint or a QSize.")
+(license license:lgpl2.1+)))
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 19/26] gnu: kde-frameworks: Add kplotting.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kplotting): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 5c6e12d..5975df5 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -656,6 +656,44 @@ item models.  It includes views for categorizing lists and 
to add search filters
 to flat and hierarchical lists.")
 (license (list license:gpl2+ license:lgpl2.1+
 
+(define-public kplotting
+  (package
+(name "kplotting")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "0gpypq9kh4b5s6dc7py3m117k3nbxczsfkxgxd9zxvr35kig7ya2"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("xorg-server" ,xorg-server)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:phases
+(modify-phases %standard-phases
+  (add-before 'check 'start-xorg-server
+(lambda* (#:key inputs #:allow-other-keys)
+  ;; The test suite requires a running X server.
+  (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+  (setenv "DISPLAY" ":1")
+ #t)
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Data plotting library")
+(description "KPlotWidget is a QWidget-derived class that provides a 
virtual
+base class for easy data-plotting.  The idea behind KPlotWidget is that you 
only
+have to specify information in \"data units\", the natural units of the
+data being plotted.  KPlotWidget automatically converts everything to screen
+pixel units.")
+(license license:lgpl2.1+)))
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 09/26] gnu: kde-frameworks: Add kcodecs.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kcodecs): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 35 +++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 604b9b0..7ee5926 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -246,6 +246,41 @@ GZip format, via a subclass of QIODevice.")
 (license (list license:lgpl2.1 license:lgpl2.1+
license:lgpl3+ license:bsd-2
 
+(define-public kcodecs
+  (package
+(name "kcodecs")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "1qpzjh3qc2zz80j2bmlinipbispms14k9bmqw8v61zhi6in9z14c"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("qttools" ,qttools)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "String encoding and manipulating library")
+(description "KCodecs provide a collection of methods to manipulate
+strings using various encodings.
+
+It can automatically determine the charset of a string, translate XML
+entities, validate email addresses, and find encodings by name in a more
+tolerant way than QTextCodec (useful e.g. for data coming from the
+Internet).")
+;; The included licenses is are gpl2 and lgpl2.1, but the sources are
+;; under a variety of licenses.
+;; This list is taken from http://packaging.neon.kde.org/cgit/
+(license (list license:gpl2 license:gpl2+ license:bsd-2
+   license:lgpl2.1 license:lgpl2.1+ license:expat
+   license:lgpl3+ license:mpl1.1
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 17/26] gnu: kde-frameworks: Add kitemmodels.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kitemmodels): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 61 +
 1 file changed, 61 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 487806a..e9838fd 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -555,6 +555,67 @@ but also for getting notified upon idle time events, such 
as custom timeouts,
 or user activity.")
 (license (list license:gpl2+ license:lgpl2.1+
 
+(define-public kitemmodels
+  (package
+(name "kitemmodels")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "1s1p4nw1pqdzbdwvjnka17p9avf00wadr437p4f96md1lvh3sh69"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("xorg-server" ,xorg-server)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:phases
+(modify-phases %standard-phases
+  (add-before 'check 'start-xorg-server
+(lambda* (#:key inputs #:allow-other-keys)
+  ;; The test suite requires a running X server.
+  (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+  (setenv "DISPLAY" ":1")
+ #t)
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Set of item models extending the Qt model-view framework")
+(description "KItemModels provides the following models:
+
+@itemize
+@item KBreadcrumbSelectionModel - Selects the parents of selected items to
+create breadcrumbs.
+
+@item KCheckableProxyModel - Adds a checkable capability to a source model.
+
+@item KConcatenateRowsProxyModel - Concatenates rows from multiple source 
models.
+
+@item KDescendantsProxyModel - Proxy Model for restructuring a Tree into a 
list.
+
+@item KExtraColumnsProxyModel - Adds columns after existing columns.
+
+@item KLinkItemSelectionModel - Share a selection in multiple views which do
+not have the same source model.
+
+@item KModelIndexProxyMapper - Mapping of indexes and selections through proxy
+models.
+
+@item KRearrangeColumnsProxyModel - Can reorder and hide columns from the 
source
+model.
+
+@item KRecursiveFilterProxyModel - Recursive filtering of models.
+
+@item KSelectionProxyModel - A Proxy Model which presents a subset of its 
source
+model to observers
+@end itemize")
+(license license:lgpl2.1+)))
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 06/26] gnu: kde-frameworks: Add breeze-icons.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (breeze-icons): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 27 +++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 3116526..7e743f4 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -140,6 +140,33 @@ 
http://freedesktop.org/wiki/Specifications/open-collaboration-services/;)
 Bluetooth stack.  It is used by the KDE Bluetooth stack, BlueDevil.")
 (license (list license:lgpl2.1+ license:lgpl3+
 
+(define-public breeze-icons
+  (package
+(name "breeze-icons")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "1dh7bijx99sdb3vn6394wmm5cq0fvvmz8h17sx4hakmbga849cx2"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Default KDE Plasma 5 icon theme")
+(description "Breeze provides a freedesktop.org compatible icon theme.
+It is the default icon theme for the KDE Plasma 5 desktop.")
+;; The license file mentions lgpl3+. The license files in the source
+;; directories are lgpl3, while the top directory contains the lgpl2.1.
+;; text.
+(license license:lgpl3+)))
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 16/26] gnu: kde-frameworks: Add kidletime.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kidletime): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 27 +++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 1b80370..487806a 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -528,6 +528,33 @@ translated text.  This includes argument capturing, 
customizable markup, and
 translation scripting.")
 (license license:lgpl2.1+)))
 
+(define-public kidletime
+  (package
+(name "kidletime")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "09jsj0pj27h93nr8v46savs6b93h8frydinfr7wlijkvpsl02jb4"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+(inputs
+ `(("qtbase" ,qtbase)
+   ("qtx11extras" ,qtx11extras)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Reporting of idle time of user and system")
+(description "KIdleTime is a singleton reporting information on idle time.
+It is useful not only for finding out about the current idle time of the PC,
+but also for getting notified upon idle time events, such as custom timeouts,
+or user activity.")
+(license (list license:gpl2+ license:lgpl2.1+
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 04/26] gnu: kde-frameworks: Add attica.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (attica): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 39 +++
 1 file changed, 39 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 434c6cf..85d000b 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -1,6 +1,8 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Andreas Enge 
 ;;; Copyright © 2016 Efraim Flashner 
+;;; Copyright © 2016 Hartmut Goebel 
+;;; Copyright © 2016 David Craven 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -66,6 +68,43 @@ modules provided by CMake to find common software.  In 
addition, it provides
 common build settings used in software produced by the KDE community.")
 (license license:bsd-3)))
 
+;; Tier 1
+;;
+;; Tier 1 frameworks depend only on Qt (and possibly a small number of other
+;; third-party libraries), so can easily be used by an Qt-based project.
+
+(define-public attica
+  (package
+(name "attica")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "0d368gmds7m7k5pnn625wqsij38cvxk1gkm4zv24phnk9f67v7cw"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Open Collaboration Service client library")
+(description "Attica is a Qt library that implements the Open
+Collaboration Services API version 1.6.
+
+It grants easy access to the services such as querying information about
+persons and contents.  The library is used in KNewStuff3 as content provider.
+In order to integrate with KDE's Plasma Desktop, a platform plugin exists in
+kdebase.
+
+The REST API is defined here:
+http://freedesktop.org/wiki/Specifications/open-collaboration-services/;)
+(license (list license:lgpl2.1+ license:lgpl3+
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 10/26] gnu: kde-frameworks: Add kconfig.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kconfig): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 68 +
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 7ee5926..d6a7636 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -25,6 +25,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix utils)
+  #:use-module (gnu packages admin)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
@@ -281,6 +282,73 @@ Internet).")
license:lgpl2.1 license:lgpl2.1+ license:expat
license:lgpl3+ license:mpl1.1
 
+(define-public kconfig
+  (package
+(name "kconfig")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "1dc2i6icyigw1j6qxgdza6j2g8afh390qmxsa2a54mwl84fkfmxv"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("inetutils" ,inetutils)
+   ("qttools" ,qttools)
+   ("xorg-server" ,xorg-server)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:phases
+(modify-phases %standard-phases
+  (add-before 'check 'check-setup
+(lambda* _
+  (setenv "HOME" (getcwd))
+  (setenv "TMPDIR" (getcwd))
+ #t))
+  (add-before 'check 'start-xorg-server
+(lambda* (#:key inputs #:allow-other-keys)
+  ;; The test suite requires a running X server.
+  (system (string-append (assoc-ref inputs "xorg-server")
+ "/bin/Xvfb :1 &"))
+  (setenv "DISPLAY" ":1")
+ #t)
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Kconfiguration settings framework for Qt")
+(description "KConfig provides an advanced configuration system.
+It is made of two parts: KConfigCore and KConfigGui.
+
+KConfigCore provides access to the configuration files themselves.
+It features:
+
+@itemize
+@item Code generation: describe your configuration in an XML file, and use
+`kconfig_compiler to generate classes that read and write configuration
+entries.
+
+@item Cascading configuration files (global settings overridden by local
+settings).
+
+@item Optional shell expansion support (see docs/options.md).
+
+@item The ability to lock down configuration options (see docs/options.md).
+@end itemize
+
+KConfigGui provides a way to hook widgets to the configuration so that they
+are automatically initialized from the configuration and automatically
+propagate their changes to their respective configuration files.")
+;; The included licenses is are gpl2 and lgpl2.1, but the sources are
+;; under a variety of licenses.
+;; This list is taken from http://packaging.neon.kde.org/cgit/
+(license (list license:lgpl2.1 license:lgpl2.1+ license:expat
+   license:lgpl3+ license:gpl1 ; licende:mit-olif
+   license:bsd-2 license:bsd-3
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 02/26] gnu: kwindowsystem: Update to 5.24.0.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kwindowsystem)[uri]: Use mirror.
  [native-inputs]: Make extra-cmake-modules a native-input.
  [inputs]: Replace qt dependency with qtbase and qtx11extras.
---
 gnu/packages/kde-frameworks.scm | 18 ++
 1 file changed, 10 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 838bdb3..b338555 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -69,27 +69,29 @@ common build settings used in software produced by the KDE 
community.")
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-(version "5.21.0")
+(version "5.24.0")
 (source
   (origin
 (method url-fetch)
-(uri (string-append "http://download.kde.org/stable/frameworks/;
+(uri (string-append "mirror://kde/stable/frameworks/"
 (version-major+minor version) "/"
 name "-" version ".tar.xz"))
 (sha256
  (base32
-  "13lfwpw5a4in0mp5y8d15jg6xhhrka2qmw73wrdzcvj22n6ldzzi"
+  "0w5ym8msl80v3q65253pdpj9f1fmb658rnndlbkrgpmm1rv1n6dz"
 (build-system cmake-build-system)
 (native-inputs
- `(("pkg-config" ,pkg-config)
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("pkg-config" ,pkg-config)
+   ("qttools" ,qttools)
("xorg-server" ,xorg-server))) ; for the tests
 (inputs
- `(("extra-cmake-modules" ,extra-cmake-modules)
-   ("libxrender" ,libxrender)
-   ("qt" ,qt)
+ `(("libxrender" ,libxrender)
+   ("qtbase" ,qtbase)
+   ("qtx11extras" ,qtx11extras)
("xcb-utils-keysyms" ,xcb-util-keysyms)))
 (arguments
- `(#:tests? #f)) ; FIXME: The first seven tests fail with "Exception".
+ `(#:tests? #f)) ; FIXME: 8/10 tests fail.
 (home-page "https://community.kde.org/Frameworks;)
 (synopsis "KDE access to the windowing system")
 (description "KWindowSystem provides information about and allows
-- 
2.9.0



[PATCH 07/26] gnu: kde-frameworks: Add kapidox.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kapidox): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 44 +
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 7e743f4..8c59253 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -27,6 +27,7 @@
   #:use-module (guix utils)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages xorg))
 
@@ -167,6 +168,49 @@ It is the default icon theme for the KDE Plasma 5 
desktop.")
 ;; text.
 (license license:lgpl3+)))
 
+(define-public kapidox
+  (package
+(name "kapidox")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "19a7alvn71nxflsyi7y3hghx1iw04qqc77qy54mcxcpkiyvpsggf"
+(build-system cmake-build-system)
+(arguments
+ `(#:tests? #f)) ; has no test target
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+(propagated-inputs
+ ;; kapidox is a python programm
+ ;; TODO: check if doxygen has to be installed, the readme does not
+ ;; mention it. The openSuse .rpm lists doxygen, graphviz, graphviz-gd,
+ ;; and python-xml.
+ `(("python" ,python)
+   ("python-jinja2" ,python-jinja2)
+   ("python-pyyaml" ,python-pyyaml)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "KDE Doxygen Tools")
+
+(description "This framework contains scripts and data for building API
+documentation (dox) in a standard format and style for KDE.
+
+For the actual documentation extraction and formatting the Doxygen tool is
+used, but this framework provides a wrapper script to make generating the
+documentation more convenient (including reading settings from the target
+framework or other module) and a standard template for the generated
+documentation.")
+;; Most parts are bsd-2, but incuded jquery is expat
+;; This list is taken from http://packaging.neon.kde.org/cgit/
+(license (list license:bsd-2 license:expat
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 01/26] gnu: extra-cmake-modules: Update to 5.24.0.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm: Update to 5.24.0.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 28 +---
 1 file changed, 21 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 57727ac..838bdb3 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -30,21 +30,35 @@
 (define-public extra-cmake-modules
   (package
 (name "extra-cmake-modules")
-(version "5.21.0")
+(version "5.24.0")
 (source
   (origin
 (method url-fetch)
-(uri (string-append "http://download.kde.org/stable/frameworks/;
+(uri (string-append "mirror://kde/stable/frameworks/"
 (version-major+minor version) "/"
 name "-" version ".tar.xz"))
 (sha256
  (base32
-  "1kbc5fkcbz9vkg0jpz10vsfgwajlrsmbl0vrbls5qvrdgbgrwlm3"
-;; The package looks for Qt5LinguistTools provided by Qt, but apparently
-;; compiles without it; it might be needed for building the
-;; documentation, which requires the additional Sphinx package.
-;; To save space, we do not add these inputs.
+  "01m12ml529pwr2sal951r5z6yb1rwbpid1y4k14nlk3xqgmdakwa"
 (build-system cmake-build-system)
+(native-inputs
+ `(("qtbase" ,qtbase))) ; For tests (needs qmake)
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ ;; install and check phase are swapped to prevent install from failing
+ ;; after testsuire has run
+ (add-after 'install 'check-post-install
+   (assoc-ref %standard-phases 'check))
+ (delete 'check
+;; optional dependencies - to save space, we do not add these inputs.
+;; Sphinx > 1.2:
+;;   Required to build Extra CMake Modules documentation in Qt Help format.
+;; Qt5LinguistTools , Qt5 linguist tools. , 
+;;   Required to run tests for the ECMPoQmTools module.
+;; Qt5Core
+;;   Required to run tests for the ECMQtDeclareLoggingCategory module,
+;;   and for some tests of the KDEInstallDirs module.
 (home-page "https://community.kde.org/Frameworks;)
 (synopsis "CMake module files for common software used by KDE")
 (description "The Extra CMake Modules package, or ECM, adds to the
-- 
2.9.0



[PATCH 11/26] gnu: kde-frameworks: Add kcoreaddons.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (kcoreaddons): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index d6a7636..edfdc08 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -349,6 +349,44 @@ propagate their changes to their respective configuration 
files.")
license:lgpl3+ license:gpl1 ; licende:mit-olif
license:bsd-2 license:bsd-3
 
+(define-public kcoreaddons
+  (package
+(name "kcoreaddons")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "06sx7by3nvaridnavj5p0bxv4nh47n708jlacfw8ydaikmd9i03h"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("qttools" ,qttools)
+   ("xorg-server" ,xorg-server))) ; for the tests
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:tests? #f ; FIXME: Test failure caused by stout/stderr being 
interleaved.
+   #:phases
+(modify-phases %standard-phases
+  (add-before 'check 'check-setup
+(lambda* _
+  (setenv "CTEST_OUTPUT_ON_FAILURE" "1") ; enable debug output
+  (setenv "HOME" (getcwd))
+  (setenv "TMPDIR" (getcwd)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Qt addon library with a collection of non-GUI utilities")
+(description "KCoreAddons provides classes built on top of QtCore to
+perform various tasks such as manipulating mime types, autosaving files,
+creating backup files, generating random sequences, performing text
+manipulations such as macro replacement, accessing user information and
+many more.")
+(license (list license:lgpl2.0+ license:lgpl2.1+
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 26/26] gnu: kde-frameworks: Add threadweaver.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (threadweaver): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 24 
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 46a0247..55ed455 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -968,3 +968,27 @@ system.")
 applications.  It supports several different plugins, including HSpell, 
Enchant,
 ASpell and HUNSPELL.")
 (license license:lgpl2.1+)))
+
+(define-public threadweaver
+  (package
+(name "threadweaver")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "02g60zr9cc4bg1p90giich4n0qvqaiakz0y94qrnyj9f7fg0yksl"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Helper for multithreaded programming")
+(description "ThreadWeaver is a helper for multithreaded programming.  It
+uses a job-based interface to queue tasks and execute them in an efficient 
way.")
+(license license:lgpl2.1+)))
-- 
2.9.0



[PATCH 15/26] gnu: kde-frameworks: Add ki18n.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (ki18n): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 43 +
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 63a251a..1b80370 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -27,6 +27,7 @@
   #:use-module (guix utils)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages compression)
+  #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
@@ -485,6 +486,48 @@ infrastructure.")
 interfaces in the areas of colors, fonts, text, images, keyboard input.")
 (license (list license:gpl2+ license:lgpl2.1+
 
+(define-public ki18n
+  (package
+(name "ki18n")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "0cw24spmwsqa3ppkw03cm6yjd3sfll0dbbk2ya76fd4nw9hb00dv"
+(build-system cmake-build-system)
+(propagated-inputs
+ `(("gettext" ,gnu-gettext)
+   ("python" ,python)))
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
+(inputs
+ `(("qtbase" ,qtbase)
+   ("qtdeclarative" ,qtdeclarative)
+   ("qtscript" ,qtscript)))
+(arguments
+ `(#:phases
+(modify-phases %standard-phases
+  (add-before 'check 'check-setup
+(lambda* _
+  (setenv "HOME" (getcwd)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "KDE Gettext-based UI text internationalization")
+(description "KI18n provides functionality for internationalizing user
+interface text in applications, based on the GNU Gettext translation system.  
It
+wraps the standard Gettext functionality, so that the programmers and 
translators
+can use the familiar Gettext tools and workflows.
+
+KI18n provides additional functionality as well, for both programmers and
+translators, which can help to achieve a higher overall quality of source and
+translated text.  This includes argument capturing, customizable markup, and
+translation scripting.")
+(license license:lgpl2.1+)))
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 05/26] gnu: kde-frameworks: Add bluez-qt.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (bluez-qt): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 35 +++
 1 file changed, 35 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 85d000b..3116526 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -25,6 +25,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix utils)
+  #:use-module (gnu packages glib)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages xorg))
@@ -105,6 +106,40 @@ The REST API is defined here:
 http://freedesktop.org/wiki/Specifications/open-collaboration-services/;)
 (license (list license:lgpl2.1+ license:lgpl3+
 
+(define-public bluez-qt
+  (package
+(name "bluez-qt")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "0gy0m7lcwwklf021l5i3v7j0cl7qz7cgvzrwpj87ix3kyw5xs80z"
+(build-system cmake-build-system)
+(native-inputs
+ `(("dbus" ,dbus)
+   ("extra-cmake-modules" ,extra-cmake-modules)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(arguments
+ `(#:configure-flags
+'("-DINSTALL_UDEV_RULE:BOOL=OFF")
+   #:phases
+(modify-phases %standard-phases
+  (replace 'check
+(lambda* _
+  (setenv "DBUS_FATAL_WARNINGS" "0")
+  (zero? (system* "dbus-launch" "ctest" ".")))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "QML wrapper for bluez")
+(description " bluez-qt is a Qt-style library for accessing the bluez
+Bluetooth stack.  It is used by the KDE Bluetooth stack, BlueDevil.")
+(license (list license:lgpl2.1+ license:lgpl3+
+
 (define-public kwindowsystem
   (package
 (name "kwindowsystem")
-- 
2.9.0



[PATCH 00/26] KDE Frameworks 5 Tier 1 packages.

2016-08-08 Thread David Craven
Tier 2 and tier 3 packages aren't far off either...

David Craven (26):
  gnu: extra-cmake-modules: Update to 5.24.0.
  gnu: kwindowsystem: Update to 5.24.0.
  gnu: oxygen-icons: Update to 5.24.0.
  gnu: kde-frameworks: Add attica.
  gnu: kde-frameworks: Add bluez-qt.
  gnu: kde-frameworks: Add breeze-icons.
  gnu: kde-frameworks: Add kapidox.
  gnu: kde-frameworks: Add karchive.
  gnu: kde-frameworks: Add kcodecs.
  gnu: kde-frameworks: Add kconfig.
  gnu: kde-frameworks: Add kcoreaddons.
  gnu: kde-frameworks: Add kdbusaddons.
  gnu: kde-frameworks: Add kdnssd.
  gnu: kde-frameworks: Add kguiaddons.
  gnu: kde-frameworks: Add ki18n.
  gnu: kde-frameworks: Add kidletime.
  gnu: kde-frameworks: Add kitemmodels.
  gnu: kde-frameworks: Add kitemviews.
  gnu: kde-frameworks: Add kplotting.
  gnu: kde-frameworks: Add kwayland.
  gnu: kde-frameworks: Add kwidgetsaddons.
  gnu: kde-frameworks: Add modemmanager-qt.
  gnu: kde-frameworks: Add networkmanager-qt.
  gnu: kde-frameworks: Add solid.
  gnu: kde-frameworks: Add sonnet.
  gnu: kde-frameworks: Add threadweaver.

 gnu/packages/kde-frameworks.scm | 923 +++-
 1 file changed, 901 insertions(+), 22 deletions(-)

--
2.9.0



[PATCH 03/26] gnu: oxygen-icons: Update to 5.24.0.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (oxygen-icons)[uri]: Use mirror.
  [native-inputs]: Make extra-cmake-modules a native-input.
---
 gnu/packages/kde-frameworks.scm | 13 ++---
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index b338555..434c6cf 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -109,22 +109,21 @@ lower level classes for interaction with the X Windowing 
System.")
 (define-public oxygen-icons
   (package
 (name "oxygen-icons")
-(version "5.21.0")
+(version "5.24.0")
 (source
   (origin
 (method url-fetch)
-(uri (string-append "http://download.kde.org/stable/frameworks/;
+(uri (string-append "mirror://kde/stable/frameworks/"
 (version-major+minor version) "/"
-name "5-"version ".tar.xz"))
+name "5" "-" version ".tar.xz"))
 (sha256
  (base32
-  "00qh1h3xx392hh73zdlknc1j9i2sck9ys74a9ffkf6an4rl0hws5"
+  "1c7spjbzk04725vv0ly7vmyvwa96mfa5ki2pm146ld4888a896wm"
 (build-system cmake-build-system)
 (native-inputs
- `(("pkg-config" ,pkg-config)))
+ `(("extra-cmake-modules" ,extra-cmake-modules)))
 (inputs
- `(("extra-cmake-modules" ,extra-cmake-modules)
-   ("qtbase" ,qtbase)))
+ `(("qtbase" ,qtbase)))
 (home-page "https://community.kde.org/Frameworks;)
 (synopsis "Oxygen provides the standard icon theme for the KDE desktop")
 (description "Oxygen icon theme for the KDE desktop")
-- 
2.9.0



[PATCH 25/26] gnu: kde-frameworks: Add sonnet.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (sonnet): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 26 ++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index beb7702..46a0247 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -942,3 +942,29 @@ which are used in DBus communication.")
 querying and interacting with hardware independently of the underlying 
operating
 system.")
 (license license:lgpl2.1+)))
+
+(define-public sonnet
+  (package
+(name "sonnet")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "152xz7fb1iwhb5w1n4xqvc648iaxi0inrl4kavxcsir61das1xyl"
+(build-system cmake-build-system)
+(native-inputs
+ `(("extra-cmake-modules" ,extra-cmake-modules)
+   ("qttools" ,qttools)))
+(inputs
+ `(("qtbase" ,qtbase)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Multi-language spell checker")
+(description "Sonnet is a plugin-based spell checking library for Qt-based
+applications.  It supports several different plugins, including HSpell, 
Enchant,
+ASpell and HUNSPELL.")
+(license license:lgpl2.1+)))
-- 
2.9.0



[PATCH 24/26] gnu: kde-frameworks: Add solid.

2016-08-08 Thread David Craven
* gnu/packages/kde-frameworks.scm (solid): New variable.

Co-authored-by: Hartmut Goebel 
---
 gnu/packages/kde-frameworks.scm | 30 ++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm
index 2e3037d..beb7702 100644
--- a/gnu/packages/kde-frameworks.scm
+++ b/gnu/packages/kde-frameworks.scm
@@ -26,11 +26,13 @@
   #:use-module (guix packages)
   #:use-module (guix utils)
   #:use-module (gnu packages admin)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages freedesktop)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gnome)
+  #:use-module (gnu packages linux)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages python)
   #:use-module (gnu packages qt)
@@ -912,3 +914,31 @@ which are used in DBus communication.")
 (synopsis "Oxygen provides the standard icon theme for the KDE desktop")
 (description "Oxygen icon theme for the KDE desktop")
 (license license:lgpl3+)))
+
+(define-public solid
+  (package
+(name "solid")
+(version "5.24.0")
+(source
+  (origin
+(method url-fetch)
+(uri (string-append "mirror://kde/stable/frameworks/"
+(version-major+minor version) "/"
+name "-" version ".tar.xz"))
+(sha256
+ (base32
+  "00wvsxcnvhdx7ijzpcz5wny2ypkxr1drdpr4yvawgpwa678l1107"
+(build-system cmake-build-system)
+(native-inputs
+ `(("bison" ,bison)
+   ("extra-cmake-modules" ,extra-cmake-modules)
+   ("qttools" ,qttools)))
+(inputs
+ `(("qtbase" ,qtbase)
+   ("udev" ,eudev)))
+(home-page "https://community.kde.org/Frameworks;)
+(synopsis "Desktop hardware abstraction")
+(description "Solid is a device integration framework.  It provides a way 
of
+querying and interacting with hardware independently of the underlying 
operating
+system.")
+(license license:lgpl2.1+)))
-- 
2.9.0



Re: [PATCH] gnu: spice: Fix usbredir for 32 bit platforms.

2016-08-08 Thread David Craven
spice still fails to build on 32 bit platforms due to a test failure,
but this is a start.



[PATCH] gnu: spice: Fix usbredir for 32 bit platforms.

2016-08-08 Thread David Craven
* gnu/packages/spice.scm (usbredir)[origin]: Fetch source from git repo.
  [native-inputs]: Add AUTOCONF, AUTOMAKE and LIBTOOL.
  [arguments]: Add autogen phase.
---
 gnu/packages/spice.scm | 34 --
 1 file changed, 28 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm
index 9e4a669..67e493a 100644
--- a/gnu/packages/spice.scm
+++ b/gnu/packages/spice.scm
@@ -18,6 +18,7 @@
 
 (define-module (gnu packages spice)
   #:use-module (gnu packages)
+  #:use-module (gnu packages autotools) ; remove after updating usbredir to 
0.7.1+
   #:use-module (gnu packages compression)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
@@ -37,6 +38,7 @@
   #:use-module (gnu packages xml)
   #:use-module (guix build-system gnu)
   #:use-module (guix download)
+  #:use-module (guix git-download) ; remove after updating usbredir to 0.7.1+
   #:use-module (guix packages)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix utils))
@@ -45,19 +47,39 @@
   (package
 (name "usbredir")
 (version "0.7.1")
+;(source (origin
+;  (method url-fetch)
+;  (uri (string-append
+;"http://spice-space.org/download/usbredir/;
+;"usbredir-" version ".tar.bz2"))
+;  (sha256
+;   (base32
+;"1wsnmk4wjpdhbn1zaxg6bmyxspcki2zgy0am9lk037rnl4krwzj0"
+; FIXME: usbredir 0.7.1 release doesn't build on 32 bit systems.
+;issue is fixed in HEAD
+;remove 'autogen phase and autoconf, automake, libtool inputs
 (source (origin
-  (method url-fetch)
-  (uri (string-append
-"http://spice-space.org/download/usbredir/;
-"usbredir-" version ".tar.bz2"))
+  (method git-fetch)
+  (uri (git-reference
+  (url "http://cgit.freedesktop.org/spice/usbredir;)
+  (commit "ac80a5971c6318d73d5fba4b5f13d3a9389558c9")))
   (sha256
(base32
-"1wsnmk4wjpdhbn1zaxg6bmyxspcki2zgy0am9lk037rnl4krwzj0"
+"052fywgi72j68dr5ybldncg4vk8iqfrh58la7iazyxxpph9aag1g"
 (build-system gnu-build-system)
 (propagated-inputs
   `(("libusb" ,libusb)))
 (native-inputs
-  `(("pkg-config" ,pkg-config)))
+  `(("pkg-config" ,pkg-config)
+("autoconf" ,autoconf)
+("automake" ,automake)
+("libtool" ,libtool)))
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'autogen
+   (lambda* _
+ (system* "sh" "autogen.sh"))
 (synopsis "Tools for sending USB device traffic over a network")
 (description "Usbredir is a network protocol for sending USB device traffic
 over a network connection.  It can be used to redirect traffic from a USB 
device
-- 
2.9.0



Re: [PATCH] ui: 'package->recutils' serializes the source field.

2016-08-08 Thread David Craven
Quoting Ludo from the thread you mentioned:

> (Besides, our package meta-data would probably still refer to the “real”
> home page of the package, from which it’s trivial to get the unmodified
> tarball.)

The discussion only applies to 'guix build --source' and I can't see any
indication from reading the thread that displaying the original source url
would be in any way problematic. Can you quote something from that
thread that would indicate otherwise?



Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread Alex Kost
> From b3c53dec33e35d554e4a30de108477bc4fbe932f Mon Sep 17 00:00:00 2001
> From: Troy Sankey 
> Date: Sun, 7 Aug 2016 13:26:30 -0400
> Subject: [PATCH 2/3] gnu: Add python-notmuch
>
> ---
>  gnu/packages/mail.scm | 42 ++
>  1 file changed, 42 insertions(+)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index c58e5f5..96537c4 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -517,6 +517,48 @@ ing, and tagging large collections of email messages.")
>  useful for email address completion.")
>  (license license:expat)))
>  
> +(define-public python-notmuch
> +  (package
> +(name "python-notmuch")
> +(version "0.22.1")
> +(source (origin
> +  (method url-fetch)
> +  ; notmuch python bindings are now unavailable on pypi.  The
> +  ; bindings are distributed via the notmuch release tarball.
> +  (uri (string-append
> +"https://notmuchmail.org/releases/notmuch-;
> +version
> +".tar.gz"))
> +  (sha256
> +   (base32
> +"0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"

I forgot one thing: since the source will be the same as the one of
'notmuch' package, I'm going to write it like this:

;; Notmuch python bindings are now unavailable on pypi.  The
;; bindings are distributed via the notmuch release tarball.
(source (package-source notmuch))

Thanks again! (no need to resend the patches, I'll fix the mentioned
notes)

-- 
Alex



Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread Alex Kost
> From 0a134eaf40aa9dd6fa5e2e24e3d226203a03da73 Mon Sep 17 00:00:00 2001
> From: Troy Sankey 
> Date: Sun, 7 Aug 2016 13:26:30 -0400
> Subject: [PATCH 2/3] gnu: Add python-notmuch
>
> ---
>  gnu/packages/mail.scm | 42 ++
>  1 file changed, 42 insertions(+)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 82e35fb..1634d86 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -517,6 +517,48 @@ ing, and tagging large collections of email messages.")
>  useful for email address completion.")
>  (license license:expat)))
>  
> +(define-public python-notmuch
> +  (package
> +(name "python-notmuch")
> +(version "0.22.1")
> +(source (origin
> +  (method url-fetch)
> +  ;; notmuch python bindings are now unavailable on pypi.  The
> +  ;; bindings are distributed via the notmuch release tarball.
> +  (uri (string-append
> +"https://notmuchmail.org/releases/notmuch-;
> +version
> +".tar.gz"))
> +  (sha256
> +   (base32
> +"0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"
> +(build-system python-build-system)
> +(inputs `(("notmuch" ,notmuch)))
> +(arguments
> + `(#:tests? #f  ; no "test" target
> +   #:phases
> +   (modify-phases %standard-phases
> + ;; this python package lives in a subdirectory of the notmuch source
> + ;; tree, so chdir into it before building:
> + (add-before 'build 'chdir
> +   (lambda* (#:key inputs outputs #:allow-other-keys)
> + (chdir "bindings/python")))

I'm going to write it like this:

 (add-after 'unpack 'enter-python-dir
   (lambda _ (chdir "bindings/python") #t))

Although the phase succeeds without this trailing #t, but it is more
accurate to use it.  The thing is: if a build phase succeeds, it should
return non-false value while the value of 'chdir' is unspecified.

> + ;; make sure the correct notmuch shared library gets loaded:
> + (add-before
> +   'build 'set-libnotmuch-file-name
> +   (lambda* (#:key inputs #:allow-other-keys)
> + (let ((notmuch (assoc-ref inputs "notmuch")))
> +   (substitute* "notmuch/globals.py"
> + (("libnotmuch\\.so\\.")
> +  (string-append notmuch "/lib/libnotmuch.so.")))
> +   #t))
> +(home-page "http://notmuchmail.org/;)
> +(synopsis "Python bindings of the Notmuch mail indexing library")
> +(description
> + "This package provides Python bindings to use the Notmuch mail indexing
> +and search library.")
> +(license gpl3+)))
> +
>  (define-public python2-notmuch
>(package
>  (name "python2-notmuch")
> -- 
> 2.1.4

I will commit this patchset in a couple of days if there will be no
other comments, thanks!
And thanks to ng0 for commenting!

-- 
Alex



Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread Alex Kost
ng0 (2016-08-08 01:04 +0300) wrote:

> Troy Sankey  writes:
>
>> Quoting ng0 (2016-08-07 15:29:34)
>>> >  (inputs
>>> > - `(("emacs" ,emacs)
>>> > -   ("glib" ,glib)
>>> > + `(("glib" ,glib)
>>>
>>> Why is emacs removed?
>>
>> Please see the commit message :)
>>
>> Of course I could be misunderstanding something, but it does build
>> successfully.  I do not normally use emacs, so I was not able to test
>> this particular change.

Commit message:

  This also removes the emacs input.  Quote from the notmuch NEWS file:

Drop dependency on "pkg-config emacs".

This only means that emacs is not required for notmuch to be built
successfully (it is done for those people who don't use emacs).  But it
doesn't mean this dependency should be dropped.  In Guix we usually
include all available features.

> Ah, sorry.
> I don't want to mix up my notmuch and the review, and I'll be occupied
> until tuesday night, so someone who does not rely on a functional
> notmuch should review if it works correctly. I find it weird that the
> input is dropped.

You are right, emacs input shouldn't be dropped.  This would lead to
non-compiled elisp files (I mean
/gnu/store/...-notmuch-0.22.1/share/emacs/site-lisp/ would contain only
*.el files but not *.elc).

I would rather replace 'emacs' with 'emacs-minimal', also I think it
should be moved to 'native-inputs'; but this does not relate to this
patch (I'll commit this change separately).

-- 
Alex



Re: bug#24146: Various window managers need startup services.

2016-08-08 Thread ng0
Tomáš Čech  writes:

> On Wed, Aug 03, 2016 at 10:42:26PM +, ng0 wrote:
>>Hi,
>>
>>Ludovic Courtès  writes:
>>
>>> ng0  skribis:
>>>
 We have gnome and xfce with services to start them in
 gnu/services/desktop.scm.

 We should add services for:

 * xmonad
 * awesome
 * ratpoison
 * windowmaker
 * sawfish
 * openbox
 * guile-wm
 * i3-wm
 * evilwm
 * dwm
 * bspwm
>>>
>>> Unlike full-blown desktop environments (GNOME, Xfce, KDE), I don’t think
>>> any of these window managers needs a service, because they typically fit
>>> in one package with just one command that needs to be launched.
>>>
>>> Compare this with ‘gnome-service-type’, which needs to extend Polkit and
>>> to add a whole bunch of packages to /run/current-system/profile so that
>>> it can work.
>>>
>>> ratpoison doesn’t need anything like that.  :-)
>>>
>>> I’m closing this bug, but let me know if you think I’m overlooking
>>> something!
>>>
>>> Thank you,
>>> Ludo’.
>>
>>
>>Am I overlooking something then?
>>
>>Is a service what is required to make them selectable (cycle by pressing
>>F1) in the SLIM login?
>>I know that they all can be started just with one command, but having
>>them in SLIM would make it more visible as long as we use SLIM.
>
> Desktop files are used for that.
>
> $ ls /gnu/store/*/share/xsessions/
>
> S_W
Never mind the previous email, I am preoccupied with other important
things the next 2 days and thinking is apparently harder than I
thought at the moment. Sorry.
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: bug#24146: Various window managers need startup services.

2016-08-08 Thread ng0
Tomáš Čech  writes:

> On Wed, Aug 03, 2016 at 10:42:26PM +, ng0 wrote:
>>Hi,
>>
>>Ludovic Courtès  writes:
>>
>>> ng0  skribis:
>>>
 We have gnome and xfce with services to start them in
 gnu/services/desktop.scm.

 We should add services for:

 * xmonad
 * awesome
 * ratpoison
 * windowmaker
 * sawfish
 * openbox
 * guile-wm
 * i3-wm
 * evilwm
 * dwm
 * bspwm
>>>
>>> Unlike full-blown desktop environments (GNOME, Xfce, KDE), I don’t think
>>> any of these window managers needs a service, because they typically fit
>>> in one package with just one command that needs to be launched.
>>>
>>> Compare this with ‘gnome-service-type’, which needs to extend Polkit and
>>> to add a whole bunch of packages to /run/current-system/profile so that
>>> it can work.
>>>
>>> ratpoison doesn’t need anything like that.  :-)
>>>
>>> I’m closing this bug, but let me know if you think I’m overlooking
>>> something!
>>>
>>> Thank you,
>>> Ludo’.
>>
>>
>>Am I overlooking something then?
>>
>>Is a service what is required to make them selectable (cycle by pressing
>>F1) in the SLIM login?
>>I know that they all can be started just with one command, but having
>>them in SLIM would make it more visible as long as we use SLIM.
>
> Desktop files are used for that.
>
> $ ls /gnu/store/*/share/xsessions/
>
> S_W

Well awesome has such a file in share/xsessions/, but just installing
awesome does not help. reconfiguring the system should, with the package
globally available maybe, but as you can see from the bug ticket I had
open it is not entirely clear. We should point out in the manual how
they are started.
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: Tor Browser

2016-08-08 Thread Alex Vong
Hello,

ng0  writes:

> Hi,
>
> in the following reply I assume that you did not read all of the
> original thread[0]. If I am wrong, correct me.
>
You are right, I didn't read the whole thread.

> Alex Vong  writes:
>
>> ng0  writes:
>>
>>> Ludovic Courtès  writes:
>>>
 n...@we.make.ritual.n0.is skribis:

> Ludovic Courtès writes:

 [...]

>> I suppose TB contains a script that does all that, right?  Would it work
>> to simply run it?  If it invokes wget/curl, then this needs to be
>> replaced, but the rest should be fine.
>
> It's not that easy I'm afraid.
> Currently they use a gitian build, as described in this README[0],
> which the person maintaining the torbrowser ebuild for Gentoo out
> of portage replicates and follows in parts.
> It can't be followed completely, as `builders/tor-browser-bundle'
> requires a checkout of gitian of the torproject.org
>
> So we have to look at what they do and recreate this build
> procedure, there's no individual Makefile, the releases are
> created in VMs.
>
> Dependencies are kept up to date here[1].
>
> This[2] is the script connecting/using gitian for gnu-linux releases.
>
> The Makefile just runs the corresponding scripts.

 Gitian is about building binaries.  There must be some script somewhere
 to apply the relevant patches to the source first, before one builds it,
 no?

>> It’s unfortunate that there’s no ready-to-build TB tarball, that would
>> simplify things for us.
>
> Yes.. But I think icecat suffers from the same problem, only that
> icecat tarballs/binaries are built using a bash script applying
> all that's needed to the firefox sources again.

 IceCat publishes source tarballs that, AIUI, are produced essentially by
 running a script that patches Firefox’s code base (same approach for
 Linux-libre.)

 Thanks,
 Ludo’.
>>>
>>> There are the .mar files, which I suppose are the built source of
>>> torbrowser, but I can't tell for sure since i can't find an upstream for
>>> mar-tools. I guess it is Mozilla, but where is it available?
>>>
>>> https://dist.torproject.org/torbrowser/6.0.3/
>>
>> Hi, I am a tor browser and torsocks user (since a few months ago). Last
>> time I tried building tor browser from source (and failed), gitian will
>> have to download some non-free xcode stuff to build for the os x
>> platform. Is it possible to only build for gnu/linux without building
>> for windows and os x? Will the resulting binary still be byte-to-byte
>> identical with the tor project official build?
>
> Was this a build with a guix package? Can you share the code if it is?
>
I was trying to reproduce the official build. I didn't write any guix
recipe.

>> Also, it seems tor browser needs virtualenv and virtualbox to
>> build. Last time I checked virtualbox, it was on the contrib area of
>> debian since it requires a non-free[1] compiler to build the bios[2].
>> I hope we can find way around these issues since tor browser is IMHO an
>> essential tool nowadays.
>
> You might want to re-read the full thread this message is part of. I
> already wrote that with the builds I use for torbrowser in Gentoo, that
> at least virtualbox is not needed and Ludovic said that the gitian build
> is not what we should be looking into. It is mostly poncho's work on
> Gentoo, but the overlay I contribute to mirrors their work. There we
> don't use gitian but a combination of torbrowser source + firefox source
> and distro specific patches.
>
I see. So poncho and you have already done the hard work :)
>
> We could also address tor with this when we succeed, as they have an
> interest in NixOS or they are looking into it, specifically hydra for
> builds: https://trac.torproject.org/projects/tor/ticket/12520
>
>> Finally, I agree that icecat could switch to tor browser as its upstream.
>
> Maybe you want to help me out with writing the email / post to
> torproject:
> https://lists.gnu.org/archive/html/guix-devel/2016-08/msg00326.html
>
> On second note, maybe this is message should be addressed to both
> torproject and icecat developer(s). What do you think? I have no fixed
> plan in mind for this.
>
Hmm, maybe I will give my (rough) idea here. In my opinion, icecat has 2
important features, librejs (gpl3+) and the lack of non-free addons
suggestion.

For librejs, TBB already have noscripts, although they serve different
purposes (librejs intends to block non-free js only), I doubt devs would
want to include 2 js blocker addons. But I think html5 everyhere will be
a good addon for TBB since most html5 player requires js. Currently,
enabling noscript breaks most video-playing sites.

For the lack of non-free addons suggestion, TBB recommends not to
install addon, but the addon page is still there, which suggest 

Re: [PATCH] gnu: st: Mov to terminals.scm.

2016-08-08 Thread ng0
Hi,

Mathieu Lirzin  writes:

> ng0  writes:
>
>> Mathieu Lirzin  writes:
>>
>>> I don't have an opinion on the move, however when moving packages across
>>> modules your have to keep track of the copyrights.
>>
>> Oh... Okay, I forgot about that, I never moved packages. Thanks for
>> pointing it out to me.
>> I know that my personal copyright was limited to the st copyright in
>> suckless.
>> I moved other packages, should I look at the git log of suckless.scm and
>> add the copyrights which apply?
>
> Yes, I think so.
>
> Thank you.

the changes are addressed in a separate patch (Subject: "[PATCH]" as I
forgot to add more to the Subject) which also addresses copyrights which
were dropped when dwm.scm was moved to suckless.scm.
I have to assume that other people did same mistakes in the past, and
the sent patch should work as it does contain more than I moved.
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: ‘core-updates’ merge is a squashed commit

2016-08-08 Thread Andy Wingo
On Sat 06 Aug 2016 09:52, Andreas Enge  writes:

> I am not very happy about such a policy; if I sign a commit, I am only
> signing my commit, and not all of its history

For what it's worth, this is not quite true.  The SHA1 hashes of parent
commits are part of the commit object itself, so if you sign a commit
you are also signing its history.

Andy



Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread ng0
ng0  writes:

> Troy Sankey  writes:
>
>> Updated patches address all comments so far except for the removal of
>> the emacs input.  Also updated the test numbers just for fun.
>>
>> Quoting ng0 (2016-08-07 18:24:57)
>>> I'd also advise to upgrade git to something more recent if your distro
>>> allows it :)
>>
>> Debian stable :)  It's a long term project of mine to switch to GuixSD.
>> I'm switching over one package at a time.  Next is notmuch!
>
> Maybe git 2.9.x is in backports.. I'm just pointing this out because
> recently someone told me about security issues with certain versions of
> git.
>
>>> I'll try to test build tomorrow morning when my buildserver is up
>>> again. release notes read interesting enough. thanks for the patches.
>>
>> Thanks.
>>
>> Troy

The patches build, the practical part I can not review, reading the
CHANGELOG I assume it to work this way, but someone else should review
this.

>> From 034a4ac3b1bc85ae574fbe9f79add609cf311cc1 Mon Sep 17 00:00:00 2001
>> From: Troy Sankey 
>> Date: Sun, 7 Aug 2016 13:21:28 -0400
>> Subject: [PATCH 1/3] gnu: notmuch: Update to 0.22.1.
>>
>> This also removes the emacs input.  Quote from the notmuch NEWS file:
>>
>>   Drop dependency on "pkg-config emacs".

I don't feel good about this commit message, I would rather write:

gnu: notmuch: Update to 0.22.1.

* gnu/packages/mail.scm (notmuch): Update to 0.22.1.
(notmuch)[inputs]: Remove emacs.


Or something like this.

What do you think?
-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org



Re: ‘core-updates’ merge is a squashed commit

2016-08-08 Thread Andy Wingo
On Sat 06 Aug 2016 04:07, Leo Famulari  writes:

> But, I also think the primary point of signing the commits is to record
> the identity of the person responsible for the commit, and so I think
> the policy should be to sign each commit. [0]

To me this is not the value that signing brings; rather, signing
protects against an attack in which a malicious third party updates the
Guix git repository to have a vulnerable commit.

Given that most people run "guix pull" without inspecting the commits,
this is real value: it would be possible to even make "guix pull" only
accept updates whose HEAD is signed by a key in the keyring.  Having the
hook only accept signed HEADs is a good start along that path of course.

> Isn't it better for the identity information to be inherent to the Git
> commits themselves, since those are what is preserved by Git? Git does
> not preserve hooks or policies.

The convention that a signature goes along with responsibility is also a
policy -- any path we take is a convention.

> Also, is there some problem with signing each commit? I don't know why
> we'd want to stop doing this.

I think there's a risk of signing fatigue.  The more signatures you make
with your key, the more likely it is that you sign something that you
didn't mean to.  To me it makes sense to reduce the number of signatures
to the minimum necessary to preserve whatever security properties we are
interested in; but YMMV obviously :)

Andy



Re: [PATCH] update notmuch and python bindings

2016-08-08 Thread ng0
Troy Sankey  writes:

> Updated patches address all comments so far except for the removal of
> the emacs input.  Also updated the test numbers just for fun.
>
> Quoting ng0 (2016-08-07 18:24:57)
>> I'd also advise to upgrade git to something more recent if your distro
>> allows it :)
>
> Debian stable :)  It's a long term project of mine to switch to GuixSD.
> I'm switching over one package at a time.  Next is notmuch!

Maybe git 2.9.x is in backports.. I'm just pointing this out because
recently someone told me about security issues with certain versions of
git.

>> I'll try to test build tomorrow morning when my buildserver is up
>> again. release notes read interesting enough. thanks for the patches.
>
> Thanks.
>
> Troy

> From 034a4ac3b1bc85ae574fbe9f79add609cf311cc1 Mon Sep 17 00:00:00 2001
> From: Troy Sankey 
> Date: Sun, 7 Aug 2016 13:21:28 -0400
> Subject: [PATCH 1/3] gnu: notmuch: Update to 0.22.1.
>
> This also removes the emacs input.  Quote from the notmuch NEWS file:
>
>   Drop dependency on "pkg-config emacs".
> ---
>  gnu/packages/mail.scm | 11 +--
>  1 file changed, 5 insertions(+), 6 deletions(-)
>
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 28978a8..82e35fb 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -436,18 +436,18 @@ attachments, create new maildirs, and so on.")
>  (define-public notmuch
>(package
>  (name "notmuch")
> -(version "0.21")
> +(version "0.22.1")
>  (source (origin
>(method url-fetch)
>(uri (string-append "https://notmuchmail.org/releases/notmuch-;
>version ".tar.gz"))
>(sha256
> (base32
> -"1cr53rbpkcy3pvrmhbg2gq7sjpwb0c8xd7a4zhzxbiv8s7z8yvyh"
> +"0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"
>  (build-system gnu-build-system)
>  (arguments
> - '(#:tests? #f ;; FIXME: 662 tests; 168 fail and 99 are skipped
> -   ;; with perl input: 50 fail and 99 are skipped
> + '(#:tests? #f ; FIXME: 694 tests; 170 fail and 100 are skipped
> +   ; with perl input: 50 fail and 100 are skipped

I think this comment should not be updated in your patch, like I wrote
before someone should update the comment when either the whole file is
addressed in stylistic fixes or when the tests are changed from false to
true or something test related is changed. Your version bump does not do
this.

> #:phases (modify-phases %standard-phases
>(replace 'configure
>  (lambda* (#:key outputs #:allow-other-keys)
> @@ -464,8 +464,7 @@ attachments, create new maildirs, and so on.")
> ("python-sphinx" ,python2-sphinx)
> ("bash-completion" ,bash-completion)))
>  (inputs
> - `(("emacs" ,emacs)
> -   ("glib" ,glib)
> + `(("glib" ,glib)
> ("gmime" ,gmime)
> ("talloc" ,talloc)
> ("xapian" ,xapian)
> -- 
> 2.1.4
>

-- 
♥Ⓐ  ng0
Current Keys: https://we.make.ritual.n0.is/ng0.txt
For non-prism friendly talk find me on http://www.psyced.org