Re: GSoC: Manolis to work on Guix port to GNU/Hurd

2015-04-29 Thread David Thompson
Andreas Enge  writes:

> Hello, Manolis, and welcome!
>
> On Thu, Apr 30, 2015 at 12:01:44AM +0300, Manolis Ragkousis wrote:
>> I just wanted to add that I will keep a repo at github which I will upload 
>> any
>> (serious) local changes before I send them as patches so anyone can keep
>> an eye on the current status of my work.
>
> I am not quite sure how this is supposed to make things easier. Why not simply
> use a branch in the guix repo (like the existing wip-hurd, or wip-wip-hurd for
> very experimental changes)? Then every commit of yours will be sent to our
> mailing list, and you develop directly in our infrastructure.
>
> Not to mention that github is not exactly popular in the free software
> community, see "service as a software substitute", or
>https://www.gnu.org/philosophy/who-does-that-server-really-serve.html

I don't see any issue with a personal fork hosted on GitHub.

-- 
David Thompson
Web Developer - Free Software Foundation - http://fsf.org
GPG Key: 0FF1D807
Support the FSF: https://fsf.org/donate



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

2015-04-29 Thread Andreas Enge
On Sun, Apr 26, 2015 at 05:57:42PM -0400, David Thompson wrote:
> + "BlueZ provides support for the core Bluetooth layers and protocols. It
> +is flexible, efficient and uses a modular implementation.")

Double space after period.

Otherwise it looks good.

Andreas




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

2015-04-29 Thread Andreas Enge
On Sun, Apr 26, 2015 at 05:54:44PM -0400, David Thompson wrote:
>  create mode 100644 gnu/packages/libical.scm

Maybe calendar.scm? (I am not sure if we will have other calendar related
packages, but who knows.)

> + "Libical is an Open Source implementation

Ts, ts, ts.

Otherwise looks good.

Andreas




Re: GSoC: Manolis to work on Guix port to GNU/Hurd

2015-04-29 Thread Andreas Enge
Hello, Manolis, and welcome!

On Thu, Apr 30, 2015 at 12:01:44AM +0300, Manolis Ragkousis wrote:
> I just wanted to add that I will keep a repo at github which I will upload any
> (serious) local changes before I send them as patches so anyone can keep
> an eye on the current status of my work.

I am not quite sure how this is supposed to make things easier. Why not simply
use a branch in the guix repo (like the existing wip-hurd, or wip-wip-hurd for
very experimental changes)? Then every commit of yours will be sent to our
mailing list, and you develop directly in our infrastructure.

Not to mention that github is not exactly popular in the free software
community, see "service as a software substitute", or
   https://www.gnu.org/philosophy/who-does-that-server-really-serve.html

Andreas




Re: [PATCH] gnu: mesa: Add libva input.

2015-04-29 Thread Taylan Ulrich Bayırlı/Kammer
Andreas Enge  writes:

> On Tue, Apr 28, 2015 at 10:21:25PM +0200, Taylan Ulrich Bayırlı/Kammer wrote:
>> notably I put the libva-without-mesa package into video.scm
>> because I was getting circular import problems:
>> +(define-public libva-no-mesa
>
> Is there no other solution that does not expose the package to the public?
> After all, it is not supposed to be installed explicitly by a user if I
> understood you correctly.

Right.  I don't know what I did wrong before, but it actually seems to
work fine to put it in gl.scm.  New patch:

>From 88befe34eb2d92fe81ac2a897934b9aad0b9a22d Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Taylan=20Ulrich=20Bay=C4=B1rl=C4=B1/Kammer?=
 
Date: Tue, 28 Apr 2015 15:08:47 +0200
Subject: [PATCH 3/4] gnu: mesa: Add libva input.

There is a circular dependency between Mesa and libVA, so we use a
libva-for-mesa package that builds libVA without GLX and EGL support, and use
that for building Mesa.

* gnu/packages/gl.scm (libva-for-mesa): New variable.
(mesa): Add as input.
---
 gnu/packages/gl.scm | 18 --
 1 file changed, 16 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index a40749e..8159073 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -21,11 +21,13 @@
 
 (define-module (gnu packages gl)
   #:use-module (ice-9 match)
+  #:use-module (guix build utils)
   #:use-module ((guix licenses) #:prefix l:)
   #:use-module (guix packages)
   #:use-module (guix download)
   #:use-module (guix build-system gnu)
   #:use-module (guix packages)
+  #:use-module (guix utils)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages flex)
@@ -37,6 +39,7 @@
   #:use-module (gnu packages xml)
   #:use-module (gnu packages fontutils)
   #:use-module (gnu packages guile)
+  #:use-module (gnu packages video)
   #:use-module (gnu packages xdisorg))
 
 (define-public glu
@@ -159,6 +162,18 @@ Polygon meshes, and Extruded polygon meshes")
 also known as DXTn or DXTC) for Mesa.")
 (license l:expat)))
 
