[PATCH] gnu: gnome-control-center: Add gdk-pixbuf input.

2016-11-17 Thread rennes

Hello,
this patch allow to gnome-control-center to load images in SVG format.
E.G. GNOME logo and Mouse & Touchpad settings image.

ThanksFrom 6aa42f1298bbd7b1582fb6894f9ebd1029b203a8 Mon Sep 17 00:00:00 2001
From: Rene Saavedra 
Date: Thu, 17 Nov 2016 23:48:11 -0600
Subject: [PATCH] gnu: gnome-control-center: Add gdk-pixbuf input.

* gnu/packages/gnome.scm (gnome-control-center): Add gdk-pixbuf input.
---
 gnu/packages/gnome.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 8c422c5..b7e6d4d 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -4747,6 +4747,7 @@ devices using the GNOME desktop.")
("cups" ,cups)
("dconf" ,dconf)
("docbook-xsl" ,docbook-xsl)
+   ("gdk-pixbuf" ,gdk-pixbuf) ; for load files with SVG extension.
("gnome-bluetooth" ,gnome-bluetooth)
("gnome-desktop" ,gnome-desktop)
("gnome-online-accounts" ,gnome-online-accounts)
-- 
2.10.1



Re: [PATCH] gc: Add option --keep-going.

2016-11-17 Thread Eric Bavier
Just a few comments/suggestions.

On Wed, 16 Nov 2016 15:37:14 +0100
Hartmut Goebel  wrote:

> * guix/scripts/gc.scm (show-help, %options): Add option -k/--keep-going.
>   (guix-gc): Pass value off option --keep-going on to delete-paths.
^
Changelog continuation lines should start in column 0.

> * guix/store.scm (%protocol-version): Increment to 17.
>   (delete-paths) New key-word parameter `keep-going?`, pass it on to
>   run-rc.
>   (run-gc): New key-word parameter `keep-going?`, send value of
>   keep-going? to the daemon.
> * nix/libstore/store-api.hh (GCOptions): Add boolean keepGoing.
> * nix/libstore/worker-protocol.hh (PROTOCOL_VERSION) Increment to 17.
> * nix/nix-daemon/nix-daemon.cc (performOp)[wopCollectGarbage] Read
>   keepGoing.
> * nix/libstore/gc.cc (LocalStore::collectGarbage) If keepGoing is true
>   print an error message instead of throwing an error.
> * doc/guix.texi (Invoking guix gc): Document option --keep-going.
> ---
>  doc/guix.texi   |  8 +++-
>  guix/scripts/gc.scm |  9 -
>  guix/store.scm  | 12 
>  nix/libstore/gc.cc  |  7 ++-
>  nix/libstore/store-api.hh   |  3 +++
>  nix/libstore/worker-protocol.hh |  2 +-
>  nix/nix-daemon/nix-daemon.cc|  2 ++
>  7 files changed, 35 insertions(+), 8 deletions(-)
> 
> diff --git a/doc/guix.texi b/doc/guix.texi
> index a3eba58..b8362d6 100644
> --- a/doc/guix.texi
> +++ b/doc/guix.texi
> @@ -2098,7 +2098,13 @@ nothing and exit immediately.
>  @itemx -d
>  Attempt to delete all the store files and directories specified as
>  arguments.  This fails if some of the files are not in the store, or if
> -they are still live.
> +they are still live (with behaviour can be changed with
> +@option{--keep-going}).

How about: "Unless the @option{--keep-going} option is given this will
fail if some of the files are not in the store, or if they are still
live."

> +
> +@item --keep-going
> +@itemx -k
> +Keep going when @option{--delete} is given and some of the store files
  ^
maybe "any of the store files or directories"?

> +and directories specified as arguments fail to re removed.
  ^
"be"

