Re: [PATCH v8] gnu: Update ldc to 0.17.1.

2016-09-14 Thread Efraim Flashner
On Tue, Sep 13, 2016 at 10:01:39PM +0200, Danny Milosavljevic wrote:
> gnu: Update ldc to 0.17.1.
> 
> * gnu/packages/ldc.scm (ldc): Changed.
> * gnu/packages/patches/ldc-0.17.1-disable-tests.patch: New patch.
> ---
>  gnu/packages/ldc.scm   | 25 ---
>  .../patches/ldc-0.17.1-disable-tests.patch | 86 
> ++
>  2 files changed, 101 insertions(+), 10 deletions(-)
>  create mode 100644 gnu/packages/patches/ldc-0.17.1-disable-tests.patch
> 

> diff --git a/gnu/packages/ldc.scm b/gnu/packages/ldc.scm
> index 560fa49..88f3443 100644
> --- a/gnu/packages/ldc.scm
> +++ b/gnu/packages/ldc.scm
> @@ -29,6 +29,7 @@
>#:use-module (gnu packages compression)
>#:use-module (gnu packages libedit)
>#:use-module (gnu packages llvm)
> +  #:use-module (gnu packages python)
>#:use-module (gnu packages textutils)
>#:use-module (gnu packages zip))
>  
> @@ -76,7 +77,7 @@ and freshness without requiring additional information from 
> the user.")
>  (define-public ldc
>(package
>  (name "ldc")
> -(version "0.16.1")
> +(version "0.17.1")
>  (source (origin
>(method url-fetch)
>(uri (string-append
> @@ -85,10 +86,9 @@ and freshness without requiring additional information 
> from the user.")
>(file-name (string-append name "-" version ".tar.gz"))
>(sha256
> (base32
> -"1jvilxx0rpqmkbja4m69fhd5g09697xq7vyqp2hz4hvxmmmv4j40"
> +"0rwggnbr60jbajfdw11kx058llmwljiss8rrv8df07vaygiv845i"
>  (build-system cmake-build-system)
> -;; LDC currently only supports the x86_64 and i686 architectures.
> -(supported-systems '("x86_64-linux" "i686-linux"))
> +(supported-systems '("x86_64-linux" "i686-linux" "armhf-linux"))
>  (arguments
>   `(#:phases
> (modify-phases %standard-phases
> @@ -105,10 +105,13 @@ and freshness without requiring additional information 
> from the user.")
>   (add-after 'unpack-submodule-sources 'patch-dmd2
> (lambda* (#:key inputs #:allow-other-keys)
>   (substitute* "dmd2/root/port.c"
> +   (("#include ") "#include ")
> ((" ::isnan") " isnan")
> ((" ::isinf") " isinf")
> -   (("#undef isnan") "")
> -   (("#undef isinf") ""))
> +   (("#undef isnan") "#undef isnan
> +using namespace std;")
> +   (("#undef isinf") "#undef isinf
> +using namespace std;"))
>   #t))
>   (add-after 'unpack-submodule-sources 'patch-phobos
> (lambda* (#:key inputs #:allow-other-keys)
> @@ -130,6 +133,8 @@ and freshness without requiring additional information 
> from the user.")
>   `(("llvm" ,llvm-3.7)
> ("clang" ,clang-3.7)
> ("unzip" ,unzip)
> +   ("python-wrapper" ,python-wrapper) ; Needed for running tests
> +   ("python-lit" ,python-lit) ; Needed for running tests
> ("phobos-src"
>  ,(origin
> (method url-fetch)
> @@ -138,8 +143,8 @@ and freshness without requiring additional information 
> from the user.")
>   version ".tar.gz"))
> (sha256
>  (base32
> - "0sgdj0536c4nb118yiw1f8lqy5d3g3lpg9l99l165lk9xy45l9z4"))
> -   (patches (search-patches "ldc-disable-tests.patch"
> + "17nb1yvqblqj3q42c8nlnwvy823fw6kna28n2b48j4m6kd2w0nan"))
> +   (patches (search-patches "ldc-0.17.1-disable-tests.patch"
> ("druntime-src"
>  ,(origin
> (method url-fetch)
> @@ -148,7 +153,7 @@ and freshness without requiring additional information 
> from the user.")
>   version ".tar.gz"))
> (sha256
>  (base32
> - "0z4mkyddx6c4sy1vqgqvavz55083dsxws681qkh93jh1rpby9yg6"
> + "129j7mfd0vnzaw7i6hr5waxm5cb0qcm8gyawy2xy5avlv8hrw5m4"
> ("dmd-testsuite-src"
>  ,(origin
> (method url-fetch)
> @@ -157,7 +162,7 @@ and freshness without requiring additional information 
> from the user.")
>   version ".tar.gz"))
> (sha256
>  (base32
> - "0yc6miidzgl9k33ygk7xcppmfd6kivqj02cvv4fmkbs3qz4yy3z1"))
> + "18h16lwwmr3k9dh7mcip17il72mz680wnygv9d0mdnivczn80zyv"))
>  (home-page "http://wiki.dlang.org/LDC;)
>  (synopsis "LLVM compiler for the D programming language")
>  (description
> diff --git a/gnu/packages/patches/ldc-0.17.1-disable-tests.patch 
> b/gnu/packages/patches/ldc-0.17.1-disable-tests.patch
> new file mode 100644
> index 000..b213894
> --- /dev/null
> +++ b/gnu/packages/patches/ldc-0.17.1-disable-tests.patch
> @@ -0,0 +1,86 @@
> +Adapted from "ldc-disable-tests.patch" from Guix.
> +diff -ru a/std/datetime.d b/std/datetime.d
> +--- a/std/datetime.d 2016-08-02 23:56:13.969292202 +0200
>  b/std/datetime.d 2016-08-02 23:57:39.078408313 

Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread Ricardo Wurmus

ng0  writes:

> Ricardo Wurmus  writes:
>> In this case we should probably split these changes up as they are not
>> related to one another.  Alternatively, the summary line should be
>> changed to apply to all of the changes in this patch.
>
> Can you give me an example how the summary line should look like then?

I just checked the git log but couldn’t find a similar package in which
changes of this magnitude were summarised in one commit.

I suggest splitting this up.  Actually, though, I think the description
doesn’t need changing.  I only suggested removing the sentence because I
assumed that the package didn’t yet exist.  There’s no harm in keeping
it.

Without the description change it’s really just one thing that has been
changed:

gnu: femtolisp: Remove custom "patch-makefile" phase.

* gnu/packages/lisp.scm (femtolisp)[arguments]: Remove
  "patch-makefile" phase; specify test target; build "release"
  target instead of "default".

What do you think?

~~ Ricardo




Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread ng0
Ricardo Wurmus  writes:

> ng0  writes:
>
>> Ricardo Wurmus  writes:
>>> In this case we should probably split these changes up as they are not
>>> related to one another.  Alternatively, the summary line should be
>>> changed to apply to all of the changes in this patch.
>>
>> Can you give me an example how the summary line should look like then?
>
> I just checked the git log but couldn’t find a similar package in which
> changes of this magnitude were summarised in one commit.
>
> I suggest splitting this up.  Actually, though, I think the description
> doesn’t need changing.  I only suggested removing the sentence because I
> assumed that the package didn’t yet exist.  There’s no harm in keeping
> it.
>
> Without the description change it’s really just one thing that has been
> changed:

Ah, you are right.

> gnu: femtolisp: Remove custom "patch-makefile" phase.
>
> * gnu/packages/lisp.scm (femtolisp)[arguments]: Remove
>   "patch-makefile" phase; specify test target; build "release"
>   target instead of "default".
>
> What do you think?
>
> ~~ Ricardo
>
>

I will send an updated patch in one or two hours, thanks.

-- 
  ng0



[PATCH] gnu: Add mcelog.

2016-09-14 Thread Tobias Geerinckx-Rice
* gnu/packages/linux.scm (mcelog): New variable.
---
 gnu/packages/linux.scm | 41 +
 1 file changed, 41 insertions(+)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 3ec6514..fc4faa4 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -74,6 +74,7 @@
   #:use-module (guix build-system python)
   #:use-module (guix build-system trivial)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix utils)
@@ -2939,3 +2940,43 @@ the default @code{nsswitch} and the experimental 
@code{umich_ldap}.")
  "Tools for loading and managing Linux kernel modules, such as `modprobe',
 `insmod', `lsmod', and more.")
 (license license:gpl2+)))
+
+(define-public mcelog
+  (package
+(name "mcelog")
+(version "141")
+(source
+ (let ((commit (string-append "v" version)))
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://git.kernel.org/pub/scm/utils/cpu/mce/mcelog.git;)
+   (commit commit)))
+ (sha256
+  (base32
+   "0iqvqiwf3aawmgjcyg2rj427m8nvfbfnmmfv0606nhr59l14h5jr"))
+ (file-name (string-append name "-" version))
+ (modules '((guix build utils)))
+ (snippet
+  ;; Hard-code version to avoid a git (and .git/) build dependency.
+  `(substitute* "Makefile"
+ (("\"unknown\"") (string-append "\"" ,commit "\"")))
+(build-system gnu-build-system)
+(arguments
+ `(#:phases (modify-phases %standard-phases
+  (delete 'configure))  ; no configure script
+#:make-flags (list "CC=gcc"
+   (string-append "DESTDIR="
+  (assoc-ref %outputs "out"))
+   "prefix="
+   "DOCDIR=/share/doc/mcelog"
+   "etcprefix=$(DOCDIR)/examples")
+#:tests? #f))   ; tests must be run as root
+(home-page "http://mcelog.org/;)
+(synopsis "Machine check monitor for x86 Linux systems")
+(description
+ "The mcelog daemon is required by the Linux kernel to log memory, I/O,
+  CPU, and other hardware errors on x86 systems.  It can also perform
+  user-defined tasks, such as bringing bad pages off-line, when
+  configurable error thresholds are exceeded.")
+(license license:gpl2)))
-- 
2.7.4




Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread ng0
From 4061b7fb71a40591dd8e34ee147153aa0d1d9fdc Mon Sep 17 00:00:00 2001
From: ng0 
Date: Tue, 13 Sep 2016 20:19:57 +
Subject: [PATCH] gnu: femtolisp: Remove custom "patch-makefile" phase.

* gnu/packages/lisp.scm (femtolisp)[arguments]: Remove
"patch-makefile" phase; specify test target; build "release"
target instead of "default".
---
 gnu/packages/lisp.scm | 14 +++---
 1 file changed, 3 insertions(+), 11 deletions(-)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 3461de4..c7b8f35 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -503,19 +503,11 @@ the InterLisp Standard.")
   "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja"
   (build-system gnu-build-system)
   (arguments
-   `(#:make-flags '("CC=gcc")
- #:tests? #f ; No make check
+   `(#:make-flags '("CC=gcc" "release")
+ #:test-target "test"
  #:phases
  (modify-phases %standard-phases
(delete 'configure) ; No configure script
-   ;; We have to remove the 'test phase because it requires
-   ;; the flisp binary to be present. Instead we run
-   ;; bootstrap.sh after the 'install phase.
-   (add-before 'build 'patch-makefile
- (lambda _
-   (substitute* "Makefile"
- (("default: release test") "default: release"))
-   #t))
(replace 'install ; Makefile has no 'install phase
 (lambda* (#:key outputs #:allow-other-keys)
   (let* ((out (assoc-ref outputs "out"))
@@ -533,7 +525,7 @@ the InterLisp Standard.")
  (install-file "flisp.boot" bin
   (synopsis "Scheme-like lisp implementation")
   (description
-   "@code{femtolisp} is a scheme-like lisp implementation with a
+   "@code{femtolisp} is a Scheme-like lisp implementation with a
 simple, elegant Scheme dialect.  It is a lisp-1 with lexical scope.
 The core is 12 builtin special forms and 33 builtin functions.")
   (home-page "https://github.com/JeffBezanson/femtolisp;)
-- 
2.10.0



-- 
  ng0


signature.asc
Description: PGP signature


Re: [PATCH 1/2] gnu: python: Add python-i3.

2016-09-14 Thread Ivan Vilata i Balaguer
Brendan Tildesley (2016-09-14 20:17:34 +1000) wrote:

> On 2016-09-14 19:16, Ivan Vilata i Balaguer wrote:
> 
> This is version 0.6.4, but the git repo has a few small updates since
> then, and has bumbed the version to 0.6.5. Being 4 years old, probably
> this is not going to find it's way to pypi? Other than that I can't
> see issues with the package. Perhaps it is not significant to matter?

Well observed, I opened a new issue in case the developer is still
around: .

-- 
Ivan Vilata i Balaguer -- https://elvil.net/



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Marius Bakke
Tobias Geerinckx-Rice  writes:

> * gnu/packages/linux.scm (mcelog): New variable.

Thanks!

> ---
>  gnu/packages/linux.scm | 41 +
>  1 file changed, 41 insertions(+)
>
> diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
> index 3ec6514..fc4faa4 100644
> --- a/gnu/packages/linux.scm
> +++ b/gnu/packages/linux.scm
> @@ -74,6 +74,7 @@
>#:use-module (guix build-system python)
>#:use-module (guix build-system trivial)
>#:use-module (guix download)
> +  #:use-module (guix git-download)
>#:use-module ((guix licenses) #:prefix license:)
>#:use-module (guix packages)
>#:use-module (guix utils)
> @@ -2939,3 +2940,43 @@ the default @code{nsswitch} and the experimental 
> @code{umich_ldap}.")
>   "Tools for loading and managing Linux kernel modules, such as 
> `modprobe',
>  `insmod', `lsmod', and more.")
>  (license license:gpl2+)))
> +
> +(define-public mcelog
> +  (package
> +(name "mcelog")
> +(version "141")
> +(source
> + (let ((commit (string-append "v" version)))
> +   (origin
> + (method git-fetch)
> + (uri (git-reference
> +   (url 
> "https://git.kernel.org/pub/scm/utils/cpu/mce/mcelog.git;)
> +   (commit commit)))

It's not visible in the cgit interface, but it actually seems to support
normal snapshot downloads:
https://git.kernel.org/cgit/utils/cpu/mce/mcelog.git/snapshot/v141.tar.gz

> + (sha256
> +  (base32
> +   "0iqvqiwf3aawmgjcyg2rj427m8nvfbfnmmfv0606nhr59l14h5jr"))
> + (file-name (string-append name "-" version))
> + (modules '((guix build utils)))
> + (snippet
> +  ;; Hard-code version to avoid a git (and .git/) build dependency.
> +  `(substitute* "Makefile"
> + (("\"unknown\"") (string-append "\"" ,commit "\"")))
> +(build-system gnu-build-system)
> +(arguments
> + `(#:phases (modify-phases %standard-phases
> +  (delete 'configure))  ; no configure script
> +#:make-flags (list "CC=gcc"
> +   (string-append "DESTDIR="
> +  (assoc-ref %outputs "out"))
> +   "prefix="
> +   "DOCDIR=/share/doc/mcelog"
> +   "etcprefix=$(DOCDIR)/examples")
> +#:tests? #f))   ; tests must be run as root

Does all tests have to run as root? Also, could you reverse the order of
the arguments to match other package definitions?

> +(home-page "http://mcelog.org/;)

Nit-pick: the trailing slash is unnecessary :)

> +(synopsis "Machine check monitor for x86 Linux systems")

If this is x86-only, perhaps we should set (supported-systems)?

> +(description
> + "The mcelog daemon is required by the Linux kernel to log memory, I/O,
> +  CPU, and other hardware errors on x86 systems.  It can also perform
> +  user-defined tasks, such as bringing bad pages off-line, when
> +  configurable error thresholds are exceeded.")
> +(license license:gpl2)))

The rest LGTM.



Re: [PATCH v8] gnu: Update ldc to 0.17.1.

2016-09-14 Thread Danny Milosavljevic
Hi,

> With this patch I got:
> 
> The following tests FAILED:
> 238 - std.datetime (Failed)
> 296 - std.regex.internal.tests (Failed)
> 568 - std.datetime-debug (Failed)
> 626 - std.regex.internal.tests-debug (Failed)
> 670 - dmd-testsuite-debug (Failed)

Huh really?

I just cloned the guix git repo into a new directory, applied exactly this 
patch, bootstrapped, built everything, then did ./pre-inst-env guix package -i 
ldc and it worked, tests and all... (on x86_64 on GuixSD)

Which architecture was your test on?

Can you check what exactly failed? There should be a log in there (if you built 
it using "--keep-failed" at least).



Re: [PATCH] gnu: Add emacs-es-mode

2016-09-14 Thread Ludovic Courtès
Christopher Baines  skribis:

> * gnu/packages/emacs.scm (emacs-es-mode): New variable.

I made minor changes:

> +(inputs `(("guile" ,guile-2.0)))

I removed it since it’s unused, AFAICS.

> +(propagated-inputs
> + ; The version of org in Emacs 24.5 is not sufficient, and causes
> + ; tables to be rendered incorrectly

Use “;;”.

> +(description "es-mode includes highlighting, completion and indentation
> +support for Elasticsearch queries.  Also supported are es-mode blocks in
> +org-mode, for which the results of queries can be processed through jq, or
> +in the case of aggregations, can be rendered in to a table.  In addition,
> +there is a es-command-center mode, which displays information about
> +Elasticsearch clusters")

Used @code where appropriate and added missing period.

Pushed as 8bebe734ca54bf83ceae4db0a91f09a706562882, thanks!

Ludo’.



Re: [PATCH] gnu: icedtea-8: Hardcode dynamically loaded libraries.

2016-09-14 Thread Ludovic Courtès
iyzs...@member.fsf.org (宋文武) skribis:

> l...@gnu.org (Ludovic Courtès) writes:

[...]

>> What often works in such cases is to force ISO-8859-1 encoding
>> (“Latin-1”), which is a “catch-all” encoding (it’s an 8-bit encoding
>> that covers the 256 values):
>>
>>   (with-fluids ((%default-port-encoding "ISO-8859-1"))
>> (substitute* file-in-arbitrary-ascii-compatible-encoding
>>   …))
>>
>
> Yeah, I tried that, but it was also producing 'encoding-error' in the
> builder, so I gave up it.
>
> It seems that's because the locale is "C" when calling `substitute*',

Weird; the ‘install-locale’ phase normally installs a UTF-8 locale, and
the locale shouldn’t matter once we’re overridden
‘%default-port-encoding’.

> and the files have UTF-8 copyright sign (©).  But out of the builder,
> the `substitute*' works fine even with '(setlocale LC_ALL "C")'.

Hmm, OK.  Subtle things going on.  :-)

Thanks,
Ludo’.



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Danny Milosavljevic
> >> +(home-page "http://mcelog.org/;)  
> > Nit-pick: the trailing slash is unnecessary :)  

If you don't include the trailing slash it will require an additional 
round-trip to the server in order to add it via a (302) redirect.



Re: [PATCH 3/7] gnu: Add stb-image-for-extempore.

2016-09-14 Thread Thompson, David
On Wed, Sep 14, 2016 at 5:38 AM, Ricardo Wurmus  wrote:
> * gnu/packages/image.scm (stb-image-for-extempore): New variable.

LGTM.

- Dave



Re: [PATCH 2/7] gnu: Add assimp.

2016-09-14 Thread Thompson, David
On Wed, Sep 14, 2016 at 5:38 AM, Ricardo Wurmus  wrote:
> * gnu/packages/graphics.scm (assimp): New variable.

Awesome!  Now someone can package guile-assimp. :)

LGTM.

- Dave



Re: [PATCH v8] gnu: Update ldc to 0.17.1.

2016-09-14 Thread Ludovic Courtès
Hi Danny,

Here’s what I see in my inbox:

--8<---cut here---start->8---
Yesterday, 21:37 [  10: Danny Milosavljevic] [PATCH v5] gnu: Update ldc to 
0.17.1.
Yesterday, 21:51 [  10: Danny Milosavljevic] [PATCH v6] gnu: Update ldc to 
0.17.1.
Yesterday, 21:56 [  11: Danny Milosavljevic] [PATCH v7] gnu: Update ldc to 
0.17.1.
Yesterday, 22:02 [  60: Stefan Reichör ] New package: python-glances
Yesterday, 22:01 [  11: Danny Milosavljevic] [PATCH v8] gnu: Update ldc to 
0.17.1.
--8<---cut here---end--->8---

4 revisions of one patch in 20 minutes without any review in between.
:-)  This can be confusing to potential reviewers!

Ludo’.



Re: User-profile search paths should include system-profile directories

2016-09-14 Thread Ludovic Courtès
Hello,

csanchez...@gmail.com (Carlos Sánchez de La Lama) skribis:

> I have an interesting case here. I have guile installed in my system
> profile, so that
>
> /var/guix/profiles/system/profile/share/aclocal/guile.m4
>
> is there. However, autoconf is installed in my *user* profile, so
> ACLOCAL_PATH is augmented in ~/.guix-profile/etc/profile to include
>
> ~/.guix-profile/share/aclocal
>
> But not the system-profile aclocal directory, which would be put into
> ACLOCAL_PATH by /var/guix/profiles/system/profile/etc/profile if
> autoconf was installed in the systme profile as well.
>
> Is this the intended behaviour? I am wondering whether packages with
> search paths should include both the user-profile directories and the
> system-profile ones.

I think you’re right.  This was discussed at
, leading to a patch (for GuixSD).

However, we failed to build consensus around the approach of this patch,
so we did not apply it.  If you have ideas, please email
20...@debbugs.gnu.org.  :-)

One of the fruits of this discussion, though, is that you can do:

  guix package -p /run/current-system/profile -p ~/.guix-profile --search-paths

to get the combined search paths.

Ludo’.



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Ludovic Courtès
Tobias Geerinckx-Rice  skribis:

> * gnu/packages/linux.scm (mcelog): New variable.

To complement what Marius wrote…

> +(arguments
> + `(#:phases (modify-phases %standard-phases
> +  (delete 'configure))  ; no configure script
> +#:make-flags (list "CC=gcc"

Please align the #:.

> +(description
> + "The mcelog daemon is required by the Linux kernel to log memory, I/O,
> +  CPU, and other hardware errors on x86 systems.  It can also perform
> +  user-defined tasks, such as bringing bad pages off-line, when
> +  configurable error thresholds are exceeded.")
   ^^
Remove leading space here.

Thanks.  :-)

Ludo’.



Re: [PATCH 6/7] gnu: Add portmidi-for-extempore.

2016-09-14 Thread Thompson, David
On Wed, Sep 14, 2016 at 5:38 AM, Ricardo Wurmus  wrote:
> * gnu/packages/music.scm (portmidi-for-extempore): New variable.
> ---
>  gnu/packages/music.scm | 17 +
>  1 file changed, 17 insertions(+)
>
> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
> index f294564..c62dbbc 100644
> --- a/gnu/packages/music.scm
> +++ b/gnu/packages/music.scm
> @@ -1081,6 +1081,23 @@ projects.")
>  using a system-independent interface.")
>  (license license:expat)))
>
> +(define-public portmidi-for-extempore
> +  (package (inherit portmidi)
> +(name "portmidi-for-extempore")
> +(version "217")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append 
> "https://github.com/extemporelang/portmidi/;
> +  "archive/" version ".tar.gz"))
> +  (file-name (string-append name "-" version ".tar.gz"))
> +  (sha256
> +   (base32
> +"0gjikwciyr8kk4y3qiv1pcq58xpgw38ql1m2gs6g0qc1s8sx4235"
> +(build-system cmake-build-system)
> +(arguments `(#:tests? #f)) ; no tests
> +(native-inputs '())

Remove this line. ^

> +(home-page "https://github.com/extemporelang/portmidi/;)))
> +
>  (define-public python-pyportmidi
>(package
>  (name "python-pyportmidi")
> --
> 2.10.0

LGTM otherwise.

- Dave



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Danny Milosavljevic
DESTDIR is a feature which lets you install into a tempdir. The idea is that 
you install it all there and then atomically replace the ORIGINAL version at 
the non-DESTDIR location.

It's very bad to set DESTDIR to out because the outdir is used after 
installation, too (your program will stay at that place). This is not expected 
by DESTDIR.

So for example let's say you'd have

DESTDIR=/tmp
PREFIX=/usr

.

Then for example a theme is first installed to /tmp/usr/share/themes (by make) 
- but after it's all done, the distribution is supposed to move it to 
/usr/share/themes atomically. The program will *always* (also when its still 
installed to /tmp/usr/share/themes) try to load its files from 
/usr/share/themes.



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Marius Bakke
Danny Milosavljevic  writes:

> DESTDIR is a feature which lets you install into a tempdir. The idea
> is that you install it all there and then atomically replace the
> ORIGINAL version at the non-DESTDIR location.

Oops, I meant DOCDIR! Sorry for the confusion!

>> >> +(home-page "http://mcelog.org/;)  
>> > Nit-pick: the trailing slash is unnecessary :)  
>
> If you don't include the trailing slash it will require an additional
> round-trip to the server in order to add it via a (302) redirect.

That's a very good point, although all HTTP clients I've used add it
automatically. But, explicit is better than implicit and all that.

Now I'll have to start doing it too :)

Thanks!
Marius



[PATCH] gnu: xorg-server: Set default font path to empty.

2016-09-14 Thread 宋文武
* gnu/packages/xorg.scm (xorg-server)[arguments]: Pass
"--with-default-font-path=" to #:configure-flags.
---
 gnu/packages/xorg.scm | 4 
 1 file changed, 4 insertions(+)

diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index 0d3cdce..fb80e85 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -5128,6 +5128,10 @@ over Xlib, including:
  (string-append "--with-xkb-bin-directory="
 (assoc-ref %build-inputs "xkbcomp")
 "/bin")
+ ;; By default, it ends up with invalid '${prefix}/...', causes:
+ ;;   _FontTransOpen: Unable to Parse address ${prefix}/share/...
+ ;; It's not used anyway, so set it to empty.
+ "--with-default-font-path="
 
  ;; For the log file, etc.
  "--localstatedir=/var")
-- 
2.8.4




Re: [PATCH 2/2] gnu: Add GSSD and Pipefs services (Usage of @var)

2016-09-14 Thread Ludovic Courtès
John Darrington  skribis:

> On Tue, Sep 13, 2016 at 01:45:19PM +0200, Ludovic Court??s wrote:
>  John Darrington  skribis:
>
>  > +@item @code{nfs-utils} (default: @code{nfs-utils})
>  ^
>  Should be @var, because here we???re talking about the value of the
>  ???nfs-utils??? global variable.
>
> I think you are mistaken here.  Quoting from the Texinfo manual:
>
> Use the @var command to indicate metasyntactic variables. A metasyntactic 
>variable is something that stands for another piece of text. For example, 
> you
>should use a metasyntactic variable in the documentation of a function to 
>describe the arguments that are passed to that function.
>
> Do not use @var for the names of normal variables in computer programs. 
> These
>are specific names, so @code is correct for them (@code).  For example, 
> the 
>Emacs Lisp variable texinfo-tex-command is not a metasyntactic variable; 
> it 
>is properly formatted using @code.
>
> Or have I got it wrong?

Dunno, my interpretation is that ‘nfs-utils’ here denotes the value of
the ‘nfs-utils’ variable, so it “stands for another piece of text”,
which is (package (name "nfs-utils") …).

No big deal, but we should settle on a single convention and so far
we’ve used @var in such cases.

Ludo’.



Re: [PATCH 5/7] gnu: Add kiss-fft-for-extempore.

2016-09-14 Thread Thompson, David
On Wed, Sep 14, 2016 at 5:38 AM, Ricardo Wurmus  wrote:
> * gnu/packages/algebra.scm (kiss-fft-for-extempore): New variable.

LGTM.

- Dave



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Tobias Geerinckx-Rice
Ludo',

On 14/09/16 17:02, Ludovic Courtès wrote:
> Please align the #:.
> Remove leading space here.

Yup, I noticed :-) Thanks.

Kind regards,

T G-R



signature.asc
Description: OpenPGP digital signature


Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Marius Bakke
Tobias Geerinckx-Rice  writes:

> On 14/09/16 15:45, Marius Bakke wrote:
>> It's not visible in the cgit interface, but it actually seems to 
>> support normal snapshot downloads: 
>> https://git.kernel.org/cgit/utils/cpu/mce/mcelog.git/snapshot/v141.tar.gz
>
> I did not know that. Thanks for the tip! It still requires a snippet,
> unfortunately.

Another thing, I think the snippet should be moved to a phase, as AFAIK
origin snippets should be reserved for removing unwanted files, or for
reproducibility. But, I may be wrong here.

>>> +(home-page "http://mcelog.org/;)
>> Nit-pick: the trailing slash is unnecessary :)
>
> Oh, I know, I just have a thing for proper root paths in URIs.
>
> I'm seeing someone about that.

This made me chuckle. Perhaps I should see someone about saving that
precious byte, too :)

Also, is DESTDIR supposed to be /share, shouldn't it be $out/share?
I think I'd define destdir as a variable, and use that also for the
etcprefix instead of using a make variable.

Thanks!
Marius



Re: [PATCH 4/7] gnu: Add llvm-for-extempore.

2016-09-14 Thread Thompson, David
On Wed, Sep 14, 2016 at 5:38 AM, Ricardo Wurmus  wrote:
> * gnu/packages/llvm.scm (llvm-for-extempore): New variable.
> ---
>  gnu/packages/llvm.scm | 8 
>  1 file changed, 8 insertions(+)
>
> diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
> index a9eba79..b55a200 100644
> --- a/gnu/packages/llvm.scm
> +++ b/gnu/packages/llvm.scm
> @@ -3,6 +3,7 @@
>  ;;; Copyright © 2015 Mark H Weaver 
>  ;;; Copyright © 2015 Ludovic Courtès 
>  ;;; Copyright © 2016 Dennis Mungai 
> +;;; Copyright © 2016 Ricardo Wurmus 
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -267,3 +268,10 @@ code analysis tools.")
>  (define-public clang-3.5
>(clang-from-llvm llvm-3.5 clang-runtime-3.5
> "0846h8vn3zlc00jkmvrmy88gc6ql6014c02l4jv78fpvfigmgssg"))
> +
> +(define-public llvm-for-extempore
> +  (package (inherit llvm-3.7)
> +(source
> + (origin
> +   (inherit (package-source llvm-3.7))
> +   (patches (list (search-patch "llvm-for-extempore.patch")))

This could use a comment explaining the rationale.  Also, you forgot
to include the patch file in this commit.

- Dave



Re: [PATCH 1/7] gnu: Add nanovg-for-extempore.

2016-09-14 Thread Thompson, David
On Wed, Sep 14, 2016 at 5:38 AM, Ricardo Wurmus  wrote:
> * gnu/packages/gl.scm (nanovg-for-extempore): New variable.

LGTM.

- Dave



Re: [PATCH 4/7] gnu: Add llvm-for-extempore.

2016-09-14 Thread Danny Milosavljevic
> +   (patches (list (search-patch "llvm-for-extempore.patch")))

Hmm... is this patch file somewhere?



Re: [PATCH] Adding .xsession to guile-wm

2016-09-14 Thread Ludovic Courtès
Alex ter Weele  skribis:

> Ludovic Courtès  writes:
>
>> I agree with David that it would be good to talk to the upstream
>> developer so that the .desktop file is distributed by upstream
>> eventually.  Could you try to reach them?
>
> There are improvements I want to make to guile-wm itself, so I plan on
> talking to upstream about this and other things.

Good to hear!  There were a few glitches that I didn’t take the time to
fix, but otherwise I’d have happily switched to Guile-WM.

Ludo’.



Re: [PATCH] gnu: par2cmdline.

2016-09-14 Thread Ludovic Courtès
Brendan Tildesley  skribis:

> On 2016-09-13 22:09, Ludovic Courtès wrote:
>> Hello,
>>
>> Just a quick note:
>>
>> Brendan Tildesley  skribis:
>>
>>> +   license:gpl3+  ; config.guess
>>> +   license:x11; install-sh
>> These two files are build system helpers provided by Autoconf and
>> Automake.  They are not installed so their license does not matter here.
>>
>> Ludo’.
>
> Right, I didn't realise that.
>
>
> From d63c6af98129e0de3eb1054dd69496b99a269c99 Mon Sep 17 00:00:00 2001
> From: Brendan Tildesley 
> Date: Tue, 13 Sep 2016 20:36:15 +1000
> Subject: [PATCH] gnu: Add par2cmdline.
>
> * gnu/packages/backup.scm (par2cmdline): New variable.

Cool.  Eric, could you apply it if your concerns have been addressed?

Thanks!

Ludo’.



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Tobias Geerinckx-Rice
Marius,

On 14/09/16 15:45, Marius Bakke wrote:
> It's not visible in the cgit interface, but it actually seems to 
> support normal snapshot downloads: 
> https://git.kernel.org/cgit/utils/cpu/mce/mcelog.git/snapshot/v141.tar.gz

I did not know that. Thanks for the tip! It still requires a snippet,
unfortunately.

> Tobias Geerinckx-Rice  writes:
>> +#:tests? #f))   ; tests must be run as 
>> root
> Does all tests have to run as root?

Yes. Each test wants to load modules & inject synthetic MCE events. The
daemon will even fail to start on an unsupported CPU like my current AMD
laptop.

> Also, could you reverse the order of the arguments to match other 
> package definitions?

Hm: *some* other. I rather keep them in approximate order of use.

Unrelated: I see the ‘arguments‘ indentation went funky. Will fix.

>> +(home-page "http://mcelog.org/;)
> Nit-pick: the trailing slash is unnecessary :)

Oh, I know, I just have a thing for proper root paths in URIs.

I'm seeing someone about that.

>> +(synopsis "Machine check monitor for x86 Linux systems")
> If this is x86-only, perhaps we should set (supported-systems)?

Indeed. Thanks!

Kind regards,

T G-R



signature.asc
Description: OpenPGP digital signature


Re: [PATCH v8] gnu: Update ldc to 0.17.1.

2016-09-14 Thread Efraim Flashner
On Wed, Sep 14, 2016 at 05:55:37PM +0200, Danny Milosavljevic wrote:
> Hi,
> 
> > With this patch I got:
> > 
> > The following tests FAILED:
> > 238 - std.datetime (Failed)
> > 296 - std.regex.internal.tests (Failed)
> > 568 - std.datetime-debug (Failed)
> > 626 - std.regex.internal.tests-debug (Failed)
> > 670 - dmd-testsuite-debug (Failed)
> 
> Huh really?
> 
> I just cloned the guix git repo into a new directory, applied exactly this 
> patch, bootstrapped, built everything, then did ./pre-inst-env guix package 
> -i ldc and it worked, tests and all... (on x86_64 on GuixSD)
> 
> Which architecture was your test on?
> 
> Can you check what exactly failed? There should be a log in there (if you 
> built it using "--keep-failed" at least).

I'm running guix on debian, on x86_64. I didn't build with -K
unfortunately.

-- 
Efraim Flashner      אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted


signature.asc
Description: PGP signature


[PATCH 0/1] curl: Fix CVE-2016-7167

2016-09-14 Thread Leo Famulari
This patch updates the curl replacement to 7.50.3, the latest release,
in order to fix CVE-2016-7167:

https://curl.haxx.se/docs/adv_20160914.html

Leo Famulari (1):
  gnu: curl: Update replacement to 7.50.3 [fixes CVE-2016-7167].

 gnu/packages/curl.scm | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

-- 
2.10.0




Re: Expat regression fix for master branch

2016-09-14 Thread Leo Famulari
On Tue, Sep 13, 2016 at 11:54:09PM +0200, Ludovic Courtès wrote:
> It’s enough to have the patch in ‘core-updates’ only, but I could go
> either way.  WDYT?

I could go either way, too. It depends on how much we want to support
use of Guix outside of our package tree.

At least we have made the issue public here on the mailing list, and
provided a patch for whoever needs it.

Does anyone else have an opinion about this?



[PATCH 1/1] gnu: curl: Update replacement to 7.50.3 [fixes CVE-2016-7167].

2016-09-14 Thread Leo Famulari
* gnu/packages/curl.scm (curl)[replacement]: Update to 7.50.3.
(curl-7.50.2): Replace with 
(curl-7.50.3): ... this.
---
 gnu/packages/curl.scm | 8 
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm
index f3c0ade..5cd8086 100644
--- a/gnu/packages/curl.scm
+++ b/gnu/packages/curl.scm
@@ -40,7 +40,7 @@
 (define-public curl
   (package
(name "curl")
-   (replacement curl-7.50.2)
+   (replacement curl-7.50.3)
(version "7.47.0")
(source (origin
 (method url-fetch)
@@ -125,15 +125,15 @@ tunneling, and so on.")
   "See COPYING in the distribution."))
(home-page "http://curl.haxx.se/;)))
 
-(define curl-7.50.2
+(define curl-7.50.3
   (package
 (inherit curl)
 (source
-  (let ((version "7.50.2"))
+  (let ((version "7.50.3"))
 (origin
   (method url-fetch)
   (uri (string-append "https://curl.haxx.se/download/curl-;
   version ".tar.lzma"))
   (sha256
(base32
-"0d5ly1xms0hh5zkv0m77d50c1816ywmbvmi1m158jyl70ndi9gby")))
+"1spmk0345hq0sgpwxs8d410268lmg3wf1x9v23hxff7wxki5fm4c")))
-- 
2.10.0




Re: [PATCH] gnu: Add qscintilla.

2016-09-14 Thread Kei Kebreau
Leo Famulari  writes:

> On Tue, Sep 13, 2016 at 08:48:43PM +, Efraim Flashner wrote:
>> On September 13, 2016 11:37:35 PM GMT+03:00, Kei Kebreau
>>  wrote:
>> >In this case, should I leave qtscintilla-qt4 as a public package in
>> >qt.scm
>> >instead of maths.scm as Leo suggested?
>> 
>> That's where I would leave it. You could also leave a note, saying
>> that it was for octave, and if they switch to qt5 then we can get rid
>> of it. We still have an old vte package I added for a terminal since
>> all the bug reports around it haven't been cleared yet, and that's
>> with the other versions of vte.  -- 
>
> Sounds like a plan!

Alright then! I have all three patches here. Tell me if I did anything
funny. The order of application is "Add qscintilla, Add qscintilla-qt4,
Enable Octave's Qt 4 GUI." :)

From 9304e67ff085853ebbd5d7f1c976171de498bf5b Mon Sep 17 00:00:00 2001
From: Kei Kebreau 
Date: Wed, 14 Sep 2016 13:56:33 -0400
Subject: [PATCH] gnu: Add qscintilla.

* gnu/packages/qt.scm (qscintilla): New variable.
---
 gnu/packages/qt.scm | 68 +
 1 file changed, 68 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index a482d75..de3e656 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2015 Ludovic Courtès 
 ;;; Copyright © 2015, 2016 Efraim Flashner 
 ;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 Kei Kebreau 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1112,3 +1113,70 @@ contain over 620 classes.")
   "QtKeychain is a Qt library to store passwords and other secret data
 securely.  It will not store any data unencrypted unless explicitly 
requested.")
 (license license:bsd-3)))
+
+(define-public qscintilla
+  (package
+(name "qscintilla")
+(version "2.9.3")
+(source (origin
+  (method url-fetch)
+  (uri (string-append 
"mirror://sourceforge/QScintilla2/QScintilla-"
+  version "/QScintilla_gpl-" version 
".tar.gz"))
+  (sha256
+   (base32
+"0znvdncpj64zcpbkyvj11dm8bdc3nfn5girggj33ammhfcyvkalq"
+(build-system gnu-build-system)
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-before 'configure 'change-directory
+   (lambda _ (chdir "Qt4Qt5") #t))
+ (replace 'configure
+   (lambda _ (zero? (system* "qmake" "qscintilla.pro"
+ (add-before 'install 'fix-Makefiles
+   (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out(assoc-ref outputs "out"))
+   (qtbase (assoc-ref inputs "qtbase")))
+   (substitute* (find-files "." "Makefile")
+ (((string-append "INSTALL_ROOT)" qtbase))
+   (string-append "INSTALL_ROOT)" out
+ #t)
+(native-inputs
+ `(("python-pyqt" ,python-pyqt)
+   ("qtbase" ,qtbase))) ; for qmake
+(home-page "https://www.riverbankcomputing.com/software/qscintilla/intro;)
+(synopsis "Qt5 port of the Scintilla editing component")
+(description
+ "QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ editor 
control.
+As well as features found in standard text editing components, QScintilla
+includes features especially useful when editing and debugging source code.
+These include support for syntax styling, error indicators, code completion and
+call tips.")
+(license (list license:bsd-2 ; Python/configure.py
+   license:expat ; src/ and include/
+   license:gpl3
+
+;; required for Octave until its GUI is updated to Qt 5
+(define-public qscintilla-qt4
+  (package
+(inherit qscintilla)
+(name "qscintilla-qt4")
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-before 'configure 'change-directory
+   (lambda _ (chdir "Qt4Qt5") #t))
+ (replace 'configure
+   (lambda _ (zero? (system* "qmake" "qscintilla.pro"
+ (add-before 'install 'fix-Makefiles
+   (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out(assoc-ref outputs "out"))
+   (qt (assoc-ref inputs "qt")))
+   (substitute* (find-files "." "Makefile")
+ (((string-append "INSTALL_ROOT)" qt))
+   (string-append "INSTALL_ROOT)" out
+ #t)
+(native-inputs
+ `(("python-pyqt" ,python-pyqt-4)
+   ("qt" ,qt-4))) ; for qmake
+(synopsis "Qt4 port of the Scintilla editing component")))
-- 
2.10.0

From ced0df00c37a91b4dbcf38665bdedc0d38fbd44f Mon Sep 17 00:00:00 2001
From: Kei Kebreau 
Date: Wed, 14 Sep 2016 14:00:35 -0400
Subject: [PATCH] gnu: Add qscintilla-qt4.

* gnu/packages/qt.scm 

Re: [PATCH 1/1] gnu: curl: Update replacement to 7.50.3 [fixes CVE-2016-7167].

2016-09-14 Thread Leo Famulari
On Wed, Sep 14, 2016 at 09:03:03PM +0300, Efraim Flashner wrote:
> On Wed, Sep 14, 2016 at 01:23:20PM -0400, Leo Famulari wrote:
> > * gnu/packages/curl.scm (curl)[replacement]: Update to 7.50.3.
> > (curl-7.50.2): Replace with 
> > (curl-7.50.3): ... this.
> 
> Looks straightforward.

Thanks, pushed as 2a0ed3254bc76ad6503170f196c2008473b0292b


signature.asc
Description: PGP signature


Re: [PATCH 1/1] gnu: curl: Update replacement to 7.50.3 [fixes CVE-2016-7167].

2016-09-14 Thread Efraim Flashner
On Wed, Sep 14, 2016 at 01:23:20PM -0400, Leo Famulari wrote:
> * gnu/packages/curl.scm (curl)[replacement]: Update to 7.50.3.
> (curl-7.50.2): Replace with 
> (curl-7.50.3): ... this.
> ---
>  gnu/packages/curl.scm | 8 
>  1 file changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm
> index f3c0ade..5cd8086 100644
> --- a/gnu/packages/curl.scm
> +++ b/gnu/packages/curl.scm
> @@ -40,7 +40,7 @@
>  (define-public curl
>(package
> (name "curl")
> -   (replacement curl-7.50.2)
> +   (replacement curl-7.50.3)
> (version "7.47.0")
> (source (origin
>  (method url-fetch)
> @@ -125,15 +125,15 @@ tunneling, and so on.")
>"See COPYING in the distribution."))
> (home-page "http://curl.haxx.se/;)))
>  
> -(define curl-7.50.2
> +(define curl-7.50.3
>(package
>  (inherit curl)
>  (source
> -  (let ((version "7.50.2"))
> +  (let ((version "7.50.3"))
>  (origin
>(method url-fetch)
>(uri (string-append "https://curl.haxx.se/download/curl-;
>version ".tar.lzma"))
>(sha256
> (base32
> -"0d5ly1xms0hh5zkv0m77d50c1816ywmbvmi1m158jyl70ndi9gby")))
> +"1spmk0345hq0sgpwxs8d410268lmg3wf1x9v23hxff7wxki5fm4c")))
> -- 
> 2.10.0
> 
> 

Looks straightforward.

-- 
Efraim Flashner      אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D  14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted


signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add qscintilla.

2016-09-14 Thread Leo Famulari
On Tue, Sep 13, 2016 at 08:48:43PM +, Efraim Flashner wrote:
> On September 13, 2016 11:37:35 PM GMT+03:00, Kei Kebreau 
>  wrote:
> >In this case, should I leave qtscintilla-qt4 as a public package in
> >qt.scm
> >instead of maths.scm as Leo suggested?
> 
> That's where I would leave it. You could also leave a note, saying
> that it was for octave, and if they switch to qt5 then we can get rid
> of it. We still have an old vte package I added for a terminal since
> all the bug reports around it haven't been cleared yet, and that's
> with the other versions of vte.  -- 

Sounds like a plan!



Re: [PATCH] gnu: Add r-e1071.

2016-09-14 Thread Leo Famulari
On Wed, Sep 14, 2016 at 11:53:50AM +0200, Ricardo Wurmus wrote:
> * gnu/packages/statistics.scm (r-e1071): New variable.

LGTM



Re: [PATCH 5/5] gnu: Resurrect hydra.

2016-09-14 Thread Leo Famulari
On Tue, Sep 13, 2016 at 06:59:41PM +0200, Jan Nieuwenhuizen wrote:
> * gnu/packages/patches/hydra-automake-1.15.patch: Remove.
> * gnu/local.mk (dist_patch_DATA): Remove it.
> * gnu/packages/ci.scm (hydra): Bump to 20151030.  Fixes building with
> nix-1.11.x.  Add new libpqxx and perl-net-statsd dependencies.

Thanks Jan!

As discussed on #guix, I moved some of the new packages around. I also
changed the commit messages a bit.

I pushed the series, bringing HEAD to
253745d75695faf23bd0ff68bc18f5bbc2f29580.



Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Tobias Geerinckx-Rice
Danny, Marius,

Danny Milosavljevic  writes:
> DESTDIR is a feature which lets you install into a tempdir. The idea
> is that you install it all there and then atomically replace the
> ORIGINAL version at the non-DESTDIR location.

Herp. I know all this, no idea how I managed to confuse them.

On 14/09/16 17:32, Marius Bakke wrote:
> Oops, I meant DOCDIR! Sorry for the confusion!

I think my confusion above had to do with wrestling DOCDIR when I first
packaged this. It should indeed be $out/share... when using
prefix/DESTDIR correctly!

> Now I'll have to start doing it too :)

We have cookies.

Kind regards,

T G-R



signature.asc
Description: OpenPGP digital signature


[PATCH] gnu: gnurl: Update to 7.50.3.

2016-09-14 Thread ng0
* gnu/packages/gnunet.scm (gnurl): Update to 7.50.3.
---
 gnu/packages/gnunet.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index d9387b9..56a5ea3 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -158,7 +158,7 @@ and support for SSL3 and TLS.")
 (define-public gnurl
   (package
(name "gnurl")
-   (version "7.50.2-1")
+   (version "7.50.3")
(source (origin
 (method url-fetch)
 (uri (let ((version-with-underscores
@@ -167,7 +167,7 @@ and support for SSL3 and TLS.")
   name "-" version-with-underscores 
".tar.bz2")))
 (sha256
  (base32
-  "0bxm2015xvcazgh103hi5rpdnl2hbipx0gd5z6a65bj6nzky0pml"
+  "07ij9mj60kpfrmi0436k14b1d1idsj79nk4w5h3bia69arzp2cnk"
(build-system gnu-build-system)
(inputs `(("gnutls" ,gnutls)
  ("libidn" ,libidn)
-- 
2.10.0




Re: [PATCH] gnu: Add qscintilla.

2016-09-14 Thread Leo Famulari
On Wed, Sep 14, 2016 at 02:11:44PM -0400, Kei Kebreau wrote:
> Leo Famulari  writes:
> 
> > On Tue, Sep 13, 2016 at 08:48:43PM +, Efraim Flashner wrote:
> >> On September 13, 2016 11:37:35 PM GMT+03:00, Kei Kebreau
> >>  wrote:
> >> >In this case, should I leave qtscintilla-qt4 as a public package in
> >> >qt.scm
> >> >instead of maths.scm as Leo suggested?
> >> 
> >> That's where I would leave it. You could also leave a note, saying
> >> that it was for octave, and if they switch to qt5 then we can get rid
> >> of it. We still have an old vte package I added for a terminal since
> >> all the bug reports around it haven't been cleared yet, and that's
> >> with the other versions of vte.  -- 
> >
> > Sounds like a plan!
> 
> Alright then! I have all three patches here. Tell me if I did anything
> funny. The order of application is "Add qscintilla, Add qscintilla-qt4,
> Enable Octave's Qt 4 GUI." :)

The patches "Add qscintilla" and "Add qscintilla-qt4" both add both
packages.


signature.asc
Description: PGP signature


[PATCH 2/2] gnu: Add qtox.

2016-09-14 Thread Andy Patterson
* gnu/packages/messaging.scm (qtox): New variable.
---
 gnu/packages/messaging.scm | 54 ++
 1 file changed, 54 insertions(+)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 3627fec..f628404 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -6,6 +6,7 @@
 ;;; Copyright © 2015, 2016 Ricardo Wurmus 
 ;;; Copyright © 2015 Efraim Flashner 
 ;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 Andy Patterson 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -32,6 +33,7 @@
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system python)
   #:use-module (gnu packages)
+  #:use-module (gnu packages aidc)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages avahi)
   #:use-module (gnu packages check)
@@ -658,6 +660,58 @@ instant messenger with audio and video chat capabilities.")
(home-page "http://utox.org/;)
(license license:gpl3)))
 
+(define-public qtox
+  (package
+(name "qtox")
+(version "1.5.1")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "https://github.com/qTox/qTox/archive/v;
+   version ".tar.gz"))
+   (sha256
+(base32 "0y15mc39x54k1kz36cw9412kl1p1p6nzlx97gagv4gg3vybfhbjv"))
+   (file-name (string-append name "-" version ".tar.gz"
+(inputs
+ `(("ffmpeg" ,ffmpeg)
+   ("glib" ,glib)
+   ("gtk+" ,gtk+-2)
+   ("libsodium" ,libsodium)
+   ("libtoxcore" ,libtoxcore)
+   ("libvpx" ,libvpx)
+   ("libxscrnsaver" ,libxscrnsaver)
+   ("libx11" ,libx11)
+   ("openal" ,openal)
+   ("qrencode" ,qrencode)
+   ("qt" ,qt)
+   ("sqlcipher" ,sqlcipher)))
+(native-inputs
+ `(("pkg-config" ,pkg-config)
+   ("qmake" ,qt)))
+(build-system gnu-build-system)
+(arguments
+ '(#:phases
+   (modify-phases %standard-phases
+ (replace 'configure
+   (lambda* (#:key outputs #:allow-other-keys)
+ (zero?
+  (system* "qmake"
+   (string-append "PREFIX="
+  (assoc-ref outputs "out"))
+ (add-after 'unpack 'fix-reproducibility-issues
+   (lambda _
+ (substitute* "src/main.cpp"
+   (("__DATE__") "\"\"")
+   (("__TIME__") "\"\"")
+   (("TIMESTAMP") "\"\""))
+ #t)
+(home-page "https://qtox.github.io/;)
+(synopsis "Tox chat client using Qt")
+(description "qTox is a Tox client that follows the Tox design
+guidelines.  It provides an easy to use application that allows you to
+connect with friends and family without anyone else listening in.")
+(license license:gpl3+)))
+
 (define-public pybitmessage
   (package
 (name "pybitmessage")
-- 
2.10.0




[PATCH 1/2] gnu: Add sqlcipher.

2016-09-14 Thread Andy Patterson
* gnu/packages/database.scm (sqlcipher): New variable.
---
 gnu/packages/databases.scm | 37 +
 1 file changed, 37 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index fc31653..d424848 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -11,6 +11,7 @@
 ;;; Copyright © 2016 ng0 
 ;;; Copyright © 2016 Roel Janssen 
 ;;; Copyright © 2016 David Craven 
+;;; Copyright © 2016 Andy Patterson 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -33,11 +34,13 @@
   #:use-module (gnu packages avahi)
   #:use-module (gnu packages bash)
   #:use-module (gnu packages boost)
+  #:use-module (gnu packages crypto)
   #:use-module (gnu packages gettext)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages language)
   #:use-module (gnu packages linux)
+  #:use-module (gnu packages tcl)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages compression)
   #:use-module (gnu packages ncurses)
@@ -1094,3 +1097,37 @@ trees (LSM), for sustained throughput under random 
insert workloads.")
 (synopsis "Lightning memory-mapped database library")
 (description "Lightning memory-mapped database library.")
 (license license:openldap2.8)))
+
+(define-public sqlcipher
+  (package
+(name "sqlcipher")
+(version "3.4.0")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "https://github.com/sqlcipher/; name
+   "/archive/v" version ".tar.gz"))
+   (sha256
+(base32 "1l23lbp9pmf20xkshrs45gbg0igixr6dwdbvgfzh5plnyzn05dwr"))
+   (file-name (string-append name "-" version ".tar.gz"
+(build-system gnu-build-system)
+(inputs
+ `(("libcrypto" ,openssl)))
+(native-inputs
+ `(("tcl" ,tcl)))
+(arguments
+ '(#:configure-flags
+   '("--enable-tempstore=yes"
+ "CFLAGS=-DSQLITE_HAS_CODEC"
+ "LDFLAGS=-lcrypto"
+ "--disable-tcl")
+   ;; tests are un-maintained in this fork
+   #:tests? #f))
+(home-page "https://www.zetetic.net/sqlcipher/;)
+(synopsis
+ "Library providing transparent encryption of SQLite database files")
+(description "SQLCipher is an SQLite extension that provides transparent
+256-bit AES encryption of database files.  Pages are encrypted before being
+written to disk and are decrypted when read back.  It’s well suited for
+protecting embedded application databases and for mobile development.")
+(license license:bsd-3)))
-- 
2.10.0




[PATCH 0/2]: Add qtox.

2016-09-14 Thread Andy Patterson

In the spirit of other Tox-related packages added recently, here's qTox.

--
Andy





[PATCH] gnu: Update flashrom to 0.9.9

2016-09-14 Thread Danny Milosavljevic

gnu: Update flashrom to 0.9.9

* gnu/packages/flashing-tools.scm (flashrom): Changed.
* gnu/packages/patches/flashrom-use-libftdi1.patch: Removed.
* gnu/local.mk: Remove mention of "flashrom-use-libftdi1.patch".
---
 gnu/local.mk |  1 -
 gnu/packages/flashing-tools.scm  | 11 ++--
 gnu/packages/patches/flashrom-use-libftdi1.patch | 70 
 3 files changed, 6 insertions(+), 76 deletions(-)
 delete mode 100644 gnu/packages/patches/flashrom-use-libftdi1.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 550897e..0308f67 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -511,7 +511,6 @@ dist_patch_DATA =		\
   %D%/packages/patches/fasthenry-spFactor.patch			\
   %D%/packages/patches/findutils-localstatedir.patch		\
   %D%/packages/patches/findutils-test-xargs.patch		\
-  %D%/packages/patches/flashrom-use-libftdi1.patch		\
   %D%/packages/patches/flint-ldconfig.patch			\
   %D%/packages/patches/fltk-shared-lib-defines.patch		\
   %D%/packages/patches/fltk-xfont-on-demand.patch		\
diff --git a/gnu/packages/flashing-tools.scm b/gnu/packages/flashing-tools.scm
index d0c164e..a55ed96 100644
--- a/gnu/packages/flashing-tools.scm
+++ b/gnu/packages/flashing-tools.scm
@@ -38,16 +38,15 @@
 (define-public flashrom
   (package
 (name "flashrom")
-(version "0.9.7")
+(version "0.9.9")
 (source (origin
   (method url-fetch)
   (uri (string-append
-"http://download.flashrom.org/releases/flashrom-;
+"https://download.flashrom.org/releases/flashrom-;
 version ".tar.bz2"))
   (sha256
(base32
-"1s9pc4yls2s1gcg2ar4q75nym2z5v6lxq36bl6lq26br00nj2mas"))
-  (patches (search-patches "flashrom-use-libftdi1.patch"
+"0i9wg1lyfg99bld7d00zqjm9f0lk6m0q3h3n9c195c9yysq5ccfb"
 (build-system gnu-build-system)
 (inputs `(("dmidecode" ,dmidecode)
   ("pciutils" ,pciutils)
@@ -55,7 +54,9 @@
   ("libftdi" ,libftdi)))
 (native-inputs `(("pkg-config" ,pkg-config)))
 (arguments
- '(#:make-flags (list "CC=gcc" (string-append "PREFIX=" %output))
+ '(#:make-flags (list "CC=gcc"
+  (string-append "PREFIX=" %output)
+  "CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no")
#:tests? #f   ; no 'check' target
#:phases
(alist-delete
diff --git a/gnu/packages/patches/flashrom-use-libftdi1.patch b/gnu/packages/patches/flashrom-use-libftdi1.patch
deleted file mode 100644
index a6051df..000
--- a/gnu/packages/patches/flashrom-use-libftdi1.patch
+++ /dev/null
@@ -1,70 +0,0 @@
-Update to libftdi-1.0 is advertised as a drop-in replacement for libftdi,
-running on top of libusb-1.0. This also removes indirect dependency to
-libusb-0.1.
-
-Patch by Kyösti Mälkki .
-See .
-
 flashrom/Makefile.orig	2013-08-13 18:00:00.0 -0400
-+++ flashrom/Makefile	2014-08-05 03:10:40.217145375 -0400
-@@ -492,19 +492,21 @@
- ifeq ($(CONFIG_FT2232_SPI), yes)
- # This is a totally ugly hack.
- FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_FT2232_SPI=1'")
--NEED_FTDI := yes
-+NEED_FTDI1 := yes
- PROGRAMMER_OBJS += ft2232_spi.o
- endif
- 
- ifeq ($(CONFIG_USBBLASTER_SPI), yes)
- # This is a totally ugly hack.
- FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "-D'CONFIG_USBBLASTER_SPI=1'")
--NEED_FTDI := yes
-+NEED_LIBUSB1 := yes
-+NEED_FTDI1 := yes
- PROGRAMMER_OBJS += usbblaster_spi.o
- endif
- 
--ifeq ($(NEED_FTDI), yes)
--FTDILIBS := $(shell pkg-config --libs libftdi 2>/dev/null || printf "%s" "-lftdi -lusb")
-+ifeq ($(NEED_FTDI1), yes)
-+FTDILIBS := $(shell pkg-config --libs libftdi1 2>/dev/null || printf "%s" "-lftdi1 -lusb-1.0")
-+FEATURE_CFLAGS += $(shell pkg-config --cflags libftdi1 2>/dev/null)
- FEATURE_CFLAGS += $(shell LC_ALL=C grep -q "FT232H := yes" .features && printf "%s" "-D'HAVE_FT232H=1'")
- FEATURE_LIBS += $(shell LC_ALL=C grep -q "FTDISUPPORT := yes" .features && printf "%s" "$(FTDILIBS)")
- # We can't set NEED_USB here because that would transform libftdi auto-enabling
-@@ -781,6 +783,7 @@
- endif
- 
- define FTDI_TEST
-+#include 
- #include 
- struct ftdi_context *ftdic = NULL;
- int main(int argc, char **argv)
-@@ -793,6 +796,7 @@
- export FTDI_TEST
- 
- define FTDI_232H_TEST
-+#include 
- #include 
- enum ftdi_chip_type type = TYPE_232H;
- endef
-@@ -826,15 +830,15 @@
- 
- features: compiler
- 	@echo "FEATURES := yes" > .features.tmp
--ifeq ($(NEED_FTDI), yes)
-+ifeq ($(NEED_FTDI1), yes)
- 	@printf "Checking for FTDI support... "
- 	@echo "$$FTDI_TEST" > .featuretest.c
--	@$(CC) $(CPPFLAGS) $(CFLAGS) $(LDFLAGS) .featuretest.c -o .featuretest$(EXEC_SUFFIX) $(FTDILIBS) $(LIBS) >/dev/null 2>&1 &&	\
-+	@$(CC) $(CPPFLAGS) $(CFLAGS) 

Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Marius Bakke
Tobias Geerinckx-Rice  writes:

> Marius,
>
> On 14/09/16 17:19, Marius Bakke wrote:
>> Another thing, I think the snippet should be moved to a phase, as AFAIK
>> origin snippets should be reserved for removing unwanted files, or for
>> reproducibility.
>
> Not if we use your suggested snapshot tarball, which rightly lack a .git
> directory. There is no way for the build system to divine the version
> number at build time with ‘git describe’.
>
> Unpatched mcelog, manually built from ‘guix download’ed sources, would
> report its version as ‘unknown’. With this snippet, it just works.

Yes, I was mostly echoing Leos sentiment from this post:

https://lists.gnu.org/archive/html/guix-devel/2016-08/msg00937.html

I don't think reporting "unknown" as a version is a critical bug, but
don't have any strong opinions either way. It seems like the manual
could use some clarification on its use, though.

Cheers,
Marius



Re: [PATCH] gnu: rottlog: rotate messages daily.

2016-09-14 Thread Jan Nieuwenhuizen
Ludovic Courtès writes:

> I would add /var/log/{secure,shepherd.log}, but weekly is probably
> enough.

Ok.  I implemented this by changing the rottlog package that already
modifies etc/weekly.  I'm not sure if sending SIGHUP to syslog is
ok for shepherd.log or that would need to be a kill 1?  See attached.

>> * gnu/services/admin.scm: New file.
>> * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
>
> I think we’re pretty much there!

Silly me, asking if we already ad log rotation ;-)

>> +  (rc-file rottlog-rc-file)
>  ^
> With: (default (file-append rottlog "/etc/rc")).

OK.

>> +  (periods rottlog-periods)
>
> Maybe s/periods/periodic-rotations/ ?
> Also with default rotation.

Sure, done.

>> +  (jobs rottlog-jobs))
>
> We should have a sane default here, like running it twice a day (which
> can’t hurt because “The logfiles cannot be modified multiple times per
> period”, says the manual.)

OK, great!

> It’s a good idea to mark the expected types of each field in the margin
> (until we have a type system ;-)).

Ah yes.  Done.

> You can remove it and use ‘file-union’ from (gnu services), which is
> roughly the same (it expects a list of tuples instead of a list of
> pairs.)

Ok (I hope...it works what I have, but the apparent need I found for
having "rottlog" twice confuses me).

>> +(define* (rottlog-service
>
> This can be omitted.  It’s enough to expose ‘rottlog-service-type’ and
> ‘rottlog-configuration’.

Hmm.  I removed all the defaulting here and then removed the function
alltogether, but then I cannot seem to do

  (services (cons* (mcron-service) (rottlog-service) %base-services)))

anymore.  Is that right?

I'm feeling a bit stubborn keeping this but I thought that's what we
want and my test showed me that this is needed.  So I kept a minimal of
this function.  Please just remove+enlighten me how to use it if this
can really go :-)

> The last thing that’s missing is a “Log Rotation” section in guix.texi,
> with cross-references to the rottlog manual, like “Scheduled Job
> Execution” does.  Could you look into it?

Added.

Greetings,
Jan

>From e8e489db62337c6e8ef03e745a56938566e078c8 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen 
Date: Wed, 14 Sep 2016 19:04:38 +0200
Subject: [PATCH 1/2] gnu: update rottlog: install guix-specific etc/weekly.

* gnu/packages/admin.scm (rottlog): Install guix-specific etc/weekly
for rotating /var/log/{messages,secureshepherd.log}.
---
 gnu/packages/admin.scm | 32 ++--
 1 file changed, 26 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 3685633..9cd51b5 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -751,12 +751,32 @@ over ssh connections.")
   #t))
   (add-before 'install 'tweak-rc-weekly
 (lambda _
-  (substitute* "rc/weekly"
-(("/bin/kill")
- (which "kill"))
-(("syslogd\\.pid")
- ;; The file is called 'syslog.pid' (no 'd').
- "syslog.pid"))
+  (let ((kill (which "kill"))
+(weekly (open-file "rc/weekly" "w")))
+(format weekly "
+/var/log/messages {
+	sharedscripts
+	postrotate
+		~a -HUP $(cat /var/run/syslog.pid) 2> /dev/null
+	endscript
+	nocompress
+}
+/var/log/secure {
+	sharedscripts
+	postrotate
+		~a -HUP $(cat /var/run/syslog.pid) 2> /dev/null
+	endscript
+	nocompress
+}
+/var/log/shepherd.log {
+	sharedscripts
+	postrotate
+		~a -HUP $(cat /var/run/syslog.pid) 2> /dev/null
+	endscript
+	nocompress
+}
+" kill kill kill)
+(close weekly))
   #t))
   (add-after 'install 'install-info
 (lambda _
-- 
2.10.0

>From 59213cce5d6d4e41f9b6f321e3fef0567c22 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen 
Date: Thu, 8 Sep 2016 01:20:43 +0200
Subject: [PATCH 2/2] gnu: services: add rottlog.

* gnu/services/admin.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Log Rotation): Document it.
---
 doc/guix.texi  | 69 +++-
 gnu/local.mk   |  1 +
 gnu/services/admin.scm | 78 ++
 3 files changed, 147 insertions(+), 1 deletion(-)
 create mode 100644 gnu/services/admin.scm

diff --git a/doc/guix.texi b/doc/guix.texi
index d5ece55..c3cfe9e 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -26,7 +26,8 @@ Copyright @copyright{} 2016 Ben Woodcroft@*
 Copyright @copyright{} 2016 Chris Marusich@*
 Copyright @copyright{} 2016 Efraim Flashner@*
 Copyright @copyright{} 2016 John Darrington@*
-Copyright @copyright{} 2016 ng0
+Copyright @copyright{} 2016 ng0@*
+Copyright @copyright{} 2016 Jan Nieuwenhuizen
 
 Permission is granted to copy, distribute 

Re: [PATCH] gnu: Add mcelog.

2016-09-14 Thread Tobias Geerinckx-Rice
Marius,

On 14/09/16 17:19, Marius Bakke wrote:
> Another thing, I think the snippet should be moved to a phase, as AFAIK
> origin snippets should be reserved for removing unwanted files, or for
> reproducibility.

Not if we use your suggested snapshot tarball, which rightly lack a .git
directory. There is no way for the build system to divine the version
number at build time with ‘git describe’.

Unpatched mcelog, manually built from ‘guix download’ed sources, would
report its version as ‘unknown’. With this snippet, it just works.

Kind regards,

T G-R



signature.asc
Description: OpenPGP digital signature


Re: [PATCH 6/7] gnu: Add portmidi-for-extempore.

2016-09-14 Thread Ricardo Wurmus

Thompson, David  writes:

> On Wed, Sep 14, 2016 at 5:38 AM, Ricardo Wurmus  wrote:
>> * gnu/packages/music.scm (portmidi-for-extempore): New variable.
>> ---
>>  gnu/packages/music.scm | 17 +
>>  1 file changed, 17 insertions(+)
>>
>> diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
>> index f294564..c62dbbc 100644
>> --- a/gnu/packages/music.scm
>> +++ b/gnu/packages/music.scm
>> @@ -1081,6 +1081,23 @@ projects.")
>>  using a system-independent interface.")
>>  (license license:expat)))
>>
>> +(define-public portmidi-for-extempore
>> +  (package (inherit portmidi)
>> +(name "portmidi-for-extempore")
>> +(version "217")
>> +(source (origin
>> +  (method url-fetch)
>> +  (uri (string-append 
>> "https://github.com/extemporelang/portmidi/;
>> +  "archive/" version ".tar.gz"))
>> +  (file-name (string-append name "-" version ".tar.gz"))
>> +  (sha256
>> +   (base32
>> +"0gjikwciyr8kk4y3qiv1pcq58xpgw38ql1m2gs6g0qc1s8sx4235"
>> +(build-system cmake-build-system)
>> +(arguments `(#:tests? #f)) ; no tests
>> +(native-inputs '())
>
> Remove this line. ^

This inherits from “portmidi” where “native-inputs” is set to contain
“unzip”.  I’m overriding this with the empty list to drop “unzip” from
the inputs.

~~ Ricardo




Re: [PATCH] gnu: Add qscintilla.

2016-09-14 Thread Efraim Flashner


On September 14, 2016 11:37:46 PM GMT+03:00, Kei Kebreau  
wrote:
>Leo Famulari  writes:
>
>> On Wed, Sep 14, 2016 at 02:11:44PM -0400, Kei Kebreau wrote:
>>> Leo Famulari  writes:
>>> 
>>> > On Tue, Sep 13, 2016 at 08:48:43PM +, Efraim Flashner wrote:
>>> >> On September 13, 2016 11:37:35 PM GMT+03:00, Kei Kebreau
>>> >>  wrote:
>>> >> >In this case, should I leave qtscintilla-qt4 as a public package
>in
>>> >> >qt.scm
>>> >> >instead of maths.scm as Leo suggested?
>>> >> 
>>> >> That's where I would leave it. You could also leave a note,
>saying
>>> >> that it was for octave, and if they switch to qt5 then we can get
>rid
>>> >> of it. We still have an old vte package I added for a terminal
>since
>>> >> all the bug reports around it haven't been cleared yet, and
>that's
>>> >> with the other versions of vte.  -- 
>>> >
>>> > Sounds like a plan!
>>> 
>>> Alright then! I have all three patches here. Tell me if I did
>anything
>>> funny. The order of application is "Add qscintilla, Add
>qscintilla-qt4,
>>> Enable Octave's Qt 4 GUI." :)
>>
>> The patches "Add qscintilla" and "Add qscintilla-qt4" both add both
>> packages.
>
>Fixed it.

If you switch ("qtbase" ,qtbase) to ("qt" ,qtbase) can you remove the whole 
argument block from qscintilla?
-- 
Sent from my Android device with K-9 Mail. Please excuse my brevity.



Re: [PATCH] gnu: Add qscintilla.

2016-09-14 Thread Kei Kebreau
Leo Famulari  writes:

> On Wed, Sep 14, 2016 at 02:11:44PM -0400, Kei Kebreau wrote:
>> Leo Famulari  writes:
>> 
>> > On Tue, Sep 13, 2016 at 08:48:43PM +, Efraim Flashner wrote:
>> >> On September 13, 2016 11:37:35 PM GMT+03:00, Kei Kebreau
>> >>  wrote:
>> >> >In this case, should I leave qtscintilla-qt4 as a public package in
>> >> >qt.scm
>> >> >instead of maths.scm as Leo suggested?
>> >> 
>> >> That's where I would leave it. You could also leave a note, saying
>> >> that it was for octave, and if they switch to qt5 then we can get rid
>> >> of it. We still have an old vte package I added for a terminal since
>> >> all the bug reports around it haven't been cleared yet, and that's
>> >> with the other versions of vte.  -- 
>> >
>> > Sounds like a plan!
>> 
>> Alright then! I have all three patches here. Tell me if I did anything
>> funny. The order of application is "Add qscintilla, Add qscintilla-qt4,
>> Enable Octave's Qt 4 GUI." :)
>
> The patches "Add qscintilla" and "Add qscintilla-qt4" both add both
> packages.

Fixed it.
From cb95955eaea1210af6ef197f4157583f24cf4eac Mon Sep 17 00:00:00 2001
From: Kei Kebreau 
Date: Wed, 14 Sep 2016 16:34:41 -0400
Subject: [PATCH] gnu: Add qscintilla.

* gnu/packages/qt.scm (qscintilla): New variable.
---
 gnu/packages/qt.scm | 43 +++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index a482d75..444a10e 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2015 Ludovic Courtès 
 ;;; Copyright © 2015, 2016 Efraim Flashner 
 ;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 Kei Kebreau 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1112,3 +1113,45 @@ contain over 620 classes.")
   "QtKeychain is a Qt library to store passwords and other secret data
 securely.  It will not store any data unencrypted unless explicitly 
requested.")
 (license license:bsd-3)))
+
+(define-public qscintilla
+  (package
+(name "qscintilla")
+(version "2.9.3")
+(source (origin
+  (method url-fetch)
+  (uri (string-append 
"mirror://sourceforge/QScintilla2/QScintilla-"
+  version "/QScintilla_gpl-" version 
".tar.gz"))
+  (sha256
+   (base32
+"0znvdncpj64zcpbkyvj11dm8bdc3nfn5girggj33ammhfcyvkalq"
+(build-system gnu-build-system)
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-before 'configure 'change-directory
+   (lambda _ (chdir "Qt4Qt5") #t))
+ (replace 'configure
+   (lambda _ (zero? (system* "qmake" "qscintilla.pro"
+ (add-before 'install 'fix-Makefiles
+   (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((out(assoc-ref outputs "out"))
+   (qtbase (assoc-ref inputs "qtbase")))
+   (substitute* (find-files "." "Makefile")
+ (((string-append "INSTALL_ROOT)" qtbase))
+   (string-append "INSTALL_ROOT)" out
+ #t)
+(native-inputs
+ `(("python-pyqt" ,python-pyqt)
+   ("qtbase" ,qtbase))) ; for qmake
+(home-page "https://www.riverbankcomputing.com/software/qscintilla/intro;)
+(synopsis "Qt5 port of the Scintilla editing component")
+(description
+ "QScintilla is a port to Qt of Neil Hodgson's Scintilla C++ editor 
control.
+As well as features found in standard text editing components, QScintilla
+includes features especially useful when editing and debugging source code.
+These include support for syntax styling, error indicators, code completion and
+call tips.")
+(license (list license:bsd-2 ; Python/configure.py
+   license:expat ; src/ and include/
+   license:gpl3
-- 
2.10.0

From 7a327145738107e5d4016b6dbb0c33830b4cb715 Mon Sep 17 00:00:00 2001
From: Kei Kebreau 
Date: Wed, 14 Sep 2016 16:35:43 -0400
Subject: [PATCH] gnu: Add qscintilla-qt4.

* gnu/packages/qt.scm (qscintilla-qt4): New variable.
---
 gnu/packages/qt.scm | 25 +
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 444a10e..de3e656 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1155,3 +1155,28 @@ call tips.")
 (license (list license:bsd-2 ; Python/configure.py
license:expat ; src/ and include/
license:gpl3
+
+;; required for Octave until its GUI is updated to Qt 5
+(define-public qscintilla-qt4
+  (package
+(inherit qscintilla)
+(name "qscintilla-qt4")
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-before 'configure 'change-directory
+   (lambda 

Re: [PATCH] gnu: gnurl: Update to 7.50.3.

2016-09-14 Thread Leo Famulari
On Wed, Sep 14, 2016 at 07:36:03PM +, ng0 wrote:
> * gnu/packages/gnunet.scm (gnurl): Update to 7.50.3.

Thanks! Pushed as 991847748a554deb9bc6d6a7b4f8a5e9164365c6



Re: [PATCH] gnu: Add r-rtsne.

2016-09-14 Thread Leo Famulari
On Wed, Sep 14, 2016 at 09:38:34AM +0200, Ricardo Wurmus wrote:
> * gnu/packages/statistics.scm (r-rtsne): New variable.

> +(license license:bsd-3)))

Some of the files in 'src/' use a 4-clause BSD license.



Re: [PATCH 2/3] gnu: Add python-pytest-flakes.

2016-09-14 Thread Leo Famulari
On Sun, Sep 11, 2016 at 03:07:36PM +0100, Marius Bakke wrote:
> * gnu/packages/python.scm (python-pytest-flakes, python2-pytest-flakes):
>   New variables.

> +(description "Pytest plugin for efficiently checking python source
> +with pyflakes.")

I have the same question about removing "efficiently" as about
python-pytest-pep8.



Re: [PATCH 1/3] gnu: Add python-pytest-pep8.

2016-09-14 Thread Leo Famulari
On Sun, Sep 11, 2016 at 03:07:35PM +0100, Marius Bakke wrote:
> * gnu/packages/python.scm (python-pytest-pep8, python2-pytest-pep8): New
>   variables.

Overall LGTM...

> +(description "Pytest plugin for efficiently checking PEP8 compliance")

I think we can drop "efficiently". I can do that before committing if
you agree; no need to send an updated patch.



Re: [PATCH] gnu: Add perl-mhonarc.

2016-09-14 Thread Leo Famulari
On Wed, Sep 14, 2016 at 09:29:46AM +, ng0 wrote:
> Leo Famulari  writes:
> 
> > On Sun, Sep 11, 2016 at 03:46:34PM +, ng0 wrote:
> >> Should this then be adjusted to gpl2+ ? I took the information from
> >> their website.
> >
> > Yes, I think it should be gpl2+, since the source files seem to all say
> > "or later".
> >
> 
> I have updated the license and changed the name to just mhonarc. There's
> currently only one application named mhonarc.

Sounds good to me! Pushed as 74c0282c4591720b9a81359e400bb460718b78c1


signature.asc
Description: PGP signature


Re: Using arch for kernel config file breaks kernel builds

2016-09-14 Thread David Craven
> seems a commit yesterday (c258807a) broke kernel compilation on
> i686. When searching for kernel configuration file,
> system->linux-architecture reduces i686 to i386, but no matching
> configuration file exists.

Sorry about that. Thank you for reporting the issue.

> I see two options:
> 1) go back to using system instead of arch (which would allow different
> config files for, say, i386 and i686).

Sounds good - kernel-config should take a system instead of an arch,
since we are really interested in getting a configuration for the guix
system and the ARCH that linux-libre uses is an implementation detail.

One difficulty that arises is that %current-target-system is a target
triplet and not a guix system. I don't like adding more special casing
like a (target-triplet->system) function - but we may have to... I'll
fix this tomorrow morning.

> 2) rename all i686 config files to i386.



Re: [PATCH 1/2] gnu: python: Add python-i3.

2016-09-14 Thread Brendan Tildesley
On 2016-09-14 19:16, Ivan Vilata i Balaguer wrote:

This is version 0.6.4, but the git repo has a few small updates since
then, and has bumbed the version to 0.6.5. Being 4 years old, probably
this is not going to find it's way to pypi? Other than that I can't see
issues with the package. Perhaps it is not significant to matter?




Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread ng0
Ricardo Wurmus  writes:

> ng0  writes:
>
>> ng0  writes:
>>
>>> [ Unknown signature status ]
>>> Ricardo Wurmus  writes:
>>>
 Hi,

> I hope the appended patch still applies.

 could you please send a new, complete patch?

 You seem to have removed the “#t” from the “install” phase
 accidentally.  The return value should be kept.

 ~~ Ricardo
>>
>> Sorry, I'm not sure if I had sent the updated patch or not. The change
>> is so small.
>
> I’m sorry for the confusion.  Looking at the subject of these emails I
> assumed that this patch was supposed to *add* a *new* package, not
> modify an existing one.  I didn’t know that an earlier version had
> already been pushed.

No problem.

> In this case we should probably split these changes up as they are not
> related to one another.  Alternatively, the summary line should be
> changed to apply to all of the changes in this patch.

Can you give me an example how the summary line should look like then?

> ~~ Ricardo
>
>

-- 
  ng0



Re: [PATCH 2/2] gnu: python: Add i3-quickswitch.

2016-09-14 Thread Brendan Tildesley
On 2016-09-14 19:17, Ivan Vilata i Balaguer wrote:

Welcome to Guix. I tested this out in i3 and it works just fine. I may
end up using it. the latest version seems to be 2.2, but I see you
commented on that on the github, as it is not in pypi yet. Do we prefer
to use pypi or directly source upstream for packages? With 80k+ packages
in pypi, I'm unsure. Someone else will need to review this as I don't
have commit access.




Re: [PATCH 3/3] gnu: Add python-natsort.

2016-09-14 Thread Leo Famulari
On Sun, Sep 11, 2016 at 03:07:37PM +0100, Marius Bakke wrote:
> * gnu/packages/python.scm (python-natsort, python2-natsort): New variables.

Thanks! I pushed the patch series as
5467ea6200e7cf9fa57f340849b6ec1becc87b3d



[PATCH] gnu: Add pext.

2016-09-14 Thread ng0
* gnu/packages/python.scm (pext): New variable.
---
 gnu/packages/python.scm | 31 +++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index e2e1ec2..fabc8dc 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -58,6 +58,7 @@
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages gl)
   #:use-module (gnu packages glib)
+  #:use-module (gnu packages gnome)
   #:use-module (gnu packages gstreamer)
   #:use-module (gnu packages gtk)
   #:use-module (gnu packages icu4c)
@@ -73,6 +74,7 @@
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages readline)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages statistics)
@@ -633,6 +635,35 @@ using Python 2.4 or higher and provides access to the 
Olson timezone database.")
 (define-public python2-pytz
   (package-with-python2 python-pytz))
 
+(define-public pext
+  (let ((commit "2524dbbd0985e30ea6495e4ad0c96fc20af7bedd")
+(revision "1"))
+(package
+  (name "pext")
+  (version (string-append "0.0.0-" revision "." (string-take commit 7)))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://notabug.org/SylvieLorxu/Pext;)
+   (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+  (base32
+   "05dc36q3w3kwn6lkh5lyg0lckn0nk0xg377mxb1m2rd23f6vl00z"
+  (build-system python-build-system)
+  (inputs
+   `(("libnotify" ,libnotify)
+ ("python-pyqt" ,python-pyqt)
+ ("qtquickcontrols" ,qtquickcontrols)
+ ("xclip" ,xclip)))
+  (home-page "https://pext.github.io/;)
+  (synopsis "Python-based extendable tool")
+  (description
+   "Pext stands for Python-based extendable tool.  Its behaviour is decided
+by modules.  Pext provides a simple window with a search bar, allowing modules
+to define what data is shown and how it is manipulated.")
+  (license license:gpl3+
 
 (define-public python-babel
   (package
-- 
2.10.0




Re: [PATCH] gnu: Add pext.

2016-09-14 Thread ng0
This doesn't need installation, but it seems interesting and has an
setup.py
I don't know if it works, starting it outside of my profile it complains
about a missing module.

ng0  writes:

> * gnu/packages/python.scm (pext): New variable.
> ---
>  gnu/packages/python.scm | 31 +++
>  1 file changed, 31 insertions(+)
>
> diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
> index e2e1ec2..fabc8dc 100644
> --- a/gnu/packages/python.scm
> +++ b/gnu/packages/python.scm
> @@ -58,6 +58,7 @@
>#:use-module (gnu packages ghostscript)
>#:use-module (gnu packages gl)
>#:use-module (gnu packages glib)
> +  #:use-module (gnu packages gnome)
>#:use-module (gnu packages gstreamer)
>#:use-module (gnu packages gtk)
>#:use-module (gnu packages icu4c)
> @@ -73,6 +74,7 @@
>#:use-module (gnu packages pcre)
>#:use-module (gnu packages perl)
>#:use-module (gnu packages pkg-config)
> +  #:use-module (gnu packages qt)
>#:use-module (gnu packages readline)
>#:use-module (gnu packages sdl)
>#:use-module (gnu packages statistics)
> @@ -633,6 +635,35 @@ using Python 2.4 or higher and provides access to the 
> Olson timezone database.")
>  (define-public python2-pytz
>(package-with-python2 python-pytz))
>  
> +(define-public pext
> +  (let ((commit "2524dbbd0985e30ea6495e4ad0c96fc20af7bedd")
> +(revision "1"))
> +(package
> +  (name "pext")
> +  (version (string-append "0.0.0-" revision "." (string-take commit 7)))
> +  (source
> +   (origin
> + (method git-fetch)
> + (uri (git-reference
> +   (url "https://notabug.org/SylvieLorxu/Pext;)
> +   (commit commit)))
> + (file-name (string-append name "-" version "-checkout"))
> + (sha256
> +  (base32
> +   "05dc36q3w3kwn6lkh5lyg0lckn0nk0xg377mxb1m2rd23f6vl00z"
> +  (build-system python-build-system)
> +  (inputs
> +   `(("libnotify" ,libnotify)
> + ("python-pyqt" ,python-pyqt)
> + ("qtquickcontrols" ,qtquickcontrols)
> + ("xclip" ,xclip)))
> +  (home-page "https://pext.github.io/;)
> +  (synopsis "Python-based extendable tool")
> +  (description
> +   "Pext stands for Python-based extendable tool.  Its behaviour is 
> decided
> +by modules.  Pext provides a simple window with a search bar, allowing 
> modules
> +to define what data is shown and how it is manipulated.")
> +  (license license:gpl3+
>  
>  (define-public python-babel
>(package
> -- 
> 2.10.0
>
>

-- 
  ng0



Re: New package: python-glances

2016-09-14 Thread Leo Famulari
On Tue, Sep 13, 2016 at 10:02:37PM +0200, Stefan Reichör wrote:
> Subject: [PATCH] gnu: Add python-glances

Thank you for this patch!

For Python software, we like to add packages for both the Python 3 and
Python 2 versions, if the software supports it. The PyPi page [0]
suggests that Glances does work on both Python 2 and 3.

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

I tried building without setuptools, and the build did succeed. However,
setuptools is probably required for the Python 2 variant of the package.

There is a recent example of how to do this in the commit "gnu: Add
python-lit, python2-lit." (243db8245e6d8ee6aae80ce4606fb58cb8b23443).

Can you send an updated patch that adds both python-glances and
python2-glances using the method demonstrated there?



Re: [PATCH] gnu: Add darkhttpd.

2016-09-14 Thread Leo Famulari
On Wed, Sep 14, 2016 at 11:31:59AM +0530, Arun Isaac wrote:
> * gnu/packages/web.scm (darkhttpd): New variable.

Thanks for the updated patch!

> +   (uri (git-reference
> + (url (string-append "https://unix4lyfe.org/git/darkhttpd;))
> + (commit "41b68476c35270f47dcd2ddebe27cbcd87e43d41"))
^
There was a missing parentheses here ---|

> +   #:tests? #f ; No test suite

I found some tests! See attached. Part of the test suite wants some
static library from Clang / LLVM; I couldn't make that work in 5 minutes
so I gave up ;) I think it's okay to commit in this state.

What do you think?
>From 8268e04b18292047ff1922a151ad7458b443b9a0 Mon Sep 17 00:00:00 2001
From: Arun Isaac 
Date: Wed, 14 Sep 2016 11:31:59 +0530
Subject: [PATCH] gnu: Add darkhttpd.

* gnu/packages/web.scm (darkhttpd): New variable.

Signed-off-by: Leo Famulari 
---
 gnu/packages/web.scm | 44 
 1 file changed, 44 insertions(+)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index b9c201d..14cdf49 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2016 Ben Woodcroft 
 ;;; Copyright © 2016 Clément Lassieur 
 ;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 Arun Isaac 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3633,3 +3634,46 @@ provides a unix command line interface to a variety of 
popular www search engine
 and similar services.")
 (home-page "https://surfraw.alioth.debian.org/;)
 (license l:public-domain)))
+
+(define-public darkhttpd
+  (package
+(name "darkhttpd")
+(version "1.12")
+(source
+ (origin
+   ;; The darkhttpd release tarball URL fails to download with a
+   ;; 'TLS warning alert'. Download from the darkhttpd git repo
+   ;; until the problem has been fixed upstream.
+   (method git-fetch)
+   (uri (git-reference
+ (url (string-append "https://unix4lyfe.org/git/darkhttpd;))
+ (commit "41b68476c35270f47dcd2ddebe27cbcd87e43d41")))
+   (sha256
+(base32
+ "0wi8dfgj4ic0fsy4dszl69xgxdxlwxz4c30vsw2i2dpnczgjm04k"))
+   (file-name (string-append name "-" version "-checkout"
+(build-system gnu-build-system)
+(native-inputs
+ `(("python-2" ,python-2)))
+(arguments
+ `(#:make-flags '("CC=gcc")
+   #:phases
+   (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'install
+   (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "darkhttpd"
+   (string-append (assoc-ref outputs "out")
+  "/bin"))
+ #t))
+
+ ;; TODO Fix "***WARNING*** $CLANG \
+ ;; (/homeless-shelter/llvm/install/bin/clang) doesn't exist."
+ (replace 'check
+   (lambda _ (zero? (system* "make" "--directory" "devel")))
+(synopsis "Simple static web server")
+(description "darkhttpd is a simple static web server.  It is
+standalone and does not need inetd or ucspi-tcp.  It does not need any
+config files---you only have to specify the www root.")
+(home-page "https://unix4lyfe.org/darkhttpd/;)
+(license l:isc)))
-- 
2.10.0



[PATCH] gnu: Add darkhttpd.

2016-09-14 Thread Arun Isaac
* gnu/packages/web.scm (darkhttpd): New variable.
---
 gnu/packages/web.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 20c7d12..2b73446 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2016 Ben Woodcroft 
 ;;; Copyright © 2016 Clément Lassieur 
 ;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 Arun Isaac 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -3633,3 +3634,40 @@ provides a unix command line interface to a variety of 
popular www search engine
 and similar services.")
 (home-page "https://surfraw.alioth.debian.org/;)
 (license l:public-domain)))
+
+(define-public darkhttpd
+  (package
+(name "darkhttpd")
+(version "1.12")
+(source
+ (origin
+   ;; The darkhttpd release tarball URL fails to download with a
+   ;; 'TLS warning alert'. Download from the darkhttpd git repo
+   ;; until the problem has been fixed upstream.
+   (method git-fetch)
+   (uri (git-reference
+ (url (string-append "https://unix4lyfe.org/git/darkhttpd;))
+ (commit "41b68476c35270f47dcd2ddebe27cbcd87e43d41"))
+   (sha256
+(base32
+ "0wi8dfgj4ic0fsy4dszl69xgxdxlwxz4c30vsw2i2dpnczgjm04k"))
+   (file-name (string-append name "-" version "-checkout"
+(build-system gnu-build-system)
+(arguments
+ `(#:make-flags '("CC=gcc")
+   #:tests? #f ; No test suite
+   #:phases
+   (modify-phases %standard-phases
+ (delete 'configure)
+ (replace 'install
+   (lambda* (#:key outputs #:allow-other-keys)
+ (install-file "darkhttpd"
+   (string-append (assoc-ref outputs "out")
+  "/bin"))
+ #t)
+(synopsis "Simple static web server")
+(description "darkhttpd is a simple static web server.  It is
+standalone and does not need inetd or ucspi-tcp.  It does not need any
+config files---you only have to specify the www root.")
+(home-page "https://unix4lyfe.org/darkhttpd/;)
+(license l:isc)))
-- 
2.10.0




[PATCH 2/7] gnu: Add assimp.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/graphics.scm (assimp): New variable.
---
 gnu/packages/graphics.scm | 31 ++-
 1 file changed, 30 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/graphics.scm b/gnu/packages/graphics.scm
index d0df830..930e198 100644
--- a/gnu/packages/graphics.scm
+++ b/gnu/packages/graphics.scm
@@ -60,7 +60,8 @@
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages video)
   #:use-module (gnu packages xml)
-  #:use-module (gnu packages xorg))
+  #:use-module (gnu packages xorg)
+  #:use-module (gnu packages zip))
 
 (define-public blender
   (package
@@ -138,6 +139,34 @@ compositing and motion tracking, even video editing and 
game creation.  The
 application can be customized via its API for Python scripting.")
 (license license:gpl2+)))
 
+(define-public assimp
+  (package
+(name "assimp")
+(version "3.2")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "https://github.com/assimp/assimp/archive/v;
+  version ".zip"))
+  (file-name (string-append name "-" version ".zip"))
+  (sha256
+   (base32
+"11sfahmbwnjjpd8vpzdsng1bx5mb0cmaqb20dz6sdwapqanqwmar"
+(build-system cmake-build-system)
+(inputs
+ `(("zlib" ,zlib)))
+(native-inputs
+ `(("unzip" ,unzip)))
+(home-page "http://assimp.org/;)
+(synopsis "Asset import library")
+(description
+ "The Open Asset Import Library loads more than 40 3D file formats into
+one unified data structure.  Additionally, assimp features various mesh post
+processing tools: normals and tangent space generation, triangulation, vertex
+cache locality optimization, removal of degenerate primitives and duplicate
+vertices, sorting by primitive type, merging of redundant materials and many
+more.")
+(license license:bsd-3)))
+
 (define-public cgal
   (package
 (name "cgal")
-- 
2.10.0





[PATCH 3/7] gnu: Add stb-image-for-extempore.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/image.scm (stb-image-for-extempore): New variable.
---
 gnu/packages/image.scm | 26 ++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 1b10846..e40fa9a 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -49,6 +49,7 @@
   #:use-module ((guix licenses) #:prefix license:)
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system cmake)
   #:use-module (srfi srfi-1))
@@ -904,3 +905,28 @@ kinds of image- and audio-files.  The color- respectivly 
sample-frequencies
 are not changed thus making the embedding resistant against first-order
 statistical tests.")
 (license license:gpl2+)))
+
+(define-public stb-image-for-extempore
+  (let ((revision "1")
+(commit "152a250a702bf28951bb0220d63bc0c99830c498"))
+(package
+  (name "stb-image-for-extempore")
+  (version (string-append "0-" revision "." (string-take commit 9)))
+  (source
+   (origin (method git-fetch)
+   (uri (git-reference
+ (url "https://github.com/extemporelang/stb.git;)
+ (commit commit)))
+   (sha256
+(base32
+ "0y0aa20pj9311x2ii06zg8xs34idg14hfgldqc5ymizc6cf1qiqv"))
+   (file-name (string-append name "-" version "-checkout"
+  (build-system cmake-build-system)
+  (arguments `(#:tests? #f)); no tests included
+  (home-page "https://github.com/extemporelang/stb;)
+  (synopsis "Image library for Extempore")
+  (description
+   "This package is a collection of assorted single-file libraries.  Of
+all included libraries only the image loading and decoding library is
+installed as @code{stb_image}.")
+  (license license:public-domain
-- 
2.10.0





[PATCH 7/7] gnu: Add Extempore.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/music.scm (extempore): New variable.
---
 gnu/packages/music.scm | 147 +
 1 file changed, 147 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index c62dbbc..c512d53 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -37,6 +37,7 @@
   #:use-module (guix build-system waf)
   #:use-module (gnu packages)
   #:use-module (gnu packages algebra)
+  #:use-module (gnu packages apr)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages backup)
@@ -51,6 +52,7 @@
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages docbook)
   #:use-module (gnu packages documentation)
+  #:use-module (gnu packages emacs)
   #:use-module (gnu packages file)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages fltk)
@@ -71,11 +73,14 @@
   #:use-module (gnu packages imagemagick)
   #:use-module (gnu packages java)
   #:use-module (gnu packages linux) ; for alsa-utils
+  #:use-module (gnu packages libffi)
+  #:use-module (gnu packages llvm)
   #:use-module (gnu packages man)
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages mpd)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages netpbm)
+  #:use-module (gnu packages pcre)
   #:use-module (gnu packages pdf)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
@@ -262,6 +267,148 @@ many input formats and provides a customisable Vi-style 
user interface.")
 enable professional yet simple and intuitive pattern-based drum programming.")
 (license license:gpl2+)))
 
+(define-public extempore
+  (package
+(name "extempore")
+(version "0.7.0")
+(source (origin
+  (method url-fetch)
+  (uri (string-append
+"https://github.com/digego/extempore/archive/;
+version ".tar.gz"))
+  (sha256
+   (base32
+"1wap1mvsicrhlazikf7l8zxg37fir8bmnh9rin28m1rix730vcch"))
+  (file-name (string-append name "-" version ".tar.gz"
+(build-system cmake-build-system)
+(arguments
+ `(;; The default target also includes ahead-of-time compilation of the
+   ;; standard libraries.  However, during the "install" phase this would
+   ;; happen *again* for unknown reasons.  Hence we only build the
+   ;; extempore executable during the build phase.
+   #:make-flags '("extempore")
+   #:configure-flags '("-DJACK=ON"
+   ;; We want to distribute.
+   "-DIN_TREE=OFF"
+   ;; Don't download any dependencies.
+   "-DBUILD_DEPS=OFF")
+   #:modules ((ice-9 match)
+  (guix build cmake-build-system)
+  (guix build utils))
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'patch-directories
+   (lambda* (#:key outputs #:allow-other-keys)
+ ;; Rewrite default path to runtime directory
+ (substitute* "src/Extempore.cpp"
+   (("runtimedir \\+= \"runtime\"")
+(string-append "runtimedir = \""
+   (assoc-ref outputs "out")
+   "/lib/extempore/runtime\"")))
+ (substitute* "extras/extempore.el"
+   (("\\(runtime-directory \\(concat default-directory 
\"runtime\"\\)\\)")
+(string-append "(runtime-directory \""
+   (assoc-ref outputs "out")
+   "/lib/extempore/runtime"
+   "\")")))
+ #t))
+ (add-after 'unpack 'link-with-additional-libs
+   (lambda _
+ ;; The executable must be linked with libffi and zlib.
+ (substitute* "CMakeLists.txt"
+   (("add_dependencies\\(aot_extended extended_deps\\)") "")
+   (("target_link_libraries\\(extempore PRIVATE dl" line)
+(string-append line " ffi z")))
+ #t))
+ ;; FIXME: AOT compilation of the nanovg bindings fail with the error:
+ ;; "Compiler Error  could not bind _nvgLinearGradient"
+ (add-after 'unpack 'disable-nanovg
+   (lambda _
+ (substitute* "CMakeLists.txt"
+   (("aotcompile_lib\\(libs/external/nanovg.xtm.*") ""))
+ #t))
+ ;; FIXME: All examples that are used as tests segfault for some
+ ;; unknown reason.
+ (add-after 'unpack 'disable-broken-tests
+   (lambda _
+ (substitute* "CMakeLists.txt"
+   (("extempore_add_example_as_test\\(.*") ""))
+ #t))
+ (add-after 'unpack 'hardcode-external-lib-paths
+   (lambda* (#:key inputs #:allow-other-keys)
+ (use-modules (ice-9 match))
+ (for-each
+  (match-lambda
+

[PATCH 5/7] gnu: Add kiss-fft-for-extempore.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/algebra.scm (kiss-fft-for-extempore): New variable.
---
 gnu/packages/algebra.scm | 24 
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm
index 4fb15c6..83f03a0 100644
--- a/gnu/packages/algebra.scm
+++ b/gnu/packages/algebra.scm
@@ -505,6 +505,30 @@ syntax is similar to that of C, so basic usage is 
familiar.  It also includes
 \"dc\", a reverse-polish calculator.")
 (license license:gpl2+)))
 
+;; The original kiss-fft does not have a complete build system and does not
+;; build any shared libraries.  This is a fork used by Extempore.
+(define-public kiss-fft-for-extempore
+  (package
+(name "kiss-fft-for-extempore")
+(version "1.3.0")
+(source (origin
+  (method url-fetch)
+  (uri (string-append 
"https://github.com/extemporelang/kiss_fft/archive/;
+  version ".tar.gz"))
+  (file-name (string-append name "-" version ".tar.gz"))
+  (sha256
+   (base32
+"0hkp9l6l4c92fb1l2sh6a6zv1hynpvb2s4d03vd8vxyvybc0l4pv"
+(build-system cmake-build-system)
+(arguments `(#:tests? #f)) ; no tests included
+(home-page "https://github.com/extemporelang/kiss_fft;)
+(synopsis "Mixed-radix Fast Fourier Transform")
+(description
+ "Kiss FFT attempts to be a reasonably efficient, moderately useful FFT
+that can use fixed or floating data types and can easily be incorporated into
+a C program.")
+(license license:bsd-3)))
+
 (define-public fftw
   (package
 (name "fftw")
-- 
2.10.0





[PATCH 1/7] gnu: Add nanovg-for-extempore.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/gl.scm (nanovg-for-extempore): New variable.
---
 gnu/packages/gl.scm | 25 +
 1 file changed, 25 insertions(+)

diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index 1aa1201..707e3d4 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2014, 2016 David Thompson 
 ;;; Copyright © 2014, 2015 Mark H Weaver 
 ;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 Ricardo Wurmus 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -573,3 +574,27 @@ OpenGL.")
 desktop computers.  It provides a simple API for creating windows, contexts
 and surfaces, receiving input and events.")
 (license license:zlib)))
+
+(define-public nanovg-for-extempore
+  (package
+(name "nanovg-for-extempore")
+(version "0.7.1")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "https://github.com/extemporelang/nanovg/;
+  "archive/"  version ".tar.gz"))
+  (file-name (string-append name "-" version ".tar.gz"))
+  (sha256
+   (base32
+"0ivs1sagq19xiw8jxd9f8w2b39svi0n9hrbmdvckwvqg95r8701g"
+(build-system cmake-build-system)
+(arguments `(#:tests? #f)) ; no tests included
+(inputs
+ `(("mesa" ,mesa)))
+(home-page "https://github.com/extemporelang/nanovg;)
+(synopsis "2D vector drawing library on top of OpenGL")
+(description "NanoVG is small antialiased vector graphics rendering
+library for OpenGL.  It has lean API modeled after HTML5 canvas API.  It is
+aimed to be a practical and fun toolset for building scalable user interfaces
+and visualizations.")
+(license license:zlib)))
-- 
2.10.0





[PATCH 0/7] Add Extempore.

2016-09-14 Thread Ricardo Wurmus
Hi Guix,

This patch set adds Extempore, a Scheme-like language for live coding of audio
and graphics.  Extempore comes with an Emacs mode to facilitate live coding
from within Emacs (much like using Geiser for Guile).

Extempore depends on a few libraries that have been forked from their upstream
releases, hence the many "*-for-extempore" packages.  "llvm-for-extempore"
annoys me most, because it's almost exactly the same as upstream LLVM with
just a tiny fix that the developers say upstream isn't interested in.  It
takes a lot of time to compile.

I've tried to ensure that the AOT compilation of the language's libraries are
done in a generic fashion to allow for binary substitutes.

I've tested the very basics only because I'm not yet familiar with Extempore.
Here's an example that works for me:

(bind-func sine:DSP
  (lambda (in time chan dat)
(* .1 (cos (* (convert time) .04)

;; tell Extempore to use `sine` as the audio output sink
(dsp:set! sine)

Thanks in advance to the brave soul willing to review this!

~~ Ricardo

Ricardo Wurmus (7):
  gnu: Add nanovg-for-extempore.
  gnu: Add assimp.
  gnu: Add stb-image-for-extempore.
  gnu: Add llvm-for-extempore.
  gnu: Add kiss-fft-for-extempore.
  gnu: Add portmidi-for-extempore.
  gnu: Add Extempore.

 gnu/packages/algebra.scm  |  24 +++
 gnu/packages/gl.scm   |  25 +++
 gnu/packages/graphics.scm |  31 -
 gnu/packages/image.scm|  26 
 gnu/packages/llvm.scm |   8 +++
 gnu/packages/music.scm| 164 ++
 6 files changed, 277 insertions(+), 1 deletion(-)

-- 
2.10.0





[PATCH 4/7] gnu: Add llvm-for-extempore.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/llvm.scm (llvm-for-extempore): New variable.
---
 gnu/packages/llvm.scm | 8 
 1 file changed, 8 insertions(+)

diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm
index a9eba79..b55a200 100644
--- a/gnu/packages/llvm.scm
+++ b/gnu/packages/llvm.scm
@@ -3,6 +3,7 @@
 ;;; Copyright © 2015 Mark H Weaver 
 ;;; Copyright © 2015 Ludovic Courtès 
 ;;; Copyright © 2016 Dennis Mungai 
+;;; Copyright © 2016 Ricardo Wurmus 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -267,3 +268,10 @@ code analysis tools.")
 (define-public clang-3.5
   (clang-from-llvm llvm-3.5 clang-runtime-3.5
"0846h8vn3zlc00jkmvrmy88gc6ql6014c02l4jv78fpvfigmgssg"))
+
+(define-public llvm-for-extempore
+  (package (inherit llvm-3.7)
+(source
+ (origin
+   (inherit (package-source llvm-3.7))
+   (patches (list (search-patch "llvm-for-extempore.patch")))
-- 
2.10.0





[PATCH 6/7] gnu: Add portmidi-for-extempore.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/music.scm (portmidi-for-extempore): New variable.
---
 gnu/packages/music.scm | 17 +
 1 file changed, 17 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index f294564..c62dbbc 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -1081,6 +1081,23 @@ projects.")
 using a system-independent interface.")
 (license license:expat)))
 
+(define-public portmidi-for-extempore
+  (package (inherit portmidi)
+(name "portmidi-for-extempore")
+(version "217")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "https://github.com/extemporelang/portmidi/;
+  "archive/" version ".tar.gz"))
+  (file-name (string-append name "-" version ".tar.gz"))
+  (sha256
+   (base32
+"0gjikwciyr8kk4y3qiv1pcq58xpgw38ql1m2gs6g0qc1s8sx4235"
+(build-system cmake-build-system)
+(arguments `(#:tests? #f)) ; no tests
+(native-inputs '())
+(home-page "https://github.com/extemporelang/portmidi/;)))
+
 (define-public python-pyportmidi
   (package
 (name "python-pyportmidi")
-- 
2.10.0





Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread ng0
ng0  writes:

> [ Unknown signature status ]
> Ricardo Wurmus  writes:
>
>> Hi,
>>
>>> I hope the appended patch still applies.
>>
>> could you please send a new, complete patch?
>>
>> You seem to have removed the “#t” from the “install” phase
>> accidentally.  The return value should be kept.
>>
>> ~~ Ricardo

Sorry, I'm not sure if I had sent the updated patch or not. The change
is so small.

>From 7a58278178f7c13b1c9bfc93da4e5c8d765e59a8 Mon Sep 17 00:00:00 2001
From: ng0 
Date: Tue, 13 Sep 2016 20:19:57 +
Subject: [PATCH] gnu: femtolisp: Adjust description.

* gnu/packages/lisp.scm (femtolisp)[description]: Adjust to remove
unnecessary sentence.
[arguments](patch-makefile): Remove it and ...
(make-flags): Add "release" to make-flags.
(arguments)[tests]: Enable them as test-target "test".
---
 gnu/packages/lisp.scm | 18 +-
 1 file changed, 5 insertions(+), 13 deletions(-)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 3461de4..eb72b96 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -503,19 +503,11 @@ the InterLisp Standard.")
   "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja"
   (build-system gnu-build-system)
   (arguments
-   `(#:make-flags '("CC=gcc")
- #:tests? #f ; No make check
+   `(#:make-flags '("CC=gcc" "release")
+ #:test-target "test"
  #:phases
  (modify-phases %standard-phases
(delete 'configure) ; No configure script
-   ;; We have to remove the 'test phase because it requires
-   ;; the flisp binary to be present. Instead we run
-   ;; bootstrap.sh after the 'install phase.
-   (add-before 'build 'patch-makefile
- (lambda _
-   (substitute* "Makefile"
- (("default: release test") "default: release"))
-   #t))
(replace 'install ; Makefile has no 'install phase
 (lambda* (#:key outputs #:allow-other-keys)
   (let* ((out (assoc-ref outputs "out"))
@@ -533,8 +525,8 @@ the InterLisp Standard.")
  (install-file "flisp.boot" bin
   (synopsis "Scheme-like lisp implementation")
   (description
-   "@code{femtolisp} is a scheme-like lisp implementation with a
-simple, elegant Scheme dialect.  It is a lisp-1 with lexical scope.
-The core is 12 builtin special forms and 33 builtin functions.")
+   "@code{femtolisp} is a Scheme-like lisp implementation with a
+simple, elegant Scheme dialect.  The core is 12 builtin special forms
+and 33 builtin functions.")
   (home-page "https://github.com/JeffBezanson/femtolisp;)
   (license license:bsd-3
-- 
2.10.0



-- 
  ng0


[PATCH] gnu: Add r-e1071.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/statistics.scm (r-e1071): New variable.
---
 gnu/packages/statistics.scm | 20 
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 334c72a..fdc97ca 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -2551,6 +2551,26 @@ the way current RNG settings can be changed.")
 Stochastic Neighbor Embedding using a Barnes-Hut implementation.")
 (license license:bsd-3)))
 
+(define-public r-e1071
+  (package
+(name "r-e1071")
+(version "1.6-7")
+(source
+ (origin
+   (method url-fetch)
+   (uri (cran-uri "e1071" version))
+   (sha256
+(base32
+ "1069qwj9gsjq6par2cgfah8nn5x2w38830761x1f7mqpmk0gnj3h"
+(build-system r-build-system)
+(home-page "http://cran.r-project.org/web/packages/e1071;)
+(synopsis "Miscellaneous functions for probability theory")
+(description
+ "This package provides functions for latent class analysis, short time
+Fourier transform, fuzzy clustering, support vector machines, shortest path
+computation, bagged clustering, naive Bayes classifier, and more.")
+(license license:gpl2+)))
+
 (define-public r-nmf
   (package
 (name "r-nmf")
-- 
2.10.0





Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread Ricardo Wurmus

ng0  writes:

> ng0  writes:
>
>> [ Unknown signature status ]
>> Ricardo Wurmus  writes:
>>
>>> Hi,
>>>
 I hope the appended patch still applies.
>>>
>>> could you please send a new, complete patch?
>>>
>>> You seem to have removed the “#t” from the “install” phase
>>> accidentally.  The return value should be kept.
>>>
>>> ~~ Ricardo
>
> Sorry, I'm not sure if I had sent the updated patch or not. The change
> is so small.

I’m sorry for the confusion.  Looking at the subject of these emails I
assumed that this patch was supposed to *add* a *new* package, not
modify an existing one.  I didn’t know that an earlier version had
already been pushed.

In this case we should probably split these changes up as they are not
related to one another.  Alternatively, the summary line should be
changed to apply to all of the changes in this patch.

~~ Ricardo




Re: [PATCH 2/2] gnu: Add guile2.2-redis.

2016-09-14 Thread Ricardo Wurmus

Ludovic Courtès  writes:

> Ricardo Wurmus  skribis:
>
>> * gnu/packages/guile.scm (guile2.2-redis): New variable.
>
> OK

Pushed to master as 85313be89d57a99f32f7991448ec06af7462f338.
Thanks!

~~ Ricardo




[PATCH] gnu: Add r-rtsne.

2016-09-14 Thread Ricardo Wurmus
* gnu/packages/statistics.scm (r-rtsne): New variable.
---
 gnu/packages/statistics.scm | 22 ++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index f7110ae..334c72a 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -2529,6 +2529,28 @@ for reproducibility.  Notably, convenient default 
methods greatly facilitate
 the way current RNG settings can be changed.")
 (license license:gpl3+)))
 
+(define-public r-rtsne
+  (package
+(name "r-rtsne")
+(version "0.11")
+(source
+ (origin
+   (method url-fetch)
+   (uri (cran-uri "Rtsne" version))
+   (sha256
+(base32
+ "0zi4nxgpiv1gpdmcnqdhz5kymzp8m5xj02zpf290p1yyydl76bhy"
+(properties `((upstream-name . "Rtsne")))
+(build-system r-build-system)
+(propagated-inputs
+ `(("r-rcpp" ,r-rcpp)))
+(home-page "https://github.com/jkrijthe/Rtsne;)
+(synopsis "T-distributed stochastic neighbor embedding")
+(description
+ "This package provides an R wrapper around the fast T-distributed
+Stochastic Neighbor Embedding using a Barnes-Hut implementation.")
+(license license:bsd-3)))
+
 (define-public r-nmf
   (package
 (name "r-nmf")
-- 
2.10.0





Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread ng0
Ricardo Wurmus  writes:

> Hi,
>
>> I hope the appended patch still applies.
>
> could you please send a new, complete patch?
>
> You seem to have removed the “#t” from the “install” phase
> accidentally.  The return value should be kept.
>
> ~~ Ricardo
>
>
From 7a58278178f7c13b1c9bfc93da4e5c8d765e59a8 Mon Sep 17 00:00:00 2001
From: ng0 
Date: Tue, 13 Sep 2016 20:19:57 +
Subject: [PATCH] gnu: femtolisp: Adjust description.

* gnu/packages/lisp.scm (femtolisp)[description]: Adjust to remove
unnecessary sentence.
[arguments](patch-makefile): Remove it and ...
(make-flags): Add "release" to make-flags.
(arguments)[tests]: Enable them as test-target "test".
---
 gnu/packages/lisp.scm | 18 +-
 1 file changed, 5 insertions(+), 13 deletions(-)

diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm
index 3461de4..eb72b96 100644
--- a/gnu/packages/lisp.scm
+++ b/gnu/packages/lisp.scm
@@ -503,19 +503,11 @@ the InterLisp Standard.")
   "04rnwllxnl86zw8c6pwxznn49bvkvh0f1lfliy085vjzvlq3rgja"
   (build-system gnu-build-system)
   (arguments
-   `(#:make-flags '("CC=gcc")
- #:tests? #f ; No make check
+   `(#:make-flags '("CC=gcc" "release")
+ #:test-target "test"
  #:phases
  (modify-phases %standard-phases
(delete 'configure) ; No configure script
-   ;; We have to remove the 'test phase because it requires
-   ;; the flisp binary to be present. Instead we run
-   ;; bootstrap.sh after the 'install phase.
-   (add-before 'build 'patch-makefile
- (lambda _
-   (substitute* "Makefile"
- (("default: release test") "default: release"))
-   #t))
(replace 'install ; Makefile has no 'install phase
 (lambda* (#:key outputs #:allow-other-keys)
   (let* ((out (assoc-ref outputs "out"))
@@ -533,8 +525,8 @@ the InterLisp Standard.")
  (install-file "flisp.boot" bin
   (synopsis "Scheme-like lisp implementation")
   (description
-   "@code{femtolisp} is a scheme-like lisp implementation with a
-simple, elegant Scheme dialect.  It is a lisp-1 with lexical scope.
-The core is 12 builtin special forms and 33 builtin functions.")
+   "@code{femtolisp} is a Scheme-like lisp implementation with a
+simple, elegant Scheme dialect.  The core is 12 builtin special forms
+and 33 builtin functions.")
   (home-page "https://github.com/JeffBezanson/femtolisp;)
   (license license:bsd-3
-- 
2.10.0


-- 
  ng0


signature.asc
Description: PGP signature


[PATCH 0/2] Add quickswitch for i3

2016-09-14 Thread Ivan Vilata i Balaguer
Hi everyone,

The following two patches add the [quickswitch for i3][] package.  It
depends on [i3-py][], which I renamed to ``python-i3``.  The quickswitch
package is named ``i3-quickswitch``.  I hope I got the naming right,
they're also the first packages I add to Guix, so please tell if I did
something wrong!`:)`

[quickswitch for i3]: https://github.com/proxypoke/quickswitch-for-i3
[i3-py]: https://github.com/ziberna/i3-py

Cheers,

-- 
Ivan Vilata i Balaguer -- https://elvil.net/


signature.asc
Description: PGP signature


[PATCH 1/2] gnu: python: Add python-i3.

2016-09-14 Thread Ivan Vilata i Balaguer
From 3c39ddc7124c33ea0abe2d35a293b79942bf32b6 Mon Sep 17 00:00:00 2001
From: Ivan Vilata-i-Balaguer 
Date: Wed, 14 Sep 2016 08:28:22 +0200
Subject: [PATCH 1/2] gnu: python: Add python-i3.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index e2e1ec2..1691449 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -9012,6 +9012,31 @@ and parameters in Python 2 source code.  These 
refactorings can also be applied
 to occurences in strings and comments.")
 (license license:gpl2)))
 
+(define-public python-i3
+  (package
+(name "python-i3")
+(version "0.6.4")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "i3-py" version))
+   (sha256
+(base32
+ "1sgl438jrb4cdyl7hbc3ymwsf7y3zy09g1gh7ynilxpllp37jc8y"
+(build-system python-build-system)
+;; No tests yet.
+(arguments '(#:tests? #f))
+(home-page "https://github.com/ziberna/i3-py;)
+(synopsis "Python interface to the i3 window manager")
+(description "This package allows you to interact from a Python program
+with the i3 window manager via its IPC socket.  It can send commands and other
+kinds of messages to i3, select the affected containers, filter results and
+subscribe to events.")
+(license license:gpl3+)))
+
+(define-public python2-i3
+  (package-with-python2 python-i3))
+
 (define-public python-py3status
   (package
 (name "python-py3status")
-- 
2.10.0



signature.asc
Description: PGP signature


Using arch for kernel config file breaks kernel builds

2016-09-14 Thread Carlos Sánchez de La Lama
Hi guys,

seems a commit yesterday (c258807a) broke kernel compilation on
i686. When searching for kernel configuration file,
system->linux-architecture reduces i686 to i386, but no matching
configuration file exists.

I see two options:
1) go back to using system instead of arch (which would allow different
config files for, say, i386 and i686).
2) rename all i686 config files to i386.

In any case, current HEAD does not build 32-bit x86 kernels. I have
renamed config file ti -i386 in my local copy to be able to build.

BR

Carlos

-- 
'Common misconception that; than fun is relaxing. If it is, you're not doing it
right.'

Iain M. Banks, "The Player of Games" (1988)



[PATCH 2/2] gnu: python: Add i3-quickswitch.

2016-09-14 Thread Ivan Vilata i Balaguer
From 621739c63f132115ee923da7bb61ff87844345f4 Mon Sep 17 00:00:00 2001
From: Ivan Vilata-i-Balaguer 
Date: Wed, 14 Sep 2016 11:00:25 +0200
Subject: [PATCH 2/2] gnu: python: Add i3-quickswitch.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 1691449..c032e8d 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -76,6 +76,7 @@
   #:use-module (gnu packages readline)
   #:use-module (gnu packages sdl)
   #:use-module (gnu packages statistics)
+  #:use-module (gnu packages suckless)
   #:use-module (gnu packages tex)
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages tls)
@@ -9037,6 +9038,31 @@ subscribe to events.")
 (define-public python2-i3
   (package-with-python2 python-i3))
 
+(define-public i3-quickswitch
+  (package
+(name "i3-quickswitch")
+(version "2.1")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "quickswitch-i3" version))
+   (sha256
+(base32
+ "00k2gjrq7krzaf3b1r8snqjqa1sjnb3i3yvik165d3nj2sf5wypm"
+(build-system python-build-system)
+;; No tests yet.
+(arguments '(#:tests? #f))
+(propagated-inputs
+ `(("python-i3" ,python-i3)
+   ("dmenu" ,dmenu)))
+(home-page "https://github.com/proxypoke/quickswitch-for-i3;)
+(synopsis "Quickly change to and locate windows in the i3 window manager")
+(description "This utility for the i3 window manager allows you to quickly
+switch to and locate windows on all your workspaces, using an interactive
+dmenu prompt.  It has since gained a lot of other functionality to make
+working with i3 even more efficient.")
+(license (license:non-copyleft "http://www.wtfpl.net/txt/copying/;
+
 (define-public python-py3status
   (package
 (name "python-py3status")
-- 
2.10.0



signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add perl-mhonarc.

2016-09-14 Thread ng0
Leo Famulari  writes:

> On Sun, Sep 11, 2016 at 03:46:34PM +, ng0 wrote:
>> Should this then be adjusted to gpl2+ ? I took the information from
>> their website.
>
> Yes, I think it should be gpl2+, since the source files seem to all say
> "or later".
>

I have updated the license and changed the name to just mhonarc. There's
currently only one application named mhonarc.

From 8c7090c7da019b5ff2764d9fb350cf18db2507aa Mon Sep 17 00:00:00 2001
From: ng0 
Date: Wed, 14 Sep 2016 09:26:04 +
Subject: [PATCH] gnu: Add mhonarc.

* gnu/packages/mail.scm (mhonarc): New variable.
---
 gnu/packages/mail.scm | 22 ++
 1 file changed, 22 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index c2fc1a9..90c2da4 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1388,3 +1388,25 @@ to mbox files, maildir folders or a Mail Delivery Agent (MDA),
 TLS/SSL, several authentication methods, Internationalized Domain
 Names (IDN) and SOCKS proxies.")
 (license gpl3+)))
+
+(define-public mhonarc
+  (package
+(name "mhonarc")
+(version "2.6.19")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "mirror://cpan/authors/id/E/EH/EHOOD/MHonArc-"
+   version ".tar.gz"))
+   (sha256
+(base32
+ "0ll3v93yji334zqp6xfzfxc0127pmjcznmai1l5q6dzawrs2igzq"
+(build-system perl-build-system)
+(home-page "https://www.mhonarc.org/;)
+(synopsis "Create HTML archives of mail/news messages")
+(description
+ "MHonArc is a Perl mail-to-HTML converter.  MHonArc
+provides HTML mail archiving with index, mail thread linking,
+etc; plus other capabilities including support for MIME and
+powerful user customization features.")
+(license gpl2+)))
-- 
2.10.0



-- 
  ng0


signature.asc
Description: PGP signature


User-profile search paths should include system-profile directories

2016-09-14 Thread Carlos Sánchez de La Lama
Hi guys,

I have an interesting case here. I have guile installed in my system
profile, so that

/var/guix/profiles/system/profile/share/aclocal/guile.m4

is there. However, autoconf is installed in my *user* profile, so
ACLOCAL_PATH is augmented in ~/.guix-profile/etc/profile to include

~/.guix-profile/share/aclocal

But not the system-profile aclocal directory, which would be put into
ACLOCAL_PATH by /var/guix/profiles/system/profile/etc/profile if
autoconf was installed in the systme profile as well.

Is this the intended behaviour? I am wondering whether packages with
search paths should include both the user-profile directories and the
system-profile ones.

Thoughts?

BR

Carlos

-- 
'There is prodigious strength,' I answered him, 'in sorrow and despair.' 

Charles Dickens, "A Tale of Two Cities" (1859)



Re: [PATCH 1/2] gnu: guile-redis: Remove hard-coded Guile effective version.

2016-09-14 Thread Ricardo Wurmus

Ludovic Courtès  writes:

> Ricardo Wurmus  skribis:
>
>> * gnu/packages/guile.scm (guile-redis)[snippet]: Modify 'ac_subst_vars'
>> in 'configure', and use "@GUILE_EFFECTIVE_VERSION@" instead of "2.0" in
>> 'Makefile.in'.
>
> OK!

Pushed as ea833d301b0f4ff17dbc9403e18484a03258067e.

~~ Ricardo




Re: [PATCH] gnu: Add direnv

2016-09-14 Thread 宋文武
Christopher Baines  writes:

> direnv is an environment switcher for the shell. direnv can be used with many
> tools, including Guix environments.
>
> I was lucky enough to meet the original author in London, who showed me 
> direnv,
> and helped me write a function for my .direnvrc file to make it easy to use
> with Guix.
>
> I have the following in my .direnvrc file (in my home directory).
>
> use_guix() {
>   eval "$(guix environment "$@" --search-paths)"
> }
>
> This means that I can have something like the following in my .envrc files
>
> use_guix --ad-hoc guile
>
> You need to add a shell hook, and "allow" this file, but after that is done,
> just changing in and out of the directory with the .envrc file in it will
> adjust the environmental variables in your shell.

Cool, applied, thanks!



Re: [PATCH 1/2] gnu: Add femtolisp.

2016-09-14 Thread Ricardo Wurmus

Hi,

> I hope the appended patch still applies.

could you please send a new, complete patch?

You seem to have removed the “#t” from the “install” phase
accidentally.  The return value should be kept.

~~ Ricardo




Re: [PATCH] gnu: icedtea-8: Hardcode dynamically loaded libraries.

2016-09-14 Thread 宋文武
l...@gnu.org (Ludovic Courtès) writes:

> [...]
>
>> +(lambda (file)
>> +  (catch 'encoding-error
>> +(lambda ()
>> +  (substitute* file
>> +(("VERSIONED_JNI_LIB_NAME\\(\"(.*)\", 
>> \"(.*)\"\\)"
>> +  _ name version)
>> + (format #f "\"~a\""  (find-library name)))
>> +(("JNI_LIB_NAME\\(\"(.*)\"\\)" _ name)
>> + (format #f "\"~a\"" (find-library name)
>> +(lambda _
>> +  ;; Those are safe to skip.
>> +  (format (current-error-port)
>> +  "warning: failed to substitute: ~a~%"
>> +  file
>
> What often works in such cases is to force ISO-8859-1 encoding
> (“Latin-1”), which is a “catch-all” encoding (it’s an 8-bit encoding
> that covers the 256 values):
>
>   (with-fluids ((%default-port-encoding "ISO-8859-1"))
> (substitute* file-in-arbitrary-ascii-compatible-encoding
>   …))
>

Yeah, I tried that, but it was also producing 'encoding-error' in the
builder, so I gave up it.

It seems that's because the locale is "C" when calling `substitute*',
and the files have UTF-8 copyright sign (©).  But out of the builder,
the `substitute*' works fine even with '(setlocale LC_ALL "C")'.

Here is an example:
--8<---cut here---start->8---
(use-modules (guix packages)
 (guix build-system gnu))

(package
  (name "test")
  (version "0")
  (source #f)
  (build-system gnu-build-system)
  (arguments
   '(#:phases
 (modify-phases %standard-phases
   (replace 'unpack
 (lambda _
   (setlocale LC_ALL "en_US.utf8")
   (call-with-output-file "test"
 (lambda (port)
   (display "©" port)))

   (setlocale LC_ALL "C")
   (with-fluids ((%default-port-encoding #f))
 (substitute* "test"
   (("t") ""
  (home-page #f)
  (synopsis #f)
  (description #f)
  (license #f))
--8<---cut here---end--->8---



Re: [PATCH 1/3] gnu: Add python-pytest-pep8.

2016-09-14 Thread Marius Bakke
Leo Famulari  writes:

> On Sun, Sep 11, 2016 at 03:07:35PM +0100, Marius Bakke wrote:
>> * gnu/packages/python.scm (python-pytest-pep8, python2-pytest-pep8): New
>>   variables.
>
> Overall LGTM...
>
>> +(description "Pytest plugin for efficiently checking PEP8 compliance")
>
> I think we can drop "efficiently". I can do that before committing if
> you agree; no need to send an updated patch.

Thanks! Please do that for both the pep8 and flakes pytest plugins.



"filesystem" vs. "file system"

2016-09-14 Thread John Darrington
On Tue, Sep 13, 2016 at 01:45:19PM +0200, Ludovic Court??s wrote:
 John Darrington  skribis:
 
 
 > +The @code{(gnu services nfs)} module provides the following services,
 > +which are most commonly used in relation to mouting or exporting NFS
 > +filesystems.
 
 (Always write ???file system??? as two words.)


I agree that we should be consistent about this.  There are numerous examples
where we have used "filesystem" whilst others use "file system".

Shall I checkin a fix?


-- 
Avoid eavesdropping.  Send strong encrypted email.
PGP Public key ID: 1024D/2DE827B3 
fingerprint = 8797 A26D 0854 2EAB 0285  A290 8A67 719C 2DE8 27B3
See http://sks-keyservers.net or any PGP keyserver for public key.



signature.asc
Description: Digital signature