+(define libva-no-mesa
+  (package
+(inherit libva)
+(name "libva-no-mesa")
+(inputs (alist-delete "mesa" (package-inputs libva)))
+(arguments
+ (strip-keyword-arguments
+  '(#:make-flags)
+  (substitute-keyword-arguments (package-arguments libva)
+((#:configure-flags flags)
+ '(list "--disable-glx" "--disable-egl")))
+
 (define-public mesa
   (package
 (name "mesa")
@@ -188,8 +203,7 @@ also known as DXTn or DXTC) for Mesa.")
 ("dri3proto" ,dri3proto)
 ("presentproto" ,presentproto)
 ("expat" ,expat)
-;; TODO: Solve circular dependency with libva.
-;; ("libva" ,libva)
+("libva" ,libva-no-mesa)
 ("libxml2" ,libxml2)
 ;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support
 ("libxvmc" ,libxvmc)
-- 
2.2.1



Re: GSoC: Manolis to work on Guix port to GNU/Hurd

2015-04-29 Thread Samuel Thibault
Manolis Ragkousis, le Thu 30 Apr 2015 00:01:44 +0300, a écrit :
> Also I was discussing with Ludovic on how to keep everybody up to date.
> We thought it would be nice to have regular irc talks

Indeed, that's a good way to make sure questions don't remain in the
dark.

Samuel



Re: [PATCH] gnu: mesa: Add libva input.

2015-04-29 Thread Andreas Enge
On Tue, Apr 28, 2015 at 10:21:25PM +0200, Taylan Ulrich Bayırlı/Kammer wrote:
> notably I put the libva-without-mesa package into video.scm
> because I was getting circular import problems:
> +(define-public libva-no-mesa

Is there no other solution that does not expose the package to the public?
After all, it is not supposed to be installed explicitly by a user if I
understood you correctly.

Andreas




Re: [PATCH] gnu: mesa: Update to 10.5.4.

2015-04-29 Thread Andreas Enge
On Tue, Apr 28, 2015 at 01:38:15PM +0200, Taylan Ulrich Bayırlı/Kammer wrote:
> In any case, it builds fine when I remove said hack (doesn't seem
> necessary anymore), and also remove all four from native inputs.

This is good news.

"Said hack" was a work-around for the following bug:
   https://bugs.freedesktop.org/show_bug.cgi?id=58812
Strangely enough, the bug was not closed, but maybe it was fixed by accident
in a newer version of mesa.

Quite a few things depend on mesa:
   Building the following 130 packages would ensure 205 dependent packages are 
rebuilt
So it would be good to check whether it still builds on mips after the update
(Mark? my machine is so incredibly slow that I would prefer not to build
a big package). And maybe push it in a new core-update cycle then.

> (Actually there are also some .py files in the source tree which I'm
> told might be necessary at build time regardless of rebuilding the build
> system, but this doesn't seem to be the case for us, maybe because
> they're only needed for some optional features which we don't have
> enabled.)

There is the following comment:
  ;; TODO: Add 'libxml2-python' for OpenGL ES 1.1 and 2.0 support
So maybe python might be needed one day, but is not needed now?
Did you try to check that the outcome is "the same" when dropping python?
There are no missing features that are more or less silently dropped when
removing python?
The mesa install page
   http://mesa3d.org/install.html
states the following:
"1. Prerequisites for building
1.1 General
Python - Python is required. Version 2.6.4 or later should work.
Python Mako module - Python Mako module is required. Version 0.7.3 or later 
should work.
SCons is required for building on Windows and optional for Linux (it's an 
alternative to autoconf/automake.)"

Andreas




Re: GSoC: Manolis to work on Guix port to GNU/Hurd

2015-04-29 Thread Manolis Ragkousis
Hello everyone and thank you :-)

On 29 April 2015 at 22:40, Ludovic Courtès  wrote:

> Manolis, Samuel: feel free to mention whatever I forgot!
>

I just wanted to add that I will keep a repo at github which I will upload any
(serious) local changes before I send them as patches so anyone can keep
an eye on the current status of my work.

Here is the link: https://github.com/Phant0mas/Guix-on-Hurd

Also I was discussing with Ludovic on how to keep everybody up to date.
We thought it would be nice to have regular irc talks and once per week I
will send a report on the status of my work on both mailing lists.
WDYT Samuel?

Thank you :-)
Manolis



Re: [PATCH] gnu: Add xxhash.

2015-04-29 Thread Andreas Enge
On Tue, Apr 28, 2015 at 11:36:29AM -0400, David Thompson wrote:
> I don't like it either, but there's no existing module that makes
> sense.  Can anyone think of one?  It this tool created cryptographic
> hashes then I would have put it in crypto.scm.

Like the two packages in boost.scm, it looks like something to go into
"data structures and algorithms", but this does not make for a nice module
name... "datastructures.scm" could be one, but I am not really convinced
by it either.

Andreas




Re: OfflineIMAP and Python

2015-04-29 Thread Ricardo Wurmus

Paul van der Walt writes:

> On 2015-04-23 at 21:04, quoth Ludovic Courtès:
>> But I suspect that gives you /usr/bin/python instead of
>> /home/paul/.guix-profile/bin/python no?  Changing the shebang to
>> explicitly use the latter would be safer.
>
> Ah i hadn't understood that. Okay, i've put the literal Guix python path
> there, but it still gives me the "assert" errors. This does not happen
> if i `guix package -r offlineimap`. Therefore, i don't think that was
> the problem.

Could you try without the "pythonfile" line in your ~/.offlineimaprc and
let us know if there's any different behaviour?

I'm using offlineimap (installed from Guix on Fedora) without any
problems.




Re: GSoC: Manolis to work on Guix port to GNU/Hurd

2015-04-29 Thread Svante Signell
On Wed, 2015-04-29 at 21:40 +0200, Ludovic Courtès wrote:
> Hello!

> So please welcome Manolis again.  :-)

Manolis, welcome. Any contribution to GNU/Hurd is appreciated,
especially the packaging :) 




Re: qemu-nbd: Failed to bind socket: No such file or directory

2015-04-29 Thread Ludovic Courtès
宋文武  skribis:

> Ludovic Courtès  writes:
>
>> 白い熊@相撲道  skribis:
>>
>>> On 2015-03-26 22:24, l...@gnu.org wrote:
 I have no idea, but I would recommend running:

   sudo strace -o log qemu-nbd -c /dev/nbd0 disk.qcow2

 and then find out the socket name in ‘log’ above “Failed to bind
 socket”.
>>>
>>> Yeah, was exploring this... I'm attaching the strace log, I don't
>>> understand what's causing it... Any ideas?
>>
>> [...]
>>
>>> --- SIGCHLD {si_signo=SIGCHLD, si_code=CLD_EXITED, si_pid=2063, 
>>> si_status=0, si_utime=0, si_stime=0} ---
>>> read(3, "Failed to bind socket: No such f"..., 1024) = 49
>>> write(2, "Failed to bind socket: No such f"..., 49) = 49
>>
>> The problem seems to happen in a child process.  Can you add the ‘-f’
>> flag to the ‘strace’ command line so we have details about child
>> processes?
> I tried 'strace -f', then find out that qemu-nbd need access to "/var/lock".
> After "mkdir /var/lock", it works.

Thanks, I’ve committed this:

--- a/gnu/build/install.scm
+++ b/gnu/build/install.scm
@@ -121,6 +121,7 @@ STORE."
 (directory "/bin")
 (directory "/tmp" 0 0 #o1777) ; sticky bit
 (directory "/var/tmp" 0 0 #o1777)
+(directory "/var/lock" 0 0 #o1777)
 
 (directory "/root" 0 0)   ; an exception

Ludo’.


Re: [PATCH] Patch Qt 5.4 for i686.

2015-04-29 Thread Taylan Ulrich Bayırlı/Kammer
l...@gnu.org (Ludovic Courtès) writes:

> Mark H Weaver  skribis:
>
>> Please, let's not do that.  We should be moving in the other direction,
>> by using less, not more, of the unbelievably massive amount of bundled
>> stuff in Qt.
>
> Agreed.
>
>> If this "fix" is the really best we can hope for from upstream, then
>> let's do it this way instead: after unpacking Qt 5, make a copy of
>> glext.h from *our* system Mesa, apply the above patch to that copy, and
>> arrange for that patched copy to be found first in the include search
>> path during the Qt build.  Then at least we will have only one copy of
>> Mesa in memory and only one copy of the Mesa source code to maintain
>> (for security fixes, fixes for non-Intel platforms, fixes for Guix,
>> etc).
>
> Sounds like a good plan.
>
>> Thanks again, Taylan, for working on this unpleasant task.
>
> Indeed, this is neither easy nor funny, but work in this area is
> definitely appreciated!
>
> Thanks,
> Ludo’.

Seems I left this thread dangling; I sent a new patch in a new thread on
the meanwhile.  And it even seems to work this time. :-)

Taylan



Re: [PATCH] services: Add console-keymap service.

2015-04-29 Thread Ludovic Courtès
Alex Kost  skribis:

> From f879481f96386617d070b146aa2c3d1988deff40 Mon Sep 17 00:00:00 2001
> From: Alex Kost 
> Date: Sat, 25 Apr 2015 22:52:29 +0300
> Subject: [PATCH] services: Add console-keymap service.
> MIME-Version: 1.0
> Content-Type: text/plain; charset=UTF-8
> Content-Transfer-Encoding: 8bit
>
> * gnu/services/base.scm (console-keymap-service): New procedure.
> * doc/guix.texi (Base Services): Document it.
>
> Co-authored-by: 宋文武 

[...]

> +  (documentation
> +   (string-append "Load '" file "' console keymap (loadkeys)."))

Please make it a literal string, thus omitting FILE entirely.

Otherwise LGTM, please push.

Eventually, this should probably be promoted as a field in
‘operating-system’, with the service automatically added as part of
‘essential-services’.  WDYT?

Thanks to both of you!

Ludo’.



Re: elogind WIP

2015-04-29 Thread Ricardo Wurmus

Ludovic Courtès writes:

> Ricardo Wurmus  skribis:
>
>> I restored a few files needed to produce man page, renamed two instances
>> of "systemd.version", and disabled DTD validation.  There are,
>> unfortunately, even more XML files that are missing, but they look like
>> we shouldn't want them to be part of elogind:
>>
>>   XSLT man/sd-login.html
>> warning: failed to load external entity "man/libsystemd-pkgconfig.xml"
>> man/sd-login.xml:118: element include: XInclude error : could not load 
>> man/libsystemd-pkgconfig.xml, and no fallback was found
>> Makefile:4988: recipe for target 'man/sd-login.html' failed
>> make[2]: *** [man/sd-login.html] Error 6
>
> sd-login.html sounds like it may have something to do with the logind
> part of systemd, no?

It seems that libsystemd has already been renamed to libelogind, so I
went ahead and restored libsystemd-pkgconfig.xml as
libelogind-pkgconfig.xml and changed all references to it.  I will
continue to play with this in the coming days.

>> What to do with these files?  Should we ignore the man page generation
>> for now and rewrite the wee bit we need for elogind?  (Or should elogind
>> stay close to systemd upstream to make it easier to track development?)
>
> I guess we should stay close to upstream.  Nevertheless, we should skip
> manual page generation for now if that’s too much of a hindrance, so we
> can get started with the more interesting parts.  WDYT?

Okay.  I'll play around a little more and report back if man page
generation is taking too much time to get it right.

~~ Ricardo




Re: pkg-config "Requires" fields and propagated inputs

2015-04-29 Thread Taylan Ulrich Bayırlı/Kammer
Picking this topic back up after some things got in between:

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

> taylanbayi...@gmail.com (Taylan Ulrich "Bayırlı/Kammer") skribis:
>
>> Maybe I should try to move to a strategy that calls pkg-config instead
>> of parsing the files in Guile, but it might be nontrivial to get the
>> PKG_CONFIG_PATH right for each call, and doing many execs might be too
>> slow, so I'll first see how much further I can get with this strategy.
>
> Yeah forking would be slow; parsing sounds good.  However, the ‘satisfy’
> predicates could be based on actual package contents (when available):
> looking for actual .pc files and libraries.

I overhauled the strategy somewhat, and indeed look for actual .pc files
(under $prefix/lib/pkgconfig directories) and libfoo.so files (under
$prefix/lib directories) now.  For .pc files, the extension is stripped,
for libfoo.so files, the foo part is taken.  These then serve as exact
pkg-config package names and library names respectively, making
everything more robust.  Thanks for the idea!

>> $ ./pre-inst-env guile -c '((@ (guix missing-propagated-inputs) 
>> print-missing-propagated-inputs))'
>> "fftw": ("-lfftw3" "-lm")
>> "fftwf": ("-lfftw3f" "-lm")
>
> This is a false positives: -lfftw3* is actually provided by the package
> itself, and -lm is part of libc, so it’s always found (libc libraries
> will have to be special-cased.)

Libc components are now handled.  The fftw3 stuff is handled fine under
the new strategy.

>> "apr": ("-ldl" "-lpthread" "-lcrypt" "-lrt" "-lapr-${APR_MAJOR_VERSION}")
>
> Again libc libraries, and the library of APR itself.  Problem is that
> this one requires almost a full reimplementation of pkg-config, to be
> able to do variable substitution (probably not insurmountable though.)

Implementing variable substitution was fairly straightforward, so these
are fine now.

>> "guile": ("-lgc" "-lffi")
>
> guile-2.0.pc has this:
>
>   Libs: -L${libdir} -lguile-2.0 
> -L/gnu/store/dxfv00pgmnhxkj5jh3yxyp0q94l6i2ch-libgc-7.4.2/lib -lgc
>
> So here -lgc is a false positive: libgc is found by virtue of the -L
> flag.

The -L flags are handled too now; the directory they point at is handled
equivalently to $prefix/lib directories under the new strategy.
(I.e. they're scanned for libfoo.so files.)

> ‘-lffi’ only appears in ‘Libs.private’ (static linking) so I would just
> ignore it.

You're right; unlike Requires.private, Libs.private has no effect on
e.g. pkg-config --exists, so it's really only for static linking; I
removed the parsing of Libs.private fields.

> It looks like there are 3 classes of false positives here that would
> need to be addressed to make the report more directly readable.

I think all these false positives are fixed now!

New sample output from my machine:

portaudio: pkg-config: () libs: ("asound")
avahi: pkg-config: ("glib-2.0" "gobject-2.0" "glib-2.0") libs: ()
libatomic-ops: pkg-config: () libs: ("atomic_ops")
ijs: pkg-config: () libs: ("ijs")
mesa: pkg-config: ("xcb-dri3" "xcb-dri2" "libudev" "xcb-dri3" "xcb-dri2") libs: 
()
dbus-glib: pkg-config: ("gobject-2.0" "glib-2.0" "dbus-1") libs: ()
libcroco: pkg-config: ("libxml-2.0" "glib-2.0") libs: ()
gst-plugins-base: pkg-config: ("gio-2.0" "glib-2.0" "gio-2.0") libs: ()
harfbuzz: pkg-config: ("icu-uc") libs: ()
gtk+: pkg-config: ("gio-2.0" "cairo" "gio-2.0" "cairo" "gio-2.0" "cairo") libs: 
()
pango: pkg-config: ("gobject-2.0" "glib-2.0" "gmodule-no-export-2.0" 
"fontconfig" "freetype2" "xft") libs: ()
cairo: pkg-config: ("xcb-shm" "xcb-render" "xcb-render") libs: ("z" "z")
eudev: pkg-config: ("gobject-2.0" "glib-2.0") libs: ()
qpdf: pkg-config: ("zlib") libs: ()
poppler: pkg-config: ("cairo" "cairo" "gio-2.0" "gobject-2.0" "glib-2.0") libs: 
()
pulseaudio: pkg-config: ("glib-2.0") libs: ()
libdvdnav: pkg-config: ("dvdread") libs: ()
libxslt: pkg-config: ("libxml-2.0" "libxml-2.0") libs: ("z" "z")
libxv: pkg-config: ("xproto" "xext" "x11") libs: ()
libx11: pkg-config: ("xproto") libs: ()
libxmu: pkg-config: ("xt" "x11" "xproto" "xext" "xt" "x11" "x11" "xproto" 
"x11") libs: ()
libxinerama: pkg-config: ("xext" "x11") libs: ()
libxft: pkg-config: ("xproto") libs: ()
libxext: pkg-config: ("x11") libs: ()
libxaw: pkg-config: ("xproto" "x11" "xproto" "x11") libs: ()
libxdmcp: pkg-config: ("xproto") libs: ()
libxpm: pkg-config: ("x11" "x11") libs: ()
libxkbfile: pkg-config: ("kbproto" "x11") libs: ()
xkbcomp: pkg-config: ("x11") libs: ()
libxxf86vm: pkg-config: ("x11") libs: ()
libxrender: pkg-config: ("x11" "xproto" "x11") libs: ()
libxfixes: pkg-config: ("xproto" "x11") libs: ()
libxt: pkg-config: ("xproto") libs: ()
libsm: pkg-config: ("xproto") libs: ()

Taylan



Re: [PATCH] Patch Qt 5.4 for i686.

2015-04-29 Thread Ludovic Courtès
Mark H Weaver  skribis:

> Please, let's not do that.  We should be moving in the other direction,
> by using less, not more, of the unbelievably massive amount of bundled
> stuff in Qt.

Agreed.

> If this "fix" is the really best we can hope for from upstream, then
> let's do it this way instead: after unpacking Qt 5, make a copy of
> glext.h from *our* system Mesa, apply the above patch to that copy, and
> arrange for that patched copy to be found first in the include search
> path during the Qt build.  Then at least we will have only one copy of
> Mesa in memory and only one copy of the Mesa source code to maintain
> (for security fixes, fixes for non-Intel platforms, fixes for Guix,
> etc).

Sounds like a good plan.

> Thanks again, Taylan, for working on this unpleasant task.

Indeed, this is neither easy nor funny, but work in this area is
definitely appreciated!

Thanks,
Ludo’.



Re: OfflineIMAP and Python

2015-04-29 Thread Ludovic Courtès
Paul van der Walt  skribis:

> On 2015-04-23 at 21:04, quoth Ludovic Courtès:
>> But I suspect that gives you /usr/bin/python instead of
>> /home/paul/.guix-profile/bin/python no?  Changing the shebang to
>> explicitly use the latter would be safer.
>
> Ah i hadn't understood that. Okay, i've put the literal Guix python path
> there, but it still gives me the "assert" errors. This does not happen
> if i `guix package -r offlineimap`.

It may be a genuine error, and the other distro’s offlineimap (or its
dependencies) might be different?

Ludo’.



Re: elogind WIP

2015-04-29 Thread Ludovic Courtès
Ricardo Wurmus  skribis:

> I restored a few files needed to produce man page, renamed two instances
> of "systemd.version", and disabled DTD validation.  There are,
> unfortunately, even more XML files that are missing, but they look like
> we shouldn't want them to be part of elogind:
>
>   XSLT man/sd-login.html
> warning: failed to load external entity "man/libsystemd-pkgconfig.xml"
> man/sd-login.xml:118: element include: XInclude error : could not load 
> man/libsystemd-pkgconfig.xml, and no fallback was found
> Makefile:4988: recipe for target 'man/sd-login.html' failed
> make[2]: *** [man/sd-login.html] Error 6

sd-login.html sounds like it may have something to do with the logind
part of systemd, no?

> What to do with these files?  Should we ignore the man page generation
> for now and rewrite the wee bit we need for elogind?  (Or should elogind
> stay close to systemd upstream to make it easier to track development?)

I guess we should stay close to upstream.  Nevertheless, we should skip
manual page generation for now if that’s too much of a hindrance, so we
can get started with the more interesting parts.  WDYT?

Thanks for looking into it!

Ludo’.



GSoC: Rémi to work on package distribution over GNUnet

2015-04-29 Thread Ludovic Courtès
Hello!

I’m happy to announce that Rémi Birot-Delrue will be working on binary
package distribution for Guix using GNUnet as part of Google’s Summer of
Code, as described at
.
Rémi will be mentored by Bart Polot, Matthias Wachs, and myself.

The goal is to have a command akin to ‘guix publish’ allowing users to
publish build results using GNUnet file sharing, and to have a
“substituter” allowing users to retrieve build results over GNUnet (see

for some background.)

Rémi plans to start working on Guile bindings for GNUnet’s file sharing
(presumably using the FFI), and then to start working on the substituter
itself (based on ‘guix substitute’) and the publisher.

I think the Guile bindings could be hosted in GNUnet’s repo, and the
rest could go in a branch in Guix’s repo.

Anyway please welcome Rémi on #guix and #gnunet!  :-)

Bart, Matthias, and Rémi: please add anything I forgot to mention!

Thanks,
Ludo’.


signature.asc
Description: PGP signature


GSoC: Manolis to work on Guix port to GNU/Hurd

2015-04-29 Thread Ludovic Courtès
Hello!

I’m pleased to announce that Manolis Ragkousis will (at last!) be
working on the Guix port to GNU/Hurd as part of Google’s Summer of
Code as described at
.
Manolis will be mentored by Samuel Thibault and myself.

Manolis actually started working on this more than a year ago, so
chances are that you already met.  ;-)  So far Manolis has almost
completed preliminary work to permit cross-compilation from GNU/Linux to
GNU/Hurd using Guix.  This was the first step towards bootstrapping
GuixSD natively on GNU/Hurd (see
),
which will be the main focus of this GSoC.  The second part of this GSoC
will focus on adjusting GuixSD to boot GNU/Hurd.

The code will be hosted in the Guix repo, probably in branches that we
will gradually merge in ‘master’.  It is excellent news that Manolis’
work will be able to build upon releases of Hurd/Mach/MiG.  The last
missing bit upstream is a libc-for-hurd tarball.

So please welcome Manolis again.  :-)

Manolis, Samuel: feel free to mention whatever I forgot!

Thanks,
Ludo’.


signature.asc
Description: PGP signature


GSoC: Rohan to work on DHCP client

2015-04-29 Thread Ludovic Courtès
Hello!

I am pleased to announce that Rohan Prinja has been selected to work on
the DHCP client project described at
 and
 as
part of Google’s Summer of Code, with me as the mentor.

The eventual goal is to have the DHCP client tightly integrated with
GNU dmd (used in the GuixSD distribution), but the project is certainly
relevant to Schemers in general.

So please welcome Rohan in Guix and Guile circles.  :-)

To begin with, I think we’ll host the code in its own repo on Savannah,
presumably guix/dhcp.git.

Rohan, anything to add?

Thanks,
Ludo’.


signature.asc
Description: PGP signature


Re: GuixSD in a kvm

2015-04-29 Thread Christian Thaeter
Am Mon, 27 Apr 2015 04:38:39 +0200
schrieb Christian Thaeter :

> I am trying to get GSD running inside a kvm (debian jessy, with a
> vanilla 4,0 kernel) but having problems to boot the system.


Yay, i've now installed a basic debian, build guix from source, did a
guix pull, then system init on another virtual drive and booting into
that. IT WORKS!

I have no clue what the error was with the usb-install image, tough.
Well now I can start playing with GuixSD.

Christian

> 
> The system configuration is pretty much the same as from the example,
> just changed username, filesystem label and type to ext4.

> 
> I've used 'gsd-usb-install-0.8.1.x86_64-linux' for installation.
> 
> The first try failed, when rebooting the kernel can't be found.
> 
>   http://public.pipapo.org/guixboot.png (sorry, no c'n'paste from the
>   vm)
> 
> investigating the case from the grub commandline reveals that grub is
> unable to read the /gnu/store 
>  http://public.pipapo.org/guixboot2.png
> 
> This seems to be a problem with the emulated SATA disk.
> 
> When reconfiguring the disk to IDE or Virtio it starts booting but
> ends up in a kernel panic
>  http://public.pipapo.org/guix3.png
> 
> killing init? wtf anyone has an idea what could be going wrong
> there?
> 
>   Christian
> 



[PATCH] gnu: qt: Fix for i686.

2015-04-29 Thread Taylan Ulrich Bayırlı/Kammer
This is really hacky but seems to work.

>From 35fdd9e2fcd5b953b3a088d0bb22d84f7dc5ded9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Taylan=20Ulrich=20Bay=C4=B1rl=C4=B1/Kammer?=
 
Date: Fri, 24 Apr 2015 10:43:57 +0200
Subject: [PATCH 4/4] gnu: qt: Fix for i686.

See .

* gnu/packages/qt.scm (qt): Copy mesa's GL headers to a temporary directory,
  patching them for Qt.
---
 gnu/packages/qt.scm | 25 +++--
 1 file changed, 23 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index 8de1ffe..0f4282d 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -166,8 +166,29 @@ webrtc/tools/e2e_quality/audio/perf")
  `(#:phases
  (alist-replace
   'configure
-  (lambda* (#:key outputs #:allow-other-keys)
-(let ((out (assoc-ref outputs "out")))
+  (lambda* (#:key inputs outputs #:allow-other-keys)
+;; Mesa headers need monkey-patching for Qt.  See:
+;; https://bugreports.qt.io/browse/QTBUG-45205
+(let* ((out (assoc-ref outputs "out"))
+   (mesa (assoc-ref inputs "mesa"))
+   (mesa-include (string-append mesa "/include"))
+   (mesa-pkgconfig (string-append mesa "/lib/pkgconfig"))
+   (mesa* (tmpnam))
+   (mesa*-include (string-append mesa* "/include"))
+   (mesa*-pkgconfig (string-append mesa* "/lib/pkgconfig")))
+  (copy-recursively mesa-include mesa*-include)
+  (substitute* (string-append mesa*-include "/GL/glext.h")
+(("typedef ptrdiff_t GLsizeiptr;" all)
+ (string-append "#ifndef BUILDING_CHROMIUM\n" all))
+(("typedef ptrdiff_t GLintptr;" all)
+ (string-append all "\n#endif")))
+  (copy-recursively mesa-pkgconfig mesa*-pkgconfig)
+  (substitute* (find-files mesa*-pkgconfig "\\.pc$")
+(("includedir=.*")
+ (string-append "includedir=" mesa*-include "\n")))
+  (setenv "PKG_CONFIG_PATH"
+  (string-append mesa*-pkgconfig ":"
+ (getenv "PKG_CONFIG_PATH")))
   (substitute* '("configure" "qtbase/configure")
 (("/bin/pwd") (which "pwd")))
   (substitute* "qtbase/src/corelib/global/global.pri"
-- 
2.2.1



[PATCH] gnu: Add zeromq.

2015-04-29 Thread Ricardo Wurmus
This depends on my previous patch to rename socat.scm to
networking.scm[1].

[1]: http://lists.gnu.org/archive/html/guix-devel/2015-04/msg00555.html

>From 992c61b9e4a87a3a21a24c163928950031390804 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus 
Date: Wed, 29 Apr 2015 16:52:46 +0200
Subject: [PATCH] gnu: Add zeromq.

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

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 5429535..b9125af 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2014 Ludovic Courtès 
+;;; Copyright © 2015 Ricardo Wurmus 
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -53,3 +54,26 @@ line, to logically connect serial lines on different computers, or to
 establish a relatively secure environment (su and chroot) for running client
 or server shell scripts with network connections. ")
 (license license:gpl2)))
+
+(define-public zeromq
+  (package
+(name "zeromq")
+(version "4.0.5")
+(source (origin
+  (method url-fetch)
+  (uri (string-append "http://download.zeromq.org/zeromq-";
+  version ".tar.gz"))
+  (sha256
+   (base32
+"0arl8fy8d03xd5h0mgda1s5bajwg8iyh1kk4hd1420rpcxgkrj9v"
+(build-system gnu-build-system)
+(home-page "http://zeromq.org";)
+(synopsis "Library for message-based applications")
+(description
+ "The 0MQ lightweight messaging kernel is a library which extends the
+standard socket interfaces with features traditionally provided by specialized
+messaging middle-ware products.  0MQ sockets provide an abstraction of
+asynchronous message queues, multiple messaging patterns, message
+filtering (subscriptions), seamless access to multiple transport protocols and
+more.")
+(license license:lgpl3+)))
-- 
2.1.0



[PATCH] rename socat.scm to networking.scm.

2015-04-29 Thread Ricardo Wurmus
Hi Guix,

I'm packaging zeromq and would like to place it in a networking module.
As we already have socat and tcpdump, I think it makes sense to put them
all into the same networking module.

Attached is a patch to rename socat.scm.  If that's okay I'll place my
zeromq package definition there.

~~ Ricardo

>From e66acd5c9f50e675a2d7543ac028b2fdbb7d12da Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus 
Date: Wed, 29 Apr 2015 16:26:34 +0200
Subject: [PATCH] gnu: rename (gnu packages socat) to (gnu packages
 networking).

* gnu/packages/socat.scm: Rename this ...
* gnu/packages/networking.scm: ... to this.
* gnu-system.am (GNU_SYSTEM_MODULES): Change socat.scm to networking.scm.
---
 gnu-system.am   |  2 +-
 gnu/packages/networking.scm | 55 +
 gnu/packages/socat.scm  | 55 -
 3 files changed, 56 insertions(+), 56 deletions(-)
 create mode 100644 gnu/packages/networking.scm
 delete mode 100644 gnu/packages/socat.scm

diff --git a/gnu-system.am b/gnu-system.am
index 617e8bb..ef12b4f 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -217,6 +217,7 @@ GNU_SYSTEM_MODULES =\
   gnu/packages/ncurses.scm			\
   gnu/packages/netpbm.scm			\
   gnu/packages/nettle.scm			\
+  gnu/packages/networking.scm			\
   gnu/packages/ninja.scm			\
   gnu/packages/node.scm\
   gnu/packages/noweb.scm			\
@@ -273,7 +274,6 @@ GNU_SYSTEM_MODULES =\
   gnu/packages/slang.scm			\
   gnu/packages/slim.scm\
   gnu/packages/smalltalk.scm			\
-  gnu/packages/socat.scm			\
   gnu/packages/ssh.scm\
   gnu/packages/stalonetray.scm			\
   gnu/packages/statistics.scm			\
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
new file mode 100644
index 000..5429535
--- /dev/null
+++ b/gnu/packages/networking.scm
@@ -0,0 +1,55 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2014 Ludovic Courtès 
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see .
+
+(define-module (gnu packages networking)
+  #:use-module ((guix licenses) #:prefix license:)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix build-system gnu)
+  #:use-module (gnu packages openssl))
+
+;; XXX: Group with other networking tools like tcpdump in a module?
+(define-public socat
+  (package
+(name "socat")
+(version "1.7.2.4")
+(source (origin
+  (method url-fetch)
+  (uri (string-append
+"http://www.dest-unreach.org/socat/download/socat-";
+version ".tar.bz2"))
+  (sha256
+   (base32
+"028yjka2zr6j1i8pmfmvzqki8ajczdl1hnry1x31xbbg3j83jxsb"
+(build-system gnu-build-system)
+(arguments '(#:tests? #f));no 'check' phase
+(inputs `(("openssl" ,openssl)))
+(home-page "http://www.dest-unreach.org/socat/";)
+(synopsis
+ "Open bidirectional communication channels from the command line")
+(description
+ "socat is a relay for bidirectional data transfer between two independent
+data channels---files, pipes, devices, sockets, etc.  It can create
+\"listening\" sockets, named pipes, and pseudo terminals.
+
+socat can be used, for instance, as TCP port forwarder, as a shell interface
+to UNIX sockets, IPv6 relay, for redirecting TCP oriented programs to a serial
+line, to logically connect serial lines on different computers, or to
+establish a relatively secure environment (su and chroot) for running client
+or server shell scripts with network connections. ")
+(license license:gpl2)))
diff --git a/gnu/packages/socat.scm b/gnu/packages/socat.scm
deleted file mode 100644
index 7c0bc3d..000
--- a/gnu/packages/socat.scm
+++ /dev/null
@@ -1,55 +0,0 @@
-;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014 Ludovic Courtès 
-;;;
-;;; This file is part of GNU Guix.
-;;;
-;;; GNU Guix is free software; you can redistribute it and/or modify it
-;;; under the terms of the GNU General Public License as published by
-;;; the Free Software Foundation; either version 3 of the License, or (at
-;;; your option) any later version.
-;;;
-;;; GNU Guix is distributed in the hope that it will be useful, but
-;;; WITHOUT ANY WARRANTY; without even the implied warranty of
-;;; MERCHANTA

