summary refs log tree commit diff
diff options
context:
space:
mode:
authorEric Bavier <bavier@member.fsf.org>2015-04-07 17:03:04 -0500
committerEric Bavier <bavier@member.fsf.org>2015-04-19 19:48:51 -0500
commit38e62c81ee548c466bfa4310e6984485d64e2074 (patch)
treef6bffc3e6ab6eb8c3e564b3bf1b4198c98c27113
parent3dd6bee1f2eb79aba660742a81810641b8616766 (diff)
downloadguix-38e62c81ee548c466bfa4310e6984485d64e2074.tar.gz
gnu: Add Perl Net-Amazon-S3.
* gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch: New patch.
* gnu-system.am (dist_patch_DATA): Add it.
* gnu/packages/web.scm (perl-net-amazon-s3): New variable.
-rw-r--r--gnu-system.am1
-rw-r--r--gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch17
-rw-r--r--gnu/packages/web.scm44
3 files changed, 62 insertions, 0 deletions
diff --git a/gnu-system.am b/gnu-system.am
index 7c4678c12b..beb8948d52 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -502,6 +502,7 @@ dist_patch_DATA =						\
   gnu/packages/patches/patchutils-xfail-gendiff-tests.patch	\
   gnu/packages/patches/pavucontrol-sigsegv.patch		\
   gnu/packages/patches/perl-gd-options-passthrough-and-fontconfig.patch \
+  gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch	\
   gnu/packages/patches/perl-no-sys-dirs.patch			\
   gnu/packages/patches/perl-tk-x11-discover.patch		\
   gnu/packages/patches/petsc-fix-threadcomm.patch		\
diff --git a/gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch b/gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch
new file mode 100644
index 0000000000..c6408d5251
--- /dev/null
+++ b/gnu/packages/patches/perl-net-amazon-s3-moose-warning.patch
@@ -0,0 +1,17 @@
+Patch borrowed from nixpkgs.  Works around warning message produced by the
+current version of Moose:
+
+"Passing a list of values to enum is deprecated. Enum values should be wrapped
+in an arrayref."
+
+--- Net-Amazon-S3-0.60/lib/Net/Amazon/S3/Client/Object.pm	2015-04-15 16:18:47.226410022 -0500
++++ Net-Amazon-S3-0.60/lib/Net/Amazon/S3/Client/Object.pm	2015-04-15 16:19:25.410408425 -0500
+@@ -19,7 +19,7 @@
+     [ qw(private public-read public-read-write authenticated-read) ];
+ 
+ enum 'StorageClass' =>
+-    qw(standard reduced_redundancy);
++    [ qw(standard reduced_redundancy) ];
+ 
+ has 'client' =>
+     ( is => 'ro', isa => 'Net::Amazon::S3::Client', required => 1 );
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 6de626968a..0c22562aa6 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -32,6 +32,7 @@
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system perl)
   #:use-module (guix build-system cmake)
+  #:use-module (gnu packages)
   #:use-module (gnu packages apr)
   #:use-module (gnu packages asciidoc)
   #:use-module (gnu packages docbook)
@@ -1979,6 +1980,49 @@ possibly-temporary error (like a DNS lookup timeout), it'll wait a few seconds
 and retry a few times.")
     (license (package-license perl))))
 
+(define-public perl-net-amazon-s3
+  (package
+    (name "perl-net-amazon-s3")
+    (version "0.60")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "mirror://cpan/authors/id/P/PF/PFIG/"
+                           "Net-Amazon-S3-" version ".tar.gz"))
+       (sha256
+        (base32
+         "10dcsq4s2kc9cb1vccx17r187c81drirc3s1hbxh3rb8489kg2b2"))
+       (patches (list
+                 (search-patch "perl-net-amazon-s3-moose-warning.patch")))))
+    (build-system perl-build-system)
+    (native-inputs
+     `(("perl-libwww" ,perl-libwww)
+       ("perl-test-exception" ,perl-test-exception)))
+    (propagated-inputs
+     `(("perl-data-stream-bulk" ,perl-data-stream-bulk)
+       ("perl-datetime-format-http" ,perl-datetime-format-http)
+       ("perl-digest-hmac" ,perl-digest-hmac)
+       ("perl-digest-md5-file" ,perl-digest-md5-file)
+       ("perl-file-find-rule" ,perl-file-find-rule)
+       ("perl-http-date" ,perl-http-date)
+       ("perl-http-message" ,perl-http-message)
+       ("perl-lwp-useragent-determined" ,perl-lwp-useragent-determined)
+       ("perl-mime-types" ,perl-mime-types)
+       ("perl-moose" ,perl-moose)
+       ("perl-moosex-strictconstructor" ,perl-moosex-strictconstructor)
+       ("perl-moosex-types-datetime-morecoercions"
+        ,perl-moosex-types-datetime-morecoercions)
+       ("perl-path-class" ,perl-path-class)
+       ("perl-regexp-common" ,perl-regexp-common)
+       ("perl-term-encoding" ,perl-term-encoding)
+       ("perl-term-progressbar-simple" ,perl-term-progressbar-simple)
+       ("perl-uri" ,perl-uri)
+       ("perl-xml-libxml" ,perl-xml-libxml)))
+    (home-page "http://search.cpan.org/dist/Net-Amazon-S3")
+    (synopsis "Perl interface to Amazon S3")
+    (description "This module provides a Perlish interface to Amazon S3.")
+    (license (package-license perl))))
+
 (define-public perl-net-http
   (package
     (name "perl-net-http")