unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: Jan Nieuwenhuizen <janneke@gnu.org>
To: guix-devel@gnu.org
Subject: [PATCH] gnu: Resurrect hydra.
Date: Fri, 09 Sep 2016 23:09:23 +0200	[thread overview]
Message-ID: <87d1kcvkzg.fsf@gnu.org> (raw)

[-- 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  

             reply	other threads:[~2016-09-09 21:09 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-09-09 21:09 Jan Nieuwenhuizen [this message]
2016-09-13  8:22 ` [PATCH] gnu: Resurrect hydra 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

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87d1kcvkzg.fsf@gnu.org \
    --to=janneke@gnu.org \
    --cc=guix-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).