From 6b520156c2fb30412ab7b187f6d65f2d7520e8c9 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 29 Oct 2017 12:47:23 +0100 Subject: gnu: Add perl-test-command. * gnu/packages/perl.scm (perl-test-command): New public variable. --- gnu/packages/perl.scm | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/perl.scm b/gnu/packages/perl.scm index 0343b167ab..62df8f72c1 100644 --- a/gnu/packages/perl.scm +++ b/gnu/packages/perl.scm @@ -7622,6 +7622,28 @@ namespace::autoclean or namespace::clean and are therefore available to be called as methods, which usually isn't want you want.") (license (package-license perl)))) +(define-public perl-test-command + (package + (name "perl-test-command") + (version "0.11") + (source (origin + (method url-fetch) + (uri (string-append + "mirror://cpan/authors/id/D/DA/DANBOO/Test-Command-" + version ".tar.gz")) + (sha256 + (base32 + "0cwm3c4d49mdrbm6vgh78b3x8mk730l0zg8i7xb9z8bkx9pzr8r8")))) + (build-system perl-build-system) + (native-inputs + `(("perl-module-build" ,perl-module-build))) + (home-page "https://github.com/danboo/perl-test-command") + (synopsis "Test routines for external commands") + (description + "This module provides routines for testing the exit status, standard +output and standard error of external commands.") + (license perl-license))) + (define-public perl-test-cpan-meta (package (name "perl-test-cpan-meta") -- cgit v1.2.3 From 83a7a88f93237013a66ec041009dd6add724aaa3 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 29 Oct 2017 13:13:15 +0100 Subject: gnu: feh: Enable tests. * gnu/packages/image-viewers.scm (feh)[arguments]: Remove #:tests?. Add #:test-target. [native-inputs]: Add PERL and PERL-TEST-COMMAND. New field. --- gnu/packages/image-viewers.scm | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 95fb90fdab..9e93a97a9b 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -44,6 +44,7 @@ #:use-module (gnu packages image) #:use-module (gnu packages imagemagick) #:use-module (gnu packages maths) + #:use-module (gnu packages perl) #:use-module (gnu packages photo) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -66,9 +67,12 @@ (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) - #:tests? #f ;FIXME: Requires 'perl-test-command'. + #:test-target "test" #:make-flags (list "CC=gcc" (string-append "PREFIX=" (assoc-ref %outputs "out"))))) + (native-inputs + `(("perl" ,perl) + ("perl-test-command" ,perl-test-command))) (inputs `(("imlib2" ,imlib2) ("curl" ,curl) ("libpng" ,libpng) -- cgit v1.2.3 From 0ab59dd8b8b64d4cd58c42a21e056a6cc8adc0bb Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 29 Oct 2017 21:02:19 +0100 Subject: system: Test for interactive shell instead of `cat` in skeleton '.bashrc'. * gnu/system/shadow.scm (default-skeletons)[bashrc]: Wrap $SSH_CLIENT test in a conditional testing for interactive shell. --- gnu/system/shadow.scm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'gnu') diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index 236807c70a..58613e620d 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -157,13 +157,12 @@ if [ -f ~/.bashrc ]; then . ~/.bashrc; fi\n")) # honor it and otherwise use /bin/sh. export SHELL -if [ -n \"$SSH_CLIENT\" -a -z \"`type -P cat`\" ] +if [[ $- != *i* ]] then - # We are being invoked from a non-interactive SSH session - # (as in \"ssh host command\") but 'cat' cannot be found - # in $PATH. Source /etc/profile so we get $PATH and other - # essential variables. - source /etc/profile + # We are being invoked from a non-interactive shell. If this + # is an SSH session (as in \"ssh host command\"), source + # /etc/profile so we get PATH and other essential variables. + [[ -n \"$SSH_CLIENT\" ]] && source /etc/profile fi # Adjust the prompt depending on whether we're in 'guix environment'. -- cgit v1.2.3 From 2c16be569c0ed21a44c615fb1285aeacd4ee7480 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sat, 28 Oct 2017 01:19:01 +0200 Subject: system: Return early in skeleton '.bashrc' when the shell is non-interactive. * gnu/system/shadow.scm (default-skeletons)[bashrc]: Add return statement. --- gnu/system/shadow.scm | 3 +++ 1 file changed, 3 insertions(+) (limited to 'gnu') diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index 58613e620d..b66239787e 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -163,6 +163,9 @@ then # is an SSH session (as in \"ssh host command\"), source # /etc/profile so we get PATH and other essential variables. [[ -n \"$SSH_CLIENT\" ]] && source /etc/profile + + # Don't do anything else. + return fi # Adjust the prompt depending on whether we're in 'guix environment'. -- cgit v1.2.3 From 5d7141cd284eac3afe43d800104daffdf65dce52 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Sun, 29 Oct 2017 15:59:54 +0100 Subject: tests: ssh: Make sure we can run executables from PATH. * gnu/tests/ssh.scm (run-ssh-test): Add tests for running commands in system and user profile. --- gnu/tests/ssh.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/tests/ssh.scm b/gnu/tests/ssh.scm index 41be360355..6abc6c2501 100644 --- a/gnu/tests/ssh.scm +++ b/gnu/tests/ssh.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2017 Ludovic Courtès ;;; Copyright © 2017 Clément Lassieur +;;; Copyright © 2017 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -169,6 +170,33 @@ root with an empty password." (call-with-remote-input-file sftp-session witness read))))) + ;; Connect to the guest over SSH. Make sure we can run commands + ;; from the system profile. + (test-equal "run executables from system profile" + #t + (call-with-connected-session/auth + (lambda (session) + (let ((channel (make-channel session))) + (channel-open-session channel) + (channel-request-exec + channel + (string-append + "mkdir -p /root/.guix-profile/bin && " + "touch /root/.guix-profile/bin/path-witness && " + "chmod 755 /root/.guix-profile/bin/path-witness")) + (zero? (channel-get-exit-status channel)))))) + + ;; Connect to the guest over SSH. Make sure we can run commands + ;; from the user profile. + (test-equal "run executable from user profile" + #t + (call-with-connected-session/auth + (lambda (session) + (let ((channel (make-channel session))) + (channel-open-session channel) + (channel-request-exec channel "path-witness") + (zero? (channel-get-exit-status channel)))))) + (test-end) (exit (= (test-runner-fail-count (test-runner-current)) 0))))) -- cgit v1.2.3 From 449ad88bb5c2512f5c0d5e682465eea1e1e95ae8 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 1 Nov 2017 20:28:30 +0100 Subject: gnu: libass: Update to 0.14.0. * gnu/packages/video.scm (libass): Update to 0.14.0. [native-inputs]: Change from YASM to NASM. --- gnu/packages/video.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 9fd252aaf2..e66a30a824 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -405,7 +405,7 @@ designed to encode video or images into an H.265 / HEVC encoded bitstream.") (define-public libass (package (name "libass") - (version "0.13.7") + (version "0.14.0") (source (origin (method url-fetch) (uri (string-append @@ -413,11 +413,11 @@ designed to encode video or images into an H.265 / HEVC encoded bitstream.") version "/libass-" version ".tar.xz")) (sha256 (base32 - "17byv926w1mxn56n896sxvdq4m0yv1l7qbm688h6zr3nzgsyarbh")))) + "18iqznl4mabhj9ywfsz4kwvbsplcv1jjxq50nxssvbj8my1267w8")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) - ("yasm" ,yasm))) + ("nasm" ,nasm))) (propagated-inputs `(("freetype" ,freetype) ("fribidi" ,fribidi) -- cgit v1.2.3 From 61e1d6a7913d91d9259950ea3e2a572c0dd92779 Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 1 Nov 2017 20:42:54 +0100 Subject: gnu: imagemagick: Update to 6.9.9-21. * gnu/packages/imagemagick.scm (imagemagick): Update to 6.9.9-21. [home-page]: Use HTTPS. --- gnu/packages/imagemagick.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/imagemagick.scm b/gnu/packages/imagemagick.scm index fabbd707ac..ea17ce9c86 100644 --- a/gnu/packages/imagemagick.scm +++ b/gnu/packages/imagemagick.scm @@ -46,14 +46,14 @@ ;; The 7 release series has an incompatible API, while the 6 series is still ;; maintained. Don't update to 7 until we've made sure that the ImageMagick ;; users are ready for the 7-series API. - (version "6.9.9-18") + (version "6.9.9-21") (source (origin (method url-fetch) (uri (string-append "mirror://imagemagick/ImageMagick-" version ".tar.xz")) (sha256 (base32 - "1d70dvrgcasa3cla4c1dag4mw7vq4jk1nzbd604fk20l0l6xa78j")))) + "0241g3c207rawn61bz8rc5gz55k5mi2b0n3zlwa0jv9xczlkd6a9")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--with-frozenpaths" "--without-gcc-arch") @@ -105,7 +105,7 @@ (native-inputs `(("pkg-config" ,pkg-config))) (outputs '("out" "doc")) ; 26 MiB of HTML documentation - (home-page "http://www.imagemagick.org/") + (home-page "https://www.imagemagick.org/") (synopsis "Create, edit, compose, or convert bitmap images") (description "ImageMagick is a software suite to create, edit, compose, or convert -- cgit v1.2.3 From 88b35013b77167141fe5ed83edad6ff606f2013e Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Wed, 1 Nov 2017 21:25:45 +0100 Subject: gnu: git: Update to 2.15.0. * gnu/packages/version-control.scm (git): Update to 2.15.0. --- gnu/packages/version-control.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index d03f5b58d3..af880c29ff 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -124,14 +124,14 @@ as well as the classic centralized workflow.") (name "git") ;; XXX When updating Git, check if the special 'git:src' input to cgit needs ;; to be updated as well. - (version "2.14.3") + (version "2.15.0") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "078m0za5gyzcah5iaxdwx663yvdp8byvjc8rpzjzcrr4sl6rcc2k")))) + "0siyxg1ppg6szjp8xp37zfq1fj97kbdxpigi3asmidqhkx41cw8h")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -145,7 +145,7 @@ as well as the classic centralized workflow.") (sha256 (base32 - "00dh878pwl94p6syh6zgwn7f0zv2bl5xny3pnr390lzxpa9ks3jv")))))) + "0xqwfg9xz5nw3ifaki87ahbz0xk5zmkgqs0ig357pxwh2i20kb92")))))) (inputs `(("curl" ,curl) ("expat" ,expat) -- cgit v1.2.3 From 55ed15baba7090a41c5f15436e01b7a440d3aa04 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Wed, 1 Nov 2017 19:49:46 -0400 Subject: gnu: gnome-mines: Update to 3.26.0. * gnu/packages/gnome.scm (gnome-mines): Update to 3.26.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index bce2b8ae93..ecfd63d257 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2609,7 +2609,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.") (define-public gnome-mines (package (name "gnome-mines") - (version "3.24.0") + (version "3.26.0") (source (origin (method url-fetch) @@ -2618,7 +2618,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.") name "-" version ".tar.xz")) (sha256 (base32 - "1xh2as2xmh7gx45gpnl0fh9xjpvyyn3m84qgv41kyp2s4clsyqz6")))) + "1sfxdvns8nppdagnhpd9vd7n77sk5rdji3kdqnc78c2p1npiw11b")))) (build-system glib-or-gtk-build-system) (arguments '(#:phases -- cgit v1.2.3 From f11d2849a1147af2fc3376b8b08bfe0efead6398 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Wed, 1 Nov 2017 17:11:15 -0500 Subject: gnu: units: Update to 2.16. * gnu/packages/maths.scm (units): Update to 2.16. --- gnu/packages/maths.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index b0c6089c1e..f0b3bf28f3 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -192,13 +192,13 @@ programming languages.") (define-public units (package (name "units") - (version "2.14") + (version "2.16") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/units/units-" version ".tar.gz")) (sha256 (base32 - "1s421bxm36akjsy3qzg6da1d1g20gh094ac2slqxipgkh8yqjcwx")))) + "11hnp3gcmcc5kci2caxw4hs6m08h2mhqs3xzqq7iafx1ha2ggwyw")))) (build-system gnu-build-system) (synopsis "Conversion between thousands of scales") (description -- cgit v1.2.3 From 0498d24866c4955faee95a4fc19ff6817e5483d2 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Wed, 1 Nov 2017 17:12:06 -0500 Subject: gnu: units: Add python input. * gnu/packages/maths.scm (units)[inputs]: New field. [arguments]: New field. Add 'wrap-units_cur phase. --- gnu/packages/maths.scm | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index f0b3bf28f3..7529a41e91 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -200,6 +200,19 @@ programming languages.") (sha256 (base32 "11hnp3gcmcc5kci2caxw4hs6m08h2mhqs3xzqq7iafx1ha2ggwyw")))) (build-system gnu-build-system) + (inputs + `(("python" ,python-wrapper) ;for 'units_cur' script + ("python-requests" ,python-requests))) + (arguments + `(#:phases (modify-phases %standard-phases + (add-after 'install 'wrap-units_cur + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (wrap-program (string-append bin "/units_cur") + `("PYTHONPATH" ":" prefix + ,(search-path-as-string->list (getenv "PYTHONPATH")))) + #t)))))) (synopsis "Conversion between thousands of scales") (description "GNU Units converts numeric quantities between units of measure. It -- cgit v1.2.3 From a2549713503eea347b020eee11b3676f6b242ed6 Mon Sep 17 00:00:00 2001 From: Eric Bavier Date: Wed, 1 Nov 2017 17:17:01 -0500 Subject: gnu: units: Add readline input. * gnu/packages/maths.scm (units)[inputs]: Add readline. --- gnu/packages/maths.scm | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'gnu') diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 7529a41e91..212a65dc35 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -201,7 +201,8 @@ programming languages.") "11hnp3gcmcc5kci2caxw4hs6m08h2mhqs3xzqq7iafx1ha2ggwyw")))) (build-system gnu-build-system) (inputs - `(("python" ,python-wrapper) ;for 'units_cur' script + `(("readline" ,readline) + ("python" ,python-wrapper) ;for 'units_cur' script ("python-requests" ,python-requests))) (arguments `(#:phases (modify-phases %standard-phases -- cgit v1.2.3 From 50e3f2a5a454130e0b82570bd7282d0a8078f73b Mon Sep 17 00:00:00 2001 From: Oleg Pykhalov Date: Thu, 2 Nov 2017 10:59:38 +0300 Subject: gnu: emacs-helm-make: Update to 0.1.0-1.21c1bfa. * gnu/packages/emacs.scm (emacs-helm-make): Update to 0.1.0-1.21c1bfa. --- gnu/packages/emacs.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/emacs.scm b/gnu/packages/emacs.scm index ad96093c3f..52103e2edf 100644 --- a/gnu/packages/emacs.scm +++ b/gnu/packages/emacs.scm @@ -3966,7 +3966,7 @@ for search-based navigation of buffers.") (license license:gpl3+))) (define-public emacs-helm-make - (let ((commit "786104ac0c3cf4fe5b53f841eb9fe10bda2e4031") + (let ((commit "21c1bfa01b16b0d656f2b8a0dbb5bc8d47a7641b") (revision "1")) (package (name "emacs-helm-make") @@ -3980,7 +3980,7 @@ for search-based navigation of buffers.") (file-name (string-append name "-" version "-checkout")) (sha256 (base32 - "0qdfk0p2j8jah7m0ngy2mm7775cn779m3a84yll86wqc74g331qs")))) + "11vzrp63zdc67fg4d0y1alk8z9019sqslh2bd7ispk37s86dlbfw")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-helm" ,emacs-helm) -- cgit v1.2.3 From 30ee6bf5d2806164de417fb44dbb6eb342e1f6d3 Mon Sep 17 00:00:00 2001 From: Efraim Flashner Date: Thu, 2 Nov 2017 11:28:54 +0200 Subject: gnu: dejagnu: Update to 1.6.1. * gnu/packages/dejagnu.scm (dejagnu): Update to 1.6.1. --- gnu/packages/dejagnu.scm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/dejagnu.scm b/gnu/packages/dejagnu.scm index ba34e36c6a..05825bad8f 100644 --- a/gnu/packages/dejagnu.scm +++ b/gnu/packages/dejagnu.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Ludovic Courtès -;;; Copyright © 2016 Efraim Flashner +;;; Copyright © 2016, 2017 Efraim Flashner ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,7 +27,7 @@ (define-public dejagnu (package (name "dejagnu") - (version "1.6") + (version "1.6.1") (source (origin (method url-fetch) @@ -35,7 +35,7 @@ version ".tar.gz")) (sha256 (base32 - "0qypaakd2065jgpcv84zcsibl8gph3p334gb2qdmhsrbirhlmdh0")))) + "14hnq1mh91vqprc43xdy4f15sycw6fbajrh7zi6cw2kyg6xjhnxz")))) (build-system gnu-build-system) (inputs `(("expect" ,expect))) (arguments -- cgit v1.2.3 From 2524a2a17a97fc72095e702401760fcbca6a95f7 Mon Sep 17 00:00:00 2001 From: Kei Kebreau Date: Thu, 2 Nov 2017 07:36:23 -0400 Subject: gnu: five-or-more: Update to 3.26.0. * gnu/packages/gnome.scm (five-or-more): Update to 3.26.0. --- gnu/packages/gnome.scm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'gnu') diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index ecfd63d257..a0b5b8eabd 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -2578,7 +2578,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.") (define-public five-or-more (package (name "five-or-more") - (version "3.22.2") + (version "3.26.0") (source (origin (method url-fetch) @@ -2587,7 +2587,7 @@ and other secrets. It communicates with the \"Secret Service\" using DBus.") name "-" version ".tar.xz")) (sha256 (base32 - "1b26afyjr26wqy5j008gzsi3hpblbmabh0192lx6414lml1qxkxs")))) + "0wkp08xsqr9p9cgdfghi424diajs016b2h4bsfcr5y9xc3rgf93w")))) (build-system glib-or-gtk-build-system) (native-inputs `(("pkg-config" ,pkg-config) -- cgit v1.2.3 From a6dd06d0e2297c4eabbfcb5461ee6560cd0b2f95 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:04:14 +0200 Subject: gnu: Add java-jcommander. * gnu/packages/java.scm (java-jcommander): New variable. --- gnu/packages/java.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 1fcd237d55..5263dcc430 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6248,3 +6248,28 @@ manipulation simple. It is a class library for editing bytecodes in Java; it enables Java programs to define a new class at runtime and to modify a class file when the JVM loads it.") (license (list license:gpl2 license:cddl1.0)))); either gpl2 only or cddl. + +(define-public java-jcommander + (package + (name "java-jcommander") + (version "1.71") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/cbeust/jcommander/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1f5k2ckay6qjc3d3w3d7bc0p3cx3c7n6p6zxvw1kibqdr0q98wlx")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-jcommander.jar" + #:jdk ,icedtea-8 + #:tests? #f; requires testng which depends on jcommander + #:source-dir "src/main/java")) + (home-page "http://jcommander.org") + (synopsis "Command line parameters parser") + (description "JCommander is a very small Java framework that makes it +trivial to parse command line parameters. Parameters are declared with +annotations.") + (license license:asl2.0))) -- cgit v1.2.3 From 11bc385b7b3a1e2a06ca93f39dc211572c4e5d89 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:05:04 +0200 Subject: gnu: Add java-bsh. * gnu/packages/java.scm (java-bsh): New variable. --- gnu/packages/java.scm | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 5263dcc430..a9df37ee4e 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6273,3 +6273,36 @@ file when the JVM loads it.") trivial to parse command line parameters. Parameters are declared with annotations.") (license license:asl2.0))) + +(define-public java-bsh + (package + (name "java-bsh") + (version "2.0b6") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/beanshell/beanshell/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "1bawkxk6jyc75hxvzkpz689h73cn3f222m0ar3nvb0dal2b85kfv")))) + (build-system ant-build-system) + (arguments + `(#:build-target "jarall" + #:test-target "junit-tests-all" + #:phases + (modify-phases %standard-phases + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let ((share (string-append (assoc-ref outputs "out") "/share/java"))) + (mkdir-p share) + (copy-file "dist/bsh-2.0b6.jar" (string-append share "/bsh-2.0b6.jar")) + #t)))))) + (home-page "http://beanshell.org/") + (synopsis "Lightweight Scripting for Java") + (description "BeanShell is a small, free, embeddable Java source +interpreter with object scripting language features, written in Java. +BeanShell dynamically executes standard Java syntax and extends it with common +scripting conveniences such as loose types, commands, and method closures like +those in Perl and JavaScript.") + (license license:asl2.0))) -- cgit v1.2.3 From 045124ae2fd959dd1860170b03c89a0dd9d0ebe0 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:08:38 +0200 Subject: gnu: Add java-jmock. * gnu/packages/java.scm (java-jmock): New variable. --- gnu/packages/java.scm | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index a9df37ee4e..ac1f1bf0bb 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -2539,6 +2539,31 @@ The jMock library @end itemize\n") (license license:bsd-3))) +(define-public java-jmock + (package + (inherit java-jmock-1) + (name "java-jmock") + (version "2.8.2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/jmock-developers/" + "jmock-library/archive/" version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "18650a9g8xffcsdb6w91pbswa7f40fp2sh6s3nclkclz5dbzq8f0")))) + (inputs + `(("java-hamcrest-all" ,java-hamcrest-all) + ("java-asm" ,java-asm) + ("java-bsh" ,java-bsh) + ("java-junit" ,java-junit))) + (native-inputs + `(("cglib" ,java-cglib))) + (arguments + `(#:jar-name "java-jmock.jar" + #:source-dir "jmock/src/main/java" + #:test-dir "jmock/src/test")))) + (define-public java-hamcrest-all (package (inherit java-hamcrest-core) (name "java-hamcrest-all") -- cgit v1.2.3 From 25436c6d03b46b681ecf464d2f8ac087dbf07dcf Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:09:31 +0200 Subject: gnu: Add java-jmock-junit4. * gnu/packages/java.scm (java-jmock-junit4): New variable. --- gnu/packages/java.scm | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index ac1f1bf0bb..b36ee250fa 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -2564,6 +2564,21 @@ The jMock library #:source-dir "jmock/src/main/java" #:test-dir "jmock/src/test")))) +(define-public java-jmock-junit4 + (package + (inherit java-jmock) + (name "java-jmock-junit4") + (arguments + `(#:jar-name "java-jmock-junit4.jar" + #:source-dir "jmock-junit4/src/main/java" + #:test-dir "jmock-junit4/src/test")) + (inputs + `(("java-hamcrest-all" ,java-hamcrest-all) + ("java-asm" ,java-asm) + ("java-bsh" ,java-bsh) + ("java-jmock" ,java-jmock) + ("java-jumit" ,java-junit))))) + (define-public java-hamcrest-all (package (inherit java-hamcrest-core) (name "java-hamcrest-all") -- cgit v1.2.3 From e84b899d50d9426381e3950e58133f50f971aac0 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:10:38 +0200 Subject: gnu: Add java-jmock-legacy. * gnu/packages/java.scm (java-jmock-legacy): New variable. --- gnu/packages/java.scm | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index b36ee250fa..2b07def49c 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -2579,6 +2579,34 @@ The jMock library ("java-jmock" ,java-jmock) ("java-jumit" ,java-junit))))) +(define-public java-jmock-legacy + (package + (inherit java-jmock) + (name "java-jmock-legacy") + (arguments + `(#:jar-name "java-jmock-legacy.jar" + #:source-dir "jmock-legacy/src/main/java" + #:test-dir "jmock-legacy/src/test" + #:phases + (modify-phases %standard-phases + (add-before 'check 'copy-tests + (lambda _ + ;; This file is a dependancy of some tests + (let ((file "org/jmock/test/acceptance/PackageProtectedType.java")) + (copy-file (string-append "jmock/src/test/java/" file) + (string-append "jmock-legacy/src/test/java/" file)) + #t)))))) + (inputs + `(("java-hamcrest-all" ,java-hamcrest-all) + ("java-objenesis" ,java-objenesis) + ("java-cglib" ,java-cglib) + ("java-jmock" ,java-jmock) + ("java-asm" ,java-asm) + ("java-bsh" ,java-bsh) + ("java-junit" ,java-junit))) + (native-inputs + `(("java-jmock-junit4" ,java-jmock-junit4))))) + (define-public java-hamcrest-all (package (inherit java-hamcrest-core) (name "java-hamcrest-all") -- cgit v1.2.3 From 7a343e971a71f899e329004b70323af5296e059c Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:14:53 +0200 Subject: gnu: Add java-fest-util. * gnu/packages/java.scm (java-fest-util): New variable. --- gnu/packages/java.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 2b07def49c..2df43d38a2 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6374,3 +6374,26 @@ BeanShell dynamically executes standard Java syntax and extends it with common scripting conveniences such as loose types, commands, and method closures like those in Perl and JavaScript.") (license license:asl2.0))) + +(define-public java-fest-util + (package + (name "java-fest-util") + (version "1.2.5") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/alexruiz/fest-util/" + "archive/fest-util-" version ".tar.gz")) + (sha256 + (base32 + "05g6hljz5mdaakk8d7g32klbhz9bdwp3qlj6rdaggdidxs3x1sb8")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-fest-util.jar" + #:source-dir "src/main/java")) + (native-inputs + `(("junit" ,java-junit) + ("hamcrest" ,java-hamcrest-core))) + (home-page "https://github.com/alexruiz/fest-util") + (synopsis "FEST common utilities") + (description "Common utilities used in all FEST module.") + (license license:asl2.0))) -- cgit v1.2.3 From 3c6c835806791e91f04e65d8c078842b69d06020 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:15:30 +0200 Subject: gnu: Add java-fest-test. * gnu/packages/java.scm (java-fest-test): New variable. --- gnu/packages/java.scm | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 2df43d38a2..4be3554d4f 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6397,3 +6397,26 @@ those in Perl and JavaScript.") (synopsis "FEST common utilities") (description "Common utilities used in all FEST module.") (license license:asl2.0))) + +(define-public java-fest-test + (package + (name "java-fest-test") + (version "2.1.0") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/alexruiz/fest-test/" + "archive/fest-test-" version ".tar.gz")) + (sha256 + (base32 + "1rxfbw6l9vc65iy1x3fb617qc6y4w2k430pgf1mfbxfdlxbm0f7g")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-fest-test.jar" + #:source-dir "src/main/java" + #:tests? #f)); no tests + (inputs + `(("junit" ,java-junit))) + (home-page "https://github.com/alexruiz/fest-test") + (synopsis "Common FEST testing infrastructure") + (description "Fest-test contains the common FEST testing infrastructure.") + (license license:asl2.0))) -- cgit v1.2.3 From ca98e4481f41b8a0413f2660169d4326461c0dc5 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:16:10 +0200 Subject: gnu: Add java-fest-assert. * gnu/packages/java.scm (java-fest-assert): New variable. --- gnu/packages/java.scm | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 4be3554d4f..7d2ab5fecb 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6420,3 +6420,40 @@ those in Perl and JavaScript.") (synopsis "Common FEST testing infrastructure") (description "Fest-test contains the common FEST testing infrastructure.") (license license:asl2.0))) + +(define-public java-fest-assert + (package + (name "java-fest-assert") + (version "2.0M10") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/alexruiz/fest-assert-2.x/" + "archive/fest-assert-core-" version ".tar.gz")) + (sha256 + (base32 + "1bi0iqavikzww6rxvz5jyg7y6bflv95s6ibryxx0xfcxrrw6i5lw")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-fest-assert.jar" + #:source-dir "src/main/java" + #:test-exclude + (list + "**/Abstract*.java" + "**/*BaseTest.java" + ;; Unable to set MockitoNamingPolicy on cglib generator which creates FastClasses + "**/MessageFormatter_format_Test.java" + "**/internal/*/*_assert*_Test.java"))) + (inputs + `(("java-fest-util" ,java-fest-util))) + (native-inputs + `(("java-junit" ,java-junit) + ("java-fest-test" ,java-fest-test) + ("java-hamcrest-core" ,java-hamcrest-core) + ("java-mockito" ,java-mockito-1) + ("java-cglib" ,java-cglib) + ("java-objenesis" ,java-objenesis) + ("java-asm" ,java-asm))) + (home-page "https://github.com/alexruiz/fest-assert-2.x") + (synopsis "FEST fluent assertions") + (description "FEST-Assert provides a fluent interface for assertions.") + (license license:asl2.0))) -- cgit v1.2.3 From 0442d897e9e498cff647f03964689dc044825254 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:18:59 +0200 Subject: gnu: Add java-testng. * gnu/packages/java.scm (java-testng): New variable. --- gnu/packages/java.scm | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 7d2ab5fecb..681c5ab9d4 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6457,3 +6457,63 @@ those in Perl and JavaScript.") (synopsis "FEST fluent assertions") (description "FEST-Assert provides a fluent interface for assertions.") (license license:asl2.0))) + +(define-public java-testng + (package + (name "java-testng") + (version "6.12") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/cbeust/testng/archive/" + version ".tar.gz")) + (file-name (string-append name "-" version ".tar.gz")) + (sha256 + (base32 + "01j2x47wkj7n5w6gpcjfbwgc88ai5654b23lb87w7nsrj63m3by6")))) + (build-system ant-build-system) + (arguments + `(#:jdk ,icedtea-8; java.util.function + #:jar-name "java-testng.jar" + #:source-dir "src/main/java" + #:phases + (modify-phases %standard-phases + (add-before 'build 'copy-resources + (lambda _ + (copy-recursively "src/main/resources" "build/classes") + #t)) + (add-before 'check 'copy-test-resources + (lambda _ + (copy-recursively "src/test/resources" "build/test-classes") + #t)) + (replace 'check + (lambda _ + (system* "ant" "compile-tests") + ;; we don't have groovy + (substitute* "src/test/resources/testng.xml" + (("") "")) + (zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH") + ":build/classes" + ":build/test-classes") + "-Dtest.resources.dir=src/test/resources" + "org.testng.TestNG" "src/test/resources/testng.xml"))))))) + (propagated-inputs + `(("junit" ,java-junit) + ("java-jsr305" ,java-jsr305) + ("java-bsh" ,java-bsh) + ("java-jcommander" ,java-jcommander) + ("java-guice" ,java-guice) + ("snakeyaml" ,java-snakeyaml))) + (native-inputs + `(("guava" ,java-guava) + ("java-javax-inject" ,java-javax-inject) + ("java-hamcrest" ,java-hamcrest-all) + ("java-assertj" ,java-assertj) + ("cglib" ,java-cglib) + ("asm" ,java-asm) + ("aopalliance" ,java-aopalliance))) + (home-page "http://testng.org") + (synopsis "Testing framework") + (description "TestNG is a testing framework inspired from JUnit and NUnit +but introducing some new functionalities that make it more powerful and easier +to use.") + (license license:asl2.0))) -- cgit v1.2.3 From 1717a7de7b7a163644fc9e0761c1d8ec80bb29c1 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Tue, 24 Oct 2017 22:30:48 +0200 Subject: gnu: Add java-jnacl. * gnu/packages/java.scm (java-jnacl): New variable. --- gnu/packages/java.scm | 50 ++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 50 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 681c5ab9d4..0e4ed6d89c 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6517,3 +6517,53 @@ those in Perl and JavaScript.") but introducing some new functionalities that make it more powerful and easier to use.") (license license:asl2.0))) + +(define-public java-jnacl + (package + (name "java-jnacl") + (version "0.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/neilalexander/jnacl") + (commit "40c322e0a42637ab17cdf941138eeaf2494055f8"))) + (sha256 + (base32 + "1pspnmp44q61a2q4bpslpxw86rfn8s5l0xgvyrikqgdvg7ypx597")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "java-jnacl.jar" + #:source-dir "src/main/java" + #:jdk ,icedtea-8 + #:phases + (modify-phases %standard-phases + (add-before 'build 'fix-tests + (lambda _ + (substitute* "src/test/java/com/neilalexander/jnacl/NaClTest.java" + (("assertions.Assertions") "assertions.api.Assertions")) + (substitute* "src/test/java/com/neilalexander/jnacl/NaclSecretBoxTest.java" + (("assertions.Assertions") "assertions.api.Assertions")) + #t)) + (replace 'check + (lambda _ + (system* "ant" "compile-tests") + (and + (zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH") + ":build/classes" + ":build/test-classes") + "org.testng.TestNG" "-testclass" + "build/test-classes/com/neilalexander/jnacl/NaclSecretBoxTest.class")) + (zero? (system* "java" "-cp" (string-append (getenv "CLASSPATH") + ":build/classes" + ":build/test-classes") + "org.testng.TestNG" "-testclass" + "build/test-classes/com/neilalexander/jnacl/NaClTest.class")))))))) + (native-inputs + `(("java-testng" ,java-testng) + ("java-fest-util" ,java-fest-util) + ("java-fest-assert" ,java-fest-assert))) + (home-page "https://github.com/neilalexander/jnacl") + (synopsis "Java implementation of NaCl") + (description "Pure Java implementation of the NaCl: Networking and +Cryptography library.") + (license license:mpl2.0))) -- cgit v1.2.3 From eaf3cb7a418df1cf9d7837f0f1aef0a2efeb2538 Mon Sep 17 00:00:00 2001 From: Julien Lepiller Date: Mon, 30 Oct 2017 18:40:24 +0100 Subject: gnu: Add java-mvel2. * gnu/packages/java.scm (java-mvel2): New variable. --- gnu/packages/java.scm | 54 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 54 insertions(+) (limited to 'gnu') diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 0e4ed6d89c..59f941f8ef 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -6567,3 +6567,57 @@ to use.") (description "Pure Java implementation of the NaCl: Networking and Cryptography library.") (license license:mpl2.0))) + +(define-public java-mvel2 + (package + (name "java-mvel2") + (version "2.3.1") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/mvel/mvel/archive/mvel2-" + version ".Final.tar.gz")) + (sha256 + (base32 + "01ph5s9gm16l2qz58lg21w6fna7xmmrj7f9bzqr1jim7h9557d3z")))) + (build-system ant-build-system) + (arguments + `(#:jar-name "mvel2.jar" + #:source-dir "src/main/java" + #:test-exclude + (list "**/Abstract*.java" + ;; Base class with no tests + "**/MVELThreadTest.java") + #:phases + (modify-phases %standard-phases + (add-after 'install 'install-bin + (lambda* (#:key outputs #:allow-other-keys) + (let ((bin (string-append (assoc-ref outputs "out") "/bin"))) + (mkdir-p bin) + (with-output-to-file (string-append bin "/mvel2") + (lambda _ + (display + (string-append + "#!" (which "bash") "\n" + "if [ \"$#\" -ne \"2\" ]; then\n" + "echo 'Usage: mvel2