Re: [PATCH] gnu: Fix load-extension path in packaging of guile-ncurses.

2016-12-22 Thread John Darrington
We can argue about this till we're blue in the face.

But on a pragmatic level, Mark's question demonstrates perfectly
that our current system is lacking.  Other projects I work on
which have a more conventional approach do not suffer from this problem.

J'

On Thu, Dec 22, 2016 at 06:56:56AM +0100, Tobias Geerinckx-Rice wrote:
 John, Danny,
 
 [Any exasperation is due only to the sustained level of FUD I encounter
 about the Guix/GNU changelog format, and not aimed at John.]
 
 On 20/12/16 12:03, John Darrington wrote:
 > Sure (I would like to see a convention where such explanations are 
 > put in the commit messaage, but I have previously been outvoted on 
 > that issue).
 
 I don't think so.
 
 1. What was ???outvoted??? (with solid argumentation) was hiding comments
 documenting code itself in commit messages, when they would do more
 good as, well, comments.
 
 2. The Guix commit log has plenty of concise explanations for why code
 was *changed*. I See 64b5e41 for a random example. If that guy can get
 away with it...
 
 Most People??? badly overdo #2 when they should do #1 (consider the
 average *Hub pull request). The opposite is less common.
 
 > On Wed, Dec 21, 2016 at 09:36:56AM +0100, Danny Milosavljevic wrote:
 >> No, please don't put explanations into the commit message. But do 
 >> put them into the source code as a comment.
 
 I'd just finished writing the exact same e-mail as Danny ??? almost to the
 sentence ??? when that arrived. So... it must be right! :-)
 
 > That approach can work sometimes, but more often it is a 
 > non-starter.
 
 [Examples paraphrased for length:]
 > 1. ;; This variable used to be called "bar" but we changed it
 > 2. ;; There used to be some code here but we deleted it
 > 3. A new variable was introduced in places thoughout the code
 > 4. ;; Fred typed 'xyz' when he ought to have put 'abc'
 
 Sorry, but the first three examples are silly. :-)
 
 Deliberately silly, I'm sure, but still these are strawmen that no-one
 proposed. On the contrary: examples 1 to 3 are exactly what the current
 commit log documents with tedious precision.
 
 That leaves bugfixes.
 
 If the bug is waiting to happen again (and again...), putting a warning
 to future readers in a comment might be appropriate. No-one will spot it
 in a commit message. (Of course, re-writing the misleading/dangerous
 code would be the best solution.)
 
 If the fix is trivial, as in this example, the diff usually speaks for
 itself. In all other cases, a short note in the commit message is fine.
 This seems to be standard policy for CVEs. So I really don't understand
 your complaint.
 
 > But nobody except me will care about bugs in the function which have
 > been fixed.
 
 Exactly! In this patch, you're replacing buggy (?) code with shiny code.
 That shouldn't take more than ~50 characters to note.
 
 > On Wed, Dec 21, 2016 at 09:36:56AM +0100, Danny Milosavljevic wrote:
 >> I'm also working on other projects, some of which do what you 
 >> propose. What I often end up having to do there is do git blame, 
 >> then git log for each line, in order to find out why the source 
 >> code does what it does. Let's not do that here.
 
 +11, unfortunately from experience.
 
 > That is what git blame is for.  Be thankful for it!
 
 No and God no.
 
 That is exactly what ???git blame??? is not for.
 
 Code itself should be documented in-line. Not in a commit log meant for
 documenting changes, that breaks as soon as someone hits C-M-q.
 
 > I hope this explains why putting history in comments is harmful.
 
 It does! But this is not something anyone here suggested.
 
 > Having it in the commit message would certainly have avoided me 
 > having to explain the situation to Mark too.
 
 Perhaps. I doubt it. I can't speak for Mark, but most confusion
 seemed to stem from the commit message's accuracy, not its length.
 
 But yes, it could have been longer ??? and a comment :-)
 
 Kind regards,
 
 T G-R
 
 PS: On 21/12/16 10:56, John Darrington wrote:
 > Hi Danny,
 > 
 > A small request: Can you please fold the text of your email to ~80 
 > characters.  It's very hard to read otherwise.
 
 FWIW, your replies are equally hard to read (and even harder to reply
 to) because of the unconventional indentation. It certainly confuses
 Thunderbird, which is easily confused.
 




-- 
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
Desc

Re: Emacs-Guix released outside from Guix

2016-12-22 Thread Alex Kost
myglc2 (2016-12-21 19:18 -0500) wrote:

> On 12/17/2016 at 12:13 Alex Kost writes:
>
>> I have committed 'emacs-guix' package, so after "guix pull" or if you
>> use the git checkout, you may try it with:
>>
>>   guix package -i emacs-guix
>
> Hi Alex,
>
> Tried this on GuixSD 0.12.0 from git and I dig it!
>
> When I google 'guix emacs github' the top hit is ...
>
> GitHub - alezost/guix.el: (OBSOLETE) Emacs interface for Guix ...
>
> ... Which is cool, but '(OBSOLETE)' is odd. Maybe it will fix itself?

I'm sure it will fix itself.  I changed this description a week ago (it
was "OBSOLETE" for more than a year); apparently, google does not know
about it yet.

> Have you decided re feedback/support? github issues? mailing list?

Whatever seems appropriate to you: issues or pull requests on
github/notabug, or mailing me directly is OK.  As for using guix-devel
mailing list, I think it's not a suitable place, I would like to avoid
polluting this list with Emacs-Guix stuff.

> Many thanks for continuing to make emacs-guix cooler and cooler!

Thanks, make sure to check "M-x guix-help", if you have not yet.  BTW
I'm going to release 0.2.1 in a few days.  It will have "M-x guix-about"
command, which is not very useful but it's "fancy"... well, I'll make an
announcement about it :-)



[PATCH] gnu: Add python-hdf4.

2016-12-22 Thread Thomas Danckaert

Hi Guix,

this patch adds python-hdf4.  I'm not sure if the line “Python-HDF4 
is a fork of pyhdf.” in the description is necessary.  The original 
and “official” pyhdf (http://hdfeos.org/software/pyhdf.php) is 
somewhat outdated (e.g. doesn't support python3).


Thomas
From 7bb5a32da7b2b7bd2a31b6cfd4244e55fe0b850a Mon Sep 17 00:00:00 2001
From: Thomas Danckaert 
Date: Thu, 22 Dec 2016 11:17:44 +0100
Subject: [PATCH] gnu: Add python-hdf4.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index bfa7eae..1ed3b7d 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -715,6 +715,35 @@ certificate returned by the server to which a connection has been established,
 and verifies that it matches the intended target hostname.")
 (license license:psfl)))
 