>  
>  @item --list-failures
>  List store items corresponding to cached build failures.
> diff --git a/guix/scripts/gc.scm b/guix/scripts/gc.scm
> index bdfee43..778e9a7 100644
> --- a/guix/scripts/gc.scm
> +++ b/guix/scripts/gc.scm
> @@ -72,6 +72,9 @@ Invoke the garbage collector.\n"))
>--clear-failures   remove PATHS from the set of cached failures"))
>(newline)
>(display (_ "
> +  -k, --keep-going   keep going when some of th pathes can not be 
> deleted"))

"keep going if paths cannot be deleted"

> +  (newline)
> +  (display (_ "
>-h, --help display this help and exit"))
>(display (_ "
>-V, --version  display version information and exit"))
> @@ -107,6 +110,9 @@ Invoke the garbage collector.\n"))
>  (lambda (opt name arg result)
>(alist-cons 'action 'delete
>(alist-delete 'action result
> +(option '(#\k "keep-going") #f #f
> +(lambda (opt name arg result)
> +  (alist-cons 'keep-going? #t result)))
>  (option '("optimize") #f #f
>  (lambda (opt name arg result)
>(alist-cons 'action 'optimize
> @@ -228,7 +234,8 @@ Invoke the garbage collector.\n"))
>   (let-values (((paths freed) (collect-garbage store)))
>(info (_ "freed ~h bytes~%") freed))
>  ((delete)
> - (delete-paths store (map direct-store-path paths)))
> + (delete-paths store (map direct-store-path paths)
> +   #:keep-going? (assoc-ref opts 'keep-going?)))
>  ((list-references)
>   (list-relatives references))
>  ((list-requisites)
> diff --git a/guix/store.scm b/guix/store.scm
> index 2023875..4276db4 100644
> --- a/guix/store.scm
> +++ b/guix/store.scm
> @@ -137,7 +137,7 @@
>  direct-store-path
>  log-file))
>  
> -(define %protocol-version #x110)
> +(define %protocol-version #x111)
>  
>  (define %worker-magic-1 #x6e697863)   ; "nixc"
>  (define %worker-magic-2 #x6478696f)   ; "dxio"
> @@ -938,7 +938,7 @@ is not an atomic operation.)  When CHECK-CONTENTS? is 
> true, check the contents
>  of store items; this can take a lot of time."
>(not (verify store check-contents? repair?)
>  
> -(define (run-gc server action to-delete min-freed)
> +(define* (run-gc server action to-delete min-freed #:key (keep-going? #f))
>"Perform the garbage-collector operation ACTION, one of the
>  `gc-action' values.  When ACTION is `delete-specific', the TO-DELETE is
>  the list of store paths to delete.  IGNORE-LIVENESS? should always be

[PATCH] gnu: xonsh: Update to 0.4.7.

2016-11-17 Thread Danny Milosavljevic
* gnu/packages/shells.scm (xonsh): Update to 0.4.7.
---
 gnu/packages/shells.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index 9b9bd6c..f3350ef 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -288,14 +288,14 @@ ksh, and tcsh.")
 (define-public xonsh
   (package
 (name "xonsh")
-(version "0.4.6")
+(version "0.4.7")
 (source
   (origin
 (method url-fetch)
 (uri (pypi-uri "xonsh" version))
 (sha256
   (base32
-"0byxd9kjl99q2pyvjh9jy18l0di1i35wr0qqgnw4i6jh6ig3zcki"))
+"04b0z41mxiwsp5rl21fzrixcdmx2kndjlh4gn3582qfga9hihf20"))
 (modules '((guix build utils)))
 (snippet
  `(begin



Re: [PATCH 0/3] Add a generalized `wrap-language-programs`

2016-11-17 Thread Leo Famulari
On Thu, Nov 17, 2016 at 04:58:45PM +0100, Alex Sassmannshausen wrote:
> 
> Hello
> 
> > You may try e.g. scons, pip, sphinx, or youtube-dl.
> 
> Hartmut was kind enough to suggest the above python applications to test
> this `wrap-language-programs` patch set against, however I have been
> stuck in "Rebuild the world"-hell for the last day and a half setting up
> testcases.
> 
> I end up feeling a bit desesperated and incompetent, as I'm sure it's
> not supposed to be this hard to create an appropriate test scenario here
> — so I was wondering whether anyone has any pointers in avoiding
> constantly rebuilding the world?

Most of the Guix distribution depends on Perl, and most of the rest
depends on Python ;)

Try `guix refresh -l perl`.

So, changing the build systems for these languages will require you to
rebuild almost everything.

Changes like this will need to go on the core-updates branch, where we
make changes to the core of the system.

You could create a separate perl-test-build-system and use it for your
test packages.



Re: [PATCH] gnu: mpop: Update to 1.2.6.

2016-11-17 Thread Leo Famulari
On Thu, Nov 17, 2016 at 09:46:38PM +0100, Marius Bakke wrote:
> Arun Isaac  writes:
> > Marius Bakke writes:
> >
> >> Thanks for this. I'm unable to download the new version with
> >> `./pre-inst-env guix build mpop`;
> >
> > Not sure what the problem is. I was able to build mpop successfully on
> > my system. But, I did download manually with `guix download'
> > first. Perhaps the build used that downloaded source tarball.

I fixed the URL and made it use our SourceForge mirror in commit
5837e6993.

> Yes, if the hash already exists in the store, it will be used instead of
> downloading.  This has caused some confusion before :-)

As Marius hints at, using `guix download` to get source code while
writing a package masks errors in the package's URL. You should always
download the source code "out of band" with wget, curl, a web browser,
etc, and then use `guix hash` to calculate the hash.

That way, you can be sure the package works.

Also, you don't leak information (via `guix download`'s network
signature) to potentially hostile servers that you are packaging
software for Guix.


signature.asc
Description: PGP signature


Re: 01/01: gnu: mpop: Use 'sourceforge' mirror.

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

> lfam pushed a commit to branch master
> in repository guix.
>
> commit 175c9103800640a2ecdc2c33094a03687270b341
> Author: Leo Famulari 
> Date:   Thu Nov 17 15:55:06 2016 -0500
>
> gnu: mpop: Use 'sourceforge' mirror.
> 
> This is a followup to commit 5837e69936fc9f4df4c0745b7c6e31b5642156fe.
> 
> * gnu/packages/mail.scm (mpop)[source]: Use 'sourceforge' mirror.
> ---
>  gnu/packages/mail.scm |4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)

Oops, good catch, thanks!


signature.asc
Description: PGP signature


Re: [PATCH] Add php

2016-11-17 Thread Marius Bakke
Julien Lepiller  writes:

>> >> Unfortunately that only fixed a handful of tests, the remaining
>> >> 50-something had to be disabled for a variety of reasons.
>> >> 
>> >> I've added a commentary to each disabled test. If you recognize
>> >> any of these errors/think you know what's going on, please update
>> >> the patch. It would be nice to know if the iconv and gd stuff is
>> >> expected, and if the two sqlite tests can really be ignored. The
>> >> curl one is strange too.  
>> >
>> > Just as I wanted to send a similar patch ;)
>> >
>> > I've been looking at some of them. The failing sqlite test is a bug
>> > in sqlite that has been fixed last august 
>> > (https://sqlite.org/src/info/ef360601). We currently have version 
>> > 3.14.1, when the latest upstream version is 3.15.1. Updating should
>> > fix the problem.
>> >
>> > 73159 has been fixed in gd:
>> > https://github.com/libgd/libgd/issues/289 (more recent than latest
>> > gd release unfortunately)
>> >
>> > 73155 has also been fixed in gd: 
>> > https://github.com/libgd/libgd/issues/309 (even more recent)
>> >
>> > 72482 is fixed here: 
>> > https://gist.github.com/anonymous/873314feb4f89bd8336711333299f748
>> > (a patch to the bundled libgd)
>> >
>> > 73213 is fixed here: 
>> > https://git.php.net/?p=php-src.git;a=blobdiff;f=ext/gd/libgd/gd.c;h=033d4fa5f0e9740e8b8c397a9038a115c617c419;hp=0b4b42fa27558fa32cc54e14dc297d9d0ba10832;hb=9acfb1a3a5268febb123b7e5fbd4eaf072c83537;hpb=c0219b323e0048440acbdd9ad74624c4bc33c335
>> >  
>> > (a patch to the bundled libgd)
>> >
>> > 72339 has a CVE id: 2016-5766, but it should be fixed in libgd
>> > 2.2.3 that we have according to the CVE description, and the
>> > failure is different from what the report says.
>> >
>> > 39780 has the unexpected output described in the bug report, so it 
>> > really fails. I don't think we can fix our libgd though, because
>> > the bundled one has some php_* functions that are used to get a
>> > warning instead of an error.
>> >
>> > we could include patches to our libgd to fix two (maybe four)
>> > issues. We should also upgrade our sqlite version, but many
>> > packages will then have to be rebuilt, or we could create a
>> > separate package for the newer version. What do you suggest?  
>> 
>> Wow, thanks for this list! Including the two upstream gd fixes in a
>> "gd-for-php" package should be fine, until a new release of gd is out.
>> I'm more vary about including the PHP-specific ones though.
>> 
>> If there are serious problems with using an external (vanilla) gd, I
>> think we either need to maintain a "gd-for-php" package indefinitely,
>> or bite the bullet and use the bundled one.
>> 
>> Do you think it's safe to use our gd? And if not, would you be willing
>> to keep up with PHP development and maintain the externalized gd
>> component with it?
>
> Failures in tests caused by external gd are not too serious to require
> us to switch to the bundled one I think. We may not even need to patch
> our libgd with php specific patches, since the failures are only slight
> deviation from the spec on corner cases. If you prefer that we apply
> these patches too, then we could, and I would still try to keep that up
> to date.

OK. Let's use external gd for now barring any serious issues.

>
> What I am more worried about are the iconv crashes. That may be due to
> lacking locales though.

You could try commenting them out and adding "glibc-locales" to
native-inputs. Not sure if they will get picked up by that however.

A better test may be to try out that particular functionality using the
installed version of php. If that works, we can be reasonably sure that
dropping the tests is fine.

Attached is the final product, after adding a "gd-for-php" variable with
the two upstream patches, as well as sqlite-3.15.1 (separate patch).

I'll push this tomorrow if there are no further comments. Thanks for
your perseverance :)



signature.asc
Description: PGP signature
>From ae98ee11b6eb2e0feb79c735497b8647ebf80d6f Mon Sep 17 00:00:00 2001
From: Marius Bakke 
Date: Thu, 17 Nov 2016 18:53:10 +0100
Subject: [PATCH 1/2] gnu: Add sqlite-3.15.1.

* gnu/packages/databases.scm (sqlite-3.15.1): New variable.
---
 gnu/packages/databases.scm | 20 
 1 file changed, 20 insertions(+)

diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index ab9c6d6..d6746f0 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -558,6 +558,26 @@ widely deployed SQL database engine in the world.  The source code for SQLite
 is in the public domain.")
(license public-domain)))
 
+(define-public sqlite-3.15.1
+  (package (inherit sqlite)
+   (version "3.15.1")
+   (source (origin
+ (method url-fetch)
+ (uri (let ((numeric-version
+ (match (string-split version #\.)
+   ((first-digit other-digits ...)

Re: [PATCH] gnu: mpop: Update to 1.2.6.

2016-11-17 Thread Arun Isaac

Marius Bakke writes:

> Thanks for this. I'm unable to download the new version with
> `./pre-inst-env guix build mpop`;

Not sure what the problem is. I was able to build mpop successfully on
my system. But, I did download manually with `guix download'
first. Perhaps the build used that downloaded source tarball.

> however downloading manually with
> `guix download` works fine and returns the hash, so I pushed the patch.

Thank you.


signature.asc
Description: PGP signature


Re: [PATCH] Add php

2016-11-17 Thread Julien Lepiller
On Thu, 17 Nov 2016 11:22:53 +0100
Hartmut Goebel  wrote:

> Am 17.11.2016 um 01:01 schrieb Marius Bakke:
> > If there are no further comments, I will push this in the next few
> > days:  
> 
> Thanks for your work on this. It seems to be laborious.
> 
> I don't have time to inspect not to test the patch, so just some
> thought. I'm not a php-user, but wanted to install a php-driven
> website on Guix some weeks ago and had a look on what else would be
> required.
> 
>   * Does this php package include what other distributions call
> "php-cli", "php-fpm" and "php-cgi"? Maybe you want to mention it
> in the synopsis. (Addendum: I just found in
>  that it looks
> like these are part of the package.)
>   * As far as I understood, "pear" and "pecl" are important for
> installing php packages. Are these part of your package, too?

The package contains the following executables in sbin and bin:
php-fpm  pear  peardev  pecl  phar  phar.phar  php  php-cgi  php-config
phpdbg  phpize

> 
> 
>   * What do you think about adding "Packaging guideline" for "PHP
> Modules" section to the manual?
>   * Do yo think we need some php build system?
I have no idea how system-wide php packages could be installed, so I
can't answer that (yet?). Sorry.

> 
> 




Re: [PATCH] Add php

2016-11-17 Thread Julien Lepiller
On Thu, 17 Nov 2016 19:22:48 +0100
Marius Bakke  wrote:

> tyreunom  writes:
> 
> > Le 2016-11-17 01:01, Marius Bakke a écrit :  
> >> Ludovic Courtès  writes:
> >>   
> >>> Marius Bakke  skribis:
> >>>   
>  Some failures are indeed due to missing network or programs in
>  the build
>  environment. I tried patching a few just now, but unfortunately
>  some files are in a format apparently not supported by Guile!
>  
>   870: 5 [call-with-input-file
>  "ext/mbstring/tests/bug26639.phpt" ...] In 
>  /gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/build/utils.scm:
>   556: 4 [#  /gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/buil
>  d/utils.scm:555:10 (in)> #  ext/mbstring/tests/bug26639.phpt   
>  11>]  
>   592: 3 [#  /gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/buil
>  d/utils.scm:578:6 (in out)> #  ext/mbstring/tests/bug26639.phpt   
>  11> ...]  
>  In ice-9/rdelim.scm:
>   188: 2 [read-line # 
>  concat]
>  In unknown file:
> ?: 1 [%read-line #  11>] In ice-9/boot-9.scm:
>   109: 0 [#  (thrown-k . args)> decoding-error ...]  
>  
>  ice-9/boot-9.scm:109:20: In procedure #  ice-9/boot-9.scm:100:6 (thrown-k . arg  
>  s)>:  
>  ice-9/boot-9.scm:109:20: Throw to key `decoding-error' with args 
>  `("scm_getc" "input decoding error
>  " 84 #)'.
>  
>  `file` reports: ext/mbstring/tests/bug26639.phpt: Non-ISO 
>  extended-ASCII text  
> >>> 
> >>> Presumably this is ‘substitute*’ failing to read the file.
> >>> 
> >>> ‘substitute*’ expects input files to be UTF-8-encoded; when this
> >>> is not
> >>> the case, you need to bind ‘%default-port-encoding’ to whatever
> >>> is the right encoding or #f for the catch-all ISO-8859-1.  See
> >>> ‘gettext-minimal’ for an example.  
> >> 
> >> Thank you! That was exactly what I needed.
> >> 
> >> Unfortunately that only fixed a handful of tests, the remaining
> >> 50-something had to be disabled for a variety of reasons.
> >> 
> >> I've added a commentary to each disabled test. If you recognize
> >> any of these errors/think you know what's going on, please update
> >> the patch. It would be nice to know if the iconv and gd stuff is
> >> expected, and if the two sqlite tests can really be ignored. The
> >> curl one is strange too.  
> >
> > Just as I wanted to send a similar patch ;)
> >
> > I've been looking at some of them. The failing sqlite test is a bug
> > in sqlite that has been fixed last august 
> > (https://sqlite.org/src/info/ef360601). We currently have version 
> > 3.14.1, when the latest upstream version is 3.15.1. Updating should
> > fix the problem.
> >
> > 73159 has been fixed in gd:
> > https://github.com/libgd/libgd/issues/289 (more recent than latest
> > gd release unfortunately)
> >
> > 73155 has also been fixed in gd: 
> > https://github.com/libgd/libgd/issues/309 (even more recent)
> >
> > 72482 is fixed here: 
> > https://gist.github.com/anonymous/873314feb4f89bd8336711333299f748
> > (a patch to the bundled libgd)
> >
> > 73213 is fixed here: 
> > https://git.php.net/?p=php-src.git;a=blobdiff;f=ext/gd/libgd/gd.c;h=033d4fa5f0e9740e8b8c397a9038a115c617c419;hp=0b4b42fa27558fa32cc54e14dc297d9d0ba10832;hb=9acfb1a3a5268febb123b7e5fbd4eaf072c83537;hpb=c0219b323e0048440acbdd9ad74624c4bc33c335
> >  
> > (a patch to the bundled libgd)
> >
> > 72339 has a CVE id: 2016-5766, but it should be fixed in libgd
> > 2.2.3 that we have according to the CVE description, and the
> > failure is different from what the report says.
> >
> > 39780 has the unexpected output described in the bug report, so it 
> > really fails. I don't think we can fix our libgd though, because
> > the bundled one has some php_* functions that are used to get a
> > warning instead of an error.
> >
> > we could include patches to our libgd to fix two (maybe four)
> > issues. We should also upgrade our sqlite version, but many
> > packages will then have to be rebuilt, or we could create a
> > separate package for the newer version. What do you suggest?  
> 
> Wow, thanks for this list! Including the two upstream gd fixes in a
> "gd-for-php" package should be fine, until a new release of gd is out.
> I'm more vary about including the PHP-specific ones though.
> 
> If there are serious problems with using an external (vanilla) gd, I
> think we either need to maintain a "gd-for-php" package indefinitely,
> or bite the bullet and use the bundled one.
> 
> Do you think it's safe to use our gd? And if not, would you be willing
> to keep up with PHP development and maintain the externalized gd
> component with it?

Failures in tests caused by external gd are not too serious to require
us to switch to the bundled one I think. We may not even need to patch
our libgd with php specific patches, since the failures are only slight

Re: [PATCH] Add php

2016-11-17 Thread Marius Bakke
tyreunom  writes:

> Le 2016-11-17 01:01, Marius Bakke a écrit :
>> Ludovic Courtès  writes:
>> 
>>> Marius Bakke  skribis:
>>> 
 Some failures are indeed due to missing network or programs in the 
 build
 environment. I tried patching a few just now, but unfortunately some
 files are in a format apparently not supported by Guile!
 
  870: 5 [call-with-input-file "ext/mbstring/tests/bug26639.phpt" ...]
 In 
 /gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/build/utils.scm:
  556: 4 [#>>> /gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/buil
 d/utils.scm:555:10 (in)> #>>> 11>]
  592: 3 [#>>> /gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/buil
 d/utils.scm:578:6 (in out)> #>>> 11> ...]
 In ice-9/rdelim.scm:
  188: 2 [read-line # 
 concat]
 In unknown file:
?: 1 [%read-line #]
 In ice-9/boot-9.scm:
  109: 0 [#>>> args)> decoding-error ...]
 
 ice-9/boot-9.scm:109:20: In procedure #>>> ice-9/boot-9.scm:100:6 (thrown-k . arg
 s)>:
 ice-9/boot-9.scm:109:20: Throw to key `decoding-error' with args 
 `("scm_getc" "input decoding error
 " 84 #)'.
 
 `file` reports: ext/mbstring/tests/bug26639.phpt: Non-ISO 
 extended-ASCII text
>>> 
>>> Presumably this is ‘substitute*’ failing to read the file.
>>> 
>>> ‘substitute*’ expects input files to be UTF-8-encoded; when this is 
>>> not
>>> the case, you need to bind ‘%default-port-encoding’ to whatever is the
>>> right encoding or #f for the catch-all ISO-8859-1.  See
>>> ‘gettext-minimal’ for an example.
>> 
>> Thank you! That was exactly what I needed.
>> 
>> Unfortunately that only fixed a handful of tests, the remaining
>> 50-something had to be disabled for a variety of reasons.
>> 
>> I've added a commentary to each disabled test. If you recognize any of
>> these errors/think you know what's going on, please update the patch.
>> It would be nice to know if the iconv and gd stuff is expected, and if
>> the two sqlite tests can really be ignored. The curl one is strange 
>> too.
>
> Just as I wanted to send a similar patch ;)
>
> I've been looking at some of them. The failing sqlite test is a bug in 
> sqlite that has been fixed last august 
> (https://sqlite.org/src/info/ef360601). We currently have version 
> 3.14.1, when the latest upstream version is 3.15.1. Updating should fix 
> the problem.
>
> 73159 has been fixed in gd: https://github.com/libgd/libgd/issues/289 
> (more recent than latest gd release unfortunately)
>
> 73155 has also been fixed in gd: 
> https://github.com/libgd/libgd/issues/309 (even more recent)
>
> 72482 is fixed here: 
> https://gist.github.com/anonymous/873314feb4f89bd8336711333299f748 (a 
> patch to the bundled libgd)
>
> 73213 is fixed here: 
> https://git.php.net/?p=php-src.git;a=blobdiff;f=ext/gd/libgd/gd.c;h=033d4fa5f0e9740e8b8c397a9038a115c617c419;hp=0b4b42fa27558fa32cc54e14dc297d9d0ba10832;hb=9acfb1a3a5268febb123b7e5fbd4eaf072c83537;hpb=c0219b323e0048440acbdd9ad74624c4bc33c335
>  
> (a patch to the bundled libgd)
>
> 72339 has a CVE id: 2016-5766, but it should be fixed in libgd 2.2.3 
> that we have according to the CVE description, and the failure is 
> different from what the report says.
>
> 39780 has the unexpected output described in the bug report, so it 
> really fails. I don't think we can fix our libgd though, because the 
> bundled one has some php_* functions that are used to get a warning 
> instead of an error.
>
> we could include patches to our libgd to fix two (maybe four) issues. We 
> should also upgrade our sqlite version, but many packages will then have 
> to be rebuilt, or we could create a separate package for the newer 
> version. What do you suggest?

Wow, thanks for this list! Including the two upstream gd fixes in a
"gd-for-php" package should be fine, until a new release of gd is out.
I'm more vary about including the PHP-specific ones though.

If there are serious problems with using an external (vanilla) gd, I
think we either need to maintain a "gd-for-php" package indefinitely, or
bite the bullet and use the bundled one.

Do you think it's safe to use our gd? And if not, would you be willing
to keep up with PHP development and maintain the externalized gd
component with it?

I've confirmed that using a newer sqlite fixes the sqlite test, thanks
for that. I will submit a "sqlite-3.15.1" package with this patch, and
make sure it's updated in the next 'core-updates' cycle.


signature.asc
Description: PGP signature


Re: [PATCH 0/3] Add a generalized `wrap-language-programs`

2016-11-17 Thread Hartmut Goebel
Am 17.11.2016 um 18:09 schrieb Alex Sassmannshausen:
> In both cases, the programs work fine with the generalized patch.
Fine :-)

-- 
Regards
Hartmut Goebel

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




Re: [PATCH 0/3] Add a generalized `wrap-language-programs`

2016-11-17 Thread Alex Sassmannshausen
Fwiw, I have now succeeded at building offlineimap, and as a result, it
seems youtube-dl also was able to be built easily (presumably because
they share a great number of dependencies).

In both cases, the programs work fine with the generalized patch.

Alex

Alex Sassmannshausen writes:

> Hello
>
>> You may try e.g. scons, pip, sphinx, or youtube-dl.
>
> Hartmut was kind enough to suggest the above python applications to test
> this `wrap-language-programs` patch set against, however I have been
> stuck in "Rebuild the world"-hell for the last day and a half setting up
> testcases.
>
> I end up feeling a bit desesperated and incompetent, as I'm sure it's
> not supposed to be this hard to create an appropriate test scenario here
> — so I was wondering whether anyone has any pointers in avoiding
> constantly rebuilding the world?
>
> For details:
> - I run on i686
> - using GuixSD
> - I rebased my patch set on master 2 days ago and tried to test from
> there
> - this resulted in a bunch of "401 - Not Found" for a number of the
> binary substitute dependencies.
> - and from then I have been rebuilding those dependencies
>
> I guess part of the problem is that the substitute servers won't
> necessarily have substitutes for a particular program from master yet?
>
> I guess an additional problem is that some of the packages fail tests on
> my setup intermittently (they fail using
> `guix package -i youtube-dl --fallback`, for instance, but would then
> succeed if I build using `guix build $dependency`).
>
> But would people have recommendations to ensure some level of substitute
> stability or some such?
>
> Best wishes,
>
> Alex
>
> Hartmut Goebel writes:
>
>> Am 16.11.2016 um 14:27 schrieb Alex Sassmannshausen:
>>> as I did not know of an
>>> appropriate test candidate (I tried to build offlineimap, but this failed
>>> because Guile@2.013 failed at least one of it’s tests).
>>
>> You may try e.g. scons, pip, sphinx, or youtube-dl.




Re: [PATCH] gnu: mpop: Update to 1.2.6.

2016-11-17 Thread Marius Bakke
Arun Isaac  writes:

> Please find attached patch to update mpop from 1.2.5 to 1.2.6.

Thanks for this. I'm unable to download the new version with
`./pre-inst-env guix build mpop`; however downloading manually with
`guix download` works fine and returns the hash, so I pushed the patch.

Here is the output from `./pre-inst-env guix build`, it appears to give
up after the redirect to HTTPS from sourceforge.

@ build-started 
/gnu/store/10wpp69fc0v7dk0mqk3075cy9d7iwwmh-mpop-1.2.6.tar.xz.drv - 
x86_64-linux 
/var/log/guix/drvs/10//wpp69fc0v7dk0mqk3075cy9d7iwwmh-mpop-1.2.6.tar.xz.drv.bz2

Starting download of 
/gnu/store/nxf0mgh6dynniy99gsxhff9xr217s1rl-mpop-1.2.6.tar.xz
From http://downloads.sourceforge.net/mpop/mpop-1.2.6.tar.xz...
following redirection to 
`http://downloads.sourceforge.net/project/mpop/mpop/1.2.6/mpop-1.2.6.tar.xz'...
following redirection to 
`https://netcologne.dl.sourceforge.net/project/mpop/mpop/1.2.6/mpop-1.2.6.tar.xz'...
;;; Failed to autoload make-session in (gnutls):
;;; ERROR: missing interface for module (gnutls)
ERROR: In procedure module-lookup: Unbound variable: make-session

Starting download of 
/gnu/store/nxf0mgh6dynniy99gsxhff9xr217s1rl-mpop-1.2.6.tar.xz
From 
http://mirror.hydra.gnu.org/file/mpop-1.2.6.tar.xz/sha256/0p1ix63jh64dibrlccch8q7gxl9nn18wd2qpyr5z1h4gs2fpmv4z...
[...]


signature.asc
Description: PGP signature


Re: [PATCH 0/3] Add a generalized `wrap-language-programs`

2016-11-17 Thread Alex Sassmannshausen

Hello

> You may try e.g. scons, pip, sphinx, or youtube-dl.

Hartmut was kind enough to suggest the above python applications to test
this `wrap-language-programs` patch set against, however I have been
stuck in "Rebuild the world"-hell for the last day and a half setting up
testcases.

I end up feeling a bit desesperated and incompetent, as I'm sure it's
not supposed to be this hard to create an appropriate test scenario here
— so I was wondering whether anyone has any pointers in avoiding
constantly rebuilding the world?

For details:
- I run on i686
- using GuixSD
- I rebased my patch set on master 2 days ago and tried to test from
there
- this resulted in a bunch of "401 - Not Found" for a number of the
binary substitute dependencies.
- and from then I have been rebuilding those dependencies

I guess part of the problem is that the substitute servers won't
necessarily have substitutes for a particular program from master yet?

I guess an additional problem is that some of the packages fail tests on
my setup intermittently (they fail using
`guix package -i youtube-dl --fallback`, for instance, but would then
succeed if I build using `guix build $dependency`).

But would people have recommendations to ensure some level of substitute
stability or some such?

Best wishes,

Alex

Hartmut Goebel writes:

> Am 16.11.2016 um 14:27 schrieb Alex Sassmannshausen:
>> as I did not know of an
>> appropriate test candidate (I tried to build offlineimap, but this failed
>> because Guile@2.013 failed at least one of it’s tests).
>
> You may try e.g. scons, pip, sphinx, or youtube-dl.




[PATCH] website: donate: Fix news URL typo.

2016-11-17 Thread Tobias Geerinckx-Rice
* website/www/donate.scm (donate-page): Fix news URL typo.
---

;-)

(Great news, by the way!)

 website/www/donate.scm | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/website/www/donate.scm b/website/www/donate.scm
index f10287e..83d08f0 100644
--- a/website/www/donate.scm
+++ b/website/www/donate.scm
@@ -90,7 +90,7 @@ reality.")
   (td "new build farm front-end (WIP)")
   (td (ul (li (a (@ (href
  ,(base-url
-   
"news/growing-our-nbuild-farm.html")))
+   
"news/growing-our-build-farm.html")))
  "Igalia")
  (tr (td "hydra.gnunet.org")
  (td "x86_64-linux, i686-linux")
-- 
2.9.3




[PATCH] gnu: Add emacs-emms-mode-line-cycle.

2016-11-17 Thread Ricardo Wurmus
* gnu/packages/emacs.scm (emacs-emms-mode-line-cycle): New variable.
---
 gnu/packages/emacs.scm | 23 +++
 1 file changed, 23 insertions(+)

diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm
index a065959..13b3bf5 100644
--- a/gnu/packages/emacs.scm
+++ b/gnu/packages/emacs.scm
@@ -1031,6 +1031,29 @@ light user interface.")
 and seeking.")
 (license license:gpl3+)))
 
+(define-public emacs-emms-mode-line-cycle
+  (package
+(name "emacs-emms-mode-line-cycle")
+(version "0.2.5")
+(source
+ (origin
+   (method url-fetch)
+   (uri (string-append "https://github.com/momomo5717/emms-mode-line-cycle;
+   "/archive/" version ".tar.gz"))
+   (file-name (string-append name "-" version ".tar.gz"))
+   (sha256
+(base32
+ "0ifszi930pnaxk1x8pcydmvnp06868gc7nfx14q17zbajbx735k6"
+(build-system emacs-build-system)
+(propagated-inputs
+ `(("emms" ,emms)))
+(home-page "https://github.com/momomo5717/emms-mode-line-cycle;)
+(synopsis "Display the EMMS mode line as a ticker")
+(description
+ "This is a minor mode for updating the EMMS mode-line string cyclically
+within a specified width.  It is useful for displaying long track titles.")
+(license license:gpl3+)))
+
 
 ;;;
 ;;; Miscellaneous.
-- 
2.10.1





Re: [PATCH] Add php

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

tyreunom  skribis:

> we could include patches to our libgd to fix two (maybe four)
> issues. We should also upgrade our sqlite version, but many packages
> will then have to be rebuilt, or we could create a separate package
> for the newer version. What do you suggest?

Until we upgrade ‘gd’ (that’d be in ‘staging’), we can always have a gd
variant that includes all the relevant fixes and use this variant for
PHP.

Ludo’.



Re: [PATCH] guix: Add whitespacing to --list-generations output.

2016-11-17 Thread Ludovic Courtès
Efraim Flashner  skribis:

> On Thu, Nov 17, 2016 at 09:59:55AM +0100, Roel Janssen wrote:
>> Dear Guix,
>> 
>> The new diff-format displayed when invoking @command{guix package
>> --list-generations} prints a blank line after the initial generation,
>> and then no blank lines in the diffs.
>> 
>> This patch adds that blank line to the diffs as well.
>> 
>> Before:
>> --
>> Generation 1Nov 15 2016 11:14:05
>>   guix  0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
>> 
>> Generation 2Nov 15 2016 12:06:32
>>  + emacs25.1out /gnu/store/sb2qfjr...-emacs-25.1
>> Generation 4Nov 15 2016 12:22:15
>>  + guix 0.11.0-3.7ca3   out /gnu/store/l99rkv2...-guix-0.11.0-3.7ca3
>>  - guix 0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
>> --
>> 
>> After:
>> --
>> Generation 1Nov 15 2016 11:14:05
>>   guix  0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
>> 
>> Generation 2Nov 15 2016 12:06:32
>>  + emacs25.1out /gnu/store/sb2qfjr...-emacs-25.1
>> 
>> Generation 4Nov 15 2016 12:22:15
>>  + guix 0.11.0-3.7ca3   out /gnu/store/l99rkv2...-guix-0.11.0-3.7ca3
>>  - guix 0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
>> --
>> 
>> As you can see, it's only a small change, and so is the code change.
>> Here's the patch:
>> 
>> >From a9b5305f8af51b88643986f99a8e94cad4d7a805 Mon Sep 17 00:00:00 2001
>> From: Roel Janssen 
>> Date: Thu, 17 Nov 2016 09:46:15 +0100
>> Subject: [PATCH] guix: Add whitespacing to --list-generations output.
>> 
>> ---
>>  guix/ui.scm | 3 ++-
>>  1 file changed, 2 insertions(+), 1 deletion(-)
>> 
>> diff --git a/guix/ui.scm b/guix/ui.scm
>> index b9fbbfd..cafb3c6 100644
>> --- a/guix/ui.scm
>> +++ b/guix/ui.scm
>> @@ -1094,7 +1094,8 @@ DURATION-RELATION with the current time."
>>    (removed (lset-difference
>>  equal-entry? (list-entries old) (list-entries new
>>    (for-each (cut display-entry <> "+") added)
>> -  (for-each (cut display-entry <> "-") removed)))
>> +  (for-each (cut display-entry <> "-") removed)
>> +  (newline)))
>>  
>>    (display-diff profile gen1 gen2))
>>  
>> -- 
>> 2.7.4
>> 
>> Kind regards,
>> Roel Janssen
>> 
>
> That does make it easier to read

+1!

Ludo'.



Re: [PATCH] gnu: ruby-net-http-digest-auth: Add new package

2016-11-17 Thread Frederick Muriithi
On 17 Nov 2016 1:56 p.m., "Ben Woodcroft"  wrote:
>
> Hi Frederick, thanks for the updated patch.
>
> I didn't see any functional issues with this patch, but I had some trouble 
> testing this out - can I ask how to test it? My problem was simply that I 
> didn't know of a http-only server with this authentication method. I ask 
> because the last commit to the development repository was in 2013.

Well, I added the package since it is a dependency of the ruby gem
mechanize, which is what I really wanted to add.

Mechanize is used to simplify interaction with websites, and thus,
might encounter sites that require Digest Authentication, even if they
are not necessarily public facing

>
> Below is some minor points about the patch. If you are happy with them and we 
> are confident in the testing then I'll push with these changes. Do not worry 
> about sending an updated patch.

The points are okay with me. I'm new to the packaging world, so I'm
still learning. Thanks for the pointers

>> + "14801gr34g0rmqz9pv4rkfa3crfdbyfk6r48vpg5a5407v0sixqi"
>> +(build-system ruby-build-system)
>> +(inputs
>> + `(("ruby-hoe" ,ruby-hoe)))
>
> This should be a native-input.
>

Okay. Thanks.


>> +(synopsis
>> + "Library for HTTP Digest Authentication based on RFC 2617")
>
> In general we make a habit of keeping this all on one line. How about this?
>
> (synopsis "RFC 2617 HTTP digest authentication library")
>

That is better than what I had.


>> +(description
>> + "This library implements HTTP's Digest Authentication scheme in ruby.
>> +This enables you to use the Digest Authentication scheme,
>> +over the more insecure Basic Authentication scheme")
>
> My science-based bias against personal pronouns perhaps, how does this sound?
>
> (description
>  "This library implements HTTP's digest authentication scheme based on
> RFC 2617.  This enables the use of the digest authentication scheme instead
> of the more insecure basic authentication scheme.")
>

Also okay.



[PATCH] gnu: mpop: Update to 1.2.6.

2016-11-17 Thread Arun Isaac

Please find attached patch to update mpop from 1.2.5 to 1.2.6.

Thanks,
Arun

From 5cb8a651b9eb97b8f6db36bb479140d6ed5692c1 Mon Sep 17 00:00:00 2001
From: Arun Isaac 
Date: Thu, 17 Nov 2016 13:34:42 +0530
Subject: [PATCH] gnu: mpop: Update to 1.2.6.

* gnu/packages/mail.scm (mpop): Update to 1.2.6.
---
 gnu/packages/mail.scm | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index 5d304d5..c294e20 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -1471,7 +1471,7 @@ converts them to maildir format directories.")
 (define-public mpop
   (package
 (name "mpop")
-(version "1.2.5")
+(version "1.2.6")
 (source
  (origin
(method url-fetch)
@@ -1479,7 +1479,7 @@ converts them to maildir format directories.")
version ".tar.xz"))
(sha256
 (base32
- "0n0ij258kn8lfa6nyr6l6plc4hf1wvyf1hkwicvdbjqdqrgjnq81"
+ "0p1ix63jh64dibrlccch8q7gxl9nn18wd2qpyr5z1h4gs2fpmv4z"
 (build-system gnu-build-system)
 (inputs
  `(("gnutls" ,gnutls)
-- 
2.10.2



signature.asc
Description: PGP signature


[Patch v2] daemon: Set ownership of kept build directories to the calling user.

2016-11-17 Thread Hartmut Goebel
Fixes .

* nix/libstore/globals.hh (Settings) Add clientUid and clientGid.
* nix/nix-daemon/nix-daemon.cc (pdaemonLoop] Store UID and GID of the
  caller in settings.
* nix/libstore/build.cc (_chown): New function.
  (DerivationGoal::deleteTmpDir): Use it, change ownership of build
  directory if it is kept.
---
 nix/libstore/build.cc| 24 
 nix/libstore/globals.hh  |  6 ++
 nix/nix-daemon/nix-daemon.cc | 13 +
 3 files changed, 43 insertions(+)

diff --git a/nix/libstore/build.cc b/nix/libstore/build.cc
index ae78e65..b49fb95 100644
--- a/nix/libstore/build.cc
+++ b/nix/libstore/build.cc
@@ -2609,6 +2609,23 @@ void DerivationGoal::closeLogFile()
 }
 
 
+static void _chown(const Path & path, uid_t uid, gid_t gid)
+{
+checkInterrupt();
+
+printMsg(lvlVomit, format("%1%") % path);
+
+if (chown(path.c_str(), uid, gid) == -1) {
+   throw SysError(format("change owner and group of `%1%'") % path);
+}
+struct stat st = lstat(path);
+if (S_ISDIR(st.st_mode)) {
+for (auto & i : readDirectory(path))
+_chown(path + "/" + i.name, uid, gid);
+}
+}
+
+
 void DerivationGoal::deleteTmpDir(bool force)
 {
 if (tmpDir != "") {
@@ -2617,6 +2634,13 @@ void DerivationGoal::deleteTmpDir(bool force)
 format("note: keeping build directory `%2%'")
 % drvPath % tmpDir);
 chmod(tmpDir.c_str(), 0755);
+// Change the ownership if clientUid is set. Never change the
+// ownership to "root" for security reasons. So zero is used as
+// marker for unset.
+if (settings.clientUid != 0) {
+_chown(tmpDir, settings.clientUid,
+   settings.clientGid != 0 ? settings.clientGid : -1);
+}
 }
 else
 deletePath(tmpDir);
diff --git a/nix/libstore/globals.hh b/nix/libstore/globals.hh
index 8c07e36..dc6a004 100644
--- a/nix/libstore/globals.hh
+++ b/nix/libstore/globals.hh
@@ -70,6 +70,12 @@ struct Settings {
subgoal of the same goal) fails. */
 bool keepGoing;
 
+/* User and groud id of the client issuing the buld request.  Used to set
+   the owner and group of the keept temporary directories of failed
+   builds. */
+uid_t clientUid;
+gid_t clientGid;
+
 /* Whether, if we cannot realise the known closure corresponding
to a derivation, we should try to normalise the derivation
instead. */
diff --git a/nix/nix-daemon/nix-daemon.cc b/nix/nix-daemon/nix-daemon.cc
index 35c284f..e900a7d 100644
--- a/nix/nix-daemon/nix-daemon.cc
+++ b/nix/nix-daemon/nix-daemon.cc
@@ -950,6 +950,19 @@ static void daemonLoop()
 strncpy(argvSaved[1], processName.c_str(), 
strlen(argvSaved[1]));
 }
 
+#if defined(SO_PEERCRED)
+/* Store the client's user and group for this connection. This
+   has to be done in the forked process since it is per
+   connection. */
+settings.clientUid = cred.uid;
+settings.clientGid = cred.gid;
+#else
+/* Setting these to zero means: do not change, esp. do not
+   change to "root". */
+settings.clientUid = 0;
+settings.clientGid = 0;
+#endif
+
 /* Handle the connection. */
 from.fd = remote;
 to.fd = remote;
-- 
2.7.4




Re: [PATCH] Add php

2016-11-17 Thread tyreunom

Le 2016-11-17 01:01, Marius Bakke a écrit :

Ludovic Courtès  writes:


Marius Bakke  skribis:

Some failures are indeed due to missing network or programs in the 
build

environment. I tried patching a few just now, but unfortunately some
files are in a format apparently not supported by Guile!

 870: 5 [call-with-input-file "ext/mbstring/tests/bug26639.phpt" ...]
In 
/gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/build/utils.scm:
 556: 4 [#/gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/buil
d/utils.scm:555:10 (in)> #11>]
 592: 3 [#/gnu/store/ciqw5z470c8ihl1kfswj1j3ix6hs092d-module-import/guix/buil
d/utils.scm:578:6 (in out)> #11> ...]

In ice-9/rdelim.scm:
 188: 2 [read-line # 
concat]

In unknown file:
   ?: 1 [%read-line #]
In ice-9/boot-9.scm:
 109: 0 [#args)> decoding-error ...]


ice-9/boot-9.scm:109:20: In procedure #ice-9/boot-9.scm:100:6 (thrown-k . arg

s)>:
ice-9/boot-9.scm:109:20: Throw to key `decoding-error' with args 
`("scm_getc" "input decoding error

" 84 #)'.

`file` reports: ext/mbstring/tests/bug26639.phpt: Non-ISO 
extended-ASCII text


Presumably this is ‘substitute*’ failing to read the file.

‘substitute*’ expects input files to be UTF-8-encoded; when this is 
not

the case, you need to bind ‘%default-port-encoding’ to whatever is the
right encoding or #f for the catch-all ISO-8859-1.  See
‘gettext-minimal’ for an example.


Thank you! That was exactly what I needed.

Unfortunately that only fixed a handful of tests, the remaining
50-something had to be disabled for a variety of reasons.

I've added a commentary to each disabled test. If you recognize any of
these errors/think you know what's going on, please update the patch.
It would be nice to know if the iconv and gd stuff is expected, and if
the two sqlite tests can really be ignored. The curl one is strange 
too.


Just as I wanted to send a similar patch ;)

I've been looking at some of them. The failing sqlite test is a bug in 
sqlite that has been fixed last august 
(https://sqlite.org/src/info/ef360601). We currently have version 
3.14.1, when the latest upstream version is 3.15.1. Updating should fix 
the problem.


73159 has been fixed in gd: https://github.com/libgd/libgd/issues/289 
(more recent than latest gd release unfortunately)


73155 has also been fixed in gd: 
https://github.com/libgd/libgd/issues/309 (even more recent)


72482 is fixed here: 
https://gist.github.com/anonymous/873314feb4f89bd8336711333299f748 (a 
patch to the bundled libgd)


73213 is fixed here: 
https://git.php.net/?p=php-src.git;a=blobdiff;f=ext/gd/libgd/gd.c;h=033d4fa5f0e9740e8b8c397a9038a115c617c419;hp=0b4b42fa27558fa32cc54e14dc297d9d0ba10832;hb=9acfb1a3a5268febb123b7e5fbd4eaf072c83537;hpb=c0219b323e0048440acbdd9ad74624c4bc33c335 
(a patch to the bundled libgd)


72339 has a CVE id: 2016-5766, but it should be fixed in libgd 2.2.3 
that we have according to the CVE description, and the failure is 
different from what the report says.


39780 has the unexpected output described in the bug report, so it 
really fails. I don't think we can fix our libgd though, because the 
bundled one has some php_* functions that are used to get a warning 
instead of an error.


we could include patches to our libgd to fix two (maybe four) issues. We 
should also upgrade our sqlite version, but many packages will then have 
to be rebuilt, or we could create a separate package for the newer 
version. What do you suggest?




If there are no further comments, I will push this in the next few 
days:




Re: [PATCH] gnu: ruby-net-http-digest-auth: Add new package

2016-11-17 Thread Ben Woodcroft

Hi Frederick, thanks for the updated patch.

I didn't see any functional issues with this patch, but I had some 
trouble testing this out - can I ask how to test it? My problem was 
simply that I didn't know of a http-only server with this authentication 
method. I ask because the last commit to the development repository was 
in 2013.


Below is some minor points about the patch. If you are happy with them 
and we are confident in the testing then I'll push with these changes. 
Do not worry about sending an updated patch.


On 17/11/16 01:57, Frederick Muriithi wrote:

gnu: ruby-net-http-digest-auth: Add new package

* gnu/packages/ruby.scm (ruby-net-http-digest-auth): Added a new
  package definition


I changed the commit message to the following as conventional:

gnu: Add ruby-net-http-digest-auth.

* gnu/packages/ruby.scm (ruby-net-http-digest-auth): New variable.


---
 gnu/packages/ruby.scm | 24 
 1 file changed, 24 insertions(+)

diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index 42beda3..ab10664 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -4179,3 +4179,27 @@ patterns.")
 libraries for compiling Ruby native extensions.")
 (home-page "https://github.com/ruby-gnome2/pkg-config;)
 (license license:lgpl2.0+)))
+
+(define-public ruby-net-http-digest-auth
+  (package
+(name "ruby-net-http-digest-auth")
+(version "1.4")
+(source
+ (origin
+   (method url-fetch)
+   (uri (rubygems-uri "net-http-digest_auth" version))
+   (sha256
+(base32
+ "14801gr34g0rmqz9pv4rkfa3crfdbyfk6r48vpg5a5407v0sixqi"
+(build-system ruby-build-system)
+(inputs
+ `(("ruby-hoe" ,ruby-hoe)))

This should be a native-input.


+(synopsis
+ "Library for HTTP Digest Authentication based on RFC 2617")

In general we make a habit of keeping this all on one line. How about this?

(synopsis "RFC 2617 HTTP digest authentication library")


+(description
+ "This library implements HTTP's Digest Authentication scheme in 
ruby.

+This enables you to use the Digest Authentication scheme,
+over the more insecure Basic Authentication scheme")
My science-based bias against personal pronouns perhaps, how does this 
sound?


(description
 "This library implements HTTP's digest authentication scheme based on
RFC 2617.  This enables the use of the digest authentication scheme instead
of the more insecure basic authentication scheme.")


+(home-page
+ "http://github.com/drbrain/net-http-digest_auth;)

Best to keep that on one line.


+(license license:expat)))


Thanks.
ben



Re: [PATCH] Add php

2016-11-17 Thread Hartmut Goebel
Am 17.11.2016 um 01:01 schrieb Marius Bakke:
> If there are no further comments, I will push this in the next few days:

Thanks for your work on this. It seems to be laborious.

I don't have time to inspect not to test the patch, so just some
thought. I'm not a php-user, but wanted to install a php-driven website
on Guix some weeks ago and had a look on what else would be required.

  * Does this php package include what other distributions call
"php-cli", "php-fpm" and "php-cgi"? Maybe you want to mention it in
the synopsis. (Addendum: I just found in
 that it looks like
these are part of the package.)
  * As far as I understood, "pear" and "pecl" are important for
installing php packages. Are these part of your package, too?


  * What do you think about adding "Packaging guideline" for "PHP
Modules" section to the manual?
  * Do yo think we need some php build system?


-- 
Regards
Hartmut Goebel

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





Re: New continuous integration server bought thanks to Igalia

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

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

> I mentioned it this summer in my GHM talk: free software cooperative
> Igalia made a generous donation to the “Guix Europe” non-profit, which
> allowed us to purchase a brand new, Libreboot-powered server, that will
> ultimately replace the VM behind hydra.gnu.org.
>
> Andreas reports on the story here:
>
>   https://www.gnu.org/software/guix/news/growing-our-build-farm.html

Thanks to Mathieu, Andreas, and Samuel Thibault (of GNU/Hurd, Debian,
etc.), the machine is now in its data center in Bordeaux, France, in a
rack shared with non-profit ISP Aquilenet.  Great job, gentlefolks!

You can ping it at bayfront.guixsd.org.  :-)  The next steps will be to
update its config¹ such that it has NGINX running in front of ‘guix
publish’ with Let’s Encrypt certs, and a Cuirass service actually
building stuff.

Ludo’.

¹ http://git.savannah.gnu.org/cgit/guix/maintenance.git/tree/hydra/bayfront.scm



Re: mount syscall

2016-11-17 Thread Ludovic Courtès
John Darrington  skribis:

> On Tue, Nov 15, 2016 at 11:46:01AM +0100, Ludovic Court??s wrote:
>  John Darrington  skribis:
>  
>  > On Mon, Nov 14, 2016 at 10:48:18AM +0100, Ludovic Court??s wrote:
>  >  
>  >  The ???mount??? system call; see (gnu build file-systems).
>  >
>  > I confess, I have not really thought about this before. But supposing 
> somebody has in their /etc/config.scm:
>  >
>  >   (file-systems 
>  >(cons*
>  > (file-system
>  >   (device "my-root")
>  >   (title 'label)
>  >   (mount-point "/")
>  >   (type "ext4"))
>  > (file-system
>  >   (device "fileserver.example.com:/home")
>  >   (title 'device)
>  >   (mount-point "/home")
>  >   (type "nfs4"))
>  > %base-file-systems))
>  >
>  > Would the /home filesystem then get mounted on boot?
>  
>  Maybe not.  :-)
>  
>  The man page for mount(2) says:
>  
>  --8<---cut here---start->8--- Values
>  for the filesystemtype argument supported by the kernel are listed in
>  /proc/filesystems (e.g., "btrfs", "ext4", "jfs", "xfs", "vfat", "fuse",
>  "tmpfs", "cgroup", "proc", "mqueue", "nfs", "cifs", "iso9660").  Further
>  types may become available when the appropriate modules are loaded.
>  --8<---cut here---end--->8---
>  
>  I don???t know what happens with NFS, you???ll have to tell us.
>
> The answer seems to be that it would fail unless we patch our mount syscall
> wrapper with something like:

[...]

> +(let ((xoptions
> +   (cond
> +((string-match "^nfs.*" type)
> + (let* ((hosts (string-split source #\:))
> +(aa (car (getaddrinfo (car hosts)  #f)))
> +(sa (addrinfo:addr aa))
> +(inet-addr (inet-ntop (sockaddr:fam sa)
> +  (sockaddr:addr 
> sa
> +   (string-append "addr="
> +  inet-addr
> +  (if options
> +  (string-append "," options)
> +  ""
> +(else
> + options

The ‘mount’ binding shouldn’t try to be smart and do things like this
IMO.  However, we could have a separate helper procedure to do that, if
needed and ‘file-system-shepherd-service’ would pick the right one.

Now, we should add system tests for that, otherwise it sounds like we’re
adding code that will rarely be used and we’ll never know whether it
actually works or how it’s supposed to be used.  :-)

Thanks,
Ludo’.



Re: [PATCH] guix: Add whitespacing to --list-generations output.

2016-11-17 Thread Efraim Flashner
On Thu, Nov 17, 2016 at 09:59:55AM +0100, Roel Janssen wrote:
> Dear Guix,
> 
> The new diff-format displayed when invoking @command{guix package
> --list-generations} prints a blank line after the initial generation,
> and then no blank lines in the diffs.
> 
> This patch adds that blank line to the diffs as well.
> 
> Before:
> --
> Generation 1Nov 15 2016 11:14:05
>   guix  0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
> 
> Generation 2Nov 15 2016 12:06:32
>  + emacs25.1out /gnu/store/sb2qfjr...-emacs-25.1
> Generation 4Nov 15 2016 12:22:15
>  + guix 0.11.0-3.7ca3   out /gnu/store/l99rkv2...-guix-0.11.0-3.7ca3
>  - guix 0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
> --
> 
> After:
> --
> Generation 1Nov 15 2016 11:14:05
>   guix  0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
> 
> Generation 2Nov 15 2016 12:06:32
>  + emacs25.1out /gnu/store/sb2qfjr...-emacs-25.1
> 
> Generation 4Nov 15 2016 12:22:15
>  + guix 0.11.0-3.7ca3   out /gnu/store/l99rkv2...-guix-0.11.0-3.7ca3
>  - guix 0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
> --
> 
> As you can see, it's only a small change, and so is the code change.
> Here's the patch:
> 
> >From a9b5305f8af51b88643986f99a8e94cad4d7a805 Mon Sep 17 00:00:00 2001
> From: Roel Janssen 
> Date: Thu, 17 Nov 2016 09:46:15 +0100
> Subject: [PATCH] guix: Add whitespacing to --list-generations output.
> 
> ---
>  guix/ui.scm | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/guix/ui.scm b/guix/ui.scm
> index b9fbbfd..cafb3c6 100644
> --- a/guix/ui.scm
> +++ b/guix/ui.scm
> @@ -1094,7 +1094,8 @@ DURATION-RELATION with the current time."
>    (removed (lset-difference
>  equal-entry? (list-entries old) (list-entries new
>    (for-each (cut display-entry <> "+") added)
> -  (for-each (cut display-entry <> "-") removed)))
> +  (for-each (cut display-entry <> "-") removed)
> +  (newline)))
>  
>    (display-diff profile gen1 gen2))
>  
> -- 
> 2.7.4
> 
> Kind regards,
> Roel Janssen
> 

That does make it easier to read

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


signature.asc
Description: PGP signature


[PATCH] guix: Add whitespacing to --list-generations output.

2016-11-17 Thread Roel Janssen
Dear Guix,

The new diff-format displayed when invoking @command{guix package
--list-generations} prints a blank line after the initial generation,
and then no blank lines in the diffs.

This patch adds that blank line to the diffs as well.

Before:
--
Generation 1Nov 15 2016 11:14:05
  guix  0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8

Generation 2Nov 15 2016 12:06:32
 + emacs25.1out /gnu/store/sb2qfjr...-emacs-25.1
Generation 4Nov 15 2016 12:22:15
 + guix 0.11.0-3.7ca3   out /gnu/store/l99rkv2...-guix-0.11.0-3.7ca3
 - guix 0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
--

After:
--
Generation 1Nov 15 2016 11:14:05
  guix  0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8

Generation 2Nov 15 2016 12:06:32
 + emacs25.1out /gnu/store/sb2qfjr...-emacs-25.1

Generation 4Nov 15 2016 12:22:15
 + guix 0.11.0-3.7ca3   out /gnu/store/l99rkv2...-guix-0.11.0-3.7ca3
 - guix 0.10.0-1.97c8   out /gnu/store/5ibkqq9...-guix-0.10.0-1.97c8
--

As you can see, it's only a small change, and so is the code change.
Here's the patch:

>From a9b5305f8af51b88643986f99a8e94cad4d7a805 Mon Sep 17 00:00:00 2001
From: Roel Janssen 
Date: Thu, 17 Nov 2016 09:46:15 +0100
Subject: [PATCH] guix: Add whitespacing to --list-generations output.

---
 guix/ui.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/guix/ui.scm b/guix/ui.scm
index b9fbbfd..cafb3c6 100644
--- a/guix/ui.scm
+++ b/guix/ui.scm
@@ -1094,7 +1094,8 @@ DURATION-RELATION with the current time."
   (removed (lset-difference
 equal-entry? (list-entries old) (list-entries new
   (for-each (cut display-entry <> "+") added)
-  (for-each (cut display-entry <> "-") removed)))
+  (for-each (cut display-entry <> "-") removed)
+  (newline)))
 
   (display-diff profile gen1 gen2))
 
-- 
2.7.4

Kind regards,
Roel Janssen