unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
* [PATCH] gnu: Resurrect hydra.
@ 2016-09-09 21:09 Jan Nieuwenhuizen
  2016-09-13  8:22 ` Ludovic Courtès
  0 siblings, 1 reply; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2016-09-09 21:09 UTC (permalink / raw)
  To: guix-devel

[-- Attachment #1: Type: text/plain, Size: 905 bytes --]

Hi!

I wanted to play with Hydra and found it did not build and so did not
some of its dependencies.

Our nix package got updated which broke the hydra build.  First I
downgraded nix to 1.8.  That worked, eventually.  We decided on #guix
that we'd rather upgrade than downgrade.

So I upgraded hydra to latest git and did not get past build problems.
The Hydra git does not mention anything on dependencies or versions.  I
asked on #guix and later on #nixos.

Finally I found this comment from last February

    https://github.com/NixOS/hydra/issues/270

    "You have to use NixUnstable or go a few Hydra commits back."

So after a couple of iterations in the Hydra git I settled on a commit
from 20151030 (just after a compile fix that I ran into).

Two perl packages did not build anymore (failing tests), so I disabled
the tests.  Hydra also has two new dependencies, which I added.

Greetings,
Jan


[-- Attachment #2: 0001-gnu-Resurrect-hydra.patch --]
[-- Type: text/x-patch, Size: 10531 bytes --]

From 9c3cc736629b1c24eae489d586f26a0c19356725 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <janneke@gnu.org>
Date: Fri, 9 Sep 2016 19:57:26 +0200
Subject: [PATCH] gnu: Resurrect hydra.

* gnu/packages/gd.scm (perl-gd): Disable tests, 1 fails.  Fixes
build.
* gnu/packages/imagemagick.scm (perl-image-magick): Disable tests, 2 fail.
* gnu/packages/patches/hydra-automake-1.15.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Remove listing.
* gnu/packages/ci.scm (perl-net-statsd,libpqxx): Add variable.  (hydra): Bump
to 20151030.  Fixes building with nix-1.11.x.  Add new libpqxx and
perl-net-statsd dependencies.
---
 gnu/local.mk                                   |  1 -
 gnu/packages/ci.scm                            | 71 ++++++++++++++++++++++----
 gnu/packages/gd.scm                            |  1 +
 gnu/packages/imagemagick.scm                   |  3 +-
 gnu/packages/patches/hydra-automake-1.15.patch | 63 -----------------------
 5 files changed, 65 insertions(+), 74 deletions(-)
 delete mode 100644 gnu/packages/patches/hydra-automake-1.15.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index 5696378..d63c3e2 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -566,7 +566,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/higan-remove-march-native-flag.patch	\
   %D%/packages/patches/hop-bigloo-4.0b.patch			\
   %D%/packages/patches/hop-linker-flags.patch			\
-  %D%/packages/patches/hydra-automake-1.15.patch		\
   %D%/packages/patches/hydra-disable-darcs-test.patch		\
   %D%/packages/patches/hypre-doc-tables.patch			\
   %D%/packages/patches/hypre-ldflags.patch			\
diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index e0ff873..44f1315 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -20,6 +21,7 @@
   #:use-module ((guix licenses) #:prefix l:)
   #:use-module (gnu packages)
   #:use-module (guix packages)
+  #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
@@ -31,31 +33,80 @@
   #:use-module (gnu packages package-management)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages zip)
-  #:use-module (guix build-system gnu))
+  #:use-module (guix build-system gnu)
+  #:use-module (guix build-system perl))
+
+(define-public perl-net-statsd
+  (package
+   (name "perl-net-statsd")
+   (version "0.12")
+   (source
+    (origin
+      (method url-fetch)
+      (uri (string-append
+            "mirror://cpan/authors/id/C/CO/COSIMO/Net-Statsd-"
+            version
+            ".tar.gz"))
+      (sha256
+       (base32
+        "0p2nhrwamic2fyj094y583q088ixv9gbb82c3invqrd17mh57r33"))))
+   (build-system perl-build-system)
+   (home-page
+    "http://search.cpan.org/dist/Net-Statsd")
+   (synopsis "Perl client for Etsy's statsd daemon")
+   (description "This module implement a UDP client for the statsd statistics
+collector daemon in use at Etsy.com.")
+   (license (package-license perl))))
+
+(define-public libpqxx
+  (package
+    (name "libpqxx")
+    (version "4.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://pqxx.org/download/software/libpqxx/"
+                    name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0f6wxspp6rx12fkasanb0z2g2gc8dhcfwnxagx8wwqbpg6ifsz09"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("python" ,python-2)))
+    (inputs `(("postgresql" ,postgresql)))
+    (arguments
+     `(#:tests? #f)) ; # FAIL:  1
+    (synopsis "C++ connector for PostgreSQL")
+    (description
+     "Libpqxx is a C++ library to enable user programs to communicate with the
+PostgreSQL database back-end.  The database back-end can be local or it may be
+on another machine, accessed via TCP/IP.")
+    (home-page "http://pqxx.org/")
+    (license l:bsd-3)))
 
 (define-public hydra
-  (let ((commit "4c0e3e47034545ad3e9e86dd069138bcebb8ccee"))
+  (let ((commit "1ff48da3d3d4a425063f5b7dd0b89d35270f8932"))
     (package
       (name "hydra")
-      (version (string-append "20150407." (string-take commit 7)))
+      (version (string-append "20151030." (string-take commit 7)))
       (source (origin
                 (method git-fetch)
                 (uri (git-reference
                       (url "https://github.com/NixOS/hydra")
                       (commit commit)))
                 (file-name (string-append name "-" version))
-                (sha256
-                 (base32
-                  "08vc76xb7f42hh65j7qvjf58hw36aki5ml343170pq94vk75b1nh"))
                 (patches (search-patches
-                          "hydra-automake-1.15.patch"
                           ;; TODO: Remove once we have a darcs input
-                          "hydra-disable-darcs-test.patch"))))
+                          "hydra-disable-darcs-test.patch"))
+                (sha256
+                 (base32
+                  "0ni8i8v1nxxfr51rz8m6znwpbm77vr7i05k506hmgmg32r938lap"))))
       (build-system gnu-build-system)
       (native-inputs
        `(("unzip" ,unzip)
@@ -74,7 +125,8 @@
          ("mercurial" ,mercurial)
          ("bazaar" ,bazaar)))
       (inputs
-       `(("perl" ,perl)
+       `(("libpqxx" ,libpqxx)
+         ("perl" ,perl)
          ("guile" ,guile-2.0)
          ("openssl" ,openssl)
          ("bzip2" ,bzip2)
@@ -125,6 +177,7 @@
          ("perl-libwww" ,perl-libwww)
          ("perl-lwp-protocol-https" ,perl-lwp-protocol-https)
          ("perl-net-amazon-s3" ,perl-net-amazon-s3)
+         ("perl-net-statsd" ,perl-net-statsd)
          ("perl-padwalker" ,perl-padwalker)
          ("perl-readonly" ,perl-readonly)
          ("perl-set-scalar" ,perl-set-scalar)
diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm
index b1bbc22..4ba0194 100644
--- a/gnu/packages/gd.scm
+++ b/gnu/packages/gd.scm
@@ -106,6 +106,7 @@ most common applications of GD involve website development.")
                                    (string-append "--lib_" i "_path="
                                                   (assoc-ref %build-inputs i)))
                                  '("zlib" "png" "ft" "jpeg" "fontconfig"))
+       #:tests? #f ;; Failed 1/2 test programs. 1/12 subtests failed.
        #:phases (alist-cons-after
                  'configure 'clear-autogenerated-files
                  (lambda _
diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm
index f824abf..b62552f 100644
--- a/gnu/packages/imagemagick.scm
+++ b/gnu/packages/imagemagick.scm
@@ -124,7 +124,8 @@ text, lines, polygons, ellipses and Bézier curves.")
     (native-inputs `(("pkg-config" ,pkg-config)))
     (inputs `(("imagemagick" ,imagemagick)))
     (arguments
-     `(#:phases
+     `(#:tests? #f ;;Failed 2/23 test programs. 2/353 subtests failed.
+       #:phases
        (modify-phases %standard-phases
          (add-before
           'configure 'image-magick-flags
diff --git a/gnu/packages/patches/hydra-automake-1.15.patch b/gnu/packages/patches/hydra-automake-1.15.patch
deleted file mode 100644
index 91c7b92..0000000
--- a/gnu/packages/patches/hydra-automake-1.15.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-This patch takes a slightly different approach to solving the issue reported
-at https://github.com/NixOS/hydra/issues/200.  This fix allows us to use
-Automake's parallel test harness.
-
---- source/configure.ac.orig	1969-12-31 18:00:01.000000000 -0600
-+++ source/configure.ac	2015-04-15 10:58:15.974679278 -0500
-@@ -33,7 +33,7 @@
- fi
- ])
- 
--NEED_PROG(perl, perl)
-+NEED_PROG([PERL], perl)
- 
- NEED_PROG([NIX_STORE_PROGRAM], [nix-store])
- 
---- source/tests/Makefile.am.orig	1969-12-31 18:00:01.000000000 -0600
-+++ source/tests/Makefile.am	2015-04-15 11:00:35.846682904 -0500
-@@ -1,19 +1,20 @@
--TESTS_ENVIRONMENT = \
--  BZR_HOME="$(abs_builddir)/data"			\
--  HYDRA_DBI="dbi:SQLite:db.sqlite"			\
--  HYDRA_DATA="$(abs_builddir)/data"			\
--  HYDRA_HOME="$(top_srcdir)/src"			\
--  HYDRA_CONFIG=						\
--  NIX_REMOTE=						\
--  GUIX_CONFIGURATION_DIRECTORY="$(abs_builddir)/nix/etc/nix"		\
--  NIX_STATE_DIR="$(abs_builddir)/nix/var/nix"		\
--  NIX_MANIFESTS_DIR="$(abs_builddir)/nix/var/nix/manifests"	\
--  NIX_STORE_DIR="$(abs_builddir)/nix/store"			\
--  NIX_LOG_DIR="$(abs_builddir)/nix/var/log/nix"		\
--  NIX_BUILD_HOOK=					\
--  PERL5LIB="$(srcdir):$(top_srcdir)/src/lib:$$PERL5LIB"	\
--  PATH=$(abs_top_srcdir)/src/script:$(abs_top_srcdir)/src/c:$$PATH \
--  perl -w
-+AM_TESTS_ENVIRONMENT = \
-+  BZR_HOME="$(abs_builddir)/data"; export BZR_HOME;	\
-+  HYDRA_DBI="dbi:SQLite:db.sqlite"; export HYDRA_DBI;	\
-+  HYDRA_DATA="$(abs_builddir)/data"; export HYDRA_DATA;	\
-+  HYDRA_HOME="$(top_srcdir)/src"; export HYDRA_HOME;	\
-+  HYDRA_CONFIG=; export HYDRA_CONFIG;			\
-+  NIX_REMOTE=; export NIX_REMOTE;			\
-+  GUIX_CONFIGURATION_DIRECTORY="$(abs_builddir)/nix/etc/nix"; export GUIX_CONFIGURATION_DIRECTORY; \
-+  NIX_STATE_DIR="$(abs_builddir)/nix/var/nix"; export NIX_STATE_DIR; \
-+  NIX_MANIFESTS_DIR="$(abs_builddir)/nix/var/nix/manifests"; export NIX_MANIFESTS_DIR; \
-+  NIX_STORE_DIR="$(abs_builddir)/nix/store"; export NIX_STORE_DIR; \
-+  NIX_LOG_DIR="$(abs_builddir)/nix/var/log/nix"; export NIX_LOG_DIR; \
-+  NIX_BUILD_HOOK=; export NIX_BUILD_HOOK;		\
-+  PERL5LIB="$(srcdir):$(top_srcdir)/src/lib:$$PERL5LIB"; export PERL5LIB; \
-+  PATH=$(abs_top_srcdir)/src/script:$(abs_top_srcdir)/src/c:$$PATH; export PATH;
-+LOG_COMPILER = $(PERL)
-+AM_LOG_FLAGS = -w
- 
- EXTRA_DIST = \
-   $(wildcard *.pm) \
-@@ -33,7 +34,7 @@
- check_SCRIPTS = db.sqlite repos
- 
- db.sqlite: $(top_srcdir)/src/sql/hydra-sqlite.sql
--	$(TESTS_ENVIRONMENT) $(top_srcdir)/src/script/hydra-init
-+	$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) $(top_srcdir)/src/script/hydra-init
- 
- repos: dirs
- 
-- 
2.10.0


[-- Attachment #3: Type: text/plain, Size: 154 bytes --]


-- 
Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar®  http://AvatarAcademy.nl  

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH] gnu: Resurrect hydra.
  2016-09-09 21:09 [PATCH] gnu: Resurrect hydra Jan Nieuwenhuizen
@ 2016-09-13  8:22 ` Ludovic Courtès
  2016-09-13 16:59   ` Jan Nieuwenhuizen
  0 siblings, 1 reply; 9+ messages in thread
From: Ludovic Courtès @ 2016-09-13  8:22 UTC (permalink / raw)
  To: Jan Nieuwenhuizen; +Cc: guix-devel

Hi Jan,

Jan Nieuwenhuizen <janneke@gnu.org> skribis:

> I wanted to play with Hydra and found it did not build and so did not
> some of its dependencies.
>
> Our nix package got updated which broke the hydra build.  First I
> downgraded nix to 1.8.  That worked, eventually.  We decided on #guix
> that we'd rather upgrade than downgrade.

Neat.

I should mention that I didn’t maintain the Guile part in Hydra (which
is really just the ‘hydra-eval-guile-jobs.in’ script), so the latest
Hydra won’t work with Guix.  :-/

I think it’s “just a matter” of updating this script to produce JSON
instead of XML, but that has to be done (and I thought it’d be more
fruitful to invest in Cuirass).

ISTR that other changes were made that tie Hydra to Nix more closely,
and I’m not sure what the implications are.

> So I upgraded hydra to latest git and did not get past build problems.
> The Hydra git does not mention anything on dependencies or versions.  I
> asked on #guix and later on #nixos.
>
> Finally I found this comment from last February
>
>     https://github.com/NixOS/hydra/issues/270
>
>     "You have to use NixUnstable or go a few Hydra commits back."
>
> So after a couple of iterations in the Hydra git I settled on a commit
> from 20151030 (just after a compile fix that I ran into).
>
> Two perl packages did not build anymore (failing tests), so I disabled
> the tests.  Hydra also has two new dependencies, which I added.

Woow, congrats on getting this far!

> From 9c3cc736629b1c24eae489d586f26a0c19356725 Mon Sep 17 00:00:00 2001
> From: Jan Nieuwenhuizen <janneke@gnu.org>
> Date: Fri, 9 Sep 2016 19:57:26 +0200
> Subject: [PATCH] gnu: Resurrect hydra.
>
> * gnu/packages/gd.scm (perl-gd): Disable tests, 1 fails.  Fixes
> build.
> * gnu/packages/imagemagick.scm (perl-image-magick): Disable tests, 2 fail.
> * gnu/packages/patches/hydra-automake-1.15.patch: Remove.
> * gnu/local.mk (dist_patch_DATA): Remove listing.
> * gnu/packages/ci.scm (perl-net-statsd,libpqxx): Add variable.  (hydra): Bump
> to 20151030.  Fixes building with nix-1.11.x.  Add new libpqxx and
> perl-net-statsd dependencies.

Could you split it into separate packages: one for each new package, one
for each individual package change?

Thank you!

Ludo’.

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: [PATCH] gnu: Resurrect hydra
  2016-09-13  8:22 ` Ludovic Courtès
@ 2016-09-13 16:59   ` Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 1/5] gnu: perl-gd: disable tests Jan Nieuwenhuizen
                       ` (4 more replies)
  0 siblings, 5 replies; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2016-09-13 16:59 UTC (permalink / raw)
  To: guix-devel

Hi!

> I should mention that I didn’t maintain the Guile part in Hydra (which
> is really just the ‘hydra-eval-guile-jobs.in’ script), so the latest
> Hydra won’t work with Guix.  :-/

Ah..I was wondering about nix and how it all worked together.  That makes
more sense now.

> I think it’s “just a matter” of updating this script to produce JSON instead
> of XML, but that has to be done (and I thought it’d be more fruitful to
> invest in Cuirass).

Sure.  I didn't upgrade hydra to latest git, as that depends on an unreleased
version of nix also; did not want to go there.

> ISTR that other changes were made that tie Hydra to Nix more closely,
> and I’m not sure what the implications are.

I understand.  I struggled quite a while reading doc/dev-notes.txt and getting
sqlite up and running, fixing database errors until I finaly found that file
is terribly out of date and in 2014 sqlite support was dropped, apparently.

> > Two perl packages did not build anymore (failing tests), so I disabled
> > the tests.  Hydra also has two new dependencies, which I added.

> Woow, congrats on getting this far!

:-)

I need a sensible ci server that works with guix, and from the outside it
looks like hydra is pretty good.

> Could you split it into separate packages: one for each new package, one
> for each individual package change?

Done.

Find the script below that I used to test hydra with postgres.

Greetings,
Jan

--8<---------------cut here---------------start------------->8---
#! /bin/sh

set -x

hydra=/gnu/store/zcrnzxp44b6k1fcanpxgv6mzvh5wj3w9-hydra-20151030.1ff48da/bin
data=/tmp/hydra
export HYDRA_DBI="dbi:Pg:dbname=hydra;host=localhost;user=hydra;"
export HYDRA_DATA=$data

mkdir -p $data

if false; then
    createuser -S -D -R hydra
    postgres -c "psql --command \"alter user hydra with password 'hydra'\" postgres"
    dropdb hydra hydra
    createdb -O hydra hydra
    $hydra/hydra-init
    $hydra/hydra-create-user root --full-name 'root' --email-address 'root@localhost' --password root --role admin
fi
    
#    $hydra/hydra-init
#    $hydra/hydra-create-user root --full-name 'root' --email-address 'root@localhost' --password root --role admin

#$hydra/hydra-server --debug &
$hydra/hydra-server &
$hydra/hydra-queue-runner &
$hydra/hydra-evaluator &
jobs -p
echo "#!/bin/sh" > kill-hydra.sh
echo -n "kill " >> kill-hydra.sh
jobs -p | tr '\n' ' ' >> kill-hydra.sh
echo >> kill-hydra.sh
chmod +x kill-hydra.sh
--8<---------------cut here---------------end--------------->8---

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH 1/5] gnu: perl-gd: disable tests.
  2016-09-13 16:59   ` Jan Nieuwenhuizen
@ 2016-09-13 16:59     ` Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 2/5] gnu: perl-image-magick: " Jan Nieuwenhuizen
                       ` (3 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2016-09-13 16:59 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/gd.scm (perl-gd): Disable tests, 1 fails.  Fixes build.
---
 gnu/packages/gd.scm | 1 +
 1 file changed, 1 insertion(+)

diff --git a/gnu/packages/gd.scm b/gnu/packages/gd.scm
index b1bbc22..4ba0194 100644
--- a/gnu/packages/gd.scm
+++ b/gnu/packages/gd.scm
@@ -106,6 +106,7 @@ most common applications of GD involve website development.")
                                    (string-append "--lib_" i "_path="
                                                   (assoc-ref %build-inputs i)))
                                  '("zlib" "png" "ft" "jpeg" "fontconfig"))
+       #:tests? #f ;; Failed 1/2 test programs. 1/12 subtests failed.
        #:phases (alist-cons-after
                  'configure 'clear-autogenerated-files
                  (lambda _
-- 
2.10.0

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 2/5] gnu: perl-image-magick: disable tests.
  2016-09-13 16:59   ` Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 1/5] gnu: perl-gd: disable tests Jan Nieuwenhuizen
@ 2016-09-13 16:59     ` Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 3/5] gnu: Add perl-net-statsd Jan Nieuwenhuizen
                       ` (2 subsequent siblings)
  4 siblings, 0 replies; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2016-09-13 16:59 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/imagemagick.scm (perl-image-magick): Disable tests, 2 fail.
---
 gnu/packages/imagemagick.scm | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm
index 5d72cf2..8dac3e1 100644
--- a/gnu/packages/imagemagick.scm
+++ b/gnu/packages/imagemagick.scm
@@ -124,7 +124,8 @@ text, lines, polygons, ellipses and Bézier curves.")
     (native-inputs `(("pkg-config" ,pkg-config)))
     (inputs `(("imagemagick" ,imagemagick)))
     (arguments
-     `(#:phases
+     `(#:tests? #f ;;Failed 2/23 test programs. 2/353 subtests failed.
+       #:phases
        (modify-phases %standard-phases
          (add-before
           'configure 'image-magick-flags
-- 
2.10.0

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 3/5] gnu: Add perl-net-statsd.
  2016-09-13 16:59   ` Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 1/5] gnu: perl-gd: disable tests Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 2/5] gnu: perl-image-magick: " Jan Nieuwenhuizen
