[PATCH] gnu: slim: Do not reset session after failed login

2016-10-17 Thread Eric Bavier
Hello Guix,

The first patch fixes an often-bemoaned usability issue in SLiM.  The
second is mostly to improve aesthetics, IMHO.

`~Eric
From cd6e3c5d8956c4cd89631d706a1f0be84d45275a Mon Sep 17 00:00:00 2001
From: Eric Bavier 
Date: Mon, 17 Oct 2016 17:17:50 -0500
Subject: [PATCH 1/2] gnu: slim: Do not reset session after failed login.

* gnu/packages/patches/slim-reset.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/display-managers.scm (slim)[source]: Use it.
---
 gnu/local.mk  |  1 +
 gnu/packages/display-managers.scm |  1 +
 gnu/packages/patches/slim-reset.patch | 31 +++
 3 files changed, 33 insertions(+)
 create mode 100644 gnu/packages/patches/slim-reset.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index a81c619..a22a22c 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -820,6 +820,7 @@ dist_patch_DATA =		\
   %D%/packages/patches/slim-session.patch			\
   %D%/packages/patches/slim-config.patch			\
   %D%/packages/patches/slim-sigusr1.patch			\
+  %D%/packages/patches/slim-reset.patch\
   %D%/packages/patches/slock-CVE-2016-6866.patch		\
   %D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
   %D%/packages/patches/soprano-find-clucene.patch		\
diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
index 1371bb5..5479bb5 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -199,6 +199,7 @@ create smooth, animated user interfaces.")
 	 (sha256
 	  (base32 "1pqhk22jb4aja4hkrm7rjgbgzjyh7i4zswdgf5nw862l2znzxpi1"))
  (patches (search-patches "slim-config.patch"
+  "slim-reset.patch"
   "slim-session.patch"
   "slim-sigusr1.patch"
 (build-system cmake-build-system)
diff --git a/gnu/packages/patches/slim-reset.patch b/gnu/packages/patches/slim-reset.patch
new file mode 100644
index 000..f00a0d4
--- /dev/null
+++ b/gnu/packages/patches/slim-reset.patch
@@ -0,0 +1,31 @@
+Do not reset chosen session and maintain the session-choser dialog after a
+failed login attempt.
+
+--- slim-1.3.6/panel.cpp.orig	1969-12-31 18:00:00.0 -0600
 slim-1.3.6/panel.cpp	2016-10-17 17:00:07.259649063 -0500
+@@ -260,13 +260,12 @@
+ }
+ 
+ void Panel::ClearPanel() {
+-	session_name = "";
+-session_exec = "";
+ 	Reset();
+ 	XClearWindow(Dpy, Root);
+ 	XClearWindow(Dpy, Win);
+ 	Cursor(SHOW);
+ 	ShowText();
++	ShowSession();
+ 	XFlush(Dpy);
+ }
+ 
+@@ -760,9 +760,7 @@
+ pair ses = cfg->nextSession();
+ session_name = ses.first;
+ session_exec = ses.second;
+-if (session_name.size() > 0) {
+-ShowSession();
+-}
++ShowSession();
+  }
+ 
+ /* Display session type on the screen */
-- 
2.10.0

From 7c0af8d1f41e730fe26fd608e7c669c8ac89d765 Mon Sep 17 00:00:00 2001
From: Eric Bavier 
Date: Mon, 17 Oct 2016 17:20:24 -0500
Subject: [PATCH 2/2] gnu: slim: Display login message.

* gnu/packages/patches/slim-login.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/display-managers.scm (slim)[source]: Use it.
---
 gnu/local.mk  |  1 +
 gnu/packages/display-managers.scm |  1 +
 gnu/packages/patches/slim-login.patch | 33 +
 3 files changed, 35 insertions(+)
 create mode 100644 gnu/packages/patches/slim-login.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index a22a22c..3955e6e 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -821,6 +821,7 @@ dist_patch_DATA =		\
   %D%/packages/patches/slim-config.patch			\
   %D%/packages/patches/slim-sigusr1.patch			\
   %D%/packages/patches/slim-reset.patch\
+  %D%/packages/patches/slim-login.patch\
   %D%/packages/patches/slock-CVE-2016-6866.patch		\
   %D%/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
   %D%/packages/patches/soprano-find-clucene.patch		\
diff --git a/gnu/packages/display-managers.scm b/gnu/packages/display-managers.scm
index 5479bb5..0eca945 100644
--- a/gnu/packages/display-managers.scm
+++ b/gnu/packages/display-managers.scm
@@ -200,6 +200,7 @@ create smooth, animated user interfaces.")
 	  (base32 "1pqhk22jb4aja4hkrm7rjgbgzjyh7i4zswdgf5nw862l2znzxpi1"))
  (patches (search-patches "slim-config.patch"
   "slim-reset.patch"
+  "slim-login.patch"
   "slim-session.patch"
   "slim-sigusr1.patch"
 (build-system cmake-build-system)
diff --git a/gnu/packages/patches/slim-login.patch b/gnu/packages/patches/slim-login.patch
new file mode 100644
index 000..eb1bf86
--- /dev/null
+++ b/gnu/packages/patches/slim-login.patch
@@ -0,0 +1,33 @@
+Display configurable login message 

Re: [PATCH] add kobodeluxe

2016-10-17 Thread Stephen Webber
Thank you both for the warm welcome and feedback :)

I've attached a patch that builds upon Chris's changes.

Changed:
spelling patch - removed
description - "game" now included in description
patch names - use dashes consistently (thank you Chris)

Unchanged:
whitespace warnings - these are due to an intersection of the git patch
format and the tabular convention within Kobodeluxe's code
user profile - postponed until someone with security expertise can modify

Patches originate from:
https://packages.debian.org/sid/games/kobodeluxe (parent page)
http://http.debian.net/debian/pool/main/k/kobodeluxe/kobodeluxe_0.5.1-8.debian.tar.xz
(direct link)

If any future changes are necessary, please let me know :)

On Mon, Oct 17, 2016 at 11:41 AM, Kei Kebreau  wrote:

> Christopher Allan Webber  writes:
>
> >> On Sun, Oct 16, 2016 at 9:06 PM, Kei Kebreau 
> wrote:
> >>> When I applied the patch, git complained about trailing whitespace; a
> >>> trivial fix.
> >
> > Those whitespace "errors" were in the original patches we borrowed from
> > Debian, and weren't on any of the lines that patch in new code.
> > Nonetheless the patches seem to apply fine without them, so here's an
> > adjusted patch that fixes that.  (It also fixes the commit line, since I
> > forgot to change the underscores to hyphens there in my last patch!)
> >
> >  - Chris
> >
> > From 62bf271a6907bd5b0ec73662bc3f92c64aafa229 Mon Sep 17 00:00:00 2001
> > From: Stephen Webber 
> > Date: Sun, 16 Oct 2016 15:04:35 -0500
> > Subject: [PATCH] gnu: Add kobodeluxe.
> >
> > * gnu/packages/games.scm (kobodeluxe): New variable.
> > * gnu/packages/patches/kobodeluxe-paths.patch: New file.
> > * gnu/packages/patches/kobodeluxe-spelling.patch: New file.
> > * gnu/packages/patches/kobodeluxe-enemies-pipe-decl.patch: New file.
> > * gnu/packages/patches/kobodeluxe-const-charp-conversion.patch: New
> file.
> > * gnu/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch: New
> file.
> > * gnu/packages/patches/kobodeluxe-midicon-segmentation-fault.patch: New
> file.
> > * gnu/packages/patches/kobodeluxe-graphics-window-signed-char.patch:
> New file.
> > * gnu/local.mk (dist_patch_DATA): Register it.
> > ---
> >  gnu/local.mk   |  7 +++
> >  gnu/packages/games.scm | 34 +++
> >  .../kobodeluxe-const-charp-conversion.patch| 17 ++
> >  .../patches/kobodeluxe-enemies-pipe-decl.patch | 67
> ++
> >  .../kobodeluxe-graphics-window-signed-char.patch   | 38 
> >  .../kobodeluxe-manpage-minus-not-hyphen.patch  | 15 +
> >  .../kobodeluxe-midicon-segmentation-fault.patch| 24 
> >  gnu/packages/patches/kobodeluxe-paths.patch| 40 +
> >  gnu/packages/patches/kobodeluxe-spelling.patch | 25 
> >  9 files changed, 267 insertions(+)
> >  create mode 100644 gnu/packages/patches/kobodeluxe-const-charp-
> conversion.patch
> >  create mode 100644 gnu/packages/patches/kobodeluxe-enemies-pipe-decl.
> patch
> >  create mode 100644 gnu/packages/patches/kobodeluxe-graphics-window-
> signed-char.patch
> >  create mode 100644 gnu/packages/patches/kobodeluxe-manpage-minus-not-
> hyphen.patch
> >  create mode 100644 gnu/packages/patches/kobodeluxe-midicon-
> segmentation-fault.patch
> >  create mode 100644 gnu/packages/patches/kobodeluxe-paths.patch
> >  create mode 100644 gnu/packages/patches/kobodeluxe-spelling.patch
> >
> > diff --git a/gnu/local.mk b/gnu/local.mk
> > index 19dd9ae..a358939 100644
> > --- a/gnu/local.mk
> > +++ b/gnu/local.mk
> > @@ -621,6 +621,13 @@ dist_patch_DATA =
>   \
> >%D%/packages/patches/jq-CVE-2015-8863.patch\
> >%D%/packages/patches/khmer-use-libraries.patch\
> >%D%/packages/patches/kmod-module-directory.patch   \
> > +  %D%/packages/patches/kobodeluxe-paths.patch\
> > +  %D%/packages/patches/kobodeluxe-spelling.patch \
> > +  %D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch\
> > +  %D%/packages/patches/kobodeluxe-const-charp-conversion.patch   \
> > +  %D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch \
> > +  %D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch   \
> > +  %D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch  \
> >%D%/packages/patches/laby-make-install.patch   \
> >%D%/packages/patches/ldc-disable-tests.patch   \
> >%D%/packages/patches/lftp-dont-save-unknown-host-fingerprint.patch \
> > diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
> > index 2bb53e0..7c43f84 100644
> > --- a/gnu/packages/games.scm
> > +++ b/gnu/packages/games.scm
> > @@ -23,6 +23,7 @@
> >  ;;; Copyright © 2016 Alex Griffin 
> >  ;;; Copyright © 2016 Efraim Flashner 

[PATCH 1/1] gnu: borg: Install more documentation.

2016-10-17 Thread Leo Famulari
* gnu/packages/backup.scm (borg)[arguments]: Install more documentation
in 'install-doc' phase.
---
 gnu/packages/backup.scm | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm
index eb5e98d..b75e99b 100644
--- a/gnu/packages/backup.scm
+++ b/gnu/packages/backup.scm
@@ -439,8 +439,15 @@ detection, and lossless compression.")
  (add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
  (let* ((out (assoc-ref outputs "out"))
-(man (string-append out "/share/man/man1")))
+(man (string-append out "/share/man/man1"))
+(misc (string-append out "/share/borg/misc")))
(and
+ (for-each (lambda (file)
+ (install-file file misc))
+   (find-files "docs/misc"
+   (string-append "create_chunker-params|"
+  "internals-picture|"
+  "prune-example")))
  (zero? (system* "python3" "setup.py" "build_ext" "--inplace"))
  (zero? (system* "make" "-C" "docs" "man"))
  (begin
-- 
2.10.1




[PATCH 0/1] Borg: Install more docs

2016-10-17 Thread Leo Famulari
These text files explain in greater detail some things that are
explained in the Borg man page. You could think of them as extended
examples. The visual explanation of pruning was especially helpful to
me.

This method of selecting the files is crude. Originally I used
(find-files "docs/misc" "\\.txt$"), but that picked up some unwanted
files in 'docs/misc/asciinema'. Any suggestions for improvement?

Leo Famulari (1):
  gnu: borg: Install more documentation.

 gnu/packages/backup.scm | 9 -
 1 file changed, 8 insertions(+), 1 deletion(-)

-- 
2.10.1




[PATCH 1/1] gnu: dbus-1.10.12: Fix Guix build failure.

2016-10-17 Thread Leo Famulari
Previously, building Guix failed like this:

--
ice-9/psyntax.scm:1422:32: In procedure expand-macro:
ice-9/psyntax.scm:1422:32: Syntax error:
gnu/packages/glib.scm:141:8: origin: extraneous field initializers (inherit) in 
form (origin (method url-fetch) (inherit (package-source dbus)) (uri 
(string-append "https://dbus.freedesktop.org/releases/dbus/dbus-; version 
".tar.gz")) (sha256 (base32 
"0pa71vf5c0d7k3gni06iascmplj0j5g70wbc833ayvi71d1pj2i1")))
--

* gnu/packages/glib.scm (dbus-1.10.12): Use (patches) to apply the
"dbus-helper-search-path.patch" instead of inheriting the source of dbus.
---
 gnu/packages/glib.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 9a1459a..bfcda02 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -140,10 +140,10 @@ shared NFS home directories.")
   (let ((version "1.10.12"))
 (origin
   (method url-fetch)
-  (inherit (package-source dbus))
   (uri (string-append
 "https://dbus.freedesktop.org/releases/dbus/dbus-;
 version ".tar.gz"))
+  (patches (search-patches "dbus-helper-search-path.patch"))
   (sha256
(base32
 "0pa71vf5c0d7k3gni06iascmplj0j5g70wbc833ayvi71d1pj2i1")))
-- 
2.10.1




Re: 01/03: gnu: jasper: Update to 1.900.5.

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 09:08:53PM +, Efraim Flashner wrote:
> efraim pushed a commit to branch master
> in repository guix.
> 
> commit b333d00c3566a8a6b058a35426da96200ebf2c6d
> Author: Efraim Flashner 
> Date:   Mon Oct 17 23:47:14 2016 +0300
> 
> gnu: jasper: Update to 1.900.5.
> 
> * gnu/packages/image.scm (jasper): Update to 1.900.5.
> [source]: Remove patches.
> [native-inputs]: Remove unzip.
> * gnu/packages/patches/jasper-CVE-2007-2721.patch,
> gnu/packages/patches/jasper-CVE-2008-3520.patch,
> gnu/packages/patches/jasper-CVE-2008-3522.patch,
> gnu/packages/patches/jasper-CVE-2011-4516-and-CVE-2011-4517.patch,
> gnu/packages/patches/jasper-CVE-2014-8137.patch,
> gnu/packages/patches/jasper-CVE-2014-8138.patch,
> gnu/packages/patches/jasper-CVE-2014-8157.patch,
> gnu/packages/patches/jasper-CVE-2014-8158.patch,
> gnu/packages/patches/jasper-CVE-2014-9029.patch,
> gnu/packages/patches/jasper-CVE-2016-1577.patch,
> gnu/packages/patches/jasper-CVE-2016-1867.patch,
> gnu/packages/patches/jasper-CVE-2016-2089.patch,
> gnu/packages/patches/jasper-CVE-2016-2116.patch: Delete files.
> * gnu/local.mk (dist_patch_DATA): Remove them.

Awesome, I thought that Jasper was totally abandoned!

I looked at the Jasper commit log [0], and I (not very carefully)
matched our bug fix patches to their upstream commits:

CVE-2007-2721 4031ca321d8cb5798c316ab39c7a5dc88a61fdd7
CVE-2008-3520 3c55b399c36ef46befcb21e4ebc4799367f89684 at least partially
CVE-2008-3522 d678ccd27b8a062e3bfd4c80d8ce2676a8166a27
CVE-2011-4516-and-CVE-2011-4517 0d22460816ea58e74a124158fa6cc48efb709a47
CVE-2014-8137 4bb93a6c49da7c1b6ad2acb60b18954a6547c637
CVE-2014-8138 c54113d6fa49f8f26d1572e972b806276c5b05d5
CVE-2014-8157 3fd4067496d8ef70f11841d7492ddeb1f1d56915
CVE-2014-8158 0d64bde2b3ba7e1450710d540136a8ce4199ef30
CVE-2014-9029 5dbe57e4808bea4b83a97e2f4aaf8c91ab6fdecb
CVE-2016-1577 74ea22a7a4fe186e0a0124df25e19739b77c4a29
CVE-2016-1867 980da43d8d388a67cac505e734423b2a5aa4cede
CVE-2016-2089 c87ad330a8b8d6e5eb0065675601fdfae08ebaab

Thanks a lot for this Efraim!



Re: [PATCH 2/2] gnu: Add bluefish.

2016-10-17 Thread rennes

Hello,
I updated my git repository and have generated patches.


If you do not have a branch, do the follwoing:

git checkout -b gnome-bluefish
# search for your two patches, e.g using "git reflog | grep gunimap"
and "git reflog | grep bluefish"
git cherry-pick abcdefg  # use commit-id of gunimap patch
git cherry-pick abcdefg  # use commit-id of bluefish patch


ThanksFrom 0a2f99d3b6f577df29c897bc01906fd29191b8fc Mon Sep 17 00:00:00 2001
From: Rene Saavedra 
Date: Mon, 17 Oct 2016 18:15:47 -0500
Subject: [PATCH 1/2] gnu: Add gucharmap.

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

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 52d6cd4..b7dcd01 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5572,3 +5572,36 @@ is suitable as a default application in a Desktop environment.")
 and customizable.  Xpad consists of independent pad windows, each is
 basically a text box in which notes can be written.")
 (license license:gpl3+)))
+
+(define-public gucharmap
+  (package
+(name "gucharmap")
+(version "3.18.0")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "mirror://gnome/sources/" name "/"
+   (version-major+minor version) "/"
+   name "-" version ".tar.xz"))
+   (sha256
+(base32
+ "0c1q9w5vql0vvg6g0knxfnv4ap19fg5cdrwndi1cj9lsym92c78j"
+(build-system gnu-build-system)
+(native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+   ("glib:bin" ,glib "bin") ; for glib-compile-resources.
+   ("gobject-introspection" ,gobject-introspection)
+   ("intltool" ,intltool)
+   ("itstool" ,itstool)
+   ("pkg-config" ,pkg-config)))
+(inputs
+ `(("gtk+" ,gtk+)
+   ("xmllint" ,libxml2)))
+(home-page "https://wiki.gnome.org/Apps/Gucharmap;)
+(synopsis "Unicode character picker and font browser")
+(description
+ "This program allows you to browse through all the available Unicode
+characters and categories for the installed fonts, and to examine their
+detailed properties.  It is an easy way to find the character you might
+only know by its Unicode name or code point.")
+(license license:gpl3+)))
-- 
2.10.0

