[PATCH] gnu: Add emacs-dream-theme.

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

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

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index dfdf32496..04ac96e33 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -3490,6 +3490,30 @@ known loosely as deftheme.  Many mode-specific 
customizations are included.")
"@code{danneskjold-theme} is a high-contrast theme for Emacs.")
   (license license:gpl3+
 
+(define-public emacs-dream-theme
+  (let* ((commit "107a11d74365046f28a1802a2bdb5e69e4a7488b")
+ (revision "1"))
+(package
+  (name "emacs-dream-theme")
+  (version (string-append "0.0.0-" revision "." (string-take commit 7)))
+  (source
+   (origin
+ (method git-fetch)
+ (uri (git-reference
+   (url "https://github.com/djcb/dream-theme;)
+   (commit commit)))
+ (file-name (string-append name "-" version "-checkout"))
+ (sha256
+  (base32
+   "0za18nfkq4xqm35k6006vsixcbmvmxqgma4iw5sw37h8vmcsdylk"
+  (build-system emacs-build-system)
+  (home-page "https://github.com/djcb/dream-theme;)
+  (synopsis "High-contrast Emacs theme")
+  (description
+   "@code{dream-theme} is a dark, clean theme for Emacs.  It is inspired
+by zenburn, sinburn and similar themes, but slowly diverging from them.")
+  (license license:gpl3+
+
 (define-public emacs-auto-complete
   (package
 (name "emacs-auto-complete")
-- 
2.11.0




Add emacs-dream-theme

2017-02-03 Thread contact . ng0
There are no releases, and I don't know how/if there are certain expectations 
about themes. If loading them just via (require 'dream) is not normal, should 
it be mentioned in the description?
See http://www.djcbsoftware.nl/dot-emacs.html for an example.




Re: [GNU-linux-libre] Free firmware - A redefinition of the term and a new metric for it's measurement.

2017-02-03 Thread David Craven
Hi Christopher,

I like to understand things. For me the most important thing is that I
have the documentation available to me and can study how it works. For
most modern chips there is simply no documentation available to me.
But I guess you are right, even if I think that some hardware that
works with linux-libre is less favorable than some that does not.

Thank you for your reply.



Re: [PATCH] gnu: magit: Update to 2.10.1.

2017-02-03 Thread Alex Kost
Ludovic Courtès (2017-02-03 17:45 +0100) wrote:

> Alex Kost  skribis:
>
>> Ludovic Courtès (2017-02-01 23:52 +0100) wrote:
>>
>>> Clément Lassieur  skribis:
>>>
 * gnu/packages/emacs.scm (magit): Update to 2.10.1.
>>>
>>> Applied, thanks!
>>
>> No, no, arrgh!  I didn't update magit to 2.10.1 because it has a bug
>> that makes "C" key in COMMIT_EDITMSG buffer unusable, as discussed at
>> .
>>
>> Also note that along with magit, 'emacs-magit-popup' should be updated
>> (this time it wasn't needed as "magit-popup.el" wasn't touched in this
>> release), and it is also good to update 'emacs-with-editor' as this
>> library was written specifically for magit (it was a part of magit in
>> the past).
>
> Oops, I’m doubly sorry.  Please revert the upgrade then!

Hm, I'm not sure, is it really needed?  I mean it's not a big bug, magit
works after all, besides "C" key sometimes also works as expected, it is
broken only in some cases.

Thanks to Guix, we can easily roll back to a previous version, so I
would leave it as it is, but, well, I don't know :-)

-- 
Alex



Re: gnu: abbaye: Update to 2.0.1 from new repository.

2017-02-03 Thread Alex Kost
Adonay Felipe Nogueira (2017-01-23 10:46 -0200) wrote:

> Hi all! :)
>
> About my copyright notice: I try to always expose alternative ways with
> which people can reach me, from less varying to most varying.

OK, I see that your other commits also have this libreplanet URL in the
copyright line, so I left it.

> About suggestion to use tarball snapshots instead of git-fetch: That's
> interesting, I once read that `guix refresh` would behave better with
> git-fetch methods than with url-fetch methods. But, as I found out
> recently, it does seem that git-fetch imposes heavy load due to the
> current innability to make shallow clones. So I'm now waiting for
> others' input in this matter: Should I reformat the patch such that
> url-fetch is used instead?

I modified it to use the tarball and applied as efc12a8, thanks! and
sorry for the delay.

-- 
Alex



Re: [PATCH] gnu: Add emacs-mew.

2017-02-03 Thread Alex Kost
Thomas Danckaert (2017-02-03 13:22 +0100) wrote:

>> Oh, I just realized that's probably why you used 'load-path' instead
>> of
>> 'image-load-path', right?
>
> load-path, shmoad-path ;-) I was just confused (even more so because
> load-path is part of image-load-path).

He-he :-)

>> [...]
>> No problem, thanks for packaging it!  I hope we are close to finish,
>> could you test it with 'emacs' input and 'patch-mew-icon-directory'
>> phase I wrote above?
>
> Yes, that works, and it's nice to avoid the patch file. I've attached a
> (final?) updated patch.

Applied as 3e9750c, thanks!

-- 
Alex



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

2017-02-03 Thread Kei Kebreau
Ra  writes:

> * gnu/packages/statistics.scm (r-rann): New variable.
> ---
> gnu/packages/statistics.scm | 21 +
> 1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
> index db1a687..695f6ed 100644
> --- a/gnu/packages/statistics.scm
> +++ b/gnu/packages/statistics.scm
> @@ -4004,3 +4004,24 @@ generalized linear model functions that implement 
> secure
> convergence,
> dispersion modeling and Tweedie power-law families.")
> ;; Statmod is distributed under either license
> (license (list license:gpl2 license:gpl3
> +
> +(define-public r-rann
> + (package
> + (name "r-rann")
> + (version "2.5")
> + (source (origin
> + (method url-fetch)
> + (uri (cran-uri "RANN" version))
> + (sha256
> + (base32
> + "007cgqg9bybg2zlljbv5m6cmlm3r6i251018rpgjcn0xnm9sjsj7"
> + (properties
> + `((upstream-name . "RANN")))
> + (build-system r-build-system)
> + (home-page "https://github.com/jefferis/RANN;)
> + (synopsis "Fast nearest neighbour search")
> + (description
> + "This package finds the k nearest neighbours for every point in a given
> +dataset in O(N log N) time using Arya and Mount's ANN library. Provides 
> approximate,
> +exact searches, fixed radius searches, bd and kb trees.")
> + (license license:gpl3+)))
> --
> 1.9.1

Pushed to master as c6dced88f262f7e781288f32cc3a376b929a6214! By the
way, don't forget that two spaces follow the end of sentences in the
description. I changed it for you in the aforementioned commit.


signature.asc
Description: PGP signature


Re: [PATCH 2/2] gnu: ldc: Update to 1.1.0.

2017-02-03 Thread Danny Milosavljevic
Hi,

On Fri, 3 Feb 2017 18:45:22 +0200
Efraim Flashner  wrote:

> On Wed, Feb 01, 2017 at 10:51:32AM +0100, Danny Milosavljevic wrote:
> >   ;; files left with the --keep-failed flag to guix build.
> >   (patches (search-patches 
> > "ldc-1.1.0-disable-dmd-tests.patch")
> >  
> > -(define-public ldc-beta ldc-1.1.0-beta6)
> > -

> Without having built it to test it out, I would replace this part with
> either having it superceded by ldc-1.1.0, or have ldc-beta point to
> ldc-1.1.0, so no one who relies on it finds it broken.

Ehhh. The variable "ldc-beta" would have existed for 5 days and was in no Guix 
release - not sure anyone saw it.

But we can do the latter so that people could rely on ldc-beta being the newest 
non-release ldc (if we ever packaged another ldc beta release or even git 
commit), kinda like guix-devel (corresponding to ldc-beta) vs. guix 
(corresponding to ldc). Sure.



Re: [GNU-linux-libre] Free firmware - A redefinition of the term and a new metric for it's measurement.

2017-02-03 Thread Christopher Howard
Hi David, I don't agree that just being given a redistributable blob is
any wonderful thing. What you end up with down the road (and this is
where we are now) is systems that need several (or many) blobs that only
the providing company understands and controls. Usually these blobs are
in control of critical or highly desirable functionality. You don't know
for sure what the blobs do or whether or not they have security
vulnerabilities. And sometimes the blobs come with restrict licensing
allowing distribution but not allowing you to reverse engineer.

For firmware development to be practical, you want more than
documentation. You want source code. Also (for embedded development) you
want a tool chain. You might have the source code but find it near
impossible to build because you don't have a good tool chain.

Yeah, with documentation, you might be able to engineer the source code
and tool chain... but it might take you 3+ years, and then only if
enough people are interested. And by that time no one will want the
hardware anymore. This isn't a moderately annoying problem for x86, but
it is a major problem for tablets, cell phones, and other embedded
development.

The companies that should be the rewarded are the ones that release
firmware, source code, and tool chain. E.g., Thinkpenguin and the TPE-R1100.

On 02/03/2017 09:18 AM, David Craven wrote:
> Hi Taylan,
> 
>> Being freely redistributeable doesn't make a blob free software
>> obviously, so endorsing such blobs would be out of the question as per
>> the core principles of the FSF.  Correct me if I misunderstand.
> 
> The requirements I proposed for the definition of free firmware is
> already more than most companies are willing to do. Any company
> willing to do these things should IMO get a medal pinned on their
> chest and not be disadvantaged.
> 

-- 
Christopher Howard, Computer Assistant
Alaska Satellite Internet
3239 La Ree Way, Fairbanks, AK 99709
907-451-0088 or 888-396-5623 (toll free)
fax: 888-260-3584
mailto:christop...@alaskasi.com
http://www.alaskasatelliteinternet.com



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

2017-02-03 Thread Kei Kebreau
Raoul Bonnal  writes:

> From: Raoul Jean Pierre Bonnal 
>
> * gnu/packages/statistics.scm (r-randomforest): New variable.
> ---
>  gnu/packages/statistics.scm | 24 +++-
>  1 file changed, 23 insertions(+), 1 deletion(-)
>
> diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
> index 596c2baf5..80f0b99b8 100644
> --- a/gnu/packages/statistics.scm
> +++ b/gnu/packages/statistics.scm
> @@ -6,7 +6,7 @@
>  ;;; Copyright © 2016 Pjotr Prins 
>  ;;; Copyright © 2016 Roel Janssen 
>  ;;; Copyright © 2016 Ben Woodcroft 
> -;;; Copyright © 2016 Raoul Bonnal 
> +;;; Copyright © 2016, 2017 Raoul Bonnal 
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -4145,3 +4145,25 @@ regression.")
>  perform @dfn{independent component analysis} (ICA) and projection pursuit.")
>  ;; Any GPL version.
>  (license license:gpl3+)))
> +
> +(define-public r-randomforest
> +  (package
> +(name "r-randomforest")
> +(version "4.6-12")
> +(source
> + (origin
> +   (method url-fetch)
> +   (uri (cran-uri "randomForest" version))
> +   (sha256
> +(base32
> + "1i43idaihhl6nwqw42v9dqpl6f8z3ykcn2in32lh2755i27jylbf"
> +(properties `((upstream-name . "randomForest")))
> +(build-system r-build-system)
> +(home-page "https://www.stat.berkeley.edu/~breiman/RandomForests/;)
> +(native-inputs
> + `(("gfortran" ,gfortran)))
> +(synopsis "Breiman and Cutler's random forests for classification and 
> regression")
> +(description
> +"This package provides the Breiman and Cutler's random forests algorithm, 
> based on a
> +forest of trees using random inputs, for classification and regression.")
> +(license license:gpl2+)))

Thanks! Pushed to master as 37337699d7d6069ccd38aae6cc25bdbf4a6e56fc.


signature.asc
Description: PGP signature


[PATCH] gnu: Add r-randomforest.

2017-02-03 Thread Raoul Bonnal
From: Raoul Jean Pierre Bonnal 

* gnu/packages/statistics.scm (r-randomforest): New variable.
---
 gnu/packages/statistics.scm | 24 +++-
 1 file changed, 23 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index 596c2baf5..80f0b99b8 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -6,7 +6,7 @@
 ;;; Copyright © 2016 Pjotr Prins 
 ;;; Copyright © 2016 Roel Janssen 
 ;;; Copyright © 2016 Ben Woodcroft 
-;;; Copyright © 2016 Raoul Bonnal 
+;;; Copyright © 2016, 2017 Raoul Bonnal 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4145,3 +4145,25 @@ regression.")
 perform @dfn{independent component analysis} (ICA) and projection pursuit.")
 ;; Any GPL version.
 (license license:gpl3+)))
+
+(define-public r-randomforest
+  (package
+(name "r-randomforest")
+(version "4.6-12")
+(source
+ (origin
+   (method url-fetch)
+   (uri (cran-uri "randomForest" version))
+   (sha256
+(base32
+ "1i43idaihhl6nwqw42v9dqpl6f8z3ykcn2in32lh2755i27jylbf"
+(properties `((upstream-name . "randomForest")))
+(build-system r-build-system)
+(home-page "https://www.stat.berkeley.edu/~breiman/RandomForests/;)
+(native-inputs
+ `(("gfortran" ,gfortran)))
+(synopsis "Breiman and Cutler's random forests for classification and 
regression")
+(description
+"This package provides the Breiman and Cutler's random forests algorithm, 
based on a
+forest of trees using random inputs, for classification and regression.")
+(license license:gpl2+)))
-- 
2.11.0




Re: Free firmware - A redefinition of the term and a new metric for it's measurement.

2017-02-03 Thread David Craven
Hi Taylan,

> Being freely redistributeable doesn't make a blob free software
> obviously, so endorsing such blobs would be out of the question as per
> the core principles of the FSF.  Correct me if I misunderstand.

The requirements I proposed for the definition of free firmware is
already more than most companies are willing to do. Any company
willing to do these things should IMO get a medal pinned on their
chest and not be disadvantaged.



Re: Free firmware - A redefinition of the term and a new metric for it's measurement.

2017-02-03 Thread Taylan Ulrich Bayırlı/Kammer
David Craven  writes:

> Solution:
> We need to encourage and allow option 1 as opposed to option 2.
> Hardware suggestions by the FSF should instead of focusing on a black
> and white - needs binary blobs or does not need binary blobs - focus
> on the following:
>
> 1. The firmware is freely redistributeable - allowing free software
> distributions to redistribute the firmware as opposed to the user
> having to download the firmware themselves and accept arbitrary terms
> and conditions.

Being freely redistributeable doesn't make a blob free software
obviously, so endorsing such blobs would be out of the question as per
the core principles of the FSF.  Correct me if I misunderstand.

> 2. The firmware can be loaded using the standard kernel api and the
> device does not contain any internal storage.

Sounds good.  Having non-free software hidden within a hardware device
is obviously no better than having the OS insert it there whenever the
device is connected, as per the reasons you explained.  (Assuming I
understood it correctly that that's how it normally works; I'm a
hardware noob.  I actually thought firmware blobs are just code loaded
into kernel space, like drivers.  Embarrassing?)

> 3. There is documentation available that enables the developement of
> free firmware.

Definitely yes.

If I understand the situation correctly, I definitely agree that the FSF
should stop being blind to proprietary software hidden within hardware
devices in their endorsements.  Such devices should be discouraged.  But
the FSF would never endorse any other proprietary software / binary
blobs either, if I know anything about their principles. :-)  (And I
agree with those principles, to be clear.)

Thanks for raising this issue.  I had not heard of the trend of putting
proprietary firmware directly into flash storage on hardware devices to
give the illusion that they don't require binary blobs to run.

Taylan



Re: [PATCH] gnu: dub: Patch pkg-config name.

2017-02-03 Thread Danny Milosavljevic
Hi Ludo,

On Fri, 03 Feb 2017 17:49:38 +0100
l...@gnu.org (Ludovic Courtès) wrote:

> I think ‘dub-build-system’ could add it as an implicit input, much like
> ‘gnu-build-system’ adds binutils as an implicit input.

Okay, but it's directly used only by dub (it its function of building D 
packages).

I don't think D packages themselves even know what pkg-config is.

The ldc 1.1.0 sources don't even mention "pkg-config" once - neither do any of 
the D packages I tried except gtk-d. That one mentions it in comments how to 
invoke gdc (which we didn't package) and rdmd (rdmd source itself doesn't 
mention pkg-config either) - both are in shell expressions like gdc CoreGL.d 
`pkg-config gtkd-3 gl --cflags --libs` and rdmd `pkg-config gtkd-3 --cflags` 
-L-lGL -L-ldl CoreGL.d). No non-comment reference at all.

That said, we could add pkg-config as an implicit input so that if D packages 
decided to directly use it in the future they'd pick up the same one.

> Or we could simply let people add pkg-config as an input when it’s
> necessary, just like we do for ‘gnu-build-system’ packages.

dub itself does automatically use pkg-config.
It's as if make always used pkg-config (whether you write "pkg-config" into a 
Makefile or not).

Also, if pkg-config is not available dub will silently fallback to guessing. It 
will not fail (and that's bad!).

I've just had to fix a problem (in another non-D package) where it didn't use 
pkg-config and so it didn't pick up the Unicode codepoint "-D" option and it 
broke some stuff silently at runtime. That's exactly what can happen when 
programs guess the library import flags.



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

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

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

diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 73a35030e..64518fb6b 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -14,6 +14,7 @@
 ;;; Copyright © 2016 David Craven 
 ;;; Copyright © 2016 Kei Kebreau 
 ;;; Copyright © 2016 Marius Bakke 
+;;; Copyright © 2017 ng0 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -38,6 +39,7 @@
   #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
+  #:use-module (guix build-system python)
   #:use-module (gnu packages)
   #:use-module (gnu packages assembly)
   #:use-module (gnu packages autotools)
@@ -45,6 +47,7 @@
   #:use-module (gnu packages base)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages valgrind)
   #:use-module (ice-9 match)
   #:use-module ((srfi srfi-1) #:select (last)))
@@ -633,6 +636,31 @@ time for compression ratio.")
 ;; line interface programs (lz4, fullbench, fuzzer, datagen) are GPL2+.
 (license (list license:bsd-2 license:gpl2+
 
+(define-public python-lz4
+  (package
+(name "python-lz4")
+(version "0.8.2")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "lz4" version))
+   (sha256
+(base32
+ "1irad4sq4hdr30fr53smvv3zzk4rddcf9b4jx19w8s9xsxhr1x3b"
+(build-system python-build-system)
+(native-inputs
+ `(("python-nose" ,python-nose)))
+(home-page "https://github.com/python-lz4/python-lz4;)
+(synopsis "LZ4 Bindings for Python")
+(description
+ "This package provides python bindings for the lz4 compression library
+by Yann Collet.  The project contains bindings for the LZ4 block format and
+the LZ4 frame format.")
+(license license:bsd-3)))
+
+(define-public python2-lz4
+  (package-with-python2 python-lz4))
+
 (define-public squashfs-tools
   (package
 (name "squashfs-tools")
-- 
2.11.0




[PATCH 2/2] gnu: Add python-lzo.

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

* gnu/packages/compression.scm (python-lzo): New variable.

Co-authored-by: Danny Milosavljevic 
---
 gnu/packages/compression.scm | 38 ++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 64518fb6b..3c38782df 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -365,6 +365,44 @@ LZO is written in ANSI C.  Both the source code and the 
compressed data
 format are designed to be portable across platforms.")
 (license license:gpl2+)))
 
+(define-public python-lzo
+  (package
+(name "python-lzo")
+(version "1.11")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "python-lzo" version))
+   (sha256
+(base32
+ "11p3ifg14p086byhhin6azx5svlkg8dzw2b5abixik97xd6fm81q"
+(build-system python-build-system)
+(arguments
+ `(#:test-target "check"
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'patch-setuppy
+   (lambda _
+ (substitute* "setup.py"
+   (("include_dirs.append\\(.*\\)")
+(string-append "include_dirs.append('"
+   (assoc-ref %build-inputs "lzo")
+   "/include/lzo"
+   "')")))
+ #t)
+(inputs
+ `(("lzo" ,lzo)))
+(home-page "https://github.com/jd-boyd/python-lzo;)
+(synopsis "Python bindings for the LZO data compression library")
+(description
+ "Python-LZO provides Python bindings for LZO, i.e. you can access
+the LZO library from your Python scripts thereby compressing ordinary
+Python strings.")
+(license license:gpl2+)))
+
+(define-public python2-lzo
+  (package-with-python2 python-lzo))
+
 (define-public lzop
   (package
 (name "lzop")
-- 
2.11.0




python-{lzo,lz4} ,v3

2017-02-03 Thread contact . ng0
Applied the fixes as discussed in the previous email.
I'm not sure which parts Danny contributed back then, so I leave the name in 
co-authored-by.




Re: [PATCH] gnu: dub: Patch pkg-config name.

2017-02-03 Thread Ludovic Courtès
Danny Milosavljevic  skribis:

> Hi Ludo,
>
> On Wed, 01 Feb 2017 23:22:32 +0100
> l...@gnu.org (Ludovic Courtès) wrote:
>
>> Is it necessary?  It might be a case where picking whatever’s in $PATH
>> (“late binding”) is good enough; for instance, ‘gcc’ picks ‘ld’ from
>> $PATH, and that’s fine.
>
> I don't know. What's the policy for pkg-config in general?
>
> I did it that way now because
>
> (1) pkg-config is not a native-input of anything D - so if the user didn't 
> install pkg-config into his profile by chance, the build of some D packages 
> will fail.
> (2) pkg-config itself is very seldomly updated so it doesn't matter if dub 
> pins it to one specific version - that would even be what I would expect to 
> happen.
>
> I'm fine with adding it someway else (especially if it's the same way it's 
> usually added).
>
> So either
>
> (a) dub needs it as input (like this patch would do) or
> (b) every D package needs it as native-input (maybe the build system would 
> auto-add it as native-input to every D package - like it does add ldc and dub)
>
> - otherwise it will break.

I think ‘dub-build-system’ could add it as an implicit input, much like
‘gnu-build-system’ adds binutils as an implicit input.

Or we could simply let people add pkg-config as an input when it’s
necessary, just like we do for ‘gnu-build-system’ packages.

Thoughts?

Ludo’.



Re: [PATCH 2/2] gnu: ldc: Update to 1.1.0.

2017-02-03 Thread Efraim Flashner
On Wed, Feb 01, 2017 at 10:51:32AM +0100, Danny Milosavljevic wrote:
>   ;; files left with the --keep-failed flag to guix build.
>   (patches (search-patches 
> "ldc-1.1.0-disable-dmd-tests.patch")
>  
> -(define-public ldc-beta ldc-1.1.0-beta6)
> -
>  (define-public dub
>(package
>  (name "dub")
> 

Without having built it to test it out, I would replace this part with
either having it superceded by ldc-1.1.0, or have ldc-beta point to
ldc-1.1.0, so no one who relies on it finds it broken.


-- 
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: magit: Update to 2.10.1.

2017-02-03 Thread Ludovic Courtès
Alex Kost  skribis:

> Ludovic Courtès (2017-02-01 23:52 +0100) wrote:
>
>> Clément Lassieur  skribis:
>>
>>> * gnu/packages/emacs.scm (magit): Update to 2.10.1.
>>
>> Applied, thanks!
>
> No, no, arrgh!  I didn't update magit to 2.10.1 because it has a bug
> that makes "C" key in COMMIT_EDITMSG buffer unusable, as discussed at
> .
>
> Also note that along with magit, 'emacs-magit-popup' should be updated
> (this time it wasn't needed as "magit-popup.el" wasn't touched in this
> release), and it is also good to update 'emacs-with-editor' as this
> library was written specifically for magit (it was a part of magit in
> the past).

Oops, I’m doubly sorry.  Please revert the upgrade then!

Ludo’.



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

2017-02-03 Thread ng0

Hartmut Goebel writes:

> Am 03.02.2017 um 14:13 schrieb ng0:
>> ERROR: In procedure scm_lreadr: gnu/packages/compression.scm:387:44: illegal 
>> character in escape sequence: #\)
>
> IC, yes, this needs to be written as \\) (two backslashes)

I see. Okay, do you know which guix or guile module I do have to
rtf to understand once and for all how the (substitute*) behaves?
I'm doing this for too long to continue to run into problems with
this.

Just the (substitute*)? Or is there some complimentary literature
I should consider (something in guile, grep, sed, …)?
-- 
ng0 . https://www.inventati.org/patternsinthechaos/



Re: [PATCH] gnu: Add angband. (almost working!)

2017-02-03 Thread Kei Kebreau
Christopher Allan Webber  writes:

> Kei Kebreau writes:
>
>> Christopher Allan Webber  writes:
>>
>>> At the risk of totally destroying my productivity, I thought I'd take a
>>> short of packaging a common roguelike.  Unfortunately, it seems like
>>> every roguelike I try to package runs into some snag.  In this case,
>>> angband can't find ncurses.  I don't know why!
>>>
>>> Apparently this is related:
>>> https://lists.freebsd.org/pipermail/freebsd-ports-bugs/2014-January/271203.html
>>> ... but I don't really know enough.
>>>
>>> Anyone who wants to help contribute to the downfall of various GuixSD
>>> users by assisting getting roguelikes into the distribution: this is
>>> pretty close, if we can solve that one thing! :)
>>>
>>>  - Chris
>>>
>>> From 5a97d5dffa12a3282b57313db8aa609f27729074 Mon Sep 17 00:00:00 2001
>>> From: Christopher Allan Webber 
>>> Date: Mon, 12 Sep 2016 20:28:51 -0500
>>> Subject: [PATCH] gnu: Add angband.
>>>
>>> * gnu/packages/games.scm (angband): New variable.
>>> ---
>>>  gnu/packages/games.scm | 34 +-
>>>  1 file changed, 33 insertions(+), 1 deletion(-)
>>>
>>> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
>>> index d386e2c..08c00b9 100644
>>> --- a/gnu/packages/games.scm
>>> +++ b/gnu/packages/games.scm
>>> @@ -10,7 +10,7 @@
>>>  ;;; Copyright © 2014, 2015 Mark H Weaver 
>>>  ;;; Copyright © 2015, 2016 Andreas Enge 
>>>  ;;; Copyright © 2015 David Hashe 
>>> -;;; Copyright © 2015 Christopher Allan Webber 
>>> +;;; Copyright © 2015, 2106 Christopher Allan Webber 
>>> 
>> Should be 2016, I assume. ^
>>>  ;;; Copyright © 2015 Ricardo Wurmus 
>>>  ;;; Copyright © 2015, 2016 Alex Kost 
>>>  ;;; Copyright © 2015 Paul van der Walt 
>>> @@ -223,6 +223,38 @@ them, called Jean Raymond, found an old church in 
>>> which to hide, not knowing
>>>  that beneath its ruins lay buried an ancient evil.")
>>>  (license license:gpl3+)))
>>>  
>>> +(define-public angband
>>> +  (package
>>> +(name "angband")
>>> +(version "4.0.5")
>>> +(source
>>> + (origin
>>> +   (method url-fetch)
>>> +   (uri (string-append "http://rephial.org/downloads/4.0/;
>>> +   "angband-" version ".tar.gz"))
>>> +   (sha256
>>> +(base32
>>> + "0lpq2kms7hp421vrasx2bkkn9w08kr581ldwik3v0hlq6h7rlxhd"
>>> +(build-system gnu-build-system)
>>> +(arguments
>>> + `(#:tests? #f ;no check target
>>> +   ;; #:configure-flags '("--enable-sdl")
>>> +   #:phases (modify-phases %standard-phases
>>> +  (add-after
>>> +  'unpack 'autogen.sh
>>> +(lambda _
>>> +  (zero? (system* "sh" "autogen.sh"))) 
>>> +(native-inputs
>>> + `(("autoconf" ,autoconf)
>>> +   ("automake" ,automake)))
>>> +(inputs `(("ncurses" ,ncurses)))
>>> +(home-page "http://rephial.org/;)
>>> +(synopsis "Dungeon exploration roguelike")
>>> +(description "Classic dungeon exploration roguelike.  Explore the 
>>> depths
>>> +below Angband, seeking riches, fighting monsters, and preparing to fight
>>> +Morgoth, the Lord of Darkness.")
>>> +(license license:gpl2)))
>>> +
>>>  (define-public pingus
>>>(package
>>>  (name "pingus")
>>
>> I found the issue. You must substitute the instances of the string
>> "ncursew5-config" with "ncursesw6-config" before running autogen.sh.
>> This is because we only package version 6 of the ncurses library. By
>> making this change, I was able to build angband reproducibly. Should we
>> enable the SDL, X11 and GTK+ interfaces as well?
>
> Wow nice!
>
> I'm for enabling at least one of the visual interfaces, though I don't
> think we need to enable all of them?  Perhaps they should be different
> derived package versions?  WDYT?

I say we use the SDL interface if we have to go with only one. Enabling
more interfaces in derived packages shouldn't be difficult if someone
requests them. :)


signature.asc
Description: PGP signature


[PATCH 2/3] gnu: python-pyqt: Propagate python-sip.

2017-02-03 Thread Eric Bavier
* gnu/packages/qt.scm (python-pyqt)[propagated-inputs]: New field.
---
 gnu/packages/qt.scm | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index b2fe6e445..47a7caae4 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -1215,8 +1215,9 @@ module provides support functions to the automatically 
generated code.")
(patches (search-patches "pyqt-configure.patch"
 (build-system gnu-build-system)
 (native-inputs
- `(("python-sip" ,python-sip)
-   ("qtbase" ,qtbase))) ; for qmake
+ `(("qtbase" ,qtbase))) ; for qmake
+(propagated-inputs
+ `(("python-sip" ,python-sip)))
 (inputs
  `(("python" ,python-wrapper)
("qtbase" ,qtbase)
-- 
2.11.0




[PATCH 1/3] gnu: Add python-cssutils.

2017-02-03 Thread Eric Bavier
* gnu/packages/python.scm (python-cssutils): New variable.
(python2-cssutils)[native-inputs]: Remove unused python2-mock.
---
 gnu/packages/python.scm | 39 +++
 1 file changed, 31 insertions(+), 8 deletions(-)

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index d53eea189..38940cfc7 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -3,7 +3,7 @@
 ;;; Copyright © 2013, 2014, 2015, 2016 Ludovic Courtès 
 ;;; Copyright © 2013, 2014, 2015, 2016 Andreas Enge 
 ;;; Copyright © 2014, 2015 Mark H Weaver 
-;;; Copyright © 2014 Eric Bavier 
+;;; Copyright © 2014, 2017 Eric Bavier 
 ;;; Copyright © 2014, 2015 Federico Beffa 
 ;;; Copyright © 2015 Omar Radwan 
 ;;; Copyright © 2015 Pierre-Antoine Rault 
@@ -5355,9 +5355,9 @@ converts incoming documents to Unicode and outgoing 
documents to UTF-8.")
   (strip-python2-variant python-beautifulsoup4)))
 (arguments `(#:python ,python-2

-(define-public python2-cssutils
+(define-public python-cssutils
   (package
-(name "python2-cssutils")
+(name "python-cssutils")
 (version "1.0.1")
 (source
   (origin
@@ -5368,12 +5368,9 @@ converts incoming documents to Unicode and outgoing 
documents to UTF-8.")
   "0qwha9x1wml2qmipbcz03gndnlwhzrjdvw9i09si247a90l8p8fq"
 (build-system python-build-system)
 (native-inputs
-  `(("python2-mock" ,python2-mock) ; for the tests
-("unzip" ,unzip))) ; for unpacking the source
+  `(("unzip" ,unzip))) ; for unpacking the source
 (arguments
- `(#:python ,python-2 ; Otherwise tests fail with a syntax error.
-   #:tests? #f ; The tests apparently download an external URL.
-   ))
+ `(#:tests? #f));tests require python-pbr < 1.7.0
 (home-page "http://cthedot.de/cssutils/;)
 (synopsis
   "CSS Cascading Style Sheets library for Python")
@@ -5383,6 +5380,9 @@ Cascading Style Sheets.  Currently it provides a DOM only 
and no rendering
 options.")
 (license license:lgpl3+)))

+(define-public python2-cssutils
+  (package-with-python2 python-cssutils))
+
 (define-public python-cssselect
   (package
 (name "python-cssselect")
@@ -12536,3 +12536,26 @@ console.")
 This implementation is slow (hence the project name) but still useful when
 faster ones are not available.")
 (license license:asl2.0)))
+
+(define-public python-pypeg2
+  (package
+(name "python-pypeg2")
+(version "2.15.2")
+(source
+ (origin
+   (method url-fetch)
+   (uri (pypi-uri "pyPEG2" version))
+   (sha256
+(base32
+ "0v8ziaam2r637v94ra4dbjw6jzxz99gs5x4i585kgag1v204yb9b"
+(build-system python-build-system)
+(propagated-inputs `(("python-lxml" ,python-lxml)))
+(arguments
+ ;;https://bitbucket.org/fdik/pypeg/issues/36/test-failures-on-py35
+ '(#:tests? #f))
+(home-page "https://fdik.org/pyPEG/;)
+(synopsis "PEG Parser-Interpreter in Python")
+(description "pyPEG is an intrinsic parser interpreter framework for
+Python.  It is based on Parsing Expression Grammars, PEG.  With pyPEG you can
+parse many formal languages.")
+(license license:gpl2)))
--
2.11.0




[PATCH 3/3] gnu: Add qutebrowser.

2017-02-03 Thread Eric Bavier
* gnu/packages/web.scm (qutebrowser): New variable.
---
 gnu/packages/web.scm | 68 +++-
 1 file changed, 67 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 8cc80a2c4..1e448a8b5 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -5,7 +5,7 @@
 ;;; Copyright © 2014, 2015, 2016 Mark H Weaver 
 ;;; Copyright © 2015, 2016 Ricardo Wurmus 
 ;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer 
-;;; Copyright © 2015, 2016 Eric Bavier 
+;;; Copyright © 2015, 2016, 2017 Eric Bavier 
 ;;; Copyright © 2015 Eric Dvorsak 
 ;;; Copyright © 2016 Sou Bunnbu 
 ;;; Copyright © 2016 Jelle Licht 
@@ -76,6 +76,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages pcre)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages qt)
   #:use-module (gnu packages valgrind)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages curl)
@@ -4018,3 +4019,68 @@ service for that request.  Requests are made using port 
numbers as identifiers
 and xinetd usually launches another daemon to handle the request.  It can be
 used to start services with both privileged and non-privileged port numbers.")
 (license (l:fsf-free "file://COPYRIGHT"
+
+(define-public qutebrowser
+  (package
+(name "qutebrowser")
+(version "0.9.1")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "https://github.com/The-Compiler/;
+   "qutebrowser/releases/download/v" version "/"
+   "qutebrowser-" version ".tar.gz"))
+   (sha256
+(base32
+ "0pf91nc0xcykahc3x7ww525c9czm8zpg80nxl8n2mrzc4ilgvass"
+(build-system python-build-system)
+(native-inputs
+ `(("asciidoc" ,asciidoc)
+   ("docbook-xsl" ,docbook-xsl)
+   ("docbook-xml" ,docbook-xml)
+   ("libxml2" ,libxml2) ;for xmllint
+   ("libxslt" ,libxslt)))   ;for xsltproc
+(inputs
+ `(("python-colorama" ,python-colorama)
+   ("python-cssutils" ,python-cssutils)
+   ("python-jinja2" ,python-jinja2)
+   ("python-markupsafe" ,python-markupsafe)
+   ("python-pygments" ,python-pygments)
+   ("python-pypeg2" ,python-pypeg2)
+   ("python-pyyaml" ,python-pyyaml)
+   ("python-pyqt" ,python-pyqt)
+   ("qtwebkit" ,qtwebkit)))
+(arguments
+ `(#:tests? #f  ;no tests
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'install 'install-more
+   (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+(app (string-append out "/share/applications"))
+(hicolor (string-append out "/share/icons/hicolor")))
+   (system* "a2x" "-f" "manpage" "doc/qutebrowser.1.asciidoc")
+   (install-file "doc/qutebrowser.1"
+ (string-append out "/share/man/man1"))
+
+   (for-each
+(lambda (i)
+  (let ((src  (format #f "icons/qutebrowser-~dx~d.png" i i))
+(dest (format #f "~a/~dx~d/apps/qutebrowser.png"
+  hicolor i i)))
+(mkdir-p (dirname dest))
+(copy-file src dest)))
+'(16 24 32 48 64 128 256 512))
+   (install-file "icons/qutebrowser.svg"
+ (string-append hicolor "/scalable/apps"))
+
+   (substitute* "qutebrowser.desktop"
+ (("Exec=qutebrowser")
+  (string-append "Exec=" out "/bin/qutebrowser")))
+   (install-file "qutebrowser.desktop" app)
+   #t))
+(home-page "https://qutebrowser.org/;)
+(synopsis "Minimal, keyboard-focused, vim-like web browser")
+(description "qutebrowser is a keyboard-focused browser with a minimal
+GUI.  It is based on PyQt5 and QtWebKit.")
+(license l:gpl3+)))
--
2.11.0




[PATCH 0/3] Add qutebrowser

2017-02-03 Thread Eric Bavier
This patch series adds the qutebrowser web browser.

Eric Bavier (3):
  gnu: Add python-cssutils.
  gnu: python-pyqt: Propagate python-sip.
  gnu: Add qutebrowser.

 gnu/packages/python.scm | 39 ++--
 gnu/packages/qt.scm |  5 ++--
 gnu/packages/web.scm| 68 -
 3 files changed, 101 insertions(+), 11 deletions(-)

-- 
2.11.0




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

2017-02-03 Thread Hartmut Goebel
Am 03.02.2017 um 14:13 schrieb ng0:
> ERROR: In procedure scm_lreadr: gnu/packages/compression.scm:387:44: illegal 
> character in escape sequence: #\)

IC, yes, this needs to be written as \\) (two backslashes)

-- 
Regards
Hartmut Goebel

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




Re: [PATCH] gnu: dub: Patch pkg-config name.

2017-02-03 Thread Danny Milosavljevic
>So either
> (a) dub needs it as input (like this patch would do) or
> (b) every D package needs it as native-input (maybe the build system would 
> auto-add it as native-input to every D package - like it does add ldc and dub)

(c) dub propagates pkg-config




Re: “Future of Guix” panel

2017-02-03 Thread David Craven
> *** “do something” about compilers that cannot be bootstrapped

Like an optin/optout option? Other than that I can't imagine a solution.



hackage importer broken

2017-02-03 Thread Federico Beffa
Hi,

I notice that with a recent Guix checkout (commit
d8e85b20325073d90cfaf3060889d59d91362deb) the hackage importer doesn't
work and the problem seems to be with Guile itself or the lalr parser
coming with it:

---
GNU Guile 2.0.13
Copyright (C) 1995-2016 Free Software Foundation, Inc.

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

Enter `,help' for help.
scheme@(guile-user)> ,m (guix import hackage)
scheme@(guix import hackage)> (canonical-newline-port (http-fetch
"https://hackage.haskell.org/package/hmatrix/hmatrix.cabal;
#:verify-certificate? #f))
$2 = #
scheme@(guix import hackage)> (read-cabal $2)
system/base/lalr.upstream.scm:1851:2: In procedure ___push:
system/base/lalr.upstream.scm:1851:2: Wrong number of arguments to
#

Entering a new prompt.  Type `,bt' for a backtrace or `,q' to continue.
scheme@(guix import hackage) [1]> ,locals
  Local variables:
  $3 = delta = 1
  $4 = new-category = 6
  $5 = lvalue = (#)
While executing meta-command:
ERROR: In procedure frame-local-ref: Argument 2 out of range: 3
scheme@(guix import hackage) [1]>
---

Notice that inspecting the stack of the backtrace results in an error!

The importer does work as expected with Guile 2.0.11:

---
GNU Guile 2.0.11
Copyright (C) 1995-2014 Free Software Foundation, Inc.

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

Enter `,help' for help.
scheme@(guile-user)> ,m (guix import hackage)
scheme@(guix import hackage)> (canonical-newline-port (http-fetch
"https://hackage.haskell.org/package/hmatrix/hmatrix.cabal;
#:verify-certificate? #f))
$1 = #
scheme@(guix import hackage)> (read-cabal $1)
$2 = (("name" ("hmatrix")) ("version" ("0.18.0.0")) ("license"
("BSD3")) ("license-file" ("LICENSE")) ("author" ("Alberto Ruiz"))
("maintainer" ("Alberto Ruiz")) ("stability" ("provisional"))
("homepage" ("https://github.com/albertoruiz/hmatrix;)) ("synopsis"
("Numeric Linear Algebra")) ("description" ("Linear systems, matrix
decompositions, and other numerical computations based on BLAS and
LAPACK. . Standard interface: \"Numeric.LinearAlgebra\". . Safer
interface with statically checked dimensions:
\"Numeric.LinearAlgebra.Static\". . Code examples:
")) ("category"
("Math")) ("tested-with" ("GHC==8.0")) ("cabal-version" (">=1.8"))
("build-type" ("Simple")) ("extra-source-files" ("THANKS.md
CHANGELOG")) ("extra-source-files" ("src/Internal/C/lapack-aux.h"))
(section flag "openblas" (("description" ("Link with OpenBLAS
(https://github.com/xianyi/OpenBLAS) optimized libraries."))
("default" ("False")) ("manual" ("True" (section library
(("build-depends" ("base >= 4.8 && < 5, binary, array, deepseq,
random, split, bytestring, storable-complex, vector >= 0.8"))
("hs-source-dirs" ("src")) ("exposed-modules" ("Numeric.LinearAlgebra
Numeric.LinearAlgebra.Devel Numeric.LinearAlgebra.Data
Numeric.LinearAlgebra.HMatrix Numeric.LinearAlgebra.Static"))
("other-modules" ("Internal.Vector Internal.Devel Internal.Vectorized
Internal.Matrix Internal.ST Internal.IO Internal.Element
Internal.Conversion Internal.LAPACK Internal.Numeric
Internal.Algorithms Internal.Random Internal.Container Internal.Sparse
Internal.Convolution Internal.Chain Numeric.Vector Internal.CG
Numeric.Matrix Internal.Util Internal.Modular Internal.Static"))
("c-sources" ("src/Internal/C/lapack-aux.c
src/Internal/C/vector-aux.c")) ("extensions"
("ForeignFunctionInterface")) ("ghc-options" ("-Wall
-fno-warn-missing-signatures -fno-warn-orphans -fprof-auto"))
("cc-options" ("-O4 -Wall")) (if (arch "x86_64") (("cc-options"
("-msse2"))) ()) (if (arch "i386") (("cc-options" ("-msse2"))) ()) (if
(os "OSX") ((if (flag "openblas") (("extra-lib-dirs"
("/opt/local/lib/openblas/lib")) ("extra-libraries" ("openblas")))
(("extra-libraries" ("blas lapack" ("extra-lib-dirs"
("/opt/local/lib/")) ("include-dirs" ("/opt/local/include/"))
("extra-lib-dirs" ("/usr/local/lib/")) ("include-dirs"
("/usr/local/include/")) (if (arch "i386") (("cc-options" ("-arch
i386"))) ()) ("frameworks" ("Accelerate"))) ()) (if (os "freebsd")
((if (flag "openblas") (("extra-lib-dirs"
("/usr/local/lib/openblas/lib")) ("extra-libraries" ("openblas")))
(("extra-libraries" ("blas lapack") ()) ("extra-lib-dirs"
("/usr/local/lib")) ("include-dirs" ("/usr/local/include"))
("extra-libraries" ("gfortran")) (if (os "windows") ((if (flag
"openblas") (("extra-libraries" ("libopenblas, 

Re: FOSDEM 2017 audio/video volunteers needed

2017-02-03 Thread Thomas Danckaert
From: Catonano 
Subject: Re: FOSDEM 2017 audio/video volunteers needed
Date: Fri, 3 Feb 2017 14:49:54 +0100

> 2017-01-11 4:49 GMT+01:00 Pjotr Prins :
> 
>> On Tue, Jan 10, 2017 at 04:02:32AM +, Pjotr Prins wrote:
>> > Hi all,
>> >
>> > FOSDEM provides live streaming of talks and archiving. We need
>> > volunteers to man the FOSS setup that handles the camera and mike.
>> > Ideally two people who expect to be in the room all day :). It is
>> > mostly automated and does not require special skills.
>>
>> No response. We need help! Two people can take turns over the day.
>> Please volunteer, it is important we capture all talks.
>>
> 
> Because of a hitch, Amirouche won't be there
> 
> So Ricardo and I are the only volunteers
> 
> We' ll try to manage but I won' t be offended if someone would like to step
> in :-)

I also volunteered originally and am happy to step in.

Thomas



Re: FOSDEM 2017 audio/video volunteers needed

2017-02-03 Thread Catonano
2017-01-11 4:49 GMT+01:00 Pjotr Prins :

> On Tue, Jan 10, 2017 at 04:02:32AM +, Pjotr Prins wrote:
> > Hi all,
> >
> > FOSDEM provides live streaming of talks and archiving. We need
> > volunteers to man the FOSS setup that handles the camera and mike.
> > Ideally two people who expect to be in the room all day :). It is
> > mostly automated and does not require special skills.
>
> No response. We need help! Two people can take turns over the day.
> Please volunteer, it is important we capture all talks.
>

Because of a hitch, Amirouche won't be there

So Ricardo and I are the only volunteers

We' ll try to manage but I won' t be offended if someone would like to step
in :-)


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

2017-02-03 Thread ng0

Hartmut Goebel writes:

> Am 02.02.2017 um 16:16 schrieb contact@cryptolab.net:
>> +(string-append "include_dirs.append(\""
>> +   (assoc-ref %build-inputs "lzo") 
>> "/include/lzo" "\")
>
> You could use single quotes for teh python string to make it more readable:

I think there was a reason for the way it was written. Your
suggestion below makes the substitute fail with:

ERROR: In procedure primitive-load-path:
ERROR: In procedure scm_lreadr: gnu/packages/compression.scm:387:44: illegal 
character in escape sequence: #\)

>
> string-append "include_dirs.append('" + (assoc-ref %build-inputs "lzo")
> "/include/lzo" "')
>
>
>> +"
>
> Also this line-break is confusing. I suggest either using "\n" or to
> change the substitute into something like:
>
>
> + (substitute* "setup.py"
> +   (("include_dirs.append\(.*\)")  ;; match up to the trailing 
> parent only, not the new-line
> +(string-append "include_dirs.append('"
> +   (assoc-ref %build-inputs "lzo") "/include/lzo"
> +   "')"   ;; put these last few 
> characters on the next line
>
> Otherwise LGTM.


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



Re: [PATCH] gnu: Add emacs-mew.

2017-02-03 Thread Thomas Danckaert

From: Alex Kost 
Subject: Re: [PATCH] gnu: Add emacs-mew.
Date: Fri, 03 Feb 2017 12:39:05 +0300

Oh, I just realized that's probably why you used 'load-path' 
instead of

'image-load-path', right?


load-path, shmoad-path ;-) I was just confused (even more so because 
load-path is part of image-load-path).



[...]
No problem, thanks for packaging it!  I hope we are close to finish,
could you test it with 'emacs' input and 'patch-mew-icon-directory'
phase I wrote above?


Yes, that works, and it's nice to avoid the patch file. I've attached 
a (final?) updated patch.


I tried to do something similar with emacs-substitute-variables, but 
of course that embedded all my elisp code as a string...


thanks,

Thomas
From 868c56166ce62b9572b95a9ca7a20feee970666d Mon Sep 17 00:00:00 2001
From: Thomas Danckaert 
Date: Tue, 24 Jan 2017 09:41:42 +0100
Subject: [PATCH] gnu: Add emacs-mew.

* gnu/packages/mail.scm (emacs-mew): New variable.

Co-authored-by: Alex Kost 
---
 gnu/packages/mail.scm | 53 +++
 1 file changed, 53 insertions(+)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 2318ae9..4a73484 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -20,6 +20,7 @@
 ;;; Copyright © 2016 Arun Isaac 
 ;;; Copyright © 2016 John Darrington 
 ;;; Copyright © 2016 Marius Bakke 
+;;; Copyright © 2017 Thomas Danckaert 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -79,6 +80,7 @@
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gdb)
   #:use-module (gnu packages man)
+  #:use-module (gnu packages ruby)
   #:use-module (gnu packages samba)
   #:use-module (gnu packages screen)
   #:use-module (gnu packages tls)
@@ -377,6 +379,57 @@ can read the same mailbox from multiple computers.  It supports IMAP as REMOTE
 repository and Maildir/IMAP as LOCAL repository.")
 (license gpl2+)))
 
+(define-public emacs-mew
+  (package
+(name "emacs-mew")
+(version "6.7")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "http://mew.org/Release/mew-;
+  version ".tar.gz"))
+  (sha256
+   (base32
+"03fzky2kz73vgx4cbps2psbbnrgqgkk5q7jwfldisymkzr9iz03y"
+(native-inputs
+ `(("emacs" ,emacs)))
+(propagated-inputs
+ `(("ruby-sqlite3" ,ruby-sqlite3) ; optional for the database of messages
+   ("ruby" ,ruby))) ; to set GEM_PATH so ruby-sqlite3 is found at runtime
+(build-system gnu-build-system)
+(arguments
+ (let ((elisp-dir "/share/emacs/site-lisp/guix.d/mew")
+   (icon-dir  "/share/mew"))
+   `(#:modules ((guix build gnu-build-system)
+(guix build utils)
+(guix build emacs-utils))
+ #:imported-modules (,@%gnu-build-system-modules
+ (guix build emacs-utils))
+ #:configure-flags
+ (list (string-append "--with-elispdir=" %output ,elisp-dir)
+   (string-append "--with-etcdir=" %output ,icon-dir))
+ #:phases
+ (modify-phases %standard-phases
+   (add-after 'configure 'patch-mew-icon-directory
+ (lambda* (#:key outputs #:allow-other-keys)
+   (emacs-substitute-sexps "mew-key.el"
+ ("(def.* mew-icon-directory"
+  `(progn
+(add-to-list 'image-load-path 'mew-icon-directory)
+,(string-append (assoc-ref outputs "out") ,icon-dir
+   #t))
+   (add-after 'install 'generate-autoloads
+ (lambda* (#:key outputs #:allow-other-keys)
+   (emacs-generate-autoloads
+"mew" (string-append (assoc-ref outputs "out") ,elisp-dir))
+   #t)))
+ #:tests? #f)))
+(home-page "http://www.mew.org;)
+(synopsis "Emacs e-mail client")
+(description "Mew (Messaging in the Emacs World) is a user interface
+for text messages, multimedia messages (MIME), news articles and
+security functionality including PGP, S/MIME, SSH, and SSL.")
+(license bsd-3)))
+
 (define-public mu
   (package
 (name "mu")
-- 
2.7.4



Fosdem

2017-02-03 Thread Catonano
I will arrive in Bruxelles tomorrow at lunch time

I' d like to follow this talk
https://fosdem.org/2017/schedule/event/all_ages/

and this one
https://fosdem.org/2017/schedule/event/copyleft_defense/

I'd love to meet anyone of you guixers, while there.

Contact me in private for arrangements

Ciao


Re: [PATCH] gnu: Add angband. (almost working!)

2017-02-03 Thread Christopher Allan Webber
Kei Kebreau writes:

> Christopher Allan Webber  writes:
>
>> At the risk of totally destroying my productivity, I thought I'd take a
>> short of packaging a common roguelike.  Unfortunately, it seems like
>> every roguelike I try to package runs into some snag.  In this case,
>> angband can't find ncurses.  I don't know why!
>>
>> Apparently this is related:
>> https://lists.freebsd.org/pipermail/freebsd-ports-bugs/2014-January/271203.html
>> ... but I don't really know enough.
>>
>> Anyone who wants to help contribute to the downfall of various GuixSD
>> users by assisting getting roguelikes into the distribution: this is
>> pretty close, if we can solve that one thing! :)
>>
>>  - Chris
>>
>> From 5a97d5dffa12a3282b57313db8aa609f27729074 Mon Sep 17 00:00:00 2001
>> From: Christopher Allan Webber 
>> Date: Mon, 12 Sep 2016 20:28:51 -0500
>> Subject: [PATCH] gnu: Add angband.
>>
>> * gnu/packages/games.scm (angband): New variable.
>> ---
>>  gnu/packages/games.scm | 34 +-
>>  1 file changed, 33 insertions(+), 1 deletion(-)
>>
>> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
>> index d386e2c..08c00b9 100644
>> --- a/gnu/packages/games.scm
>> +++ b/gnu/packages/games.scm
>> @@ -10,7 +10,7 @@
>>  ;;; Copyright © 2014, 2015 Mark H Weaver 
>>  ;;; Copyright © 2015, 2016 Andreas Enge 
>>  ;;; Copyright © 2015 David Hashe 
>> -;;; Copyright © 2015 Christopher Allan Webber 
>> +;;; Copyright © 2015, 2106 Christopher Allan Webber 
> Should be 2016, I assume. ^
>>  ;;; Copyright © 2015 Ricardo Wurmus 
>>  ;;; Copyright © 2015, 2016 Alex Kost 
>>  ;;; Copyright © 2015 Paul van der Walt 
>> @@ -223,6 +223,38 @@ them, called Jean Raymond, found an old church in which 
>> to hide, not knowing
>>  that beneath its ruins lay buried an ancient evil.")
>>  (license license:gpl3+)))
>>  
>> +(define-public angband
>> +  (package
>> +(name "angband")
>> +(version "4.0.5")
>> +(source
>> + (origin
>> +   (method url-fetch)
>> +   (uri (string-append "http://rephial.org/downloads/4.0/;
>> +   "angband-" version ".tar.gz"))
>> +   (sha256
>> +(base32
>> + "0lpq2kms7hp421vrasx2bkkn9w08kr581ldwik3v0hlq6h7rlxhd"
>> +(build-system gnu-build-system)
>> +(arguments
>> + `(#:tests? #f ;no check target
>> +   ;; #:configure-flags '("--enable-sdl")
>> +   #:phases (modify-phases %standard-phases
>> +  (add-after
>> +  'unpack 'autogen.sh
>> +(lambda _
>> +  (zero? (system* "sh" "autogen.sh"))) 
>> +(native-inputs
>> + `(("autoconf" ,autoconf)
>> +   ("automake" ,automake)))
>> +(inputs `(("ncurses" ,ncurses)))
>> +(home-page "http://rephial.org/;)
>> +(synopsis "Dungeon exploration roguelike")
>> +(description "Classic dungeon exploration roguelike.  Explore the depths
>> +below Angband, seeking riches, fighting monsters, and preparing to fight
>> +Morgoth, the Lord of Darkness.")
>> +(license license:gpl2)))
>> +
>>  (define-public pingus
>>(package
>>  (name "pingus")
>
> I found the issue. You must substitute the instances of the string
> "ncursew5-config" with "ncursesw6-config" before running autogen.sh.
> This is because we only package version 6 of the ncurses library. By
> making this change, I was able to build angband reproducibly. Should we
> enable the SDL, X11 and GTK+ interfaces as well?

Wow nice!

I'm for enabling at least one of the visual interfaces, though I don't
think we need to enable all of them?  Perhaps they should be different
derived package versions?  WDYT?



Re: “Future of Guix” panel

2017-02-03 Thread Christopher Allan Webber
It looks good.  We won't run out of topics for sure. :)

Pjotr Prins writes:

> Heh. Long list.
>
> On Fri, Feb 03, 2017 at 12:11:15AM +0100, Ludovic Courtès wrote:
>> Hello Guix!
>> 
>> We’ll close FOSDEM with a discussion on the future of Guix and GuixSD:
>> 
>>   https://fosdem.org/2017/schedule/event/futureofguix/
>> 
>> Attached is a semi-structured list of topics that came to mind.  Please
>> feel free to bring your own, either at the event (this Sunday), or on
>> this list, or on IRC during the event maybe?
>> 
>> Ludo’.
>> 
>
>> #+TITLE: Future of Guix (panel)
>> #+STARTUP: content hidestars
>> 
>> https://fosdem.org/2017/schedule/event/futureofguix/
>> Sunday, 16:30, K.4.601
>> 
>> * Organization
>> 
>> ** sharing the work load
>> 
>> *** security updates
>> 
>> *** build farm
>> 
>> *** web site, posts, videos, etc.
>> 
>> *** handling branches: starting & merging ‘core-updates’, ‘staging’
>> 
>> *** release management: setting a date, choosing what goes in, publishing
>> 
>> *** GSoC mentoring
>> 
>> ** review
>> 
>> *** getting more reviewers
>> 
>> *** facilitating the process
>> 
>> *** encouraging newcomers
>> 
>> ** funding
>> 
>> *** development
>> 
>>   - how do we get core & maintenance work funded?
>>   - how do we get funding for new areas (like ‘guix deploy’)?
>> 
>> *** infrastructure (build farm)
>> 
>>   - sustaining infrastructure growth and maintenance
>>   - Jan. 2016 crowdfunding was enough for a start
>> 
>> * Publicity, outreach
>> 
>> ** high-performance computing (HPC)
>> 
>> *** competition: EasyBuild, Spack, Singularity, Shifter
>> 
>> *** stories: MDC, Utrecht, Brisbane
>> 
>> *** possible cooperation in the near future
>> 
>> ** reproducible science
>> 
>> *** how to help projects such as [[https://rescience.github.io/][ReScience]]?
>> 
>> *** make reproducible free software stacks the obvious choice
>> 
>> ** containers, deployment
>> 
>> *** competition: Docker, Kubernetes, NixOps
>> 
>> *** stories: gov.uk (Chris Baines), bayfront.guixsd.org
>> 
>> ** hold Guix User Gatherings (GUGs)?
>> 
>> * Code
>> 
>> ** 1.0 in 2017! (see roadmap in 
>> [[https://www.gnu.org/software/guix/guix-ghm-20160818.pdf][GHM 2016 talk]])
>> 
>> *** ‘guix pull’ and channels
>> 
>> *** Git checkout authentication
>> 
>> *** performance & usability improvements
>> 
>> *** GuixSD graphical installer (John)
>> 
>> *** self-hosted infrastructure
>> 
>>  Cuirass
>> 
>>  ‘guix publish’ improvements
>> 
>>  build machines running GuixSD
>> 
>> *** bug fixes
>> 
>> ** next big thing: ‘guix deploy’
>> 
>> ** scalability
>> 
>> *** better importers & updaters
>> 
>> *** better ‘guix lint -c cve’
>> 
>> ** reproducibility: reach 90% or so, and measure
>> 
>> ** bootstrapping
>> 
>> *** reduce the size of our bootstrap binaries (Bournish? Mes? …)
>> 
>> *** “do something” about compilers that cannot be bootstrapped




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

2017-02-03 Thread Huang, Ying
Hi, All,

huang_ying_cari...@163.com writes:

> From: Huang Ying 
>
> Gtk+3 now have multiple outputs, so the gtk-query-immodules-3.0 should be find
> in bin output.
>
> The fix works, but appears hacky, because I haven't read much guix source
> code, so I don't know the best solution.

I know this fix isn't good, but the problem exists.  Could anyone help
me to fix it properly?  Without the fix, I could not use fcitx input
method.  Because XIM immodule will hang some applications like gedit.

Best Regards,
Huang, Ying

> Signed-off-by: "Huang, Ying" 
> ---
>  guix/profiles.scm | 15 ++-
>  1 file changed, 10 insertions(+), 5 deletions(-)
>
> diff --git a/guix/profiles.scm b/guix/profiles.scm
> index 495a9e2e7..9ae6dbf09 100644
> --- a/guix/profiles.scm
> +++ b/guix/profiles.scm
> @@ -476,7 +476,7 @@ replace it."
>  (cons (gexp-input thing output) deps)))
>(manifest-entries manifest)))
>  
> -(define* (manifest-lookup-package manifest name #:optional version)
> +(define* (manifest-lookup-package manifest name #:optional version output)
>"Return as a monadic value the first package or store path referenced by
>  MANIFEST that is named NAME and optionally has the given VERSION prefix, or 
> #f
>  if not found."
> @@ -499,6 +499,9 @@ if not found."
>  (and (string=? name name*)
>   (if version
>   (string-prefix? version version*)
> + #t)
> + (if output
> + (string-suffix? output version*)
>   #t
>  items))
>  
> @@ -737,9 +740,10 @@ creates the GTK+ 'icon-theme.cache' file for each theme."
>  for both major versions of GTK+."
>  
>(mlet %store-monad ((gtk+   (manifest-lookup-package manifest "gtk+" "3"))
> +  (gtk+-bin (manifest-lookup-package manifest "gtk+" "3" 
> "bin"))
>(gtk+-2 (manifest-lookup-package manifest "gtk+" "2")))
>  
> -(define (build gtk gtk-version)
> +(define (build gtk gtk-version gtk-bin out)
>(let ((major (string-take gtk-version 1)))
>  (with-imported-modules '((guix build utils)
>   (guix build union)
> @@ -756,7 +760,8 @@ for both major versions of GTK+."
>  
>(let* ((prefix  (string-append "/lib/gtk-" #$major ".0/"
>   #$gtk-version))
> - (query   (string-append #$gtk 
> "/bin/gtk-query-immodules-"
> + (query   (string-append (ungexp gtk-bin out)
> + "/bin/gtk-query-immodules-"
>   #$major ".0"))
>   (destdir (string-append #$output prefix))
>   (moddirs (cons (string-append #$gtk prefix "/immodules")
> @@ -784,8 +789,8 @@ for both major versions of GTK+."
>  
>  ;; Don't run the hook when there's nothing to do.
>  (let ((gexp #~(begin
> -#$(if gtk+   (build gtk+   "3.0.0")  #t)
> -#$(if gtk+-2 (build gtk+-2 "2.10.0") #t
> +#$(if gtk+   (build gtk+   "3.0.0"  gtk+-bin "bin")  #t)
> +#$(if gtk+-2 (build gtk+-2 "2.10.0" gtk+-2 "out") #t
>(if (or gtk+ gtk+-2)
>(gexp->derivation "gtk-im-modules" gexp
>  #:local-build? #t




Re: [PATCH] gnu: Add emacs-mew.

2017-02-03 Thread Alex Kost
Thomas Danckaert (2017-02-02 19:41 +0100) wrote:

> From: Alex Kost 
> Subject: Re: [PATCH] gnu: Add emacs-mew.
> Date: Thu, 02 Feb 2017 11:56:22 +0300
>
>> OK, I see.  We can just patch "mew-key.el" file by putting the
>> following
>> line there:
>>
>>   (add-to-list 'image-load-path 'mew-icon-directory)
>>
>> WDYT?
>
> Yes, that would be fine!

Great, but you did a different thing :-)  (see my comment below)

> I added a patch file, don't know if there's a
> more elegant way to achieve the same result?

Hm, we can modify 'image-load-path' during initializing
'mew-icon-directory' variable like this:

  (add-after 'configure 'patch-mew-icon-directory
(lambda* (#:key outputs #:allow-other-keys)
  (emacs-substitute-sexps "mew-key.el"
("(def.* mew-icon-directory"
 `(progn
   (add-to-list 'image-load-path 'mew-icon-directory)
   ,(string-append (assoc-ref outputs "out") ,icon-dir
  #t))

This is probably not very clean, but at least it allows us to avoid
additional patch, WDYT?

Also we have to use 'emacs' input (it should be native-input btw, since
it is used only to byte-compile elisp code) instead of 'emacs-minimal':
emacs-minimal is compiled without X support, so it will fail to compile
"mew-key.el" (and all files that require it) as it uses image-load-path.

Oh, I just realized that's probably why you used 'load-path' instead of
'image-load-path', right?

>> [...]
>>
>> Also you seem to overlook my comment about autoloads.  My version of
>> your patch (attached in my previous message) contains a phase to
>> generate "mew-autoloads.el".  This file is really needed to have "M-x
>> mew" command available by default.  Otherwise, a user has to put:
>>
>>   (autoload 'mew "mew" nil t)
>>
>> in his/her emacs config.
>
> Yes, sorry, I just agreed and then forgot to comment on that part.  I
> didn't know about 'emacs-generate-autoloads and think it's great  :)
>
> Thanks for your help!

No problem, thanks for packaging it!  I hope we are close to finish,
could you test it with 'emacs' input and 'patch-mew-icon-directory'
phase I wrote above?

> From 3179514335f61e29f93994f4dc0f59c30b59e876 Mon Sep 17 00:00:00 2001
> From: Thomas Danckaert 
> Date: Tue, 24 Jan 2017 09:41:42 +0100
> Subject: [PATCH] gnu: Add emacs-mew.
>
> * gnu/packages/mail.scm (emacs-mew): New variable.
> * gnu/packages/patches/mew-add-icons-to-load-path.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add it.
>
> Co-authored-by: Alex Kost 
> ---
>  gnu/local.mk   |  1 +
>  gnu/packages/mail.scm  | 52 
> ++
>  .../patches/mew-add-icons-to-load-path.patch   | 14 ++
>  3 files changed, 67 insertions(+)
>  create mode 100644 gnu/packages/patches/mew-add-icons-to-load-path.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 59fc1a8..c9a5a3a 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -744,6 +744,7 @@ dist_patch_DATA = 
> \
>%D%/packages/patches/mcrypt-CVE-2012-4527.patch\
>%D%/packages/patches/mesa-wayland-egl-symbols-check-mips.patch \
>%D%/packages/patches/metabat-remove-compilation-date.patch \
> +  %D%/packages/patches/mew-add-icons-to-load-path.patch  \
>%D%/packages/patches/mhash-keygen-test-segfault.patch  \
>%D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch  \
>%D%/packages/patches/mpc123-initialize-ao.patch\
> diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
> index 2318ae9..c6aa820 100644
> --- a/gnu/packages/mail.scm
> +++ b/gnu/packages/mail.scm
> @@ -20,6 +20,7 @@
>  ;;; Copyright © 2016 Arun Isaac 
>  ;;; Copyright © 2016 John Darrington 
>  ;;; Copyright © 2016 Marius Bakke 
> +;;; Copyright © 2017 Thomas Danckaert 
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -79,6 +80,7 @@
>#:use-module (gnu packages flex)
>#:use-module (gnu packages gdb)
>#:use-module (gnu packages man)
> +  #:use-module (gnu packages ruby)
>#:use-module (gnu packages samba)
>#:use-module (gnu packages screen)
>#:use-module (gnu packages tls)
> @@ -377,6 +379,56 @@ can read the same mailbox from multiple computers.  It 
> supports IMAP as REMOTE
>  repository and Maildir/IMAP as LOCAL repository.")
>  (license gpl2+)))
>  
> +(define-public emacs-mew
> +  (package
> +(name "emacs-mew")
> +(version "6.7")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append "http://mew.org/Release/mew-;
> +  version ".tar.gz"))
> +  (patches (search-patches "mew-add-icons-to-load-path.patch"))
> +  (sha256
> +   (base32
> +

Re: [PATCH 7/7] gnu: Enable CONFIG_HOTPLUG_PCI.

2017-02-03 Thread David Craven
Mmh, I think that forcing binary blobs out of the linux kernel is only
useful if vendors move more work into the driver and silicon instead
of firmware that cannot be updated, since each flash device is a
security risk. But it could also backfire. The thunderbolt firmware
for example is only updateable from windows. That leaves me with a
crashy hdmi output and doesn't stop the NSA from flashing it anyway
and getting access to my PCIE bus - definitively not an improvement
over a binary blob...

I'll push these patches if there are no objections then. Can I
regenerate a pgp key? I think my keys where in the gnome keyring or
something, backing up ~/.gnupg/secring.pgp didn't keep my keys :/



Re: [PATCH] gnu: Add emacs-pretty-mode.

2017-02-03 Thread Alex Kost
ng0 (2017-02-02 10:08 +) wrote:

> Alex Kost writes:
>
>> contact@cryptolab.net (2017-02-01 18:08 +) wrote:
>>
>>> From: ng0 
>>>
>>> * gnu/packages/emacs.scm (emacs-pretty-mode): New variable.
>>> ---
>>>  gnu/packages/emacs.scm | 23 +++
>>>  1 file changed, 23 insertions(+)
>>>
>>> diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
>>> index df7f7869d..a51b5de1d 100644
>>> --- a/gnu/packages/emacs.scm
>>> +++ b/gnu/packages/emacs.scm
>>> @@ -3778,3 +3778,26 @@ customizable by the user.")
>>>  Additionally it can display the number of unread emails in the
>>>  mode-line.")
>>>  (license license:gpl3+)))
>>> +
>>> +(define-public emacs-pretty-mode
>>> +  (let ((commit "500085206e25b98d00b9ec996f91c87ba569c4ce")
>>> +(revision "1"))
>>> +  (package
>>> +(name "emacs-pretty-mode")
>>> +(version (string-append "2.0.3-" revision "." (string-take commit 7)))
>>> +(source
>>> + (origin
>>> +   (method git-fetch)
>>> +   (uri (git-reference
>>> + (url "https://github.com/akatov/pretty-mode;)
>>> + (commit commit)))
>>
>> Why git commit, and not the latest snapshot?
>>
>> https://github.com/akatov/pretty-mode/archive/2.0.3.tar.gz
>
> I wasn't sure. Melpa uses a git commit (I think) and the last
> release is very old. I picked the commit because I thought it
> would be incompatible to current emacs.

Of course it is compatible.  Melpa always uses the latest commit.  And
Melpa-Stable uses the latest tag (which is 2.0.3):

  http://stable.melpa.org/#/pretty-mode

My understanding of Guix packaging policy is that we try to package the
latest releases (or latest tag snapshots if there is no release
tarball), and to use git commits only if there are significant bug or
security fixes.  Otherwise, why don't we use git-fetch everywhere?

BTW it is not "very old", it is 10 commits behind master, and all these
commits are rather minor, as you can see:

  https://github.com/akatov/pretty-mode/compare/2.0.3...master

>>> +   (file-name (string-append name "-" version "-checkout"))
>>> +   (sha256
>>> +(base32
>>> + "0m7ii971zxlz8a9yx2ljf9fmd8k6hc9w1q8mi5xi32v9viccjabs"
>>> +(build-system emacs-build-system)
>>> +(home-page "https://github.com/akatov/pretty-mode;)
>>> +(synopsis "Redisplay parts of the buffer as pretty Unicode symbols.")
>>> +(description
>>> + "Emacs minor mode for redisplaying parts of the buffer as pretty 
>>> symbols.")
>>> +(license license:gpl3+

-- 
Alex