@ 2016-09-13 16:59     ` Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 4/5] gnu: Add libpqxx Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 5/5] gnu: Resurrect hydra Jan Nieuwenhuizen
  4 siblings, 0 replies; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2016-09-13 16:59 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/ci.scm (perl-net-statsd): New variable.
---
 gnu/packages/ci.scm | 27 ++++++++++++++++++++++++++-
 1 file changed, 26 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index e0ff873..ec51bb3 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -1,5 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
+;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -20,6 +21,7 @@
   #:use-module ((guix licenses) #:prefix l:)
   #:use-module (gnu packages)
   #:use-module (guix packages)
+  #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (gnu packages autotools)
   #:use-module (gnu packages base)
@@ -36,7 +38,30 @@
   #:use-module (gnu packages web)
   #:use-module (gnu packages xml)
   #:use-module (gnu packages zip)
-  #:use-module (guix build-system gnu))
+  #:use-module (guix build-system gnu)
+  #:use-module (guix build-system perl))
+
+(define-public perl-net-statsd
+  (package
+   (name "perl-net-statsd")
+   (version "0.12")
+   (source
+    (origin
+      (method url-fetch)
+      (uri (string-append
+            "mirror://cpan/authors/id/C/CO/COSIMO/Net-Statsd-"
+            version
+            ".tar.gz"))
+      (sha256
+       (base32
+        "0p2nhrwamic2fyj094y583q088ixv9gbb82c3invqrd17mh57r33"))))
+   (build-system perl-build-system)
+   (home-page
+    "http://search.cpan.org/dist/Net-Statsd")
+   (synopsis "Perl client for Etsy's statsd daemon")
+   (description "This module implement a UDP client for the statsd statistics
+collector daemon in use at Etsy.com.")
+   (license (package-license perl))))
 
 (define-public hydra
   (let ((commit "4c0e3e47034545ad3e9e86dd069138bcebb8ccee"))
-- 
2.10.0

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 4/5] gnu: Add libpqxx.
  2016-09-13 16:59   ` Jan Nieuwenhuizen
                       ` (2 preceding siblings ...)
  2016-09-13 16:59     ` [PATCH 3/5] gnu: Add perl-net-statsd Jan Nieuwenhuizen