+(define-public python-hdf4
+  (package
+   (name "python-hdf4")
+   (version "0.9")
+   (source
+(origin
+ (method url-fetch)
+ (uri (pypi-uri name version))
+ (sha256
+  (base32
+   "1hjiyrxvxk9817qyqky3nar4y3fs4z8wxz0n884zzb5wi6skrjks"
+   (build-system python-build-system)
+   (inputs
+`(("hdf4" ,hdf4)
+  ("libjpeg" ,libjpeg)
+  ("zlib" ,zlib)
+  ("numpy" ,python-numpy)))
+   (home-page "https://github.com/fhs/python-hdf4";)
+   (synopsis "Python interface to the NCSA HDF4 library")
+   (description
+"Python-HDF4 is a python wrapper around the NCSA HDF version 4
+library, which implements the SD (Scientific Dataset), VS (Vdata) and
+V (Vgroup) API’s.  NetCDF files can also be read and modified.
+Python-HDF4 is a fork of pyhdf.")
+   (license license:expat)))
+
+(define-public python2-hdf4
+  (package-with-python2 python-hdf4))
+
 (define-public python-h5py
   (package
 (name "python-h5py")
-- 
2.7.4



Re: 01/02: gnu: gnupg: Update to 2.1.17.

2016-12-22 Thread Leo Famulari
On Thu, Dec 22, 2016 at 02:17:23AM -0500, Mark H Weaver wrote:
> > gnu: gnupg: Update to 2.1.17.
> > 
> > * gnu/packages/gnupg.scm (gnupg): Update to 2.1.17.
> 
> Unfortunately, this new version of gnupg consistently fails its test
> suite on every system we support except for x86_64:

> The error is always the same:
> 
> --8<---cut here---start->8---
> make  check-local
> make[3]: Entering directory 
> '/tmp/nix-build-gnupg-2.1.17.drv-0/gnupg-2.1.17/tests/gpgscm'
> EXEEXT= GPGSCM_PATH=. \
>   ./gpgscm ./t-child.scm
> make[3]: *** [Makefile:838: check-local] Segmentation fault
> --8<---cut here---end--->8---
> 
> If you can't find a fix quickly, please revert this commit, because
> several very important packages depend on it.

Upstream discussion:

https://lists.gnupg.org/pipermail/gnupg-devel/2016-December/032364.html



Re: 01/02: gnu: gnupg: Update to 2.1.17.

2016-12-22 Thread Marius Bakke
Leo Famulari  writes:

> On Thu, Dec 22, 2016 at 02:17:23AM -0500, Mark H Weaver wrote:
>> > gnu: gnupg: Update to 2.1.17.
>> > 
>> > * gnu/packages/gnupg.scm (gnupg): Update to 2.1.17.
>> 
>> Unfortunately, this new version of gnupg consistently fails its test
>> suite on every system we support except for x86_64:
>
>> The error is always the same:
>> 
>> --8<---cut here---start->8---
>> make  check-local
>> make[3]: Entering directory 
>> '/tmp/nix-build-gnupg-2.1.17.drv-0/gnupg-2.1.17/tests/gpgscm'
>> EXEEXT= GPGSCM_PATH=. \
>>  ./gpgscm ./t-child.scm
>> make[3]: *** [Makefile:838: check-local] Segmentation fault
>> --8<---cut here---end--->8---
>> 
>> If you can't find a fix quickly, please revert this commit, because
>> several very important packages depend on it.
>
> Upstream discussion:
>
> https://lists.gnupg.org/pipermail/gnupg-devel/2016-December/032364.html

Here is the patch from that thread:

https://git.gnupg.org/cgi-bin/gitweb.cgi?p=gnupg.git;a=commitdiff;h=6e96cdd41a0e55b672309431062f37c4a4a9f485

It doesn't look like they will do a new release with this fix, so I
pushed the patch as 059b3aa9c335041d947cf2b765ab3dab811cfdc5. It passes
with '--system=i686-linux' on my machine.


signature.asc
Description: PGP signature


Re: Emacs-Guix released outside from Guix

2016-12-22 Thread myglc2
On 12/22/2016 at 12:15 Alex Kost writes:

> myglc2 (2016-12-21 19:18 -0500) wrote:
>
>> Have you decided re feedback/support? github issues? mailing list?
>
> Whatever seems appropriate to you: issues or pull requests on
> github/notabug, or mailing me directly is OK.  As for using guix-devel
> mailing list, I think it's not a suitable place, I would like to avoid
> polluting this list with Emacs-Guix stuff.

I think you should provide guidance about this in your README.  A
designated mailing list would be good because it will provide an archive
of questions and answers.

I think you should reconsider "polluting this list" and I think you
should continue using the Guix lists if Ludo and others are
agreeable. My reasoning is as follows:

- 99.9% of your users are on these lists

- emacs-guix remains an essential a part of Guix

- from a user's point of view, its being in a separate repo is a purely
  technical detail

>> Many thanks for continuing to make emacs-guix cooler and cooler!
>
> Thanks, make sure to check "M-x guix-help", if you have not yet.

I did, very cool.

> BTW I'm going to release 0.2.1 in a few days.  It will have "M-x
> guix-about" command, which is not very useful but it's
> "fancy"... well, I'll make an announcement about it :-)

Looking forward ;-)



Re: [PATCH] gnu: Add wwwoffle.

2016-12-22 Thread Marius Bakke
Bake Timmons <65pan...@gmail.com> writes:

> * gnu/packages/web.scm (wwwoffle): New variable.
> ---
>  gnu/packages/web.scm | 28 
>  1 file changed, 28 insertions(+)

Thanks for this! The patch looks good, but does not build on master
because the "libgcrypt" variable cannot be found. It can be imported
from the "gnupg" module.

Some other trivial comments: Home page and source should use HTTPS when
available, and we try to add comments about why tests are disabled.
Could you also add a copyright line for yourself?

I can do these minor edits for you if you prefer, but would like to
confirm name and email for the copyright. Thanks!

>
> diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
> index 184869200..c4e716c2b 100644
> --- a/gnu/packages/web.scm
> +++ b/gnu/packages/web.scm
> @@ -668,6 +668,34 @@ server).  It was primarily designed to be used by one 
> person or a small group
>  of people.")
>  (license l:expat)))
>  
> +(define-public wwwoffle
> +  (package
> +(name "wwwoffle")
> +(version "2.9j")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append "http://www.gedanken.org.uk/software/";
> +  "wwwoffle/download/wwwoffle-"
> +  version ".tgz"))
> +  (sha256
> +   (base32
> +"1ihil1xq9dp21hf108khxbw6f3baq0w5c0j3af038y6lkmad4vdi"
> +(build-system gnu-build-system)
> +(arguments
> + `(#:configure-flags '("--with-gnutls")
> +   #:tests? #f))
> +(native-inputs `(("flex" ,flex)))
> +(inputs `(("gnutls" ,gnutls)
> +  ("libcrypt", libgcrypt)))
> +(home-page "http://www.gedanken.org.uk/software/wwwoffle/";)
> +(synopsis "Caching web proxy optimized for intermittent internet links")
> +(description "WWWOFFLE is a proxy web server that is especially good for
> +intermittent internet links.  It can cache HTTP, HTTPS, FTP, and finger
> +protocols, and supports browsing and requesting pages while offline, 
> indexing,
> +modifying pages and incoming and outgoing headers, monitoring pages for
> +changes, and much more.")
> +(license l:gpl2+)))
> +
>  (define-public libyaml
>(package
>  (name "libyaml")
> -- 
> 2.11.0


signature.asc
Description: PGP signature


Re: GNU Guix & GuixSD 0.12.0 released

2016-12-22 Thread Maxim Cournoyer

Thanks for the release, Ricardo!

Maxim



Re: gnurl: update and various changes to package definition

2016-12-22 Thread ng0
ng0  writes:

> [PATCH 1/3] gnu: gnurl: Update to 7.52.0 [fixes CVE.
>
> I'm aware of the warning the cURL maintainers posted and will make the gnurl 
> release as soon as they release the version of cURL fixing whatever unknown 
> security issue they have.

In my opinion, we can wait until I have released the version
which fixes whatever is so insecure in cURL at the moment. I will
rebase this patchset and send again then, skipping the version
released on 2016-12-21.

What do you think?

> [PATCH 2/3] gnu: gnurl: Make tests more verbose.
>
> Compare to curl.scm
>
> [PATCH 3/3] gnu: gnurl: Split man pages to doc output.
>
> Man pages are 1.5 MB big. Split it.
>
>

-- 
♥Ⓐ  ng0  | PGP keys and more: https://n0is.noblogs.org/
 |http://ng0.chaosnet.org



libextractor enhancements up for review

2016-12-22 Thread ng0
[PATCH 1/5] gnu: Add libmp4v2.

This package is pulled from code.google.com and I am trying to contact upstream 
to check where the new canonical upstream location is.

[PATCH 2/5] gnu: Add tidy-html.
[PATCH 3/5] gnu: Add libsmf.

Those three above might need some further review, this is just to send in for a 
review before final descriptions, etc.

[PATCH 4/5] gnu: libextractor: Add dependencies.

Add the 3 new packages + bzip2 to the dependencies. For tidy (tidy-html) I'm 
not sure wether it is picked up, but libsmf and libmp4v2 are detected.
Our rpm package has problems, even adding it to configure will not make 
libextractor pick the include/rpm/rpm* files up.

[PATCH 5/5] gnu: libextractor: Move .a files to output "static".

Save about ~397 KiB, which compared to the size of libextractor isn't that 
small.



[PATCH 4/5] gnu: libextractor: Add dependencies.

2016-12-22 Thread ng0
* gnu/packages/gnunet.scm (libextractor): Add dependencies:
tidy-html, libmp4v2, libsmf, bzip2.
[arguments](configure-flags): Add "--with-libtidy".
* Adjust the FIXME comment section accordingly.
---
 gnu/packages/gnunet.scm | 17 +++--
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 5d1baa834..35c751bdf 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2015 Efraim Flashner 
 ;;; Copyright © 2016 Ricardo Wurmus 
 ;;; Copyright © 2016 Mark H Weaver 
-;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 ng0 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -44,7 +44,9 @@
   #:use-module (gnu packages libunistring)
   #:use-module (gnu packages maths)
   #:use-module (gnu packages multiprecision)
+  #:use-module (gnu packages music)
   #:use-module (gnu packages ncurses)
+  #:use-module (gnu packages package-management)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pulseaudio)
@@ -87,13 +89,11 @@
;; The following dependencies are all optional, but should be
;; available for maximum coverage:
;; * libmagic (file)
-   ;; * libmp4v2; package it
-   ;; * librpm  ; package it
-   ;; * libsmf  ; package it
-   ;; * libtidy ; package it
+   ;; * librpm (rpm); investigate failure
;; * libgif (giflib) ; investigate failure
(inputs
 `(("exiv2" ,exiv2)
+  ("bzip2" ,bzip2)
   ("flac" ,flac)
   ("ffmpeg" ,ffmpeg)
   ("file" ,file)   ;libmagic, for the MIME plug-in
@@ -106,6 +106,9 @@
   ("libjpeg" ,libjpeg)
   ("libltdl" ,libltdl)
   ("libmpeg2" ,libmpeg2)
+  ("libmp4v2" ,libmp4v2)
+  ("libsmf" ,libsmf)
+  ("tidy-html" ,tidy-html)
   ("libogg" ,libogg)
   ("libtiff" ,libtiff)
   ("libvorbis" ,libvorbis)
@@ -115,7 +118,9 @@
(arguments
 `(#:configure-flags
   (list (string-append "--with-ltdl="
-   (assoc-ref %build-inputs "libltdl")))
+   (assoc-ref %build-inputs "libltdl"))
+(string-append "--with-tidy="
+   (assoc-ref %build-inputs "tidy-html")))
   #:parallel-tests? #f))
(synopsis "Library to extract meta-data from media files")
(description
-- 
2.11.0




[PATCH 1/5] gnu: Add libmp4v2.

2016-12-22 Thread ng0
* gnu/packages/video.scm (libmp4v2): New variable.
---
 gnu/packages/video.scm | 49 -
 1 file changed, 48 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 76b80b334..371031b03 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -11,7 +11,7 @@
 ;;; Copyright © 2016 Kei Kebreau 
 ;;; Copyright © 2016 Dmitry Nikolaev 
 ;;; Copyright © 2016 Andy Patterson 
-;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 ng0 
 ;;; Copyright © 2016 Eric Bavier 
 ;;; Copyright © 2016 Jan Nieuwenhuizen 
 ;;;
@@ -57,6 +57,7 @@
   #:use-module (gnu packages compression)
   #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
+  #:use-module (gnu packages dejagnu)
   #:use-module (gnu packages elf)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages fontutils)
@@ -75,6 +76,7 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages lua)
   #:use-module (gnu packages m4)
+  #:use-module (gnu packages man)
   #:use-module (gnu packages mp3)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages ocr)
@@ -1859,3 +1861,48 @@ of modern, widely supported codecs.")
 (description
  "Openh264 is a library which can decode H264 video streams.")
 (license license:bsd-2)))
+
+(define-public libmp4v2
+  (package
+(name "libmp4v2")
+(version "2.0.0")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append 
"https://storage.googleapis.com/google-code-archive-downloads/v2/";
+   "code.google.com/mp4v2/mp4v2-" version ".tar.bz2"))
+   (file-name (string-append name "-" version ".tar.bz2"))
+   (sha256
+(base32
+ "0f438bimimsvxjbdp4vsr8hjw2nwggmhaxgcw07g2z361fkbj683"
+(build-system gnu-build-system)
+(outputs '("out"
+   "static")) ; 3.7MiB .a file
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-after 'install 'move-static-libraries
+   (lambda* (#:key outputs #:allow-other-keys)
+ ;; Move static libraries to the "static" output.
+ (let* ((out(assoc-ref outputs "out"))
+(lib(string-append out "/lib"))
+(static (assoc-ref outputs "static"))
+(slib   (string-append static "/lib")))
+   (mkdir-p slib)
+   (for-each (lambda (file)
+   (install-file file slib)
+   (delete-file file))
+ (find-files lib "\\.a$"))
+   #t))
+(native-inputs
+ `(("help2man" ,help2man)
+   ("dejagnu" ,dejagnu)))
+(home-page "https://code.google.com/archive/p/mp4v2/";)
+(synopsis "libmp4v2 provides an API to create and modify mp4 files")
+(description
+ "The MP4v2 library provides an API to create and modify mp4 files as 
defined by
+ISO-IEC:14496-1:2001 MPEG-4 Systems.  This file format is derived from Apple's 
QuickTime
+file format that has been used as a multimedia file format in a variety of 
platforms and
+applications.  It is a very powerful and extensible format that can accommodate
+practically any type of media.")
+(license license:mpl1.1)))
-- 
2.11.0




[PATCH 3/5] gnu: Add libsmf.

2016-12-22 Thread ng0
* gnu/packages/music.scm (libsmf): New variable.
---
 gnu/packages/music.scm | 49 +
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index 079a07586..bba196eba 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -8,6 +8,7 @@
 ;;; Copyright © 2016 Kei Kebreau 
 ;;; Copyright © 2016 John J. Foerch 
 ;;; Copyright © 2016 Alex Griffin 
+;;; Copyright © 2016 ng0 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2744,3 +2745,51 @@ collections and wantlists, inventory, and orders.")
 
 (define-public python2-discogs-client
   (package-with-python2 python-discogs-client))
+
+(define-public libsmf
+  (package
+(name "libsmf")
+(version "1.3")
+(source
+ (origin
+   (method url-fetch)
+   ;; SF download page says development moved, but the link it points to
+   ;; is gone (https://github.com/nilsgey/libsmf).  Someone else adopted
+   ;; it but made no release so far (https://github.com/stump/libsmf).
+   (uri (string-append "mirror://sourceforge/libsmf/libsmf/"
+   version "/libsmf-" version ".tar.gz"))
+   (sha256
+(base32
+ "16c0n40h0r56gzbh5ypxa4dwp296dan3jminml2qkb4lvqarym6k"
+(build-system gnu-build-system)
+(outputs '("out"
+   "static")) ; 88KiB of .a files
+(arguments
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-after 'install 'move-static-libraries
+   (lambda* (#:key outputs #:allow-other-keys)
+ ;; Move static libraries to the "static" output.
+ (let* ((out(assoc-ref outputs "out"))
+(lib(string-append out "/lib"))
+(static (assoc-ref outputs "static"))
+(slib   (string-append static "/lib")))
+   (mkdir-p slib)
+   (for-each (lambda (file)
+   (install-file file slib)
+   (delete-file file))
+ (find-files lib "\\.a$"))
+   #t))
+(inputs
+ `(("readline" ,readline)
+   ("glib" ,glib)))
+(native-inputs
+ `(("doxygen" ,doxygen)
+   ("pkg-config" ,pkg-config)))
+(home-page "http://libsmf.sourceforge.net/";)
+(synopsis "Standard MIDI File format library")
+(description
+ "LibSMF is a C library for handling SMF (\"*.mid\") files.  It 
transparently handles
+conversions between time and pulses, tempo map handling and more.  The only 
dependencies
+are a C compiler and glib.  Full API documentation and examples are included.")
+(license license:bsd-2)))
-- 
2.11.0




[PATCH 2/5] gnu: Add tidy-html.

2016-12-22 Thread ng0
* gnu/packages/web.scm (tidy-html): New variable.
---
 gnu/packages/web.scm | 51 ++-
 1 file changed, 50 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 184869200..f28944c75 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -13,7 +13,7 @@
 ;;; Copyright © 2016 Rene Saavedra 
 ;;; Copyright © 2016 Ben Woodcroft 
 ;;; Copyright © 2016 Clément Lassieur 
-;;; Copyright © 2016 ng0 
+;;; Copyright © 2016 ng0 
 ;;; Copyright © 2016 Arun Isaac 
 ;;; Copyright © 2016 Tobias Geerinckx-Rice 
 ;;;
@@ -3938,3 +3938,52 @@ useful for users behind restrictive firewalls.  As long 
as Web traffic is
 allowed, even through a HTTP-only proxy, httptunnel can be combined with other
 tools like SSH (Secure Shell) to reach the outside world.")
 (license l:gpl2+)))
+
+(define-public tidy-html
+  (package
+(name "tidy-html")
+(version "5.2.0")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "https://github.com/htacg/tidy-html5/archive/";
+   version ".tar.gz"))
+   (file-name (string-append name "-" version ".tar.gz"))
+   (sha256
+(base32
+ "0kbwzh15dlapp3s3vff2qgz0yfcf8hwsnx5q4igwa6pimhak8lw0"
+(build-system cmake-build-system)
+(outputs '("out"
+   "static")) ; 1.0MiB of .a files
+(arguments
+ `(#:tests? #f ; No tests available
+   #:configure-flags (list "-DCMAKE_BUILD_TYPE=Release")
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'install 'move-static-libraries
+   (lambda* (#:key outputs #:allow-other-keys)
+ ;; Move static libraries to the "static" output.
+ (let* ((out(assoc-ref outputs "out"))
+(lib(string-append out "/lib"))
+(static (assoc-ref outputs "static"))
+(slib   (string-append static "/lib")))
+   (mkdir-p slib)
+   (for-each (lambda (file)
+   (install-file file slib)
+   (delete-file file))
+ (find-files lib "\\.a$"))
+   #t))
+(native-inputs
+ `(("libxslt" ,libxslt)))
+(home-page "http://www.html-tidy.org/";)
+(synopsis "HTML Tidy with HTML5 support")
+(description
+ "Tidy is a console application for Mac OS X, Linux, Windows,
+UNIX, and more. It corrects and cleans up HTML and XML documents by
+fixing markup errors and upgrading legacy code to modern standards.
+
+libtidy is a C static and dynamic library that developers can integrate
+into their applications in order to bring all of Tidy’s power to your
+favorite tools. libtidy is used today in desktop applications,
+web servers, and more.")
+(license l:bsd-3)))
-- 
2.11.0




[PATCH 5/5] gnu: libextractor: Move .a files to output "static".

2016-12-22 Thread ng0
* gnu/packages/gnunet.scm (libextractor): Move .a files to "static" output.
[arguments](phases): New phase for moving .a files to output "static".
---
 gnu/packages/gnunet.scm | 19 ++-
 1 file changed, 18 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index 35c751bdf..42df9801f 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -115,13 +115,30 @@
   ("zlib" ,zlib)))
(native-inputs
 `(("pkg-config" ,pkg-config)))
+   (outputs '("out"
+  "static")) ; 396 KiB .a files
(arguments
 `(#:configure-flags
   (list (string-append "--with-ltdl="
(assoc-ref %build-inputs "libltdl"))
 (string-append "--with-tidy="
(assoc-ref %build-inputs "tidy-html")))
-  #:parallel-tests? #f))
+  #:parallel-tests? #f
+  #:phases
+  (modify-phases %standard-phases
+(add-after 'install 'move-static-libraries
+  (lambda* (#:key outputs #:allow-other-keys)
+;; Move static libraries to the "static" output.
+(let* ((out(assoc-ref outputs "out"))
+   (lib(string-append out "/lib"))
+   (static (assoc-ref outputs "static"))
+   (slib   (string-append static "/lib")))
+  (mkdir-p slib)
+  (for-each (lambda (file)
+  (install-file file slib)
+  (delete-file file))
+(find-files lib "\\.a$"))
+  #t))
(synopsis "Library to extract meta-data from media files")
(description
 "GNU libextractor is a library for extracting metadata from files.  It
-- 
2.11.0




Re: GNU Guix & GuixSD 0.12.0 released

2016-12-22 Thread Luis Felipe López Acevedo

On 2016-12-22 11:23, Maxim Cournoyer wrote:

Thanks for the release, Ricardo!


Echo :)

Glad to see more people doing releases.


--
Luis Felipe López Acevedo
http://sirgazil.bitbucket.org/



Re: [PATCH] gnu: Add python-hdf4.

2016-12-22 Thread Marius Bakke
Thomas Danckaert  writes:

> Hi Guix,
>
> this patch adds python-hdf4.  I'm not sure if the line “Python-HDF4 
> is a fork of pyhdf.” in the description is necessary.  The original 
> and “official” pyhdf (http://hdfeos.org/software/pyhdf.php) is 
> somewhat outdated (e.g. doesn't support python3).

The "official" pyhdf and this fork was released around the same time and
have the same version number. Confusing! But I'll take your word that
this one is better. I'd keep the fork comment in the description though,
in case someone is looking for pyhdf. Could you wrap pyhdf in '@url{}'?

Regarding the patch, I wonder if it should go in (gnu packages maths),
similar to how we put PDF libraries in pdf.scm and XML in xml.scm etc.
But no strong opinion here.

'python-numpy' should be a propagated-input since it is imported at
runtime, and not a dynamically linked C library like the other inputs.

The 'check' phase seems to run the build again, and prints at the end
"Ran 0 tests in 0.000s". Looking at the Github ".travis.yml", the CI
tool runs the command "nosetests" instead of 'python setup.py test' like
python-build-system does by default. Can you try replacing the 'check'
phase with that command? You'll need 'python-nose' as a native-input.

It seems you also forgot to add a copyright line. Can you send an
updated patch? Thank you! :-)


signature.asc
Description: PGP signature


Re: No more space left on device issue

2016-12-22 Thread Maxim Cournoyer
Hi Ludovic!

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

> Does running “guix gc” help?

Yes; that's been my fix for now. Running the garbage collector purged 17
GB worth of data from the store.

> FWIW, on hydra.gnu.org we have this:
>
> On mirror.hydra.gnu.org:
>
> $ df -i /gnu/store
> Filesystem   InodesIUsedIFree IUse% Mounted on
> /dev/mapper/vg0-store 100663296 10988332 89674964   11% /gnu
> $ df -h /gnu/store
> Filesystem Size  Used Avail Use% Mounted on
> /dev/mapper/vg0-store  1.5T  1.4T  103G  93% /gnu

That one is very interesting. The filesystem is nearly full but still it
is only using a tenth of its available inodes. Unless this hard drive is
filled in big part by large single file blobs such as a backups or
similar, it defeats the theory that the currently used EXT4 filesystem
parameters are not optimal for the needs of Guix.

Thanks for this useful info!

Maxim



Re: [PATCH] gnu: Add php-hello-world.

2016-12-22 Thread Hartmut Goebel
Am 21.12.2016 um 17:38 schrieb Ludovic Courtès:
> For other tools we provide what upstream provides.  For example, Qt
> comes with examples, which we provide in the ‘qt’ package (IIRC).

The php source package does not provide any example. I also searched the
internet for some hello-world-package, but did not find one.

If you know of one, feel free to replace this one.

If you dislike "home-made" packages so much, I can set up a
"php-hello-world" project at github. But what should be the benefit?

-- 
Regards
Hartmut Goebel

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




Re: No more space left on device issue

2016-12-22 Thread Maxim Cournoyer
Hello Tobias,

Tobias Geerinckx-Rice  writes:

> Maxim,
>
> On 21/12/16 22:48, Ludovic Courtès wrote:
>> Maxim Cournoyer  skribis:
>>> What I don't understand is why the all the inodes are used at only 71%
>>> of disk usage (11GB left!). There's not much else than Guix there; I
>>> have a documents folder (700 MB with 4k files) and some git
>>> repositories (2.6 GB, 38k files), but that's it.
>> 
>> Not sure, I don’t know of inode usage profiling tools.
>
> There's always ‘du --inode’ (in combination with ‘-s’ if needed) to
> quickly point the finger o' blame in the right direction.

My 37 GiB ext4 partition apparently has a total of around 2.5 M
inodes. Currently (after recently running the garbage collector), its
inodes usage is at 15%:

df -i /dev/sda1
Filesystem  Inodes  IUsed   IFree IUse% Mounted on
/dev/sda1  2445984 358647 2087337   15% /

My home dir only uses 56 k inodes:

du --inodes -s ~
56002   /home/maxim

This would suggest that in my case it really was the Guix store which
was responsible for consuming all the available inodes. I'll keep
monitoring it as it progressively fills up again.

Thanks for pointing at the --inodes option of du, I didn't know about
it!

Maxim



A ncurses tox client: toxic.

2016-12-22 Thread ng0
[PATCH] gnu: Add toxic.

Problems: ncursesw is not found, and libnotify isn't found as well.



[PATCH] gnu: Add toxic.

2016-12-22 Thread ng0
* gnu/packages/messaging.scm (toxic): New variable.
---
 gnu/packages/messaging.scm | 47 ++
 1 file changed, 47 insertions(+)

diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 4290a9f69..24728cc06 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -40,6 +40,7 @@
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages avahi)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages crypto)
   #:use-module (gnu packages cyrus-sasl)
   #:use-module (gnu packages databases)
@@ -70,12 +71,14 @@
   #:use-module (gnu packages linux)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages icu4c)
+  #:use-module (gnu packages image)
   #:use-module (gnu packages qt)
   #:use-module (gnu packages video)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xiph)
   #:use-module (gnu packages audio)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages textutils)
   #:use-module (gnu packages fontutils))
 
 (define-public libotr
@@ -767,6 +770,50 @@ 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 toxic
+  (package
+(name "toxic")
+(version "0.7.2")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "https://github.com/JFreegman/toxic/archive/";
+   "v" version ".tar.gz"))
+   (sha256
+(base32
+ "0nbcj71ffl85l396bxc5cs8d7abn4b7absaj5asq9bvcfv52m5m2"))
+   (file-name (string-append name "-" version ".tar.gz"
+(inputs
+ `(("ncurses" ,ncurses)
+   ("libconfig" ,libconfig)
+   ("curl" ,curl)
+   ("libsodium" ,libsodium)
+   ("freealut" ,freealut)
+   ("libnotify" ,libnotify)
+   ("c-toxcore" ,c-toxcore)
+   ("openal" ,openal)
+   ("libvpx" ,libvpx)
+   ("libx11" ,libx11)
+   ("libpng" ,libpng)
+   ("qrencode" ,qrencode)))
+(native-inputs
+ `(("pkg-config" ,pkg-config)
+   ("libconfig" ,libconfig)))
+(build-system gnu-build-system)
+(arguments
+ `(#:tests? #f ; no tests
+   #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
+   #:phases
+   (modify-phases %standard-phases
+ (delete 'configure
+(home-page "https://github.com/JFreegman/toxic/";)
+(synopsis "Tox client using an ncurses interface")
+(description
+ "Toxic is a small tox clien.  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.11.0




Re: Emacs-Guix released outside from Guix

2016-12-22 Thread myglc2
On 12/18/2016 at 11:32 Ludovic Courtès writes:

> Hi Alex,
>
> Alex Kost  skribis:
>
>> Ludovic Courtès (2016-12-15 18:39 +0100) wrote:
>>
[...]
>
>> I always feel uncomfortable to send patches or to push commits to the
>> Guix repo.  I can't explain it properly, it's just painful all the
>> time; but more importantly, it slowed down the development, as I often
>> decided not to do small changes.  Contrary, I made more commits to the
>> Emacs-Guix source tree in the past month, than to the Guix repo during
>> the whole year.
>
> I have the same questions as John: what is it that made you feel
> uncomfortable?  I stated clearly multiple times that you are effectively
> “sudoer” on this code.
>
> Let’s reflect on this for all the future Alexes that come around.  If
> you are in my position, what do you do to make it so that the next Alex
> feels comfortable and happy with this workflow?  What does it take to
> avoid an “Alexit”?  :-)
>
> That’s an honest question: I cannot state what I did wrong, but I’d like
> to learn so it doesn’t happen again.

Hi Ludo’, 

I really don't see the downside to emacs-guix being moved out of the
guix repo.  From the user's point of view, it doesn't matter where the
code lives, as long as it continues to be expertly developed for the
benefit of guix users.

It is true that emacs-guix code changes will no longer pass thru the
guix QC and review process, but you control which emacs-guix code
"ships" with guix via the package definition. So there is no loss of
control.

If an approach like this provides a more comfortable and productive
working environment for a contributor, it seems like a win-win for Guix
users.  Maybe there are other situations where this approach could
address developer issues.

In the case of emacs-guix, which is so closely bound to Guix, I suggest
that you make it a "guix endorsed package."  This would clarify the
situation for guix users. In practice, one thing this could mean would
be for you to host guix-emacs discussion on guix mailing lists, if Alex
is so inclined.

Best, - George




Re: Chicken security bugs [was Re: [pe...@more-magic.net: Irregex packages should be updated to 0.9.6]]

2016-12-22 Thread Kei Kebreau
Leo Famulari  writes:

> On Fri, Dec 16, 2016 at 02:33:19PM -0500, Leo Famulari wrote:
>> We fixed this bug in our guile-irregex package in commit fb73f07a0fe,
>> but our chez-irregex and chicken packages are still vulnerable.
>
> Also note that (I believe) our chicken package is vulnerable to
> CVE-2016-{6830,6831}:
>
> http://lists.nongnu.org/archive/html/chicken-announce/2016-08/msg2.html

The attached patch is currently being tested on my computer, but I
suspect it will work.

See https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=834845.

From 3423ef38ecab794f9601aa8ac63c6974d9db62d4 Mon Sep 17 00:00:00 2001
From: Kei Kebreau 
Date: Thu, 22 Dec 2016 14:16:55 -0500
Subject: [PATCH] gnu: chicken: Fix CVE-2016-{6830,6831}.

* gnu/packages/patches/chicken-CVE-2016-6830+CVE-2016-6831.patch: New file.
* gnu/local.mk (dist_patch_DATA): Use it.
* gnu/packages/scheme.scm (chicken)[source]: Use it.
---
 gnu/local.mk   |   1 +
 .../chicken-CVE-2016-6830+CVE-2016-6831.patch  | 426 +
 gnu/packages/scheme.scm|   4 +-
 3 files changed, 430 insertions(+), 1 deletion(-)
 create mode 100644 
gnu/packages/patches/chicken-CVE-2016-6830+CVE-2016-6831.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index ee8f1e591..81a216a39 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -497,6 +497,7 @@ dist_patch_DATA =   
\
   %D%/packages/patches/calibre-drop-unrar.patch\
   %D%/packages/patches/calibre-no-updates-dialog.patch \
   %D%/packages/patches/cdparanoia-fpic.patch   \
+  %D%/packages/patches/chicken-CVE-2016-6830+CVE-2016-6831.patch   \
   %D%/packages/patches/chmlib-inttypes.patch   \
   %D%/packages/patches/clang-libc-search-path.patch\
   %D%/packages/patches/clang-3.8-libc-search-path.patch\
diff --git a/gnu/packages/patches/chicken-CVE-2016-6830+CVE-2016-6831.patch 
b/gnu/packages/patches/chicken-CVE-2016-6830+CVE-2016-6831.patch
new file mode 100644
index 0..45d5442e0
--- /dev/null
+++ b/gnu/packages/patches/chicken-CVE-2016-6830+CVE-2016-6831.patch
@@ -0,0 +1,426 @@
+The following patch was adapted for CHICKEN Scheme
+by Kei Kebreau  based on:
+
+https://lists.nongnu.org/archive/html/chicken-hackers/2016-07/txtSWHYeFeG0R.txt
+
+diff -r -u a/NEWS b/NEWS
+--- a/NEWS 2016-12-22 14:06:40.016494788 -0500
 b/NEWS 2016-12-22 14:06:49.216803605 -0500
+@@ -27,6 +27,12 @@
+   - The signal handling code can no longer trigger "stack overflow" or
+ "recursion too deep or circular data encountered" errors (#1283).
+ 
++- Security fixes
++  - Fix buffer overrun due to excessively long argument or
++environment lists in process-execute and process-spawn (#1308).
++This also removes unnecessary limitations on the length of
++these lists (thanks to Vasilij Schneidermann).
++
+ - Compiler:
+   - Specializations on implicit "or" types like "number" or "boolean" now
+ work, removing the requirement for the inferred types to match
+diff -r -u a/posix-common.scm b/posix-common.scm
+--- a/posix-common.scm 2016-12-22 14:06:40.024495057 -0500
 b/posix-common.scm 2016-12-22 14:06:55.961030020 -0500
+@@ -25,7 +25,8 @@
+ 
+ 
+ (declare 
+-  (hide ##sys#stat posix-error check-time-vector ##sys#find-files)
++  (hide ##sys#stat posix-error check-time-vector ##sys#find-files
++  list->c-string-buffer free-c-string-buffer call-with-exec-args)
+   (foreign-declare #<
+@@ -679,3 +680,65 @@
+   (if (fx= epid -1)
+   (posix-error #:process-error 'process-wait "waiting for child 
process failed" pid)
+   (values epid enorm ecode) ) ) ) ) ) )
++
++;; This can construct argv or envp for process-execute or process-run
++(define list->c-string-buffer
++  (let* ((c-string->allocated-pointer
++(foreign-lambda* c-pointer ((scheme-object o))
++  "char *ptr = malloc(C_header_size(o)); \n"
++  "if (ptr != NULL) {\n"
++  "  C_memcpy(ptr, C_data_pointer(o), C_header_size(o)); \n"
++  "}\n"
++  "C_return(ptr);")) )
++(lambda (string-list convert loc)
++  (##sys#check-list string-list loc)
++
++  (let* ((string-count (##sys#length string-list))
++   ;; NUL-terminated, so we must add one
++   (buffer (make-pointer-vector (add1 string-count) #f)))
++
++  (handle-exceptions exn
++  ;; Free to avoid memory leak, then reraise
++  (begin (free-c-string-buffer buffer) (signal exn))
++
++(do ((sl string-list (cdr sl))
++ (i 0 (fx+ i 1)) )
++((or (null? sl) (fx= i string-count))) ; Should coincide
++
++  (##sys#check-string (car sl) loc)
++  ;; This avoids embedded NULs and appends a NUL, so "cs" is
++  ;; safe to copy and use as-is in the pointer-vector.
++  (let* ((cs (##sys#make-c-string (convert (car sl)) loc))
++   

[PATCH] gnu: xonsh: Update to 0.5.0.

2016-12-22 Thread Stefan Reichör
>From 9a924507483674a3059b520b5e257304ebc97fce Mon Sep 17 00:00:00 2001
From: Stefan Reichoer 
Date: Thu, 22 Dec 2016 22:35:05 +0100
Subject: [PATCH] gnu: xonsh: Update to 0.5.0.

* gnu/packages/shells.scm (xonsh): Update to 0.5.0.
---
 gnu/packages/shells.scm | 7 ---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 1931609..5fbac74 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -4,6 +4,7 @@
 ;;; Copyright © 2014 Kevin Lemonnier 
 ;;; Copyright © 2015 Jeff Mickey 
 ;;; Copyright © 2016 Tobias Geerinckx-Rice 
+;;; Copyright © 2016 Stefan Reichör 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -298,21 +299,21 @@ ksh, and tcsh.")
 (define-public xonsh
   (package
 (name "xonsh")
-(version "0.4.7")
+(version "0.5.0")
 (source
   (origin
 (method url-fetch)
 (uri (pypi-uri "xonsh" version))
 (sha256
   (base32
-"04b0z41mxiwsp5rl21fzrixcdmx2kndjlh4gn3582qfga9hihf20"))
+"1iml0mrjl2j3dsan5app6am77bd59s855p6yy6505ljdh552mv01"))
 (modules '((guix build utils)))
 (snippet
  `(begin
 ;; Delete bundled ply.
 (delete-file-recursively "xonsh/ply")
 (substitute* '("setup.py")
-  (("'xonsh\\.ply',") ""))
+  (("'xonsh\\.ply\\.ply',") ""))
 #t
 (build-system python-build-system)
 (arguments
-- 
2.7.4





License MIT?

2016-12-22 Thread Stefan Reichör
Hi,

I would like to package httpstat.

It uses the MIT license:
https://github.com/reorx/httpstat/blob/master/LICENSE

However I didn't find MIT in licenses.scm.

Is there a compatible license?

Thanks,
  Stefan.




Re: License MIT?

2016-12-22 Thread Tobias Geerinckx-Rice
Stefan,

On 22/12/16 23:17, Stefan Reichör wrote:
> However I didn't find MIT in licenses.scm.

The name ‘MIT licence’ is considered ambiguous by (amongst others) the
FSF[1]. This is probably the ‘expat’ licence, which you will find in
licenses.scm.

Kind regards,

T G-R

[1]: https://en.wikipedia.org/wiki/MIT_License#Variants



signature.asc
Description: OpenPGP digital signature


Re: License MIT?

2016-12-22 Thread Kei Kebreau
Stefan Reichör  writes:

> Hi,
>
> I would like to package httpstat.
>
> It uses the MIT license:
> https://github.com/reorx/httpstat/blob/master/LICENSE
>
> However I didn't find MIT in licenses.scm.
>
> Is there a compatible license?
>
> Thanks,
>   Stefan.

Hi Stefan,

I believe the "expat" license is the one you're looking for. That
license looks a lot like the sample here:
https://directory.fsf.org/wiki/License:Expat.

Fun fact: The Expat and "MIT" licenses are the same thing. Expat is the
GNU/FSF name for it.


signature.asc
Description: PGP signature


Re: [PATCH] gnu: xonsh: Update to 0.5.0.

2016-12-22 Thread Kei Kebreau
Stefan Reichör  writes:

> From 9a924507483674a3059b520b5e257304ebc97fce Mon Sep 17 00:00:00 2001
> From: Stefan Reichoer 
> Date: Thu, 22 Dec 2016 22:35:05 +0100
> Subject: [PATCH] gnu: xonsh: Update to 0.5.0.
>
> * gnu/packages/shells.scm (xonsh): Update to 0.5.0.
> ---
>  gnu/packages/shells.scm | 7 ---
>  1 file changed, 4 insertions(+), 3 deletions(-)
>
> diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
> index 1931609..5fbac74 100644
> --- a/gnu/packages/shells.scm
> +++ b/gnu/packages/shells.scm
> @@ -4,6 +4,7 @@
>  ;;; Copyright © 2014 Kevin Lemonnier 
>  ;;; Copyright © 2015 Jeff Mickey 
>  ;;; Copyright © 2016 Tobias Geerinckx-Rice 
> +;;; Copyright © 2016 Stefan Reichör 
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -298,21 +299,21 @@ ksh, and tcsh.")
>  (define-public xonsh
>(package
>  (name "xonsh")
> -(version "0.4.7")
> +(version "0.5.0")
>  (source
>(origin
>  (method url-fetch)
>  (uri (pypi-uri "xonsh" version))
>  (sha256
>(base32
> -"04b0z41mxiwsp5rl21fzrixcdmx2kndjlh4gn3582qfga9hihf20"))
> +"1iml0mrjl2j3dsan5app6am77bd59s855p6yy6505ljdh552mv01"))
>  (modules '((guix build utils)))
>  (snippet
>   `(begin
>  ;; Delete bundled ply.
>  (delete-file-recursively "xonsh/ply")
>  (substitute* '("setup.py")
> -  (("'xonsh\\.ply',") ""))
> +  (("'xonsh\\.ply\\.ply',") ""))
>  #t
>  (build-system python-build-system)
>  (arguments

Thanks for the update! Pushed as 572ee05c3134cf9408ba463c97fdbacb9a98f714.


signature.asc
Description: PGP signature


Re: License MIT?

2016-12-22 Thread Tobias Geerinckx-Rice
Hai,

On 22/12/16 23:23, Tobias Geerinckx-Rice wrote:
> This is probably the ‘expat’ licence, ...

On 22/12/16 23:29, Kei Kebreau wrote:
> I believe the "expat" license is the one you're looking for.

Ugh, are my mails missing the list again? :-/

(Sorry to go off topic, but I had similar troubles on bug-guix this
morning.)

Kind regards,

T G-R



signature.asc
Description: OpenPGP digital signature


Re: [PATCH] gnu: Add toxic.

2016-12-22 Thread Kei Kebreau
ng0  writes:

> * gnu/packages/messaging.scm (toxic): New variable.
> ---
>  gnu/packages/messaging.scm | 47 
> ++
>  1 file changed, 47 insertions(+)
>
> diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
> index 4290a9f69..24728cc06 100644
> --- a/gnu/packages/messaging.scm
> +++ b/gnu/packages/messaging.scm
> @@ -40,6 +40,7 @@
>#:use-module (gnu packages autotools)
>#:use-module (gnu packages avahi)
>#:use-module (gnu packages check)
> +  #:use-module (gnu packages curl)
>#:use-module (gnu packages crypto)
>#:use-module (gnu packages cyrus-sasl)
>#:use-module (gnu packages databases)
> @@ -70,12 +71,14 @@
>#:use-module (gnu packages linux)
>#:use-module (gnu packages tls)
>#:use-module (gnu packages icu4c)
> +  #:use-module (gnu packages image)
>#:use-module (gnu packages qt)
>#:use-module (gnu packages video)
>#:use-module (gnu packages web)
>#:use-module (gnu packages xiph)
>#:use-module (gnu packages audio)
>#:use-module (gnu packages bison)
> +  #:use-module (gnu packages textutils)
>#:use-module (gnu packages fontutils))
>  
>  (define-public libotr
> @@ -767,6 +770,50 @@ 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 toxic
> +  (package
> +(name "toxic")
> +(version "0.7.2")
> +(source
> + (origin
> +   (method url-fetch)
> +   (uri (string-append "https://github.com/JFreegman/toxic/archive/";
> +   "v" version ".tar.gz"))
> +   (sha256
> +(base32
> + "0nbcj71ffl85l396bxc5cs8d7abn4b7absaj5asq9bvcfv52m5m2"))
> +   (file-name (string-append name "-" version ".tar.gz"
> +(inputs
> + `(("ncurses" ,ncurses)

I'm not sure what's up here. IIRC, we don't install the ncurses *.pc
files. If I'm wrong, someone please correct me.

> +   ("libconfig" ,libconfig)
> +   ("curl" ,curl)
> +   ("libsodium" ,libsodium)
> +   ("freealut" ,freealut)
> +   ("libnotify" ,libnotify)

Adding gdk-pixbuf as a dependency satisfied pkg-config here. Apparently
it's a dependency when you try to use "pkg-config --libs libnotify" with
just libnotify installed.

> +   ("c-toxcore" ,c-toxcore)
> +   ("openal" ,openal)
> +   ("libvpx" ,libvpx)
> +   ("libx11" ,libx11)
> +   ("libpng" ,libpng)
> +   ("qrencode" ,qrencode)))
> +(native-inputs
> + `(("pkg-config" ,pkg-config)
> +   ("libconfig" ,libconfig)))
> +(build-system gnu-build-system)
> +(arguments
> + `(#:tests? #f ; no tests
> +   #:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs 
> "out")))
> +   #:phases
> +   (modify-phases %standard-phases
> + (delete 'configure
> +(home-page "https://github.com/JFreegman/toxic/";)
> +(synopsis "Tox client using an ncurses interface")
> +(description
> + "Toxic is a small tox clien.  It provides an easy to use application

*client.

> +that allows you to connect with friends and family without anyone else
> +listening in.")
> +(license license:gpl3+)))
> +
>  (define-public pybitmessage
>(package
>  (name "pybitmessage")


signature.asc
Description: PGP signature


Re: License MIT?

2016-12-22 Thread Kei Kebreau
Tobias Geerinckx-Rice  writes:

> Hai,
>
> On 22/12/16 23:23, Tobias Geerinckx-Rice wrote:
>> This is probably the ‘expat’ licence, ...
>
> On 22/12/16 23:29, Kei Kebreau wrote:
>> I believe the "expat" license is the one you're looking for.
>
> Ugh, are my mails missing the list again? :-/
>

No, I took a while to send my message. By the time I refreshed my inbox,
your message was there.

> (Sorry to go off topic, but I had similar troubles on bug-guix this
> morning.)
>
> Kind regards,
>
> T G-R


signature.asc
Description: PGP signature


Re: How to boot GuixSD in LXD

2016-12-22 Thread David Braun
On Mon, Dec 19, 2016 at 9:24 AM, ludo-at-gnu.org |Guix-box| <
2wkutze...@sneakemail.com> wrote:
>
> Scary, no?  :-)
>

Haha, yes!


> HTH!
>

Thank you, it did!

Best,
David


Re: How to boot GuixSD in LXD

2016-12-22 Thread David Braun
On Sun, Dec 18, 2016 at 2:27 PM, David Craven david-at-craven.ch |Guix-box|
<7br2j1e...@sneakemail.com> wrote:

> That sounds like it could work. I believe what you are looking for is
> the boot script contained in a system derivation. If you used guix
> system init to create the LXD image, you can find it by running $(guix
> system build etc/config.scm)/boot.
>

Thank you for the tips; they were helpful.  I moved on from LXD to Docker
and I got it working.

David


Re: GNU Guix & GuixSD 0.12.0 released

2016-12-22 Thread Daniel Pimentel (d4n1)
I installed ratpoison with root encrypted partition and it's work!

Thanks,On Dec 22, 2016 1:23 PM, Maxim Cournoyer  
wrote:
>
>
> Thanks for the release, Ricardo! 
>
> Maxim 
>


Re: [PATCH] Elpa importer improvements

2016-12-22 Thread Carlo Zancanaro


On Wed, Dec 14 2016, Carlo Zancanaro wrote 
I was trying to import some elpa packages recently and found 
some  issues, so here are some patches to fix them.


1. call-with-downloaded-file had behaviour different to how it 
was  documented to behave. This was primarily a problem when 
trying to  import packages with no description (eg. 
color-theme-solarized on  melpa).


2. Package dependencies need to be propagated so that emacs can 
find them.


Has anyone looked at this? This is relatively minor, but now that the
0.12.0 release is done I thought a ping might be appropriate.


signature.asc
Description: PGP signature


Staging freeze

2016-12-22 Thread Leo Famulari
The last staging branch was merged into the master branch on December
11.

According to the 3 week staging cycle we are trying to adhere to [0],
this would mean we freeze the current branch on December 25 and try to
merge it on January 1.

These dates are inconvenient for many people. I propose we freeze the
branch and start building on December 27, and try to merge on January 3.

[0]
http://lists.gnu.org/archive/html/guix-devel/2016-10/msg00933.html


signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add toxic.

2016-12-22 Thread John Darrington
On Thu, Dec 22, 2016 at 06:51:10PM -0500, Kei Kebreau wrote:
 ng0  writes:
 
 > * gnu/packages/messaging.scm (toxic): New variable.
 > ---
 >  gnu/packages/messaging.scm | 47 
++
 >  1 file changed, 47 insertions(+)
 >
 > +(define-public toxic
 > +  (package
 > +(name "toxic")
 > +(version "0.7.2")
 > +(source
 > + (origin
 > +   (method url-fetch)
 > +   (uri (string-append "https://github.com/JFreegman/toxic/archive/";
 > +   "v" version ".tar.gz"))
 > +   (sha256
 > +(base32
 > + "0nbcj71ffl85l396bxc5cs8d7abn4b7absaj5asq9bvcfv52m5m2"))
 > +   (file-name (string-append name "-" version ".tar.gz"
 > +(inputs
 > + `(("ncurses" ,ncurses)
 
 I'm not sure what's up here. IIRC, we don't install the ncurses *.pc
 files. If I'm wrong, someone please correct me.

It would seem that we don't.  In fact so far as I'm aware, ncurses doesn't even
provide such a thing.  Instead it provides it's own pkg-config like utility 
called
"ncursesw60config" which you can use if you like.

Personally however I don't like either approach.   I think it much cleaner and 
more
reliably to explicitly state which path(s) and libraries you need rather than 
to 
rely on some wierd script to guess it for you.
 
J'

-- 
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


Re: Staging freeze

2016-12-22 Thread John Darrington
On Fri, Dec 23, 2016 at 12:23:39AM -0500, Leo Famulari wrote:
 The last staging branch was merged into the master branch on December
 11.
 
 According to the 3 week staging cycle we are trying to adhere to [0],
 this would mean we freeze the current branch on December 25 and try to
 merge it on January 1.
 
 These dates are inconvenient for many people. I propose we freeze the
 branch and start building on December 27, and try to merge on January 3.
 
 [0]
 http://lists.gnu.org/archive/html/guix-devel/2016-10/msg00933.html


Sounds good to me.

J'



-- 
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


Re: [PATCH] gnu: Add python-hdf4.

2016-12-22 Thread Thomas Danckaert

From: Marius Bakke 
Subject: Re: [PATCH] gnu: Add python-hdf4.
Date: Thu, 22 Dec 2016 18:09:07 +0100


Thomas Danckaert  writes:


Hi Guix,

this patch adds python-hdf4.  I'm not sure if the line “Python-HDF4
is a fork of pyhdf.” in the description is necessary.  The original
and “official” pyhdf (http://hdfeos.org/software/pyhdf.php) is
somewhat outdated (e.g. doesn't support python3).


The "official" pyhdf and this fork was released around the same 
time and
have the same version number. Confusing! But I'll take your word 
that

this one is better.


Yes, it seems it mirrors updates in the “official” one, and keeps the 
same version numbers.


Regarding the patch, I wonder if it should go in (gnu packages 
maths),
similar to how we put PDF libraries in pdf.scm and XML in xml.scm 
etc.

But no strong opinion here.


I've wondered the same.  Right now, h5py, which is a similar package 
for HDF5, is also in python.scm, so I decided to add this package 
next to it.  As an aside, I find many packages in maths.scm are not 
really “mathy” (“science” maybe), but anyway :-)


The 'check' phase seems to run the build again, and prints at the 
end

"Ran 0 tests in 0.000s". Looking at the Github ".travis.yml", the CI
tool runs the command "nosetests" instead of 'python setup.py test' 
like
python-build-system does by default. Can you try replacing the 
'check'
phase with that command? You'll need 'python-nose' as a 
native-input.


I hadn't noticed that. This patch adds nosetests, but that just 
prints “Ran 0 tests in .005s”, so it seems there are no tests.  Shall 
we just delete the 'check' phase?


Other changes applied!

thank you,

Thomas
From 11a2988febff79775eb31bc8e5da09fdea7d2269 Mon Sep 17 00:00:00 2001
From: Thomas Danckaert 
Date: Thu, 22 Dec 2016 11:17:44 +0100
Subject: [PATCH] gnu: Add python-hdf4.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index bfa7eae..cc53f76 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -33,6 +33,7 @@
 ;;; Copyright © 2016 Arun Isaac 
 ;;; Copyright © 2016 Julien Lepiller 
 ;;; Copyright © 2016 Tobias Geerinckx-Rice 
+;;; Copyright © 2016 Thomas Danckaert 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -715,6 +716,41 @@ certificate returned by the server to which a connection has been established,
 and verifies that it matches the intended target hostname.")
 (license license:psfl)))
 
+(define-public python-hdf4
+  (package
+   (name "python-hdf4")
+   (version "0.9")
+   (source
+(origin
+  (method url-fetch)
+  (uri (pypi-uri name version))
+  (sha256
+   (base32
+"1hjiyrxvxk9817qyqky3nar4y3fs4z8wxz0n884zzb5wi6skrjks"
+   (build-system python-build-system)
+   (native-inputs `(("nose" ,python-nose)))
+   (propagated-inputs `(("numpy" ,python-numpy)))
+   (inputs
+`(("hdf4" ,hdf4)
+  ("libjpeg" ,libjpeg)
+  ("zlib" ,zlib)))
+   (arguments
+`(#:phases
+  (modify-phases %standard-phases
+(replace 'check
+ (lambda _ (zero? (system* "nosetests")))
+   (home-page "https://github.com/fhs/python-hdf4";)
+   (synopsis "Python interface to the NCSA HDF4 library")
+   (description
+"Python-HDF4 is a python wrapper around the NCSA HDF version 4 library,
+which implements the SD (Scientific Dataset), VS (Vdata) and V (Vgroup) API’s.
+NetCDF files can also be read and modified.  Python-HDF4 is a fork of
+@url{http://hdfeos.org/software/pyhdf.php,pyhdf}.";)
+   (license license:expat)))
+
+(define-public python2-hdf4
+  (package-with-python2 python-hdf4))
+
 (define-public python-h5py
   (package
 (name "python-h5py")
-- 
2.7.4



Re: [PATCH] gnu: Add wwwoffle.

2016-12-22 Thread Bake Timmons
Marius Bakke  writes:

< snip >

> I can do these minor edits for you if you prefer, but would like to
> confirm name and email for the copyright. Thanks!
>

Thanks for your review -- I wish I responded earlier!  Attached is a
revised patch.

> From 485bf8b610be2ba70c366b1d317cc1ab7acb7c61 Mon Sep 17 00:00:00 2001
From: Bake Timmons 
Date: Wed, 21 Dec 2016 22:52:14 -0500
Subject: [PATCH] gnu: Add wwwoffle.

* gnu/packages/web.scm (wwwoffle): New variable.
---
 gnu/packages/web.scm | 32 +++-
 1 file changed, 31 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 184869200..d66b75164 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -16,6 +16,7 @@
 ;;; Copyright © 2016 ng0 
 ;;; Copyright © 2016 Arun Isaac 
 ;;; Copyright © 2016 Tobias Geerinckx-Rice 
+;;; Copyright © 2016 Bake Timmons 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -80,7 +81,8 @@
   #:use-module (gnu packages texinfo)
   #:use-module (gnu packages textutils)
   #:use-module (gnu packages tls)
-  #:use-module (gnu packages statistics))
+  #:use-module (gnu packages statistics)
+  #:use-module (gnu packages gnupg))
 
 (define-public httpd
   (package
@@ -668,6 +670,34 @@ server).  It was primarily designed to be used by one person or a small group
 of people.")
 (license l:expat)))
 
+(define-public wwwoffle
+  (package
+(name "wwwoffle")
+(version "2.9j")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "https://www.gedanken.org.uk/software/";
+  "wwwoffle/download/wwwoffle-"
+  version ".tgz"))
+  (sha256
+   (base32
+"1ihil1xq9dp21hf108khxbw6f3baq0w5c0j3af038y6lkmad4vdi"
+(build-system gnu-build-system)
+(arguments
+ `(#:configure-flags '("--with-gnutls")
+   #:tests? #f)) ; no test target
+(native-inputs `(("flex" ,flex)))
+(inputs `(("gnutls" ,gnutls)
+  ("libcrypt", libgcrypt)))
+(home-page "https://www.gedanken.org.uk/software/wwwoffle/";)
+(synopsis "Caching web proxy optimized for intermittent internet links")
+(description "WWWOFFLE is a proxy web server that is especially good for
+intermittent internet links.  It can cache HTTP, HTTPS, FTP, and finger
+protocols, and supports browsing and requesting pages while offline, indexing,
+modifying pages and incoming and outgoing headers, monitoring pages for
+changes, and much more.")
+(license l:gpl2+)))
+
 (define-public libyaml
   (package
 (name "libyaml")
-- 
2.11.0