From b5895a149f95ff257fe10557464e5dfc97deb861 Mon Sep 17 00:00:00 2001
From: Rene Saavedra 
Date: Mon, 17 Oct 2016 18:16:38 -0500
Subject: [PATCH 2/2] gnu: Add bluefish.

* gnu/packages/gnome.scm (bluefish): New variable.
---
 gnu/packages/gnome.scm | 31 +++
 1 file changed, 31 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index b7dcd01..5f4fc82 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5605,3 +5605,34 @@ characters and categories for the installed fonts, and to examine their
 detailed properties.  It is an easy way to find the character you might
 only know by its Unicode name or code point.")
 (license license:gpl3+)))
+
+(define-public bluefish
+  (package
+(name "bluefish")
+(version "2.2.9")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "http://www.bennewitz.com/bluefish/stable/source/;
+   name "-" version ".tar.gz"))
+   (sha256
+(base32
+ "1vnl6raxbvc4hacg3pr6sqyjh707d304dhk5nyhlp7m0m1y3j756"
+(build-system gnu-build-system)
+(native-inputs
+ `(("desktop-file-utils" ,desktop-file-utils)
+   ("intltool" ,intltool)
+   ("pkg-config" ,pkg-config)))
+(inputs
+ `(("enchant" ,enchant)
+   ("gtk+" ,gtk+)
+   ("python" ,python-2)
+   ("xmllint" ,libxml2)
+   ("gucharmap" ,gucharmap)))
+(home-page "http://bluefish.openoffice.nl;)
+(synopsis "Web development studio")
+(description
+ "Bluefish is an editor targeted towards programmers and web developers,
+with many options to write web sites, scripts and other code.
+Bluefish supports many programming and markup languages.")
+(license license:gpl3+)))
-- 
2.10.0



Re: [PATCH] gnu: Add vim-full.

2016-10-17 Thread ng0
Marius Bakke  writes:

> ng0  writes:
>
>> Hi,
>>
>> thanks for reviewing.
>>
>> Marius Bakke  writes:
>>
>>> ng0  writes:
>>>
 * gnu/packages/vim.scm (vim-full): New variable.
 * gnu/packages/patches/vim-8.0.0003.patch: New file.
 * gnu/packages/patches/vim-8.0.0004.patch: New file.
 * gnu/packages/patches/vim-8.0.0005.patch: New file.
 * gnu/local.mk (dist_patch_DATA): Add patches.
 ---
  gnu/local.mk|  3 ++
  gnu/packages/patches/vim-8.0.0003.patch | 87 
 +
  gnu/packages/patches/vim-8.0.0004.patch | 60 +++
  gnu/packages/patches/vim-8.0.0005.patch | 45 +
  gnu/packages/vim.scm| 81 
 ++
  5 files changed, 276 insertions(+)
  create mode 100644 gnu/packages/patches/vim-8.0.0003.patch
  create mode 100644 gnu/packages/patches/vim-8.0.0004.patch
  create mode 100644 gnu/packages/patches/vim-8.0.0005.patch
>>>
>>> [...]
>>>
 +
 +(define-public vim-full
 +  (package
 +(inherit vim)
 +(name "vim-full")
 +(version (package-version vim))
 +(source
 + (origin
 +   (method url-fetch)
 +   (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-;
 +   version ".tar.bz2"))
 +   (sha256
 +(base32
 + "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc"))
 +   ;; Patches need to be applied sequentially. 8.0 is the release of
 +   ;; vim version 8.0.0002 so we start at 8.0.0003
 +   (patches (search-patches "vim-8.0.0003.patch"
 +"vim-8.0.0004.patch"
 +"vim-8.0.0005.patch"
>>>
>>> Shouldn't these patches be applied on the base vim package? Then
>>> "vim-full" can just inherit the source from there. I also think
>>> "version" should be adjusted to match the patch level.
>>
>> No (for explanation see the other emails I've sent in the earlier
>> thread).
>> I agree on the version, I will update that.
>
> Upstream recommends using the Github releases [0]

Where? Do you have any link for that quote so I can link it?

for 8.0 which are at
> 8.0.0042 already. Do you think it makes sense to switch to that source
> for both packages? Then we might avoid carrying the patches entirely.
>
> 0: https://github.com/vim/vim/releases
>



Re: [PATCH] gnu: Add vim-full.

2016-10-17 Thread Marius Bakke
ng0  writes:

> Hi,
>
> thanks for reviewing.
>
> Marius Bakke  writes:
>
>> ng0  writes:
>>
>>> * gnu/packages/vim.scm (vim-full): New variable.
>>> * gnu/packages/patches/vim-8.0.0003.patch: New file.
>>> * gnu/packages/patches/vim-8.0.0004.patch: New file.
>>> * gnu/packages/patches/vim-8.0.0005.patch: New file.
>>> * gnu/local.mk (dist_patch_DATA): Add patches.
>>> ---
>>>  gnu/local.mk|  3 ++
>>>  gnu/packages/patches/vim-8.0.0003.patch | 87 
>>> +
>>>  gnu/packages/patches/vim-8.0.0004.patch | 60 +++
>>>  gnu/packages/patches/vim-8.0.0005.patch | 45 +
>>>  gnu/packages/vim.scm| 81 ++
>>>  5 files changed, 276 insertions(+)
>>>  create mode 100644 gnu/packages/patches/vim-8.0.0003.patch
>>>  create mode 100644 gnu/packages/patches/vim-8.0.0004.patch
>>>  create mode 100644 gnu/packages/patches/vim-8.0.0005.patch
>>
>> [...]
>>
>>> +
>>> +(define-public vim-full
>>> +  (package
>>> +(inherit vim)
>>> +(name "vim-full")
>>> +(version (package-version vim))
>>> +(source
>>> + (origin
>>> +   (method url-fetch)
>>> +   (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-;
>>> +   version ".tar.bz2"))
>>> +   (sha256
>>> +(base32
>>> + "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc"))
>>> +   ;; Patches need to be applied sequentially. 8.0 is the release of
>>> +   ;; vim version 8.0.0002 so we start at 8.0.0003
>>> +   (patches (search-patches "vim-8.0.0003.patch"
>>> +"vim-8.0.0004.patch"
>>> +"vim-8.0.0005.patch"
>>
>> Shouldn't these patches be applied on the base vim package? Then
>> "vim-full" can just inherit the source from there. I also think
>> "version" should be adjusted to match the patch level.
>
> No (for explanation see the other emails I've sent in the earlier
> thread).
> I agree on the version, I will update that.

Upstream recommends using the Github releases [0] for 8.0 which are at
8.0.0042 already. Do you think it makes sense to switch to that source
for both packages? Then we might avoid carrying the patches entirely.

0: https://github.com/vim/vim/releases



Re: Developing libraries for the GNU system with Guix

2016-10-17 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> Ludovic Courtès  writes:
>
>> Again to make this more convenient, I thought we could have a
>> --with-graft option, which would work like --with-input except that it
>> would graft the new Z onto A/B/C instead of rebuilding them.
>
> This is a good idea!

Done in 645b9df858683dc05ffa04c9eb2fdc45ccef4a65.  Feedback welcome!

Ludo’.



[PATCH] gnu: Add supertuxkart.

2016-10-17 Thread Ricardo Wurmus
* gnu/packages/games.scm (supertuxkart): New variable.
---
 gnu/packages/games.scm | 74 ++
 1 file changed, 74 insertions(+)

diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 17ca12b..90963bd 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -969,6 +969,80 @@ This game is based on the GPL version of the famous game 
TuxRacer.")
 (home-page "http://sourceforge.net/projects/extremetuxracer/;)
 (license license:gpl2+)))
 
+(define-public supertuxkart
+  (package
+(name "supertuxkart")
+(version "0.9.2")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "mirror://sourceforge/supertuxkart/SuperTuxKart/"
+   version "/supertuxkart-" version "-src.tar.xz"))
+   (sha256
+(base32
+ "10l2ljmd7mv8f9ylarqmxxryicdnph2qkm3g5maxnsm2k2q0n20b"))
+   (modules '((guix build utils)))
+   (snippet
+;; Delete bundled library sources
+'(begin
+   ;; FIXME: try to unbundle enet, and angelscript
+   (for-each delete-file-recursively
+ '("lib/zlib"
+   "lib/libpng"
+   "lib/jpeglib"
+   "lib/glew"
+   "lib/wiiuse"))
+   #t
+(build-system cmake-build-system)
+(arguments
+ `(#:tests? #f ; no check target
+   #:configure-flags
+   (list "-DUSE_WIIUSE=0"
+ ;; Do not use the bundled zlib
+ "-DNO_IRR_COMPILE_WITH_ZLIB_=TRUE"
+ ;; Irrlicht returns an integer instead of a boolean
+ "-DCMAKE_C_FLAGS=-fpermissive")
+   #:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'unbundle
+   (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "CMakeLists.txt"
+   ;; Supertuxkart uses modified versions of the Irrlicht engine
+   ;; and the bullet library.  The developers gave an explanation 
here:
+   ;; http://forum.freegamedev.net/viewtopic.php?f=17=3906
+   (("add_subdirectory\\(.*/(glew|zlib)\"\\)") "")
+   (("glew")
+(string-append (assoc-ref inputs "glew")
+   "/lib/libGLEW.a"))
+   
(("include_directories\\(\"\\$\\{PROJECT_SOURCE_DIR\\}/lib/glew/include\"\\)")
+(string-append "include_directories(\""
+   (assoc-ref inputs "glew")
+   "/include\")")))
+ #t)
+(inputs
+ `(("glew" ,glew)
+   ("zlib" ,zlib)
+   ("openal" ,openal)
+   ("libvorbis" ,libvorbis)
+   ("freetype" ,freetype)
+   ("fribidi" ,fribidi)
+   ("mesa" ,mesa)
+   ("libx11" ,libx11)
+   ("libxrandr" ,libxrandr)
+   ("curl" ,curl)
+   ;; The following input is needed to build the bundled and modified
+   ;; version of irrlicht.
+   ("libjpeg" ,libjpeg)))
+(native-inputs
+ `(("pkg-config" ,pkg-config)))
+(home-page "http://supertuxkart.net;)
+(synopsis "3D kart racing game")
+(description "SuperTuxKart is a 3D kart racing game, with a focus on
+having fun over realism.  You can play with up to 4 friends on one PC, racing
+against each other or just trying to beat the computer; single-player mode is
+also available.")
+(license license:gpl3+)))
+
 (define-public gnujump
   (package
 (name "gnujump")
-- 
2.10.0





Re: Bash headers path changed in 4.4 (core-updates)

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 10:07:52PM +0200, Ludovic Courtès wrote:
> l...@gnu.org (Ludovic Courtès) skribis:
> 
> > I believe this patch should work, though I haven’t yet been able to
> > rebuild recutils:
> 
> I pushed a variant of it as c21af659b4e6871b9576278cd5745881c696fd70.

Thanks!



Re: Making substitute* throw an error if substition failed?

2016-10-17 Thread Efraim Flashner
On Mon, Oct 17, 2016 at 10:50:36AM +0200, Ludovic Courtès wrote:
> Hi,
> 
> Ricardo Wurmus  skribis:
> 
> > it happened a couple of times already that a “substitute*” expression
> > silently failed and I only found out about it when investigating the
> > remains of a failing build (“guix build -K”).  This can easily happen
> > when a package is updated and substitutions “anchors” no longer exist in
> > the updated source code.
> >
> > Would it be desirable to change “substitute*” (or replace it) such that
> > it throws an error or returns a value if substitution failed?
> 
> “Failed” as in “there were no pattern matches”, right?
> 

Or as in "your regex was bad, try again"

> > This might be helpful for the more complex packages with many
> > substitutions.  If we make it return a value (#f for error) it would
> > also make our build phases a little prettier, I think.  (Now we
> > forcefully return #t in any case and that seems wrong.)
> 
> I like this idea.  Like others wrote, it could return #t if one or more
> substitutions were made, and #f otherwise.
> 
> I think it’s better than throwing an error, because there are cases
> where it doesn’t matter whether a substitution was made or not (e.g.,
> when replacing strings en masse on a set of files.)
> 
> WDYT?
> 
> Thanks,
> Ludo’.
> 

I would go with '#t if one or more subsitutions were made, regardless of
the number of files specified' rather than '#t if 1+ substitutions on
every (all) file listed'.


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


signature.asc
Description: PGP signature


Re: [PATCH] gnu: Add vim-full.

2016-10-17 Thread ng0
Hi,

thanks for reviewing.

Marius Bakke  writes:

> ng0  writes:
>
>> * gnu/packages/vim.scm (vim-full): New variable.
>> * gnu/packages/patches/vim-8.0.0003.patch: New file.
>> * gnu/packages/patches/vim-8.0.0004.patch: New file.
>> * gnu/packages/patches/vim-8.0.0005.patch: New file.
>> * gnu/local.mk (dist_patch_DATA): Add patches.
>> ---
>>  gnu/local.mk|  3 ++
>>  gnu/packages/patches/vim-8.0.0003.patch | 87 
>> +
>>  gnu/packages/patches/vim-8.0.0004.patch | 60 +++
>>  gnu/packages/patches/vim-8.0.0005.patch | 45 +
>>  gnu/packages/vim.scm| 81 ++
>>  5 files changed, 276 insertions(+)
>>  create mode 100644 gnu/packages/patches/vim-8.0.0003.patch
>>  create mode 100644 gnu/packages/patches/vim-8.0.0004.patch
>>  create mode 100644 gnu/packages/patches/vim-8.0.0005.patch
>
> [...]
>
>> +
>> +(define-public vim-full
>> +  (package
>> +(inherit vim)
>> +(name "vim-full")
>> +(version (package-version vim))
>> +(source
>> + (origin
>> +   (method url-fetch)
>> +   (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-;
>> +   version ".tar.bz2"))
>> +   (sha256
>> +(base32
>> + "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc"))
>> +   ;; Patches need to be applied sequentially. 8.0 is the release of
>> +   ;; vim version 8.0.0002 so we start at 8.0.0003
>> +   (patches (search-patches "vim-8.0.0003.patch"
>> +"vim-8.0.0004.patch"
>> +"vim-8.0.0005.patch"
>
> Shouldn't these patches be applied on the base vim package? Then
> "vim-full" can just inherit the source from there. I also think
> "version" should be adjusted to match the patch level.

No (for explanation see the other emails I've sent in the earlier
thread).
I agree on the version, I will update that.

> Other than that this package works for me. Perhaps the description could
> be updated to mention that this also includes the graphical "gvim" if
> anyone is searching for that.

Okay, I will include that.

> Could you separate this out to two patches, one that updates "vim" and
> one that adds "vim-full"?

See above. But I think hardly anyone will search for it, so here's the
reason: The patches are only needed for what vim-full does and for that
only to make the tests succeed. I don't see any rational point in
including patches which will make a testsuite succeed which is not run
by the package you suggest I apply them to.
If this is extended in the future (say vim fixes some serious bug where
we need to sequentially apply the patches up to that), feel free to
change it to vim. I just need to make the testsuite succeed, which the
patches even comment afaik.
If it would extend any functionality our standard (minimal) vim has, I
would apply them, but as far as I see it this is not the case.
Correct me if I'm wrong.

> Thanks!
>



Re: 01/01: gnu: hdf4: Fix non-x86 architectures.

2016-10-17 Thread Mark H Weaver
andr...@enge.fr (Andreas Enge) writes:

> andreas pushed a commit to branch master
> in repository guix.
>
> commit 60da9fb1100787c49ed4910eacf50e83c6462dcc
> Author: Andreas Enge 
> Date:   Sun Oct 16 17:00:56 2016 +0200
>
> gnu: hdf4: Fix non-x86 architectures.
> 
> * gnu/packages/patches/hdf4-architectures.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register patch.
> * gnu/packages/maths.scm (hdf4)[source]: Add patch.
> ---
>  gnu/packages/patches/hdf4-architectures.patch |  579 
> +
>  1 file changed, 579 insertions(+)

Contrary to the commit log message, the only part of this that actually
made it into the patch was adding 'hdf4-architectures.patch'.  The
changes to local.mk and maths.scm were not included.

  Mark



Re: [PATCH] guxi: cmake-build-system: Enable output for failing test-cases.

2016-10-17 Thread Ludovic Courtès
Hartmut Goebel  skribis:

> Am 13.10.2016 um 22:12 schrieb Ludovic Courtès:
>> It’s a good idea, but it would entail a rebuild of 1,000+ packages.  Can
>> you save it for the next big-rebuild cycle?
>
> No problem.
>
> Still have to learn what "next big-rebuild cycle" means. Is there a
> branch for it?

Not really!

Well there’s core-updates for changes that trigger a rebuild of 90% of
the packages, and then occasionally topic branches (‘python-updates’,
etc.)

Once ‘core-updates’ is merged (hopefully in a few days), we could start
a ‘staging’ branch and put changes that require between ~300 and ~1200
rebuilds.  The idea would be to close the branch much more quickly than
core-updates (the changes should be less disruptive, with little chance
of breaking things.)

Ludo’.



Re: Bash headers path changed in 4.4 (core-updates)

2016-10-17 Thread Ludovic Courtès
l...@gnu.org (Ludovic Courtès) skribis:

> I believe this patch should work, though I haven’t yet been able to
> rebuild recutils:

I pushed a variant of it as c21af659b4e6871b9576278cd5745881c696fd70.

Ludo’.



Re: [PATCH] Update networkmanager+nm-applet

2016-10-17 Thread Kei Kebreau
ng0  writes:

>  [PATCH 1/2] gnu: network-manager: Update to 1.4.2.
>  [PATCH 2/2] gnu: network-manager-applet: Update to 1.4.2.
>
> Update to 1.4.2 for both, nm-applet is build without WWAN support
> until we have glib updated to 2.50,
> which should be done in core-updates if it isn't already being worked on.

The patches look good, but I don't know how to test the service from
within my Guix source tree.


signature.asc
Description: PGP signature


Re: [PATCH 06/15] gnu: Add chez-irregex.

2016-10-17 Thread Ludovic Courtès
Federico Beffa  skribis:

> On Mon, Oct 17, 2016 at 4:40 PM, Ludovic Courtès  wrote:
>> Federico Beffa  skribis:
>>
>>> From 4293c55d921d82c0542907024a1b51abea32b6dc Mon Sep 17 00:00:00 2001
>>> From: Federico Beffa 
>>> Date: Sun, 16 Oct 2016 16:10:31 +0200
>>> Subject: [PATCH 06/15] gnu: Add chez-irregex.
>>>
>>> * gnu/packages/chez.scm (chez-irregex): New variable.
>>
>> [...]
>>
>>> +   (uri (string-append
>>> + "https://github.com/fedeinthemix/chez-irregex/archive;
>>> + "/v" version ".tar.gz"))
>>
>> Wouldn’t it work to use the upstream Irregex as done in the
>> ‘guile-irregex’ package?
>
> The original source includes a module definition for Guile, but not
> one for R6RS Scheme. This package wraps the original code in an R6RS
> library definition and adds a file to make it easy to run the test
> suite.

OK, makes sense.  Thanks for explaining!

Ludo’.



[PATCH] gnu: Enable pam in xlock

2016-10-17 Thread John Darrington
* gnu/packages/xdisorg.scm (xlockmore) [arguments]: Add --enable-pam
---
 gnu/packages/xdisorg.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 323ff11..0fe9c94 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -563,7 +563,8 @@ things less distracting.")
"138d79b8zc2hambbr9fnxp3fhihlcljgqns04zf0kv2f53pavqwl"
 (build-system gnu-build-system)
 (arguments
- '(#:configure-flags (list (string-append "--enable-appdefaultdir="
+ '(#:configure-flags (list "--enable-pam"
+   (string-append "--enable-appdefaultdir="
   (assoc-ref %outputs "out")
   "/lib/X11/app-defaults"))
#:tests? #f));no such thing as a test suite
-- 
2.1.4




Re: [PATCH 4/4] gnu: xapian: Update to 1.4.0.

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 05:55:06PM +0100, Marius Bakke wrote:
> * gnu/packages/search.scm (xapian): Update to 1.4.0.
> [source]: Use https URL.
> [home-page]: Use https URL.
> [arguments]: Remove 'patch-remotetcp-harness' phase. Replace 'check'
> phase with a list of custom test targets.

Works for me with mu.



Re: [PATCH 2/4] gnu: notmuch: Enable tests.

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

> On Mon, Oct 17, 2016 at 05:55:04PM +0100, Marius Bakke wrote:
>> * gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch: New file.
>> * gnu/local.mk (dist_patch_DATA): Register it.
>> * gnu/packages/mail.scm (notmuch)[arguments]: Add verbose make flags.
>>   Add phase 'patch-notmuch-lib.el' to fix hard-coded /bin/sh.
>>   Add 'prepare-test-environment' phase to patch test shebangs and set
>>   environment.
>> [native-inputs]: Change from 'emacs-minimal' to 'emacs-no-x'. Add dtach,
>>   gnupg, man, perl and which.
>
> A true nit-pick, but all those lines should start at column 0 rather
> than being indented.

Noted.

>
>> +  (patches
>> +   ;; This is included in the next release.
>> +   ;; https://notmuchmail.org/pipermail/notmuch/2016/023309.html
>> +   (search-patches 
>> "notmuch-emacs-25-compatibility-fix.patch"
>
> Please mention the use of this patch in the commit changelog.

Oops, thanks!

>
>> +   ;; The following are required for tests only.
>> +   ("which" ,which)
>> +   ("dtach" ,dtach)
>> +   ("gnupg" ,gnupg)
>> +   ("man" ,man-db)
>> +   ("perl" ,perl)))
>
> Can you check if these inputs are referenced by the output? Ideally
> not...
>
> $ guix gc --references $(./pre-inst-env guix build notmuch)

Good point, I did not verify this until now. They are not referenced by
the output.

>
>> diff --git a/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch 
>> b/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch
>> new file mode 100644
>> index 000..456b345
>> --- /dev/null
>> +++ b/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch
>> @@ -0,0 +1,43 @@
>> +From f575a346df09c82691bb9e7c462836d982fe31f7 Mon Sep 17 00:00:00 2001
>> +From: David Bremner 
>> +Date: Sun, 9 Oct 2016 19:30:44 -0300
>> +Subject: [PATCH] emacs/show: force notmuch-show-buttonise-links to act on
>> + lines
>
> If possible, please add a hyperlink to the source of the patch. Ideally,
> to a Git commit in a web-based Git repo interface.
>
> Not knowing Emacs Lisp, I can't comment on the patch itself.

The bug was exposed by enabling tests against emacs 25 and will be
included in the next release. See this thread:

https://notmuchmail.org/pipermail/notmuch/2016/023227.html

I will add a gitweb link to the patch header.



Re: [PATCH] gnu: openssh: Enable kerberos features.

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 07:26:11PM +0200, John Darrington wrote:
> * gnu/packages/ssh.scm (openssh): New input mit-krb5.

It should mention the addition to configure-flags and that mit-krb5 is
added to [inputs].

Otherwise LGTM. It increases the OpenSSH closure by ~4 MiB, to 117.9.



Re: locales gone

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 11:00:25AM +0200, Ludovic Courtès wrote:
> Danny Milosavljevic  skribis:
> 
> > And if I strace postgres service I get
> >
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib/locale/locale-archive",
> >  O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/share/locale/locale.alias",
> >  O_RDONLY|O_CLOEXEC) = 3
> > [pid  6184] fstat(3, {st_mode=S_IFREG|0444, st_size=2997, ...}) = 0
> > [pid  6184] read(3, "# Locale name alias data base.\n#"..., 4096) = 2997
> > [pid  6184] read(3, "", 4096)   = 0
> > [pid  6184] close(3)= 0
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib/locale/en_US.UTF-8/LC_COLLATE",
> >  O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib/locale/en_US.utf8/LC_COLLATE",
> >  O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib/locale/en_US/LC_COLLATE",
> >  O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib/locale/en.UTF-8/LC_COLLATE",
> >  O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib/locale/en.utf8/LC_COLLATE",
> >  O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
> > [pid  6184] 
> > open("/gnu/store/m9vxvhdj691bq1f85lpflvnhcvrdilih-glibc-2.23/lib/locale/en/LC_COLLATE",
> >  O_RDONLY|O_CLOEXEC) = -1 ENOENT (No such file or directory)
> >
> > And indeed those don't exist.
> 
> Ooh, I see.  To work around an issue in our glibc 2.23 package (that I
> forgot to fix in 2.24), whereby glibc does not look for locale data in
> /run/current-system/locale, commit
> ab3a64507a792e4da0527b423fbc28f8768e736a sets GUIX_LOCPATH in
> /etc/environment.

Did commit 9f58fe3d1c not fix that issue?



Re: [PATCH] gnu: Add xpad.

2016-10-17 Thread Kei Kebreau
ren...@openmailbox.org writes:

> Hello,
> this patch is Xpad, a sticky note application.
>
> * I did not find the application in the GNOME repository.
>
> Built, linted and tested.
>
> Thank you

Thanks for the good patch! Everything seems to work fine. Commited as
0bd697591bd5f020032cc2650fa6f0f43377ff67.


signature.asc
Description: PGP signature


Re: [PATCH 1/4] gnu: notmuch: Update to 0.23.

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

> On Mon, Oct 17, 2016 at 05:55:03PM +0100, Marius Bakke wrote:
>> * gnu/packages/mail.scm (notmuch, python-notmuch): Update to 0.23.
>> [home-page]: Use https URL.
>
> LGTM. Is it possible to use (package-version notmuch) as
> python-notmuch's version?

That worked fine, thanks.



Re: [PATCH 3/4] gnu: xapian: Use 'modify-phases'.

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

> On Mon, Oct 17, 2016 at 05:55:05PM +0100, Marius Bakke wrote:
>> * gnu/packages/search.scm (xapian)[arguments]: Use 'modify-phases'.
>
>> + `(#:phases
>> +   (modify-phases %standard-phases
>> + (add-after 'unpack 'patch-remotetcp-harness
>> +   (lambda _
>> + (substitute* "tests/harness/backendmanager_remotetcp.cc"
>> +   (("/bin/sh") (which "bash"
>
> Please change it to use (which "sh") instead. Bash changes its behavior
> based on whether it is called as `bash` or `sh` (see Invocation in
> bash(1)).

I'm aware, but decided to remove it in the subsequent patch since it was
"buggy" anyway, and is not needed when remote TCP tests are disabled.

It was left to avoid justifying the fix when changing to modify-phases.
The phase also does not end on a #t.

But I agree, might as well just fix it and leave it even if the tests
don't use it.



Re: [PATCH] gnu: Add vim-full.

2016-10-17 Thread Marius Bakke
ng0  writes:

> * gnu/packages/vim.scm (vim-full): New variable.
> * gnu/packages/patches/vim-8.0.0003.patch: New file.
> * gnu/packages/patches/vim-8.0.0004.patch: New file.
> * gnu/packages/patches/vim-8.0.0005.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add patches.
> ---
>  gnu/local.mk|  3 ++
>  gnu/packages/patches/vim-8.0.0003.patch | 87 
> +
>  gnu/packages/patches/vim-8.0.0004.patch | 60 +++
>  gnu/packages/patches/vim-8.0.0005.patch | 45 +
>  gnu/packages/vim.scm| 81 ++
>  5 files changed, 276 insertions(+)
>  create mode 100644 gnu/packages/patches/vim-8.0.0003.patch
>  create mode 100644 gnu/packages/patches/vim-8.0.0004.patch
>  create mode 100644 gnu/packages/patches/vim-8.0.0005.patch

[...]

> +
> +(define-public vim-full
> +  (package
> +(inherit vim)
> +(name "vim-full")
> +(version (package-version vim))
> +(source
> + (origin
> +   (method url-fetch)
> +   (uri (string-append "ftp://ftp.vim.org/pub/vim/unix/vim-;
> +   version ".tar.bz2"))
> +   (sha256
> +(base32
> + "1s34rf8089klsbdx5l0iw7vjymir0kzfrx8wb30s31wygnq29axc"))
> +   ;; Patches need to be applied sequentially. 8.0 is the release of
> +   ;; vim version 8.0.0002 so we start at 8.0.0003
> +   (patches (search-patches "vim-8.0.0003.patch"
> +"vim-8.0.0004.patch"
> +"vim-8.0.0005.patch"

Shouldn't these patches be applied on the base vim package? Then
"vim-full" can just inherit the source from there. I also think
"version" should be adjusted to match the patch level.

Other than that this package works for me. Perhaps the description could
be updated to mention that this also includes the graphical "gvim" if
anyone is searching for that.

Could you separate this out to two patches, one that updates "vim" and
one that adds "vim-full"?

Thanks!



Re: [PATCH 2/4] gnu: notmuch: Enable tests.

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 05:55:04PM +0100, Marius Bakke wrote:
> * gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> * gnu/packages/mail.scm (notmuch)[arguments]: Add verbose make flags.
>   Add phase 'patch-notmuch-lib.el' to fix hard-coded /bin/sh.
>   Add 'prepare-test-environment' phase to patch test shebangs and set
>   environment.
> [native-inputs]: Change from 'emacs-minimal' to 'emacs-no-x'. Add dtach,
>   gnupg, man, perl and which.

A true nit-pick, but all those lines should start at column 0 rather
than being indented.

> +  (patches
> +   ;; This is included in the next release.
> +   ;; https://notmuchmail.org/pipermail/notmuch/2016/023309.html
> +   (search-patches "notmuch-emacs-25-compatibility-fix.patch"

Please mention the use of this patch in the commit changelog.

> +   ;; The following are required for tests only.
> +   ("which" ,which)
> +   ("dtach" ,dtach)
> +   ("gnupg" ,gnupg)
> +   ("man" ,man-db)
> +   ("perl" ,perl)))

Can you check if these inputs are referenced by the output? Ideally
not...

$ guix gc --references $(./pre-inst-env guix build notmuch)

> diff --git a/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch 
> b/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch
> new file mode 100644
> index 000..456b345
> --- /dev/null
> +++ b/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch
> @@ -0,0 +1,43 @@
> +From f575a346df09c82691bb9e7c462836d982fe31f7 Mon Sep 17 00:00:00 2001
> +From: David Bremner 
> +Date: Sun, 9 Oct 2016 19:30:44 -0300
> +Subject: [PATCH] emacs/show: force notmuch-show-buttonise-links to act on
> + lines

If possible, please add a hyperlink to the source of the patch. Ideally,
to a Git commit in a web-based Git repo interface.

Not knowing Emacs Lisp, I can't comment on the patch itself.



Re: [PATCH] gnu: Add vim-full.

2016-10-17 Thread Kei Kebreau
ng0  writes:

> * gnu/packages/vim.scm (vim-full): New variable.
> * gnu/packages/patches/vim-8.0.0003.patch: New file.
> * gnu/packages/patches/vim-8.0.0004.patch: New file.
> * gnu/packages/patches/vim-8.0.0005.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add patches.
> ---
>  gnu/local.mk|  3 ++
>  gnu/packages/patches/vim-8.0.0003.patch | 87 
> +
>  gnu/packages/patches/vim-8.0.0004.patch | 60 +++
>  gnu/packages/patches/vim-8.0.0005.patch | 45 +
>  gnu/packages/vim.scm| 81 ++
>  5 files changed, 276 insertions(+)
>  create mode 100644 gnu/packages/patches/vim-8.0.0003.patch
>  create mode 100644 gnu/packages/patches/vim-8.0.0004.patch
>  create mode 100644 gnu/packages/patches/vim-8.0.0005.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 526756f..79c1326 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -874,6 +874,9 @@ dist_patch_DATA = 
> \
>%D%/packages/patches/util-linux-tests.patch\
>%D%/packages/patches/upower-builddir.patch \
>%D%/packages/patches/valgrind-enable-arm.patch \
> +  %D%/packages/patches/vim-8.0.0003.patch   \
> +  %D%/packages/patches/vim-8.0.0004.patch   \
> +  %D%/packages/patches/vim-8.0.0005.patch   \
>%D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch
> \
>%D%/packages/patches/vorbis-tools-CVE-2014-9640.patch  \
>%D%/packages/patches/vorbis-tools-CVE-2015-6749.patch  \
> diff --git a/gnu/packages/patches/vim-8.0.0003.patch 
> b/gnu/packages/patches/vim-8.0.0003.patch
> new file mode 100644
> index 000..11e9c91
> --- /dev/null
> +++ b/gnu/packages/patches/vim-8.0.0003.patch
> @@ -0,0 +1,87 @@
> +To: vim_...@googlegroups.com
> +Subject: Patch 8.0.0003
> +Fcc: outbox
> +From: Bram Moolenaar 
> +Mime-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +
> +Patch 8.0.0003
> +Problem:getwinvar() returns wrong Value of boolean and number options,
> +especially non big endian systems. (James McCoy)
> +Solution:   Cast the pointer to long or int. (closes #1060)
> +Files:  src/option.c, src/testdir/test_bufwintabinfo.vim
> +
> +
> +*** vim80/src/option.c   2016-09-02 19:26:03.0 +0200
> +--- vim80/src/option.c   2016-09-12 19:20:38.051099762 +0200
> +***
> +*** 12363,12370 
> + {
> + if (opt->flags & P_STRING)
> + dict_add_nr_str(d, opt->fullname, 0L, *(char_u **)varp);
> + else
> +!dict_add_nr_str(d, opt->fullname, *varp, NULL);
> + }
> + }
> +  }
> +--- 12363,12372 
> + {
> + if (opt->flags & P_STRING)
> + dict_add_nr_str(d, opt->fullname, 0L, *(char_u **)varp);
> ++else if (opt->flags & P_NUM)
> ++dict_add_nr_str(d, opt->fullname, *(long *)varp, NULL);
> + else
> +!dict_add_nr_str(d, opt->fullname, *(int *)varp, NULL);
> + }
> + }
> +  }
> +*** vim80/src/testdir/test_bufwintabinfo.vim 2016-08-27 21:14:58.0 
> +0200
> +--- vim80/src/testdir/test_bufwintabinfo.vim 2016-09-12 19:31:06.346360420 
> +0200
> +***
> +*** 87,95 
> +--- 87,103 
> +  endfunc
> +  
> +  function Test_get_win_options()
> ++   if has('folding')
> ++ set foldlevel=999
> ++   endif
> ++   set list
> +let opts = getwinvar(1, '&')
> +call assert_equal(v:t_dict, type(opts))
> +call assert_equal(0, opts.linebreak)
> ++   call assert_equal(1, opts.list)
> ++   if has('folding')
> ++ call assert_equal(999, opts.foldlevel)
> ++   endif
> +if has('signs')
> +  call assert_equal('auto', opts.signcolumn)
> +endif
> +***
> +*** 97,103 
> +--- 105,116 
> +let opts = gettabwinvar(1, 1, '&')
> +call assert_equal(v:t_dict, type(opts))
> +call assert_equal(0, opts.linebreak)
> ++   call assert_equal(1, opts.list)
> +if has('signs')
> +  call assert_equal('auto', opts.signcolumn)
> +endif
> ++   set list&
> ++   if has('folding')
> ++ set foldlevel=0
> ++   endif
> +  endfunc
> +*** vim80/src/version.c  2016-09-12 16:30:42.348454179 +0200
> +--- vim80/src/version.c  2016-09-12 19:24:10.184148642 +0200
> +***
> +*** 766,767 
> +--- 766,769 
> +  {   /* Add new patch number below this line */
> ++ /**/
> ++ 3,
> +  /**/
> +
> +-- 
> diff --git a/gnu/packages/patches/vim-8.0.0004.patch 
> b/gnu/packages/patches/vim-8.0.0004.patch
> new file mode 100644
> index 000..5d4071b
> --- /dev/null
> +++ b/gnu/packages/patches/vim-8.0.0004.patch
> @@ -0,0 +1,60 @@
> 

Re: [PATCH 3/4] gnu: xapian: Use 'modify-phases'.

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 05:55:05PM +0100, Marius Bakke wrote:
> * gnu/packages/search.scm (xapian)[arguments]: Use 'modify-phases'.

> + `(#:phases
> +   (modify-phases %standard-phases
> + (add-after 'unpack 'patch-remotetcp-harness
> +   (lambda _
> + (substitute* "tests/harness/backendmanager_remotetcp.cc"
> +   (("/bin/sh") (which "bash"

Please change it to use (which "sh") instead. Bash changes its behavior
based on whether it is called as `bash` or `sh` (see Invocation in
bash(1)).

Otherwise LGTM.



Re: [PATCH 1/4] gnu: notmuch: Update to 0.23.

2016-10-17 Thread Leo Famulari
On Mon, Oct 17, 2016 at 05:55:03PM +0100, Marius Bakke wrote:
> * gnu/packages/mail.scm (notmuch, python-notmuch): Update to 0.23.
> [home-page]: Use https URL.

LGTM. Is it possible to use (package-version notmuch) as
python-notmuch's version?



[PATCH] gnu: openssh: Enable kerberos features.

2016-10-17 Thread John Darrington
* gnu/packages/ssh.scm (openssh): New input mit-krb5.
---
 gnu/packages/ssh.scm | 11 +--
 1 file changed, 9 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index c551f18..9fd1506 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -37,6 +37,7 @@
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
   #:use-module (gnu packages nettle)
+  #:use-module (gnu packages mit-krb5)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
   #:autoload   (gnu packages protobuf) (protobuf)
@@ -126,15 +127,21 @@ a server that supports the SSH-2 protocol.")
(inputs `(("groff" ,groff)
  ("openssl" ,openssl)
  ("pam" ,linux-pam)
+ ("mit-krb5" ,mit-krb5)
  ("zlib" ,zlib)
  ("xauth" ,xauth)))   ;for 'ssh -X' and 'ssh -Y'
(arguments
 `(#:test-target "tests"
-  #:configure-flags '("--sysconfdir=/etc/ssh"
+  #:configure-flags  `("--sysconfdir=/etc/ssh"
 
-  ;; Default value of 'PATH' used by sshd.
+   ;; Default value of 'PATH' used by sshd.
   "--with-default-path=/run/current-system/profile/bin"
 
+  ;; configure needs to find krb5-config
+  ,(string-append "--with-kerberos5="
+  (assoc-ref %build-inputs "mit-krb5")
+  "/bin")
+
   ;; Enable PAM support in sshd.
   "--with-pam")
 
-- 
2.1.4




[PATCH 4/4] gnu: xapian: Update to 1.4.0.

2016-10-17 Thread Marius Bakke
* gnu/packages/search.scm (xapian): Update to 1.4.0.
[source]: Use https URL.
[home-page]: Use https URL.
[arguments]: Remove 'patch-remotetcp-harness' phase. Replace 'check'
phase with a list of custom test targets.
---
 gnu/packages/search.scm | 22 +++---
 1 file changed, 15 insertions(+), 7 deletions(-)

diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm
index a43abde..5d7def5 100644
--- a/gnu/packages/search.scm
+++ b/gnu/packages/search.scm
@@ -35,30 +35,38 @@
 (define-public xapian
   (package
 (name "xapian")
-(version "1.2.21")
+(version "1.4.0")
 (source (origin
   (method url-fetch)
-  (uri (string-append "http://oligarchy.co.uk/xapian/; version
+  (uri (string-append "https://oligarchy.co.uk/xapian/; version
   "/xapian-core-" version ".tar.xz"))
   (sha256
-   (base32 
"0grd2s6gf8yzqwdaa50g57j9d81mxkrrpkyldm2shgyizdc8gx33"
+   (base32 
"0xv4da5rmqqzkkkzx2v3jwh5hz5zxhd2b7m8x30fk99a25blyn0h"
 (build-system gnu-build-system)
 (inputs `(("zlib" ,zlib)
   ("util-linux" ,util-linux)))
 (arguments
  `(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'patch-remotetcp-harness
+ (replace 'check
+   ;; As of Xapian 1.3.3, the TCP server implementation uses
+   ;; getaddrinfo(). This does not work in the build environment,
+   ;; so exclude those tests. See HACKING for the list of targets.
(lambda _
- (substitute* "tests/harness/backendmanager_remotetcp.cc"
-   (("/bin/sh") (which "bash"
+ (zero? (system* "make"
+ "check-inmemory"
+ "check-remoteprog"
+ ;"check-remotetcp"
+ "check-multi"
+ "check-glass"
+ "check-chert")))
 (synopsis "Search Engine Library")
 (description
  "Xapian is a highly adaptable toolkit which allows developers to easily
 add advanced indexing and search facilities to their own applications.  It
 supports the Probabilistic Information Retrieval model and also supports a
 rich set of boolean query operators.")
-(home-page "http://xapian.org/;)
+(home-page "https://xapian.org/;)
 (license (list gpl2+ bsd-3 x11
 
 (define-public libtocc
-- 
2.10.1




[PATCH 3/4] gnu: xapian: Use 'modify-phases'.

2016-10-17 Thread Marius Bakke
* gnu/packages/search.scm (xapian)[arguments]: Use 'modify-phases'.
---
 gnu/packages/search.scm | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/search.scm b/gnu/packages/search.scm
index 9eb4039..a43abde 100644
--- a/gnu/packages/search.scm
+++ b/gnu/packages/search.scm
@@ -46,12 +46,12 @@
 (inputs `(("zlib" ,zlib)
   ("util-linux" ,util-linux)))
 (arguments
- `(#:phases (alist-cons-after
- 'unpack 'patch-remotetcp-harness
- (lambda _
-   (substitute* "tests/harness/backendmanager_remotetcp.cc"
- (("/bin/sh") (which "bash"
- %standard-phases)))
+ `(#:phases
+   (modify-phases %standard-phases
+ (add-after 'unpack 'patch-remotetcp-harness
+   (lambda _
+ (substitute* "tests/harness/backendmanager_remotetcp.cc"
+   (("/bin/sh") (which "bash"
 (synopsis "Search Engine Library")
 (description
  "Xapian is a highly adaptable toolkit which allows developers to easily
-- 
2.10.1




[PATCH 0/4] Notmuch and Xapian update.

2016-10-17 Thread Marius Bakke
This brings notmuch and xapian to the latest upstream releases.

Unfortunately some Xapian tests had to be excluded. If anyone knows
how to make getaddrinfo() work for 127.0.0.1 in the build chroot, I'm
all ears.

NB notmuch users: You may have to adjust 'notmuch-fcc-dirs' after this.
See release announcement:
https://notmuchmail.org/pipermail/notmuch/2016/023216.html

$ git diff --stat master
 gnu/local.mk  |  1 +
 gnu/packages/mail.scm | 42 
+-
 .../patches/notmuch-emacs-25-compatibility-fix.patch  | 43 
+++
 gnu/packages/search.scm   | 28 +--
 4 files changed, 95 insertions(+), 19 deletions(-)




[PATCH 2/4] gnu: notmuch: Enable tests.

2016-10-17 Thread Marius Bakke
* gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/mail.scm (notmuch)[arguments]: Add verbose make flags.
  Add phase 'patch-notmuch-lib.el' to fix hard-coded /bin/sh.
  Add 'prepare-test-environment' phase to patch test shebangs and set
  environment.
[native-inputs]: Change from 'emacs-minimal' to 'emacs-no-x'. Add dtach,
  gnupg, man, perl and which.
---
 gnu/local.mk   |  1 +
 gnu/packages/mail.scm  | 36 +++---
 .../notmuch-emacs-25-compatibility-fix.patch   | 43 ++
 3 files changed, 74 insertions(+), 6 deletions(-)
 create mode 100644 
gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 9079b42..9d7e14b 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -728,6 +728,7 @@ dist_patch_DATA =   
\
   %D%/packages/patches/ninja-tests.patch   \
   %D%/packages/patches/ninja-zero-mtime.patch  \
   %D%/packages/patches/node-9077.patch \
+  %D%/packages/patches/notmuch-emacs-25-compatibility-fix.patch\
   %D%/packages/patches/nss-pkgconfig.patch \
   %D%/packages/patches/nvi-assume-preserve-path.patch  \
   %D%/packages/patches/nvi-dbpagesize-binpower.patch   \
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 1cb3ef4..6ab4035 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -72,7 +72,9 @@
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages flex)
   #:use-module (gnu packages gdb)
+  #:use-module (gnu packages man)
   #:use-module (gnu packages samba)
+  #:use-module (gnu packages screen)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages networking)
   #:use-module (gnu packages web)
@@ -501,12 +503,20 @@ invoking @command{notifymuch} from the post-new hook.")
   version ".tar.gz"))
   (sha256
(base32
-"1f51l34rdhjf8lvafrwybkxdsdwx8k9397m7qxd8rdg2irjmpry5"
+"1f51l34rdhjf8lvafrwybkxdsdwx8k9397m7qxd8rdg2irjmpry5"))
+  (patches
+   ;; This is included in the next release.
+   ;; https://notmuchmail.org/pipermail/notmuch/2016/023309.html
+   (search-patches "notmuch-emacs-25-compatibility-fix.patch"
 (build-system gnu-build-system)
 (arguments
- '(#:tests? #f ; FIXME: 723 tests; 187 fail and 100 are skipped
-   ; with perl input: 67 fail and 100 are skipped
+ '(#:make-flags (list "V=1") ; Verbose test output.
#:phases (modify-phases %standard-phases
+  (add-after 'unpack 'patch-notmuch-lib.el
+(lambda _
+  (substitute* "emacs/notmuch-lib.el"
+(("/bin/sh") (which "sh")))
+  #t))
   (replace 'configure
 (lambda* (#:key outputs #:allow-other-keys)
   (setenv "CC" "gcc")
@@ -514,14 +524,28 @@ invoking @command{notifymuch} from the post-new hook.")
 
   (let ((out (assoc-ref outputs "out")))
 (zero? (system* "./configure"
-(string-append "--prefix=" out)
+(string-append "--prefix=" out))
+  (add-before 'check 'prepare-test-environment
+(lambda _
+  (setenv "TEST_CC" "gcc")
+  ;; Patch various inline shell invocations.
+  (substitute* (find-files "test" "\\.sh$")
+(("/bin/sh") (which "sh")))
+  #t)
 (native-inputs
  `(("bash-completion" ,bash-completion)
-   ("emacs" ,emacs-minimal)
+   ("emacs" ,emacs-no-x) ; Minimal lacks libxml, needed for some tests.
("pkg-config" ,pkg-config)
("python" ,python-2)
("python-docutils" ,python2-docutils)
-   ("python-sphinx" ,python2-sphinx)))
+   ("python-sphinx" ,python2-sphinx)
+
+   ;; The following are required for tests only.
+   ("which" ,which)
+   ("dtach" ,dtach)
+   ("gnupg" ,gnupg)
+   ("man" ,man-db)
+   ("perl" ,perl)))
 (inputs
  `(("glib" ,glib)
("gmime" ,gmime)
diff --git a/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch 
b/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch
new file mode 100644
index 000..456b345
--- /dev/null
+++ b/gnu/packages/patches/notmuch-emacs-25-compatibility-fix.patch
@@ -0,0 +1,43 @@
+From f575a346df09c82691bb9e7c462836d982fe31f7 Mon Sep 17 00:00:00 2001
+From: David Bremner 
+Date: Sun, 9 Oct 2016 19:30:44 -0300
+Subject: [PATCH] emacs/show: force 

[PATCH 1/4] gnu: notmuch: Update to 0.23.

2016-10-17 Thread Marius Bakke
* gnu/packages/mail.scm (notmuch, python-notmuch): Update to 0.23.
[home-page]: Use https URL.
---
 gnu/packages/mail.scm | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 47c1549..1cb3ef4 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -494,18 +494,18 @@ invoking @command{notifymuch} from the post-new hook.")
 (define-public notmuch
   (package
 (name "notmuch")
-(version "0.22.1")
+(version "0.23")
 (source (origin
   (method url-fetch)
   (uri (string-append "https://notmuchmail.org/releases/notmuch-;
   version ".tar.gz"))
   (sha256
(base32
-"0jwpda3q023dn3sp41n8648951i7iagfv8zzpriv7hpkjivlafg7"
+"1f51l34rdhjf8lvafrwybkxdsdwx8k9397m7qxd8rdg2irjmpry5"
 (build-system gnu-build-system)
 (arguments
- '(#:tests? #f ; FIXME: 694 tests; 170 fail and 100 are skipped
-   ; with perl input: 50 fail and 100 are skipped
+ '(#:tests? #f ; FIXME: 723 tests; 187 fail and 100 are skipped
+   ; with perl input: 67 fail and 100 are skipped
#:phases (modify-phases %standard-phases
   (replace 'configure
 (lambda* (#:key outputs #:allow-other-keys)
@@ -528,7 +528,7 @@ invoking @command{notifymuch} from the post-new hook.")
("talloc" ,talloc)
("xapian" ,xapian)
("zlib" ,zlib)))
-(home-page "http://notmuchmail.org/;)
+(home-page "https://notmuchmail.org/;)
 (synopsis "Thread-based email index, search, and tagging")
 (description
  "Notmuch is a command-line based program for indexing, searching, read-
@@ -579,7 +579,7 @@ useful for email address completion.")
 (define-public python-notmuch
   (package
 (name "python-notmuch")
-(version "0.22.1")
+(version "0.23")
 ;; Notmuch python bindings are now unavailable on pypi.  The
 ;; bindings are distributed via the notmuch release tarball.
 (source (package-source notmuch))
-- 
2.10.1




Re: [PATCH] add kobodeluxe

2016-10-17 Thread Kei Kebreau
Christopher Allan Webber  writes:

>> On Sun, Oct 16, 2016 at 9:06 PM, Kei Kebreau  wrote:
>>> When I applied the patch, git complained about trailing whitespace; a
>>> trivial fix.
>
> Those whitespace "errors" were in the original patches we borrowed from
> Debian, and weren't on any of the lines that patch in new code.
> Nonetheless the patches seem to apply fine without them, so here's an
> adjusted patch that fixes that.  (It also fixes the commit line, since I
> forgot to change the underscores to hyphens there in my last patch!)
>
>  - Chris
>
> From 62bf271a6907bd5b0ec73662bc3f92c64aafa229 Mon Sep 17 00:00:00 2001
> From: Stephen Webber 
> Date: Sun, 16 Oct 2016 15:04:35 -0500
> Subject: [PATCH] gnu: Add kobodeluxe.
>
> * gnu/packages/games.scm (kobodeluxe): New variable.
> * gnu/packages/patches/kobodeluxe-paths.patch: New file.
> * gnu/packages/patches/kobodeluxe-spelling.patch: New file.
> * gnu/packages/patches/kobodeluxe-enemies-pipe-decl.patch: New file.
> * gnu/packages/patches/kobodeluxe-const-charp-conversion.patch: New file.
> * gnu/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch: New file.
> * gnu/packages/patches/kobodeluxe-midicon-segmentation-fault.patch: New file.
> * gnu/packages/patches/kobodeluxe-graphics-window-signed-char.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.
> ---
>  gnu/local.mk   |  7 +++
>  gnu/packages/games.scm | 34 +++
>  .../kobodeluxe-const-charp-conversion.patch| 17 ++
>  .../patches/kobodeluxe-enemies-pipe-decl.patch | 67 
> ++
>  .../kobodeluxe-graphics-window-signed-char.patch   | 38 
>  .../kobodeluxe-manpage-minus-not-hyphen.patch  | 15 +
>  .../kobodeluxe-midicon-segmentation-fault.patch| 24 
>  gnu/packages/patches/kobodeluxe-paths.patch| 40 +
>  gnu/packages/patches/kobodeluxe-spelling.patch | 25 
>  9 files changed, 267 insertions(+)
>  create mode 100644 
> gnu/packages/patches/kobodeluxe-const-charp-conversion.patch
>  create mode 100644 gnu/packages/patches/kobodeluxe-enemies-pipe-decl.patch
>  create mode 100644 
> gnu/packages/patches/kobodeluxe-graphics-window-signed-char.patch
>  create mode 100644 
> gnu/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch
>  create mode 100644 
> gnu/packages/patches/kobodeluxe-midicon-segmentation-fault.patch
>  create mode 100644 gnu/packages/patches/kobodeluxe-paths.patch
>  create mode 100644 gnu/packages/patches/kobodeluxe-spelling.patch
>
> diff --git a/gnu/local.mk b/gnu/local.mk
> index 19dd9ae..a358939 100644
> --- a/gnu/local.mk
> +++ b/gnu/local.mk
> @@ -621,6 +621,13 @@ dist_patch_DATA =
> \
>%D%/packages/patches/jq-CVE-2015-8863.patch\
>%D%/packages/patches/khmer-use-libraries.patch\
>%D%/packages/patches/kmod-module-directory.patch   \
> +  %D%/packages/patches/kobodeluxe-paths.patch\
> +  %D%/packages/patches/kobodeluxe-spelling.patch \
> +  %D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch\
> +  %D%/packages/patches/kobodeluxe-const-charp-conversion.patch   \
> +  %D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch \
> +  %D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch   \
> +  %D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch  \
>%D%/packages/patches/laby-make-install.patch   \
>%D%/packages/patches/ldc-disable-tests.patch   \
>%D%/packages/patches/lftp-dont-save-unknown-host-fingerprint.patch \
> diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
> index 2bb53e0..7c43f84 100644
> --- a/gnu/packages/games.scm
> +++ b/gnu/packages/games.scm
> @@ -23,6 +23,7 @@
>  ;;; Copyright © 2016 Alex Griffin 
>  ;;; Copyright © 2016 Efraim Flashner 
>  ;;; Copyright © 2016 Jan Nieuwenhuizen 
> +;;; Copyright © 2016 Steve Webber 
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -2994,3 +2995,36 @@ symbols, the game needs graphics to render the 
> non-euclidean world.")
> license:public-domain ; src/direntx.*
> license:zlib  ; src/savepng.*
> license:gpl2+ ; remaining files
> +
> +(define-public kobodeluxe
> +  (package
> +(name "kobodeluxe")
> +(version "0.5.1")
> +(source (origin
> +  (method url-fetch)
> +  (uri (string-append 
> "http://olofson.net/kobodl/download/KoboDeluxe-;
> +  version ".tar.bz2"))
> +  (sha256
> +   (base32
> +"0b2wvdpnmaibsy419c16dfwj5kvd3pccby2aaqvm964x74592yqg"))
> +  

vim-full v2

2016-10-17 Thread ng0

v2



[PATCH] gnu: Add vim-full.

2016-10-17 Thread ng0
* gnu/packages/vim.scm (vim-full): New variable.
* gnu/packages/patches/vim-8.0.0003.patch: New file.
* gnu/packages/patches/vim-8.0.0004.patch: New file.
* gnu/packages/patches/vim-8.0.0005.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patches.
---
 gnu/local.mk|  3 ++
 gnu/packages/patches/vim-8.0.0003.patch | 87 +
 gnu/packages/patches/vim-8.0.0004.patch | 60 +++
 gnu/packages/patches/vim-8.0.0005.patch | 45 +
 gnu/packages/vim.scm| 81 ++
 5 files changed, 276 insertions(+)
 create mode 100644 gnu/packages/patches/vim-8.0.0003.patch
 create mode 100644 gnu/packages/patches/vim-8.0.0004.patch
 create mode 100644 gnu/packages/patches/vim-8.0.0005.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 526756f..79c1326 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -874,6 +874,9 @@ dist_patch_DATA =   
\
   %D%/packages/patches/util-linux-tests.patch  \
   %D%/packages/patches/upower-builddir.patch   \
   %D%/packages/patches/valgrind-enable-arm.patch   \
+  %D%/packages/patches/vim-8.0.0003.patch   \
+  %D%/packages/patches/vim-8.0.0004.patch   \
+  %D%/packages/patches/vim-8.0.0005.patch   \
   %D%/packages/patches/vorbis-tools-CVE-2014-9638+CVE-2014-9639.patch  
\
   %D%/packages/patches/vorbis-tools-CVE-2014-9640.patch\
   %D%/packages/patches/vorbis-tools-CVE-2015-6749.patch\
diff --git a/gnu/packages/patches/vim-8.0.0003.patch 
b/gnu/packages/patches/vim-8.0.0003.patch
new file mode 100644
index 000..11e9c91
--- /dev/null
+++ b/gnu/packages/patches/vim-8.0.0003.patch
@@ -0,0 +1,87 @@
+To: vim_...@googlegroups.com
+Subject: Patch 8.0.0003
+Fcc: outbox
+From: Bram Moolenaar 
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+
+Patch 8.0.0003
+Problem:getwinvar() returns wrong Value of boolean and number options,
+especially non big endian systems. (James McCoy)
+Solution:   Cast the pointer to long or int. (closes #1060)
+Files:  src/option.c, src/testdir/test_bufwintabinfo.vim
+
+
+*** vim80/src/option.c 2016-09-02 19:26:03.0 +0200
+--- vim80/src/option.c 2016-09-12 19:20:38.051099762 +0200
+***
+*** 12363,12370 
+   {
+   if (opt->flags & P_STRING)
+   dict_add_nr_str(d, opt->fullname, 0L, *(char_u **)varp);
+   else
+!  dict_add_nr_str(d, opt->fullname, *varp, NULL);
+   }
+   }
+  }
+--- 12363,12372 
+   {
+   if (opt->flags & P_STRING)
+   dict_add_nr_str(d, opt->fullname, 0L, *(char_u **)varp);
++  else if (opt->flags & P_NUM)
++  dict_add_nr_str(d, opt->fullname, *(long *)varp, NULL);
+   else
+!  dict_add_nr_str(d, opt->fullname, *(int *)varp, NULL);
+   }
+   }
+  }
+*** vim80/src/testdir/test_bufwintabinfo.vim   2016-08-27 21:14:58.0 
+0200
+--- vim80/src/testdir/test_bufwintabinfo.vim   2016-09-12 19:31:06.346360420 
+0200
+***
+*** 87,95 
+--- 87,103 
+  endfunc
+  
+  function Test_get_win_options()
++   if has('folding')
++ set foldlevel=999
++   endif
++   set list
+let opts = getwinvar(1, '&')
+call assert_equal(v:t_dict, type(opts))
+call assert_equal(0, opts.linebreak)
++   call assert_equal(1, opts.list)
++   if has('folding')
++ call assert_equal(999, opts.foldlevel)
++   endif
+if has('signs')
+  call assert_equal('auto', opts.signcolumn)
+endif
+***
+*** 97,103 
+--- 105,116 
+let opts = gettabwinvar(1, 1, '&')
+call assert_equal(v:t_dict, type(opts))
+call assert_equal(0, opts.linebreak)
++   call assert_equal(1, opts.list)
+if has('signs')
+  call assert_equal('auto', opts.signcolumn)
+endif
++   set list&
++   if has('folding')
++ set foldlevel=0
++   endif
+  endfunc
+*** vim80/src/version.c2016-09-12 16:30:42.348454179 +0200
+--- vim80/src/version.c2016-09-12 19:24:10.184148642 +0200
+***
+*** 766,767 
+--- 766,769 
+  {   /* Add new patch number below this line */
++ /**/
++ 3,
+  /**/
+
+-- 
diff --git a/gnu/packages/patches/vim-8.0.0004.patch 
b/gnu/packages/patches/vim-8.0.0004.patch
new file mode 100644
index 000..5d4071b
--- /dev/null
+++ b/gnu/packages/patches/vim-8.0.0004.patch
@@ -0,0 +1,60 @@
+To: vim_...@googlegroups.com
+Subject: Patch 8.0.0004
+Fcc: outbox
+From: Bram Moolenaar 
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+
+Patch 8.0.0004
+Problem:A string argument for function() that 

Re: [PATCH 06/15] gnu: Add chez-irregex.

2016-10-17 Thread Federico Beffa
On Mon, Oct 17, 2016 at 4:40 PM, Ludovic Courtès  wrote:
> Federico Beffa  skribis:
>
>> From 4293c55d921d82c0542907024a1b51abea32b6dc Mon Sep 17 00:00:00 2001
>> From: Federico Beffa 
>> Date: Sun, 16 Oct 2016 16:10:31 +0200
>> Subject: [PATCH 06/15] gnu: Add chez-irregex.
>>
>> * gnu/packages/chez.scm (chez-irregex): New variable.
>
> [...]
>
>> +   (uri (string-append
>> + "https://github.com/fedeinthemix/chez-irregex/archive;
>> + "/v" version ".tar.gz"))
>
> Wouldn’t it work to use the upstream Irregex as done in the
> ‘guile-irregex’ package?

The original source includes a module definition for Guile, but not
one for R6RS Scheme. This package wraps the original code in an R6RS
library definition and adds a file to make it easy to run the test
suite.

>
> Otherwise LGTM.
>
> Ludo’.



Re: [PATCH 05/15] gnu: Add chez-matchable.

2016-10-17 Thread Federico Beffa
On Mon, Oct 17, 2016 at 3:54 PM, Ludovic Courtès  wrote:
> Federico Beffa  skribis:
>
>> From 5821d3e41e37df01492141f128a0a09b5e70498f Mon Sep 17 00:00:00 2001
>> From: Federico Beffa 
>> Date: Sun, 16 Oct 2016 16:08:33 +0200
>> Subject: [PATCH 05/15] gnu: Add chez-matchable.
>>
>> * gnu/packages/chez.scm (chez-matchable): New variable.
>
> [...]
>
>> +;; Help function for Chez Scheme to add the current path to
>> +;; CHEZSCHEMELIBDIRS.
>> +(define chez-configure
>> +  '(lambda _
>> + (let ((chez-env (getenv "CHEZSCHEMELIBDIRS")))
>> +   (setenv "CHEZSCHEMELIBDIRS"
>> +   (if chez-env
>> +   (string-append ".:" chez-env)
>> +   "."))
>> +   #t)))
>
> Would it make sense to define a chez-build-system?

I don't think so: There aren't so many libraries and everybody is
doing his thing.

Fede



Re: [PATCH 03/15] gnu: Add chez-web.

2016-10-17 Thread Federico Beffa
On Mon, Oct 17, 2016 at 4:43 AM, Marius Bakke  wrote:
> Federico Beffa  writes:
>
>> From 828438eb009a557cd0be5f0e2a42eebb0d59257d Mon Sep 17 00:00:00 2001
>> From: Federico Beffa 
>> Date: Sun, 16 Oct 2016 15:59:49 +0200
>> Subject: [PATCH 03/15] gnu: Add chez-web
>>
>> * gnu/packages/chez.scm (chez-web): New variable.
>> ---
>>  gnu/packages/chez.scm | 49 +
>>  1 file changed, 49 insertions(+)
>>
>> diff --git a/gnu/packages/chez.scm b/gnu/packages/chez.scm
>> index 68591da..d9f6f71 100644
>> --- a/gnu/packages/chez.scm
>> +++ b/gnu/packages/chez.scm
>> @@ -22,6 +22,7 @@
>>  #:select (gpl2+ lgpl2.0+ lgpl2.1+ asl2.0 bsd-3 expat))
>>#:use-module (guix packages)
>>#:use-module (guix download)
>> +  #:use-module (guix git-download)
>>#:use-module (guix utils)
>>#:use-module (guix build-system gnu)
>>#:use-module (gnu packages compression)
>> @@ -222,3 +223,51 @@ and 32-bit PowerPC architectures.")
>>  (description
>>   "This package provides a collection of SRFI libraries for Chez 
>> Scheme.")
>>  (license expat)))
>> +
>> +(define-public chez-web
>> +  (package
>> +(name "chez-web")
>> +;; release 2.0 is different and doesn't work.
>
> Can you expand on this comment? Why does the released version not work?

I spent a bunch of time trying to tangle the released WEB file and I
was always getting errors (I even contacted the author).  At some
point I had enough and tried the latest commit and all of a sudden
everything was working.

>
>> +(version "2.0-1.5fd177f")
>> +(source
>> + (origin
>> +   (method git-fetch)
>> +   (uri (git-reference
>> + (url "https://github.com/arcfide/ChezWEB.git;)
>> + (commit "5fd177fe53f31f466bf88720d03c95a3711a8bea")))
>> +   (file-name (string-append name "-" version "-checkout"))
>> +   (sha256
>> +(base32 "1dq25qygyncbfq4kwwqqgyyakfqjwhp5q23vrf3bff1p66nyfl3b"
>> +(build-system gnu-build-system)
>> +(native-inputs
>> + `(("chez-scheme" ,chez-scheme)
>> +   ("texlive" ,texlive)))
>> +(arguments
>> + `(#:make-flags (let ((out (assoc-ref %outputs "out")))
>> +  (list (string-append "PREFIX=" out)
>> +(string-append "DOCDIR=" out "/share/doc/"
>> +   ,name "-" ,version)
>> +(string-append "LIBDIR=" out "/lib/chezweb")
>> +(string-append "TEXDIR=" out 
>> "/share/texmf-local")))
>
> You can use %output instead of (assoc-ref %outputs "out") here.

OK

>
>> +   #:tests? #f ; no tests
>> +   #:phases
>> +   (modify-phases %standard-phases
>> + (replace 'configure
>> +   (lambda* _
>> + (copy-file "config.mk.template" "config.mk")
>> + (substitute* "tangleit"
>> +   (("\\./cheztangle\\.ss" all)
>> +(string-append "chez-scheme --program " all)))
>> + (substitute* "weaveit"
>> +   (("mpost chezweb\\.mp")
>> +"mpost --tex=tex chezweb.mp")
>> +   (("\\./chezweave" all)
>> +(string-append "chez-scheme --program " all)))
>> + (substitute* "installit"
>> +   (("-g \\$GROUP -o \\$OWNER") "")))
>> +(home-page "https://github.com/arcfide/ChezWEB;)
>> +(synopsis "Hygienic Literate Programming for Chez Scheme")
>> +(description "ChezWEB is a system for doing Knuthian style WEB
>> +programming in Scheme, and more particularly, it is implemented in
>> +Chez Scheme.")
>
> I think the description up to the first comma is enough, since chez
> scheme is implied by the name.

OK thanks.



Re: [PATCH 04/15] gnu: Add chez-sockets.

2016-10-17 Thread Federico Beffa
On Mon, Oct 17, 2016 at 3:37 PM, Ludovic Courtès  wrote:
> Federico Beffa  skribis:
>
>> From d09667ff264149467b2b69e8a4ef67a1ce9b123c Mon Sep 17 00:00:00 2001
>> From: Federico Beffa 
>> Date: Sun, 16 Oct 2016 16:03:07 +0200
>> Subject: [PATCH 04/15] gnu: Add chez-sockets.
>>
>> * gnu/packages/chez.scm (chez-sockets): New variable.
>
> [...]
>
>> +(define-public chez-sockets
>> +  (package
>> +(name "chez-sockets")
>> +(version "0.0-1.bce9688")
>
> Please factorize the commit number (info "(guix) Version Numbers").

OK

>
>> +(native-inputs
>> + `(("chez-scheme" ,chez-scheme)
>> +   ("chez-web" ,chez-web)
>> +   ("texlive" ,texlive)))
>
> Can documentation be made available in an on-line format like HTML or
> Info?

No, this library is written in a WEB system based on Chez Scheme and LaTeX.

>
> This would be consistent with what most other packages provide and would
> avoid the TeX Live dependency.
>
> The rest LGTM, thanks!
>
> Ludo’.



Re: [PATCH] add kobodeluxe

2016-10-17 Thread Ludovic Courtès
Hello!

Welcome, Stephen!

Christopher Allan Webber  skribis:

> From c8b122d8c7cf7a574bbbac66963ac355c64effc5 Mon Sep 17 00:00:00 2001
> From: Stephen Webber 
> Date: Sun, 16 Oct 2016 15:04:35 -0500
> Subject: [PATCH] gnu: Add kobodeluxe.
>
> * gnu/packages/games.scm (kobodeluxe): New variable.
> * gnu/packages/patches/kobodeluxe_paths.patch: New file.
> * gnu/packages/patches/kobodeluxe-spelling.patch: New file.
> * gnu/packages/patches/kobodeluxe_enemies-pipe-decl.patch: New file.
> * gnu/packages/patches/kobodeluxe_const_charp_conversion.patch: New file.
> * gnu/packages/patches/kobodeluxe_manpage-minus-not-hyphen.patch: New file.
> * gnu/packages/patches/kobodeluxe-midicon-segmentation-fault.patch: New file.
> * gnu/packages/patches/kobodeluxe_graphics_window-signed-char.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Register it.

Overall looks good to me!  I have minor/cosmetic suggestions, but
otherwise this is ready for commit IMO.

> +  %D%/packages/patches/kobodeluxe_paths.patch
> +  %D%/packages/patches/kobodeluxe-spelling.patch
> +  %D%/packages/patches/kobodeluxe_enemies-pipe-decl.patch
> +  %D%/packages/patches/kobodeluxe_const_charp_conversion.patch
> +  %D%/packages/patches/kobodeluxe_manpage-minus-not-hyphen.patch
> +  %D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch
> +  %D%/packages/patches/kobodeluxe_graphics_window-signed-char.patch

Maybe use only hyphens in file names for consistency.

> +(synopsis "Shooter with space station destruction")
> +(description
> + "Kobo Deluxe is an enhanced version of Akira Higuchi's XKobo for Un*x
> +systems with X11.")

Maybe s/XKobo.*/XKobo graphical game/.

That way ‘guix package -s game’ will return it.  :-)

> --- /dev/null
> +++ b/gnu/packages/patches/kobodeluxe-spelling.patch
> @@ -0,0 +1,25 @@
> +Description: two spelling fixes
> +Author: Damyan Ivanov 

Maybe this patch can be omitted; hopefully it’ll be fixed in the next
release.

> +++ b/gnu/packages/patches/kobodeluxe_paths.patch
> @@ -0,0 +1,40 @@
> +# Disable reading of configs, graphics, and data from the current directory.
> +# So it's safe to run kobodeluxe from anywhere w/o worry about an attacker
> +# feeding it bad data.

Could you indicate the origin or status of this patch?

Chris: feel free to push an updated version!

Stephen, you picked a tricky package as your first patch but it’s
perfect!  I’m sure you had a good mentor too.  ;-)

Ludo’.



Re: Guix "ops"

2016-10-17 Thread Ludovic Courtès
Christopher Allan Webber  skribis:

> David Thompson writes:
>
>> Hello again Carlos,
>>
>> Carlos Sosa  writes:
>>
>>>   I like the idea of 'guix deploy', and maybe something to propagates
>>>   given configuration files, like 'guix config prepare' and later 'guix
>>>   config apply'.
>>>
>>> Now, how can I contribute? work the guix command?
>>>
>>> Let me know if you have a specific repository or place to find any work
>>> done on this.
>>
>> I have just pushed a new branch called "wip-deploy" to the official guix
>> repository.  Since this branch is prefixed with "wip-", expect it to be
>> rebased frequently.  There's not much code here yet, but a very simple
>> prototype has been implemented that supports the creation of local QEMU
>> VMs.
>
> Just FYI, I've rebased this branch and pushed to origin.

Thanks!

> There's a lot of good ideas in this thread.  Will be good to make
> progress on them!

Yup!  The need for this tool is becoming stronger, especially now that
we’re starting to run GuixSD on our build farm machines.

Ludo’.



Re: Specifying and build output separately?

2016-10-17 Thread Ludovic Courtès
Hartmut Goebel  skribis:

> Am 17.10.2016 um 10:55 schrieb Ludovic Courtès:
>> I prefer this approach over what you propose because it’s more
>> consistent with what we usually do, which is to have doc in a “doc”
>> output rather than in a separate package.
>
> Yes, but it has the major drawback of building numpy twice - which is
> quite time-consuming.
>
> If we could "augment" the existing bootstrap package, for the normal
> one, this would save the second build.

You’re right.  However, the approach so far has been to favor usability
or convenience over build time.  The rationale is that most users do not
build everything locally.

Does that make sense?

Ludo’.



Re: [PATCH 06/15] gnu: Add chez-irregex.

2016-10-17 Thread Ludovic Courtès
Federico Beffa  skribis:

> From 4293c55d921d82c0542907024a1b51abea32b6dc Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Sun, 16 Oct 2016 16:10:31 +0200
> Subject: [PATCH 06/15] gnu: Add chez-irregex.
>
> * gnu/packages/chez.scm (chez-irregex): New variable.

[...]

> +   (uri (string-append
> + "https://github.com/fedeinthemix/chez-irregex/archive;
> + "/v" version ".tar.gz"))

Wouldn’t it work to use the upstream Irregex as done in the
‘guile-irregex’ package?

Otherwise LGTM.

Ludo’.



Re: [PATCH 07/15] gnu: Add chez-fmt.

2016-10-17 Thread Ludovic Courtès
Federico Beffa  skribis:

> From c6d0839666e90da4074a1ae6af9a355907a9cdd8 Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Sun, 16 Oct 2016 16:12:25 +0200
> Subject: [PATCH 07/15] gnu: Add chez-fmt.
>
> * gnu/packages/chez.scm (chez-fmt): New variable.

LGTM, thanks!

Ludo'.



Re: gnu: artanis: Remove implied $(DESTDIR) usage.

2016-10-17 Thread Marius Bakke
Adonay Felipe Nogueira  writes:

> Oh my! ... Sorry for being careless. I guess I was so happy to finally
> fix the problem upstream that I forgot to adapt our recipe accordingly.
>
> Thanks for testing. :)
>
> I have made the patch again, and also properly referenced the patch
> tickets from upstream.

Thanks! I made slight adjustments to the commit message and kept the
original (let* ((out ...))) to make it clearer what the patch does.

Pushed as 8a666bc5cb3c50b4b881290c7776c3f681a734bc !



Re: [PATCH] add kobodeluxe

2016-10-17 Thread Christopher Allan Webber
Stephen Webber writes:

> As for the permanent user profile, one of the debian patches I applied
> changed the functionality for security reason. I'm not certain I have the
> expertise to make a correcting decision at this time, especially that is in
> line with guix conventions about state.

I also don't feel qualified to interpret the potential security issue in
the patch, not to build an alternative path based patch that's not at
supposed risk.  My suggestion is: let's accept the patch now, and if
someone can come up with a reason why the Debian-applied patch wasn't
needed, we can remove it, or if they can come up with a patch that
switches it to paths in the user's home directory, we can do that.

WDYT?

> On Sun, Oct 16, 2016 at 9:06 PM, Kei Kebreau  wrote:
>> When I applied the patch, git complained about trailing whitespace; a
>> trivial fix.

Those whitespace "errors" were in the original patches we borrowed from
Debian, and weren't on any of the lines that patch in new code.
Nonetheless the patches seem to apply fine without them, so here's an
adjusted patch that fixes that.  (It also fixes the commit line, since I
forgot to change the underscores to hyphens there in my last patch!)

 - Chris

>From 62bf271a6907bd5b0ec73662bc3f92c64aafa229 Mon Sep 17 00:00:00 2001
From: Stephen Webber 
Date: Sun, 16 Oct 2016 15:04:35 -0500
Subject: [PATCH] gnu: Add kobodeluxe.

* gnu/packages/games.scm (kobodeluxe): New variable.
* gnu/packages/patches/kobodeluxe-paths.patch: New file.
* gnu/packages/patches/kobodeluxe-spelling.patch: New file.
* gnu/packages/patches/kobodeluxe-enemies-pipe-decl.patch: New file.
* gnu/packages/patches/kobodeluxe-const-charp-conversion.patch: New file.
* gnu/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch: New file.
* gnu/packages/patches/kobodeluxe-midicon-segmentation-fault.patch: New file.
* gnu/packages/patches/kobodeluxe-graphics-window-signed-char.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
---
 gnu/local.mk   |  7 +++
 gnu/packages/games.scm | 34 +++
 .../kobodeluxe-const-charp-conversion.patch| 17 ++
 .../patches/kobodeluxe-enemies-pipe-decl.patch | 67 ++
 .../kobodeluxe-graphics-window-signed-char.patch   | 38 
 .../kobodeluxe-manpage-minus-not-hyphen.patch  | 15 +
 .../kobodeluxe-midicon-segmentation-fault.patch| 24 
 gnu/packages/patches/kobodeluxe-paths.patch| 40 +
 gnu/packages/patches/kobodeluxe-spelling.patch | 25 
 9 files changed, 267 insertions(+)
 create mode 100644 gnu/packages/patches/kobodeluxe-const-charp-conversion.patch
 create mode 100644 gnu/packages/patches/kobodeluxe-enemies-pipe-decl.patch
 create mode 100644 gnu/packages/patches/kobodeluxe-graphics-window-signed-char.patch
 create mode 100644 gnu/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch
 create mode 100644 gnu/packages/patches/kobodeluxe-midicon-segmentation-fault.patch
 create mode 100644 gnu/packages/patches/kobodeluxe-paths.patch
 create mode 100644 gnu/packages/patches/kobodeluxe-spelling.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 19dd9ae..a358939 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -621,6 +621,13 @@ dist_patch_DATA =		\
   %D%/packages/patches/jq-CVE-2015-8863.patch			\
   %D%/packages/patches/khmer-use-libraries.patch\
   %D%/packages/patches/kmod-module-directory.patch		\
+  %D%/packages/patches/kobodeluxe-paths.patch			\
+  %D%/packages/patches/kobodeluxe-spelling.patch		\
+  %D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch	\
+  %D%/packages/patches/kobodeluxe-const-charp-conversion.patch	\
+  %D%/packages/patches/kobodeluxe-manpage-minus-not-hyphen.patch	\
+  %D%/packages/patches/kobodeluxe-midicon-segmentation-fault.patch	\
+  %D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch	\
   %D%/packages/patches/laby-make-install.patch			\
   %D%/packages/patches/ldc-disable-tests.patch			\
   %D%/packages/patches/lftp-dont-save-unknown-host-fingerprint.patch \
diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm
index 2bb53e0..7c43f84 100644
--- a/gnu/packages/games.scm
+++ b/gnu/packages/games.scm
@@ -23,6 +23,7 @@
 ;;; Copyright © 2016 Alex Griffin 
 ;;; Copyright © 2016 Efraim Flashner 
 ;;; Copyright © 2016 Jan Nieuwenhuizen 
+;;; Copyright © 2016 Steve Webber 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -2994,3 +2995,36 @@ symbols, the game needs graphics to render the non-euclidean world.")
license:public-domain ; src/direntx.*
license:zlib  ; src/savepng.*
license:gpl2+ ; remaining files
+
+(define-public kobodeluxe
+  (package
+(name "kobodeluxe")
+(version "0.5.1")
+(source (origin
+   

Re: [PATCH 05/15] gnu: Add chez-matchable.

2016-10-17 Thread Ludovic Courtès
Federico Beffa  skribis:

> From 5821d3e41e37df01492141f128a0a09b5e70498f Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Sun, 16 Oct 2016 16:08:33 +0200
> Subject: [PATCH 05/15] gnu: Add chez-matchable.
>
> * gnu/packages/chez.scm (chez-matchable): New variable.

[...]

> +;; Help function for Chez Scheme to add the current path to
> +;; CHEZSCHEMELIBDIRS.
> +(define chez-configure
> +  '(lambda _
> + (let ((chez-env (getenv "CHEZSCHEMELIBDIRS")))
> +   (setenv "CHEZSCHEMELIBDIRS"
> +   (if chez-env
> +   (string-append ".:" chez-env)
> +   "."))
> +   #t)))

Would it make sense to define a chez-build-system?

> +;; Help function to define make flags for some Chez Scheme custom make
> +;; files.
> +(define (chez-make-flags name version)
> +  `(let ((out (assoc-ref %outputs "out")))
> + (list (string-append "PREFIX=" out)
> +   (string-append "DOCDIR=" out "/share/doc/"
> +  ,name "-" ,version
> +
> +(define-public chez-matchable
> +  (package
> +(name "chez-matchable")
> +(version "20160306")
> +(source
> + (origin
> +   (method url-fetch)
> +   (uri (string-append
> + "https://github.com/fedeinthemix/chez-matchable/archive;

It’s a good idea to define ‘home-page’ above and reuse it here.

> +(description "This package provides a superset of the popular
> +Scheme 'match' package by Andrew Wright, written in fully portable
> +'syntax-rules' and thus preserving hygiene.")

@code{match} and @code{syntax-rules}.

Otherwise LGTM, thanks!

Ludo’.



Re: Bash headers path changed in 4.4 (core-updates)

2016-10-17 Thread Ludovic Courtès
Leo Famulari  skribis:

> While looking at the build failure of recutils on core-updates [0], I
> noticed that the directory structure of bash:include changed from 4.3 to
> 4.4.
>
> Using stdc.h as an example, For 4.3, our package creates a tree like this:
> ./include/bash/stdc.h
>
> For 4.4, it's like this:
> ./include/bash/include/stdc.h

Note that there’s also include/bash/*.h.

> Is this intentional?

Sort of.  It used to be that Bash did not install its headers by itself,
so we had a phase to do that, roughly following what Debian did.

With 4.4, the headers are officially installed (there’s even a .pc
file), so I removed that phase and let ‘make install’ do its thing.

‘bash.pc’ contains this:

--8<---cut here---start->8---
headersdir=${includedir}/bash

[...]

Cflags: ${SHOBJ_CFLAGS} ${CCFLAGS} -I${headersdir} -I${headersdir}/builtins 
-I${headersdir}/include
--8<---cut here---end--->8---

so everything should work fine for packages that use bash.pc.

However, there are currently zero packages using bash.pc because that
file is brand new, so we’ll have to manually adjust them for now.

I believe this patch should work, though I haven’t yet been able to
rebuild recutils:

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index b7bd1f0..8262101 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -405,7 +405,19 @@ pictures, sounds, or video.")
  #:configure-flags
  (list (string-append "--with-bash-headers="
   (assoc-ref %build-inputs "bash:include")
-  "/include/bash"
+  "/include/bash"))
+
+ #:phases (modify-phases %standard-phases
+(add-before 'build 'set-bash4.4-header-location
+  (lambda _
+;; Adjust the header search path for Bash 4.4
+;; in accordance with 'bash.pc'.
+(substitute* "bash/Makefile.in"
+  (("AM_CPPFLAGS = (.*)$" _ rest)
+   (string-append "AM_CPPFLAGS = " rest
+  " -I$(BASH_HEADERS)/include"
+  "\n")))
+#t)
 
 (native-inputs `(("emacs" ,emacs-minimal)
  ("bc" ,bc)

How does that sound?

Thanks,
Ludo’.


Re: [PATCH 04/15] gnu: Add chez-sockets.

2016-10-17 Thread Ludovic Courtès
Federico Beffa  skribis:

> From d09667ff264149467b2b69e8a4ef67a1ce9b123c Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Sun, 16 Oct 2016 16:03:07 +0200
> Subject: [PATCH 04/15] gnu: Add chez-sockets.
>
> * gnu/packages/chez.scm (chez-sockets): New variable.

[...]

> +(define-public chez-sockets
> +  (package
> +(name "chez-sockets")
> +(version "0.0-1.bce9688")

Please factorize the commit number (info "(guix) Version Numbers").

> +(native-inputs
> + `(("chez-scheme" ,chez-scheme)
> +   ("chez-web" ,chez-web)
> +   ("texlive" ,texlive)))

Can documentation be made available in an on-line format like HTML or
Info?

This would be consistent with what most other packages provide and would
avoid the TeX Live dependency.

The rest LGTM, thanks!

Ludo’.



Re: [PATCH 02/15] gnu: Add chez-srfi.

2016-10-17 Thread Ludovic Courtès
Federico Beffa  skribis:

> From 1433f85bd0ba7fa0239b200f693e9b2ffcc8e039 Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Sun, 16 Oct 2016 15:49:36 +0200
> Subject: [PATCH 02/15] gnu: Add chez-srfi.
>
> * gnu/packages/chez.scm (chez-srfi): New variable.

OK!



Re: [PATCH 01/15] gnu: chez-scheme: Add search-path and fix i686 build.

2016-10-17 Thread Ludovic Courtès
Hello Federico,

Federico Beffa  skribis:

> On Sun, Oct 16, 2016 at 8:25 PM, Ricardo Wurmus  wrote:

[...]

>> Could you separate these different changes into different patches,
>> please?
>
> I've split them.

Thanks for taking the time.

> From c25b941dc4a0b5d04a871edb590a728b6075b081 Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Mon, 17 Oct 2016 08:52:48 +0200
> Subject: [PATCH 01/17] gnu: chez-scheme: Add search-path.
>
> * gnu/packages/scheme.scm (chez-scheme): Do it.

Rather: … (chez-scheme)[native-search-paths]: New field.

Otherwise OK!

> From 7875840eb0f0d0d844da40735faabd10b791f0dd Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Mon, 17 Oct 2016 09:01:11 +0200
> Subject: [PATCH 02/17] gnu: chez-scheme: Fix i686 build.
>
> * gnu/packages/scheme.scm (chez-scheme): Add 'configure-flags', generalize
>   'configure' phase and simplify 'install-doc' phase.

These two parts are still logically unrelated; it’s best if you can
split, but OK for this time.

LGTM.

> From 0f2766f86058762443645583b491fb9097a510a3 Mon Sep 17 00:00:00 2001
> From: Federico Beffa 
> Date: Mon, 17 Oct 2016 09:05:39 +0200
> Subject: [PATCH 03/17] gnu: chez-scheme: Move to new module.
>
> * gnu/packages/scheme.scm (chez-scheme, nanopass, stex): Move variables ...
> * gnu/packages/chez.scm (chez-scheme, nanopass, stex): ... here. New module.
> * gnu/local.mk (GNU_SYSTEM_MODULES): Add new file.

OK!

Thank you!

Ludo’.



Re: Writing recipe for Crypto++, and getting build errors

2016-10-17 Thread Adonay Felipe Nogueira
Indeed, you're right: I no longer need it. But I decided to test it so
that people can make use of the patch you suggested.


signature.asc
Description: This is a digitally signed message part


Re: Writing recipe for Crypto++, and getting build errors

2016-10-17 Thread Ludovic Courtès
Adonay Felipe Nogueira  skribis:

> I have good news: The patch suggested by Ludovic does work. :)
>
> I did a test with a simple recipe (because I no longer need to deal with
> zipbomb itself, since I found the tar.gz generated by their repository,
> which luckly isn't a tarbomb).
>
> Now, reverting the patch with `patch -p1 -R`. :)

So the proposed ‘url-fetch/zipbomb’ is no longer needed, right?

Thanks for trying it out.

Ludo’.



[Chris Lamb] [rb-general] Next Reproducible Builds IRC meeting: 17 Oct 2016 @ 19h00 UTC (reminder)

2016-10-17 Thread Ludovic Courtès
Hello Guix!

Sorry for the late notice, it’s later today!  (I won’t be around.)

I guess I’ll let people subscribe to rb-general for future
announcements:

  https://lists.reproducible-builds.org/listinfo/rb-general

:-)

Ludo’.

--- Begin Message ---
Dear all,

This is a reminder that the next IRC meeting is scheduled for:

   http://time.is/compare/1900_17_Oct_2016_in_UTC

The audience is for anyone interested in the Reproducible Builds effort,
regardless of the project(s) they contribute to.

The meeting will be held on #reproducible-builds on OFTC, will start promptly
at the specified time and will last no longer than 1 hour. Please expect that
the meeting will be logged.


What you need to do
===

 a) Convert the above time in your timezone and add to your diary/planner. To
reliably translate with respect to upcoming DST changes I suggest using a
service such as:

  http://time.is/compare/1900_17_Oct_2016_in_UTC/Nepal

 b) Please add any agenda items to:

  https://pad.riseup.net/p/reproducible-irc-meeting-2

 c) Forward this email to anyone you feel would be interested.


Thanks again and looking forward to see you there!


Regards,

-- 
  ,''`.
 : :'  : Chris Lamb
 `. `'`  la...@debian.org / chris-lamb.co.uk
   `-
___
rb-gene...@lists.reproducible-builds.org mailing list

To change your subscription options, visit 
https://lists.reproducible-builds.org/listinfo/rb-general.

To unsubscribe, send an email to 
rb-general-unsubscr...@lists.reproducible-builds.org.--- End Message ---


Re: gnu: artanis: Remove implied $(DESTDIR) usage.

2016-10-17 Thread Adonay Felipe Nogueira
Oh my! ... Sorry for being careless. I guess I was so happy to finally
fix the problem upstream that I forgot to adapt our recipe accordingly.

Thanks for testing. :)

I have made the patch again, and also properly referenced the patch
tickets from upstream.
From 85d418a8750cb7b90cab12c5cc7687e8fd8a6981 Mon Sep 17 00:00:00 2001
From: Adonay Felipe Nogueira 
Date: Mon, 17 Oct 2016 10:47:21 -0200
Subject: [PATCH] gnu: artanis: Remove implied $(DESTDIR) usage.

* gnu/packages/patches/artanis-fix-Makefile.in.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register patch.
* gnu/packages/guile.scm (artanis)
** [source]: Use patch.
** [arguments]: Remove DESTDIR from #:make-flags.
---
 gnu/local.mk   |  2 +
 gnu/packages/guile.scm | 14 +++--
 gnu/packages/patches/artanis-fix-Makefile.in.patch | 70 ++
 3 files changed, 81 insertions(+), 5 deletions(-)
 create mode 100644 gnu/packages/patches/artanis-fix-Makefile.in.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 27872ce..9079b42 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -5,6 +5,7 @@
 # Copyright © 2013, 2014, 2015, 2016 Mark H Weaver 
 # Copyright © 2016 Chris Marusich 
 # Copyright © 2016 Kei Kebreau 
+# Copyright © 2016 Adonay "adfeno" Felipe Nogueira  
 #
 # This file is part of GNU Guix.
 #
@@ -454,6 +455,7 @@ dist_patch_DATA =		\
   %D%/packages/patches/antiword-CVE-2014-8123.patch			\
   %D%/packages/patches/apr-skip-getservbyname-test.patch	\
   %D%/packages/patches/arb-ldconfig.patch			\
+  %D%/packages/patches/artanis-fix-Makefile.in.patch		\
   %D%/packages/patches/ath9k-htc-firmware-binutils.patch	\
   %D%/packages/patches/ath9k-htc-firmware-gcc.patch		\
   %D%/packages/patches/ath9k-htc-firmware-objcopy.patch		\
diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm
index 7361f1f..a99386a 100644
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2016 Erik Edrosa 
 ;;; Copyright © 2016 Eraim Flashner 
 ;;; Copyright © 2016 Alex Kost 
+;;; Copyright © 2016 Adonay "adfeno" Felipe Nogueira  
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -305,7 +306,8 @@ applicable."
   version ".tar.gz"))
   (sha256
(base32
-"19m3ak12cqk8js9d2mdg11kh4fjsq8frfpd10qw75h0zpr5cywpp"
+"19m3ak12cqk8js9d2mdg11kh4fjsq8frfpd10qw75h0zpr5cywpp"))
+  (patches (search-patches "artanis-fix-Makefile.in.patch"
 (build-system gnu-build-system)
 ;; TODO: Add guile-dbi and guile-dbd optional dependencies.
 (inputs `(("guile" ,guile-2.0)))
@@ -315,12 +317,14 @@ applicable."
 (arguments
  '(#:make-flags
;; TODO: The documentation must be built with the `docs' target.
-   (let* ((out (assoc-ref %outputs "out"))
-  (dir (string-append out "/share/guile/site/2.0")))
+   (let*
+   ((dir
+  (string-append
+(assoc-ref %outputs "out")
+"/share/guile/site/2.0")))
  ;; Don't use (%site-dir) for site paths.
  (list (string-append "MOD_PATH=" dir)
-   (string-append "MOD_COMPILED_PATH=" dir)
-   (string-append "DESTDIR=" out)))
+   (string-append "MOD_COMPILED_PATH=" dir)))
#:test-target "test"
#:phases
(modify-phases %standard-phases
diff --git a/gnu/packages/patches/artanis-fix-Makefile.in.patch b/gnu/packages/patches/artanis-fix-Makefile.in.patch
new file mode 100644
index 000..7e4800d
--- /dev/null
+++ b/gnu/packages/patches/artanis-fix-Makefile.in.patch
@@ -0,0 +1,70 @@
+Applies until an Artanis release comes with the following patches
+applied:
+* 
+* 
+diff -ru artanis-0.1.2/Makefile.in artanis-0.1.2.1/Makefile.in
+--- artanis-0.1.2/Makefile.in	2016-02-10 12:35:18.800490571 -0200
 artanis-0.1.2.1/Makefile.in	2016-10-15 19:44:35.140907367 -0300
+@@ -19,9 +19,18 @@
+ MOD_OBJ := $(OBJ)/artanis
+ BIN := bin
+ TEMP_LIB_PATH := $(OBJ)
+-MOD_PATH := $(shell guile -c "(display (%site-dir))")
+ MOD_COMPILED_PATH := $(shell guile -c "(display (%site-ccache-dir))")
++
++ifdef DESTDIR
++INFO_DIR := $(DESTDIR)/share/info/
++MOD_PATH := $(DESTDIR)/$(shell guile -c "(display (%site-dir))")
+ MOD_TARGET_PATH := $(DESTDIR)/$(MOD_COMPILED_PATH)
++else
++INFO_DIR := $(PREFIX)/share/info/
++MOD_PATH := $(shell guile -c "(display (%site-dir))")
++MOD_TARGET_PATH := $(MOD_COMPILED_PATH)
++endif
++
+ GUILE_CFLAGS := -Wunsupported-warning -Wunbound-variable -Warity-mismatch 

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

2016-10-17 Thread Hartmut Goebel
Am 16.10.2016 um 22:22 schrieb Marius Bakke:
> Can we leverage this mechanism instead of propagating everything? Are
> there any drawbacks to doing that?

propagating all inputs is the correct way for two reasons:

a) In Python only *one* version of a module can but used within an
environment [*] So you will end up in troubles if some packages list
different (incompatible) versions of a package in a .pth file. You will
have a lot of fun debugging this. (It took me one or two hours to
understand what's going on there, and being one of the core developers
of PyInstaller I'm quite skilled regarding all these import mechanisms
in Python.)

b) guix will not be able to tack these dependencies AFAIK, see
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=20765


[*] One can install different version of a module, but this is rarely
used and not supported when installing via pip.

> I'll have to do some more investigation around how those .pth files are
> created, but food for thought. Perhaps it only works with eggs?

They are very archaic and work with normal module, too.
https://docs.python.org/3/library/site.html

You may want to compare the results of (I suggest using a virtual
environment for the tests):

easy_install py==1.4.31
python ./setup.py easy_install py==1.4.31
python ./setup.py install py==1.4.31
python ./setup.py install --root=/ py==1.4.31

BTW: Just today I discovered nasty problems with namespace packages
under python2. So I still need to do some recherché.

-- 
Regards
Hartmut Goebel

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



0xBF773B65.asc
Description: application/pgp-keys


Re: [PATCH] gnu: wrap-python3: Use a bash wrapper for 'python3-config'.

2016-10-17 Thread 宋文武
Leo Famulari  writes:

> On Sun, Oct 16, 2016 at 11:21:13AM +0800, 宋文武 wrote:
>> >> Hi, python-wrapper has a broken `python3-config', which
>> >> output cflags to the wrapper instead of the origin python3,
>> >> leading the build failure of python-pycairo.
>> >
>> > So it appears to resolve the CFLAGS it returns relative to its own
>> > argv[0] or /proc/self/exe, right?
>> >
>> > Eventually we should fix this and reinstate this commit, but reverting
>> > it was the right thing in the short term.
>> 
>> Here is a fix: 
>>
>> From b7badcf695fcb245224ffdf51cdb016b45f9a2a5 Mon Sep 17 00:00:00 2001
>> From: =?UTF-8?q?=E5=AE=8B=E6=96=87=E6=AD=A6?= 
>> Date: Sun, 16 Oct 2016 10:44:29 +0800
>> Subject: [PATCH] gnu: wrap-python3:  Use a bash wrapper for 'python3-config'.
>> 
>> See 
>> for details.
>> 
>> * gnu/packages/python.scm (wrap-python3)[arguments]: Use a bash wrapper
>> instead of a symlink for python3-config.
>
> I can confirm that python-pycairo builds with this patch applied to
> core-updates.

Pushed, thanks for the confirming :-)



Re: [PATCH] import: pypi: All inputs are propagated-inputs by default.

2016-10-17 Thread Hartmut Goebel
Am 17.10.2016 um 11:00 schrieb Hartmut Goebel:
> * guix/import/pypi.scm (maybe-inputs): Return inputs as
>   "propagated-inputs".

Rational: Most python inputs need to be propagated inputs, not normal ones.


-- 
Regards
Hartmut Goebel

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



0xBF773B65.asc
Description: application/pgp-keys


Re: [PATCH] gnu: node: Update to 6.8.0.

2016-10-17 Thread Ludovic Courtès
Al McElrath  skribis:

> I took Jelle's 6.4.0 patch and updated it to 6.8.0. I only updated the
> version and included a patch that is specific to 6.8.0. Hopefully this
> version will have more success. I reset the author to myself. Not sure
> what the protocol is for patching someone else's patch.

For a relatively small patch like this, I think it doesn’t matter much,
though it’s a good idea to acknowledge people via a “Co-authored-by”
tag when appropriate.

> From e847558aa98e7f3f1d7abe3b89bcf52d8122b325 Mon Sep 17 00:00:00 2001
> From: Al McElrath 
> Date: Fri, 14 Oct 2016 16:39:44 -0700
> Subject: [PATCH] gnu: node: Update to 6.8.0.
>
> Remove  and
>  workaround.
>
> * gnu/packages/node.scm (node): Update to 6.8.0.
>   (node)[arguments]: Disabled more tests. Remove custom 'patch-shebangs'
>   phase. Manually patch npm script shebang in new 'patch-npm-shebang'
>   phase.
> * gnu/packages/patches/node-9077.patch: New file.
> * gnu/local.mk (dist_patch_DATA): Add patches.

Applied, thanks!

Ludo’.



Re: Specifying and build output separately?

2016-10-17 Thread Ludovic Courtès
Hello,

Hartmut Goebel  skribis:

> we have several cyclic dependencies due to e.g. packages depending on
> each other only for building the documentation. Examples are numpy and
> matpltlib.
>
> So I wonder it it would be possible to to something like this:
>
> (define-public numpy:doc
>   (inherit numpy)
>   (name "numpy:doc")
>   (outputs "doc")
>   (inputs … matplotlib …)
>   (… modify-phases …))

Making the documentation a separate package, instead of a separate
output, is of course doable and it could help address the circular
reference issue.

Currently the approach used for numpy is a different one: there’s a
“bootstrap” package lacking documentation that is used as input to the
final package, which has an extra “doc” output.

I prefer this approach over what you propose because it’s more
consistent with what we usually do, which is to have doc in a “doc”
output rather than in a separate package.

Thanks,
Ludo’.



Re: Making substitute* throw an error if substition failed?

2016-10-17 Thread Ludovic Courtès
Hi,

Ricardo Wurmus  skribis:

> it happened a couple of times already that a “substitute*” expression
> silently failed and I only found out about it when investigating the
> remains of a failing build (“guix build -K”).  This can easily happen
> when a package is updated and substitutions “anchors” no longer exist in
> the updated source code.
>
> Would it be desirable to change “substitute*” (or replace it) such that
> it throws an error or returns a value if substitution failed?

“Failed” as in “there were no pattern matches”, right?

> This might be helpful for the more complex packages with many
> substitutions.  If we make it return a value (#f for error) it would
> also make our build phases a little prettier, I think.  (Now we
> forcefully return #t in any case and that seems wrong.)

I like this idea.  Like others wrote, it could return #t if one or more
substitutions were made, and #f otherwise.

I think it’s better than throwing an error, because there are cases
where it doesn’t matter whether a substitution was made or not (e.g.,
when replacing strings en masse on a set of files.)

WDYT?

Thanks,
Ludo’.



Re: Go 1.4.3 failing on core-updates

2016-10-17 Thread Andy Wingo
On Sat 15 Oct 2016 22:12, Leo Famulari  writes:

> # net
> cannot load DWARF output from $WORK/net/_obj//_cgo_.o: decoding dwarf section 
> info at offset 0x4: unsupported version 0
> # os/user
> cannot load DWARF output from $WORK/os/user/_obj//_cgo_.o: decoding dwarf 
> section info at offset 0x4: unsupported version 0

Probably this is due to a version change in GCC or the toolchain -- this
part of go is designed to interoperate with GCC in some way.  Try fixing
the version of the toolchain to something older, perhaps?

Andy



Re: [PATCH 01/15] gnu: chez-scheme: Add search-path and fix i686 build.

2016-10-17 Thread Federico Beffa
On Sun, Oct 16, 2016 at 8:25 PM, Ricardo Wurmus  wrote:
> Hi Federico,
>
> it’s a bit unfortunate to mix moving of packages between modules with a
> fix and a feature addition (search paths).  I think the move to a new
> module is not necessary.

I moved Chez Scheme to a new module because I'm adding several
libraries for it and, from my point of view, it makes sense to have
them all in one place. More libraries will follow.

> Could you separate these different changes into different patches,
> please?

I've split them.

Thanks for the review.
Fede
From c25b941dc4a0b5d04a871edb590a728b6075b081 Mon Sep 17 00:00:00 2001
From: Federico Beffa 
Date: Mon, 17 Oct 2016 08:52:48 +0200
Subject: [PATCH 01/17] gnu: chez-scheme: Add search-path.

* gnu/packages/scheme.scm (chez-scheme): Do it.
---
 gnu/packages/scheme.scm | 4 
 1 file changed, 4 insertions(+)

diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index 9597473..c461efb 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -635,6 +635,10 @@ threads.")
  `(("texlive" ,texlive)
("ghostscript" ,ghostscript-gs)
("netpbm" ,netpbm)))
+(native-search-paths
+ (list (search-path-specification
+(variable "CHEZSCHEMELIBDIRS")
+(files (list (string-append "lib/csv" version "-site"))
 (outputs '("out" "doc"))
 (arguments
  `(#:modules ((guix build gnu-build-system)
-- 
2.7.4

From 7875840eb0f0d0d844da40735faabd10b791f0dd Mon Sep 17 00:00:00 2001
From: Federico Beffa 
Date: Mon, 17 Oct 2016 09:01:11 +0200
Subject: [PATCH 02/17] gnu: chez-scheme: Fix i686 build.

* gnu/packages/scheme.scm (chez-scheme): Add 'configure-flags', generalize
  'configure' phase and simplify 'install-doc' phase.
---
 gnu/packages/scheme.scm | 21 -
 1 file changed, 12 insertions(+), 9 deletions(-)

diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index c461efb..10368b2 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -645,6 +645,14 @@ threads.")
   (guix build utils)
   (ice-9 match))
#:test-target "test"
+   #:configure-flags
+   (list ,(match (or (%current-target-system) (%current-system))
+("x86_64-linux" '(list "--machine=ta6le"))
+("i686-linux" '(list "--machine=ti3le"))
+;; FIXME: Some people succeeded in cross-compiling to
+;; ARM. https://github.com/cisco/ChezScheme/issues/13
+(_
+ '(
#:phases
(modify-phases %standard-phases
  ;; Adapt the custom 'configure' script.
@@ -673,12 +681,9 @@ threads.")
(substitute* (find-files "./c" "Mf-[a-zA-Z0-9.]+")
  (("\\$\\{Kernel\\}: \\$\\{kernelobj\\} \\.\\./zlib/libz\\.a")
   "${Kernel}: ${kernelobj}")
- (("ld -melf_x86_64 -r -X -o \\$\\{Kernel\\} \\$\\{kernelobj\\} \\.\\./zlib/libz\\.a")
-  (string-append "ld -melf_x86_64 -r -X -o ${Kernel} ${kernelobj} "
- zlib "/lib/libz.a"))
- (("\\(cd \\.\\./zlib; CFLAGS=-m64 \\./configure --64)")
-  (which "true"))
- (("(cd \\.\\./zlib; make)")
+ (("ld ([-a-zA-Z0-9_${} ]+) \\.\\./zlib/libz\\.a" all args)
+  (string-append "ld " args " " zlib "/lib/libz.a"))
+ (("\\(cd \\.\\./zlib; ([-a-zA-Z0-9=./ ]+))")
   (which "true")))
(substitute* (find-files "mats" "Mf-.*")
  (("^[[:space:]]+(cc ) *") "\tgcc "))
@@ -715,9 +720,7 @@ threads.")
(system* "make" "docs")
(with-directory-excursion "csug"
  (substitute* "Makefile"
-   (("/tmp/csug9") doc)
-   (("^m = a6le")
-"m := $(shell echo '(machine-type)' | scheme -q)"))
+   (("/tmp/csug9") doc))
  (system* "make" "install")
  (install-file "csug.pdf" doc))
(with-directory-excursion "release_notes"
-- 
2.7.4

From 0f2766f86058762443645583b491fb9097a510a3 Mon Sep 17 00:00:00 2001
From: Federico Beffa 
Date: Mon, 17 Oct 2016 09:05:39 +0200
Subject: [PATCH 03/17] gnu: chez-scheme: Move to new module.

* gnu/packages/scheme.scm (chez-scheme, nanopass, stex): Move variables ...
* gnu/packages/chez.scm (chez-scheme, nanopass, stex): ... here. New module.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add new file.
---
 gnu/local.mk|   1 +
 gnu/packages/chez.scm   | 196 
 gnu/packages/scheme.scm | 161 ---
 3 files changed, 197 insertions(+), 161 deletions(-)
 create mode 100644 gnu/packages/chez.scm

diff --git a/gnu/local.mk b/gnu/local.mk
index 521ba2d..9de9b1b 100644