@ 2016-09-13 16:59     ` Jan Nieuwenhuizen
  2016-09-13 16:59     ` [PATCH 5/5] gnu: Resurrect hydra Jan Nieuwenhuizen
  4 siblings, 0 replies; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2016-09-13 16:59 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/ci.scm (libpqxx): New variable.
---
 gnu/packages/ci.scm | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index ec51bb3..555c255 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -33,6 +33,7 @@
   #:use-module (gnu packages package-management)
   #:use-module (gnu packages perl)
   #:use-module (gnu packages pkg-config)
+  #:use-module (gnu packages python)
   #:use-module (gnu packages tls)
   #:use-module (gnu packages version-control)
   #:use-module (gnu packages web)
@@ -63,6 +64,32 @@
 collector daemon in use at Etsy.com.")
    (license (package-license perl))))
 
+(define-public libpqxx
+  (package
+    (name "libpqxx")
+    (version "4.0.1")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "http://pqxx.org/download/software/libpqxx/"
+                    name "-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0f6wxspp6rx12fkasanb0z2g2gc8dhcfwnxagx8wwqbpg6ifsz09"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("python" ,python-2)))
+    (inputs `(("postgresql" ,postgresql)))
+    (arguments
+     `(#:tests? #f)) ; # FAIL:  1
+    (synopsis "C++ connector for PostgreSQL")
+    (description
+     "Libpqxx is a C++ library to enable user programs to communicate with the
+PostgreSQL database back-end.  The database back-end can be local or it may be
+on another machine, accessed via TCP/IP.")
+    (home-page "http://pqxx.org/")
+    (license l:bsd-3)))
+
 (define-public hydra
   (let ((commit "4c0e3e47034545ad3e9e86dd069138bcebb8ccee"))
     (package
-- 
2.10.0

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH 5/5] gnu: Resurrect hydra.
  2016-09-13 16:59   ` Jan Nieuwenhuizen
                       ` (3 preceding siblings ...)
  2016-09-13 16:59     ` [PATCH 4/5] gnu: Add libpqxx Jan Nieuwenhuizen
@ 2016-09-13 16:59     ` Jan Nieuwenhuizen
  2016-09-14 19:44       ` Leo Famulari
  4 siblings, 1 reply; 9+ messages in thread
From: Jan Nieuwenhuizen @ 2016-09-13 16:59 UTC (permalink / raw)
  To: guix-devel

* gnu/packages/patches/hydra-automake-1.15.patch: Remove.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/ci.scm (hydra): Bump to 20151030.  Fixes building with
nix-1.11.x.  Add new libpqxx and perl-net-statsd dependencies.
---
 gnu/local.mk                                   |  1 -
 gnu/packages/ci.scm                            | 17 +++----
 gnu/packages/patches/hydra-automake-1.15.patch | 63 --------------------------
 3 files changed, 9 insertions(+), 72 deletions(-)
 delete mode 100644 gnu/packages/patches/hydra-automake-1.15.patch

diff --git a/gnu/local.mk b/gnu/local.mk
index cc3d383..a9b1760 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -567,7 +567,6 @@ dist_patch_DATA =						\
   %D%/packages/patches/higan-remove-march-native-flag.patch	\
   %D%/packages/patches/hop-bigloo-4.0b.patch			\
   %D%/packages/patches/hop-linker-flags.patch			\
-  %D%/packages/patches/hydra-automake-1.15.patch		\
   %D%/packages/patches/hydra-disable-darcs-test.patch		\
   %D%/packages/patches/hypre-doc-tables.patch			\
   %D%/packages/patches/hypre-ldflags.patch			\
diff --git a/gnu/packages/ci.scm b/gnu/packages/ci.scm
index 555c255..44f1315 100644
--- a/gnu/packages/ci.scm
+++ b/gnu/packages/ci.scm
@@ -91,23 +91,22 @@ on another machine, accessed via TCP/IP.")
     (license l:bsd-3)))
 
 (define-public hydra
-  (let ((commit "4c0e3e47034545ad3e9e86dd069138bcebb8ccee"))
+  (let ((commit "1ff48da3d3d4a425063f5b7dd0b89d35270f8932"))
     (package
       (name "hydra")
-      (version (string-append "20150407." (string-take commit 7)))
+      (version (string-append "20151030." (string-take commit 7)))
       (source (origin
                 (method git-fetch)
                 (uri (git-reference
                       (url "https://github.com/NixOS/hydra")
                       (commit commit)))
                 (file-name (string-append name "-" version))
-                (sha256
-                 (base32
-                  "08vc76xb7f42hh65j7qvjf58hw36aki5ml343170pq94vk75b1nh"))
                 (patches (search-patches
-                          "hydra-automake-1.15.patch"
                           ;; TODO: Remove once we have a darcs input
-                          "hydra-disable-darcs-test.patch"))))
+                          "hydra-disable-darcs-test.patch"))
+                (sha256
+                 (base32
+                  "0ni8i8v1nxxfr51rz8m6znwpbm77vr7i05k506hmgmg32r938lap"))))
       (build-system gnu-build-system)
       (native-inputs
        `(("unzip" ,unzip)
@@ -126,7 +125,8 @@ on another machine, accessed via TCP/IP.")
          ("mercurial" ,mercurial)
          ("bazaar" ,bazaar)))
       (inputs
-       `(("perl" ,perl)
+       `(("libpqxx" ,libpqxx)
+         ("perl" ,perl)
          ("guile" ,guile-2.0)
          ("openssl" ,openssl)
          ("bzip2" ,bzip2)
@@ -177,6 +177,7 @@ on another machine, accessed via TCP/IP.")
          ("perl-libwww" ,perl-libwww)
          ("perl-lwp-protocol-https" ,perl-lwp-protocol-https)
          ("perl-net-amazon-s3" ,perl-net-amazon-s3)
+         ("perl-net-statsd" ,perl-net-statsd)
          ("perl-padwalker" ,perl-padwalker)
          ("perl-readonly" ,perl-readonly)
          ("perl-set-scalar" ,perl-set-scalar)
diff --git a/gnu/packages/patches/hydra-automake-1.15.patch b/gnu/packages/patches/hydra-automake-1.15.patch
deleted file mode 100644
index 91c7b92..0000000
--- a/gnu/packages/patches/hydra-automake-1.15.patch
+++ /dev/null
@@ -1,63 +0,0 @@
-This patch takes a slightly different approach to solving the issue reported
-at https://github.com/NixOS/hydra/issues/200.  This fix allows us to use
-Automake's parallel test harness.
-
---- source/configure.ac.orig	1969-12-31 18:00:01.000000000 -0600
-+++ source/configure.ac	2015-04-15 10:58:15.974679278 -0500
-@@ -33,7 +33,7 @@
- fi
- ])
- 
--NEED_PROG(perl, perl)
-+NEED_PROG([PERL], perl)
- 
- NEED_PROG([NIX_STORE_PROGRAM], [nix-store])
- 
---- source/tests/Makefile.am.orig	1969-12-31 18:00:01.000000000 -0600
-+++ source/tests/Makefile.am	2015-04-15 11:00:35.846682904 -0500
-@@ -1,19 +1,20 @@
--TESTS_ENVIRONMENT = \
--  BZR_HOME="$(abs_builddir)/data"			\
--  HYDRA_DBI="dbi:SQLite:db.sqlite"			\
--  HYDRA_DATA="$(abs_builddir)/data"			\
--  HYDRA_HOME="$(top_srcdir)/src"			\
--  HYDRA_CONFIG=						\
--  NIX_REMOTE=						\
--  GUIX_CONFIGURATION_DIRECTORY="$(abs_builddir)/nix/etc/nix"		\
--  NIX_STATE_DIR="$(abs_builddir)/nix/var/nix"		\
--  NIX_MANIFESTS_DIR="$(abs_builddir)/nix/var/nix/manifests"	\
--  NIX_STORE_DIR="$(abs_builddir)/nix/store"			\
--  NIX_LOG_DIR="$(abs_builddir)/nix/var/log/nix"		\
--  NIX_BUILD_HOOK=					\
--  PERL5LIB="$(srcdir):$(top_srcdir)/src/lib:$$PERL5LIB"	\
--  PATH=$(abs_top_srcdir)/src/script:$(abs_top_srcdir)/src/c:$$PATH \
--  perl -w
-+AM_TESTS_ENVIRONMENT = \
-+  BZR_HOME="$(abs_builddir)/data"; export BZR_HOME;	\
-+  HYDRA_DBI="dbi:SQLite:db.sqlite"; export HYDRA_DBI;	\
-+  HYDRA_DATA="$(abs_builddir)/data"; export HYDRA_DATA;	\
-+  HYDRA_HOME="$(top_srcdir)/src"; export HYDRA_HOME;	\
-+  HYDRA_CONFIG=; export HYDRA_CONFIG;			\
-+  NIX_REMOTE=; export NIX_REMOTE;			\
-+  GUIX_CONFIGURATION_DIRECTORY="$(abs_builddir)/nix/etc/nix"; export GUIX_CONFIGURATION_DIRECTORY; \
-+  NIX_STATE_DIR="$(abs_builddir)/nix/var/nix"; export NIX_STATE_DIR; \
-+  NIX_MANIFESTS_DIR="$(abs_builddir)/nix/var/nix/manifests"; export NIX_MANIFESTS_DIR; \
-+  NIX_STORE_DIR="$(abs_builddir)/nix/store"; export NIX_STORE_DIR; \
-+  NIX_LOG_DIR="$(abs_builddir)/nix/var/log/nix"; export NIX_LOG_DIR; \
-+  NIX_BUILD_HOOK=; export NIX_BUILD_HOOK;		\
-+  PERL5LIB="$(srcdir):$(top_srcdir)/src/lib:$$PERL5LIB"; export PERL5LIB; \
-+  PATH=$(abs_top_srcdir)/src/script:$(abs_top_srcdir)/src/c:$$PATH; export PATH;
-+LOG_COMPILER = $(PERL)
-+AM_LOG_FLAGS = -w
- 
- EXTRA_DIST = \
-   $(wildcard *.pm) \
-@@ -33,7 +34,7 @@
- check_SCRIPTS = db.sqlite repos
- 
- db.sqlite: $(top_srcdir)/src/sql/hydra-sqlite.sql
--	$(TESTS_ENVIRONMENT) $(top_srcdir)/src/script/hydra-init
-+	$(AM_TESTS_ENVIRONMENT) $(TESTS_ENVIRONMENT) $(top_srcdir)/src/script/hydra-init
- 
- repos: dirs
- 
-- 
2.10.0

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* Re: [PATCH 5/5] gnu: Resurrect hydra.
  2016-09-13 16:59     ` [PATCH 5/5] gnu: Resurrect hydra Jan Nieuwenhuizen
@ 2016-09-14 19:44       ` Leo Famulari
  0 siblings, 0 replies; 9+ messages in thread
From: Leo Famulari @ 2016-09-14 19:44 UTC (permalink / raw)
  To: Jan Nieuwenhuizen; +Cc: guix-devel

On Tue, Sep 13, 2016 at 06:59:41PM +0200, Jan Nieuwenhuizen wrote:
> * gnu/packages/patches/hydra-automake-1.15.patch: Remove.
> * gnu/local.mk (dist_patch_DATA): Remove it.
> * gnu/packages/ci.scm (hydra): Bump to 20151030.  Fixes building with
> nix-1.11.x.  Add new libpqxx and perl-net-statsd dependencies.

Thanks Jan!

As discussed on #guix, I moved some of the new packages around. I also
changed the commit messages a bit.

I pushed the series, bringing HEAD to
253745d75695faf23bd0ff68bc18f5bbc2f29580.

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2016-09-14 19:44 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-09-09 21:09 [PATCH] gnu: Resurrect hydra Jan Nieuwenhuizen
2016-09-13  8:22 ` Ludovic Courtès
2016-09-13 16:59   ` Jan Nieuwenhuizen
2016-09-13 16:59     ` [PATCH 1/5] gnu: perl-gd: disable tests Jan Nieuwenhuizen
2016-09-13 16:59     ` [PATCH 2/5] gnu: perl-image-magick: " Jan Nieuwenhuizen
2016-09-13 16:59     ` [PATCH 3/5] gnu: Add perl-net-statsd Jan Nieuwenhuizen
2016-09-13 16:59     ` [PATCH 4/5] gnu: Add libpqxx Jan Nieuwenhuizen
2016-09-13 16:59     ` [PATCH 5/5] gnu: Resurrect hydra Jan Nieuwenhuizen
2016-09-14 19:44       ` Leo Famulari

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).