[PATCH] Add sympy, scikit-image, pandas, seaborn.

2015-04-29 Thread Ricardo Wurmus
Hi Guix,

attached are package definitions for four scientific Python modules.

~~ Ricardo

>From 6b403eda6e4ba959ef01a1b688b22d303882658e Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus 
Date: Wed, 29 Apr 2015 15:03:24 +0200
Subject: [PATCH 1/4] gnu: Add python-sympy.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 29b47f3..98be765 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -3446,6 +3446,32 @@ providing a clean and modern domain specific specification language (DSL) in
 Python style, together with a fast and comfortable execution environment.")
 (license license:expat)))
 
+(define-public python-sympy
+  (package
+(name "python-sympy")
+(version "0.7.6")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://github.com/sympy/sympy/releases/download/sympy-";
+ version "/sympy-" version ".tar.gz"))
+   (sha256
+(base32 "19yp0gy4i7p4g6l3b8vaqkj9qj7yqb5kqy0qgbdagpzgkdz958yz"
+(build-system python-build-system)
+(native-inputs
+ `(("python-setuptools" ,python-setuptools)))
+(home-page "http://www.sympy.org/";)
+(synopsis "Python library for symbolic mathematics")
+(description
+ "SymPy is a Python library for symbolic mathematics.  It aims to become a
+full-featured computer algebra system (CAS) while keeping the code as simple
+as possible in order to be comprehensible and easily extensible.")
+(license bsd-3)))
+
+(define-public python2-sympy
+  (package-with-python2 python-sympy))
+
 (define-public python-testlib
   (package
 (name "python-testlib")
-- 
2.1.0

>From 7dab1d810e19c185b8afc756e22dd54e8bcd3ca0 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus 
Date: Wed, 29 Apr 2015 15:04:09 +0200
Subject: [PATCH 2/4] gnu: Add python-scikit-image.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 98be765..0289697 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -2065,6 +2065,42 @@ mining and data analysis.")
 (alist-delete
  "python-scipy" (package-propagated-inputs scikit
 
+(define-public python-scikit-image
+  (package
+(name "python-scikit-image")
+(version "0.11.3")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append
+ "https://pypi.python.org/packages/source/s/scikit-image/scikit-image-";
+ version ".tar.gz"))
+   (sha256
+(base32 "0jz416fqvpahqyffw8plmszzfj669w8wvf3y9clnr5lr6a7md3kn"
+(build-system python-build-system)
+(inputs
+ `(("python-matplotlib" ,python-matplotlib)
+   ("python-networkx" ,python-networkx)
+   ("python-numpy" ,python-numpy)
+   ("python-scipy" ,python-scipy)
+   ("python-six" ,python-six)
+   ("python-pillow" ,python-pillow)))
+(native-inputs
+ `(("python-cython" ,python-cython)
+   ("python-setuptools" ,python-setuptools)))
+(home-page "http://scikit-image.org/";)
+(synopsis "Image processing in Python")
+(description
+ "scikit-image is a collection of algorithms for image processing.")
+(license bsd-3)))
+
+(define-public python2-scikit-image
+  (let ((scikit-image (package-with-python2 python-scikit-image)))
+(package (inherit scikit-image)
+  (inputs `(("python2-mock" ,python2-mock)
+("python2-pytz" ,python2-pytz)
+,@(package-inputs scikit-image))
+
 (define-public python-cython
   (package
 (name "python-cython")
-- 
2.1.0

>From b1c795128c27183989df76f27ade11a7c4ba3ff8 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus 
Date: Wed, 29 Apr 2015 15:14:56 +0200
Subject: [PATCH 3/4] gnu: Add python-pandas.

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

diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 0289697..e2ca01e 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -628,6 +628,44 @@ datetime module, available in Python 2.3+.")
  "Parse human-readable date/time text")
 (license asl2.0)))
 
+(define-public python-pandas
+  (package
+(name "python-pandas")
+(version "0.16.0")
+(source
+ (origin
+  (method url-fetch)
+  (uri (string-append "https://pypi.python.org/packages/source/p/";
+  "pandas/pandas-" version ".tar.gz"))
+  (sha256
+   (base32 "1wfrp8dx1zcsry6f09ndza6qm1yr7f163211f4l9vjlnhxpxw4s0"
+(build-system python-build-system)
+(arguments
+ `(;; Thre

Re: [PATCH] gnu: Add tvtime.

2015-04-29 Thread Alex Kost
Eric Bavier (2015-04-29 01:14 +0300) wrote:

> On 2015-04-28 15:18, Alex Kost wrote:
>> From dcc331e7ab3fd0687c5a4ef8f084bc0bf4ca1cef Mon Sep 17 00:00:00 2001
>> From: Alex Kost 
>> Date: Tue, 28 Apr 2015 22:21:37 +0300
>> Subject: [PATCH] gnu: Add tvtime.
>>
>> * gnu/packages/tvtime.scm,
>>   gnu/packages/patches/tvtime-gcc41.patch,
>>   gnu/packages/patches/tvtime-pngoutput.patch,
>>   gnu/packages/patches/tvtime-videodev2.patch,
>>   gnu/packages/patches/tvtime-xmltv.patch: New files.
>> * gnu-system.am (GNU_SYSTEM_MODULES): Add package.
>>   (dist_patch_DATA): Add patches.
>
> Perhaps we could name the file "tv.scm", in anticipation of other
> TV-related code?

Indeed, I think it would be better, thanks!

>> +(inputs
>> + `(("libx11"  ,libx11)
>> +   ("libxt"   ,libxt)
>> +   ("libxtst" ,libxtst)
>> +   ("libxinerama" ,libxinerama)
>> +   ("libxv"   ,libxv)
>> +   ("libxxf86vm"  ,libxxf86vm)
>> +   ("libpng"  ,libpng)
>> +   ("libxml2" ,libxml2)
>> +   ("freetype",freetype)
>> +   ("zlib",zlib)))
>
> I think we were lately trying to stay away from aligning inputs like
> this (ISTR Ludo requesting it not be done on some other patch reviews).
> Not sure where the consensus is yet.

OK, I'm going to remove the aligning.

>> +(synopsis "High quality television application")
>
> How about "Television viewer"?

I don't mind.  Synopsis/description is always the hardest part for me :-)

> Otherwise the rest look good to me.

Thanks for reviewing.

-- 
Alex



Re: [PATCH] gnu: Remove gstreamer-0.10 and gst-plugins-base-0.10.

2015-04-29 Thread 宋文武
It have been broken for 3 month, and no one seem to be interesting to
fix it.  Since no packages use it actually (only wxwidgets have a
comment), I'd like to remove them.

What do you think?

http://hydra.gnu.org/job/gnu/master/gstreamer-0.10.36.i686-linux/all



Re: [PATCH] gnu: Remove gstreamer-0.10 and gst-plugins-base-0.10.

2015-04-29 Thread 宋文武
Andreas Enge  writes:

> On Wed, Apr 29, 2015 at 04:24:56PM +0800, 宋文武 wrote:
>> * gnu/packages/gstreamer.scm (gstreamer-0.10, gst-plugins-base-0.10):
>>   Remove variables.
>> * gnu/packages/patches/gstreamer-0.10-bison3.patch,
>>   gnu/packages/patches/gstreamer-0.10-silly-test.patch: Remove files.
>> * gnu-system.am (dist_patch_DATA): Remove them.
>
> It corresponds to a suggestion I have made before, so I am supporting it
> again. The packages do not compile currently. If they are needed at any time
> in the future as an input to some other package, the packager will have to
> repair them anyway, and getting them out of git would be a minor additional
> effort.
OK, pushed.
>
> Andreas



Re: [PATCH] gnu: mesa: Add libva input.

2015-04-29 Thread 宋文武
"Taylan Ulrich Bayırlı/Kammer"  writes:

> 宋文武  writes:
>
>> Look good to me, but how does it work?
>> According to archlinux, it will build 'gallium_drv_video.so',
>> described as VA-API implementation for gallium.
>> IIUC, libva may dlopen this gallium_drv_video.so?
>
> I had to tinker and research for several hours to be able to answer your
> question, but good thing you asked. :-)
>
> Firstly:
>
> I grepped the libva sources for 'dlopen' and found three places it's
> used:
>
> - to open libatiadlxx.so, which AFAIUI is a proprietary ATI driver which
>   we wouldn't support anyway,
>
> - to open libva-x11.so, which it installs in $prefix/lib; I patched the
>   .c file to use the absolute path to this .so, and
>
> - to open drivers found in $LIBVA_DRIVERS_PATH, falling back to the CPP
>   macro VA_DRIVERS_PATH, which should both contain absolute directory
>   names so it's fine.
>
> Secondly:
>
> The default value for VA_DRIVERS_PATH is $prefix/lib/dri (where $prefix
> is that of libva), which contains only some dummy driver installed by
> libva; most drivers are instead in $mesa_prefix/lib/dri.  So it's
> probably best to set VA_DRIVERS_PATH to $mesa_prefix/lib/dri.  So I
> added --with-drivers-path to libva's configure flags (plus added a make
> flag to solve a certain problem; see patch).
OK.
>
> By the way:
>
> If a package wants to use libva with a driver that doesn't come with
> mesa, then they will have to set LIBVA_DRIVERS_PATH.  A user may also
> add ~/.guix-profile/lib/dri to LIBVA_DRIVERS_PATH, and install any
> number of packages installing graphics drivers there.
Yes, it's reasonable.
>
> Thirdly, and I can finally answer your question:
>
> Comes out "gallium_drv_video.so", found in Arch's "libva-mesa" package,
> is actually Mesa's Gallium-based implementation of VA API, alternative
> to stock libva.  (Arch also has a regular libva package, containing the
> real libva.)  The gallium_drv_video.so driver is installed in mesa's
> $prefix/lib/dri when building it is enabled, so all is fine.
So, it's a 'backend' just like libva-intel-driver, get it.
>
> Also, Mesa needs libva's header files for building it, and this actually
> seems to be the sole reason Mesa depends on libva.  I considered making
> a "libva-headers" package (like the mesa-headers package), but Mesa uses
> pkg-config to test libva's presence so I'm not sure if that would work,
> and libva is small anyway so building it twice should be OK.
No problem, and if mesa only use the header, the libva-no-mesa
won't be included as dependencies when user download it from hydra.


Thanks for your detailed explanation!



Re: [PATCH] gnu: Remove gstreamer-0.10 and gst-plugins-base-0.10.

2015-04-29 Thread Andreas Enge
On Wed, Apr 29, 2015 at 04:24:56PM +0800, 宋文武 wrote:
> * gnu/packages/gstreamer.scm (gstreamer-0.10, gst-plugins-base-0.10):
>   Remove variables.
> * gnu/packages/patches/gstreamer-0.10-bison3.patch,
>   gnu/packages/patches/gstreamer-0.10-silly-test.patch: Remove files.
> * gnu-system.am (dist_patch_DATA): Remove them.

It corresponds to a suggestion I have made before, so I am supporting it
again. The packages do not compile currently. If they are needed at any time
in the future as an input to some other package, the packager will have to
repair them anyway, and getting them out of git would be a minor additional
effort.

Andreas




[PATCH] gnu: Remove gstreamer-0.10 and gst-plugins-base-0.10.

2015-04-29 Thread 宋文武
* gnu/packages/gstreamer.scm (gstreamer-0.10, gst-plugins-base-0.10):
  Remove variables.
* gnu/packages/patches/gstreamer-0.10-bison3.patch,
  gnu/packages/patches/gstreamer-0.10-silly-test.patch: Remove files.
* gnu-system.am (dist_patch_DATA): Remove them.
---
 gnu-system.am  |  2 -
 gnu/packages/gstreamer.scm | 46 --
 gnu/packages/patches/gstreamer-0.10-bison3.patch   | 32 ---
 .../patches/gstreamer-0.10-silly-test.patch| 14 ---
 4 files changed, 94 deletions(-)
 delete mode 100644 gnu/packages/patches/gstreamer-0.10-bison3.patch
 delete mode 100644 gnu/packages/patches/gstreamer-0.10-silly-test.patch

diff --git a/gnu-system.am b/gnu-system.am
index 617e8bb..60901a6 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -440,8 +440,6 @@ dist_patch_DATA =   
\
   gnu/packages/patches/grep-CVE-2015-1345.patch\
   gnu/packages/patches/grub-gets-undeclared.patch  \
   gnu/packages/patches/grub-freetype.patch \
-  gnu/packages/patches/gstreamer-0.10-bison3.patch \
-  gnu/packages/patches/gstreamer-0.10-silly-test.patch \
   gnu/packages/patches/guile-1.8-cpp-4.5.patch \
   gnu/packages/patches/guile-arm-fixes.patch   \
   gnu/packages/patches/guile-default-utf8.patch\
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index b882208..03aecdf 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -124,32 +124,6 @@ simple plugin with a clean, generic interface.
 This package provides the core library and elements.")
 (license lgpl2.0+)))
 
-(define-public gstreamer-0.10
-  (package (inherit gstreamer)
-(version "0.10.36")
-(source
- (origin
-  (method url-fetch)
-  (uri (string-append 
"http://gstreamer.freedesktop.org/src/gstreamer/gstreamer-";
-  version ".tar.xz"))
-  (sha256
-   (base32
-"1nkid1n2l3rrlmq5qrf5yy06grrkwjh3yxl5g0w58w0pih8allci"))
-  (patches
-(list (search-patch "gstreamer-0.10-bison3.patch")
-  (search-patch "gstreamer-0.10-silly-test.patch")
-(propagated-inputs
- `(("libxml2" ,libxml2)))
-(inputs `(("glib" ,glib)))
-(native-inputs
- `(("bison" ,bison)
-   ("flex" ,flex)
-   ("perl" ,perl)
-   ("pkg-config" ,pkg-config)
-   ("glib" ,glib "bin")
-   ("python" ,python-2)
-
-
 (define-public gst-plugins-base
   (package
 (name "gst-plugins-base")
@@ -288,23 +262,3 @@ developers consider to have good quality code and correct 
functionality.")
  "This GStreamer plugin supports a large number of audio and video
 compression formats through the use of the libav library.")
 (license gpl2+)))
-
-(define-public gst-plugins-base-0.10
-  (package (inherit gst-plugins-base)
-(version "0.10.36")
-(source
- (origin
-  (method url-fetch)
-  (uri (string-append 
-
"http://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-";
-version ".tar.xz"))
-  (sha256
-   (base32
-"0jp6hjlra98cnkal4n6bdmr577q8mcyp3c08s3a02c4hjhw5rr0z"
-(inputs
- `(("glib" ,glib)
-   ("gstreamer" ,gstreamer-0.10)))
-(native-inputs
-  `(("pkg-config" ,pkg-config)
-("glib" ,glib "bin")
-("python" ,python-2)
diff --git a/gnu/packages/patches/gstreamer-0.10-bison3.patch 
b/gnu/packages/patches/gstreamer-0.10-bison3.patch
deleted file mode 100644
index f6eb90c..000
--- a/gnu/packages/patches/gstreamer-0.10-bison3.patch
+++ /dev/null
@@ -1,32 +0,0 @@
-See https://bugzilla.gnome.org/show_bug.cgi?id=706462
-
-Subject: [PATCH] Make grammar.y work with Bison 3
-
-YYLEX_PARAM is no longer supported in Bison 3.

- gst/parse/grammar.y | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/gst/parse/grammar.y b/gst/parse/grammar.y
-index 8a9019c..f533389 100644
 a/gst/parse/grammar.y
-+++ b/gst/parse/grammar.y
-@@ -26,7 +26,6 @@
-  */
- 
- #define YYERROR_VERBOSE 1
--#define YYLEX_PARAM scanner
- 
- #define YYENABLE_NLS 0
- 
-@@ -659,6 +658,7 @@ static int yyerror (void *scanner, graph_t *graph, const 
char *s);
- %right '.'
- %left '!' '='
- 
-+%lex-param { void *scanner }
- %parse-param { void *scanner }
- %parse-param { graph_t *graph }
- %pure-parser
--- 
-1.8.3.4
-
diff --git a/gnu/packages/patches/gstreamer-0.10-silly-test.patch 
b/gnu/packages/patches/gstreamer-0.10-silly-test.patch
deleted file mode 100644
index 678dd7b..000
--- a/gnu/packages/patches/gstreamer-0.10-silly-test.patch
+++ /dev/null
@@ -1,14 +0,0 @@
-See 
http://lists.freedesktop.org/archives/gstreamer-bugs/2013-January/098461.html
-
-diff -ru gstreamer-0.10.36.orig/tests/check/Makefile.in 
gstreamer-0.10.36/tests/check/Makefile.in
 gstreamer-0.10.36.orig/tests/check/Makefile.in