* [PATCH] gnu: Add slurm
@ 2015-12-28 22:00 swedebugia
2015-12-28 23:13 ` Eric Bavier
2015-12-29 4:31 ` Leo Famulari
0 siblings, 2 replies; 46+ messages in thread
From: swedebugia @ 2015-12-28 22:00 UTC (permalink / raw)
To: guix-devel
[-- Attachment #1: Type: text/plain, Size: 111 bytes --]
My first patch ever to a software project. How did I do?
If okay I would like to avoid providing my legal name.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-gnu-Add-slurm.patch --]
[-- Type: text/x-diff; name=0001-gnu-Add-slurm.patch, Size: 1798 bytes --]
From 53832a06a61801e9996252506aacad468d54f071 Mon Sep 17 00:00:00 2001
From: swedebugia <swedebugia@riseup.net>
Date: Mon, 28 Dec 2015 15:04:21 +0100
Subject: [PATCH] gnu: Add slurm
---
gnu/packages/networking.scm | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 0a7cde0..d84551d 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -3,6 +3,7 @@
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Stefan Reichör <stefan@xsteve.at>
+;;; Copyright © 2015 swedebugia <swedebugia@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -187,3 +188,23 @@ needed/wanted real-time traffic statistics of multiple network
interfaces, with a simple and efficient view on the command line. It is
intended as a substitute for the PPPStatus and EthStatus projects.")
(license license:gpl2+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "0.4.3")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/mattthias/slurm/archive/upstream/"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "1b53sckvg1j8510gi4bc48q61191jcc1nvhp5k8f2ywj2p9c0q5r"))))
+ (build-system gnu-build-system)
+ (inputs `(("ncurses" ,ncurses)
+ (home-page "https://github.com/mattthias/slurm")
+ (synopsis "yet another network load monitor")
+ (description
+ "slurm is a generic network load monitor for *BSD, Linux, HP-UX and Solaris. It features 3 graph modes with curses ascii graphics, traffic statistics and works on any interface supported by the kernel.")
+ (license gpl2+)))
--
1.9.1
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm
2015-12-28 22:00 swedebugia
@ 2015-12-28 23:13 ` Eric Bavier
2015-12-29 4:31 ` Leo Famulari
1 sibling, 0 replies; 46+ messages in thread
From: Eric Bavier @ 2015-12-28 23:13 UTC (permalink / raw)
To: swedebugia; +Cc: guix-devel
Hello,
Welcome, and thanks for the patch.
> If okay I would like to avoid providing my legal name.
Using a pseudonym is fine.
On Mon, 28 Dec 2015 23:00:14 +0100
swedebugia@riseup.net wrote:
> gnu/packages/networking.scm | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
Please see the manual and `git log' for examples of proper commit
messages.
> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index 0a7cde0..d84551d 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -3,6 +3,7 @@
> ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
> ;;; Copyright © 2015 Stefan Reichör <stefan@xsteve.at>
> +;;; Copyright © 2015 swedebugia <swedebugia@riseup.net>
> ;;;
> ;;; This file is part of GNU Guix.
> ;;;
> @@ -187,3 +188,23 @@ needed/wanted real-time traffic statistics of multiple network
> interfaces, with a simple and efficient view on the command line. It is
> intended as a substitute for the PPPStatus and EthStatus projects.")
> (license license:gpl2+)))
> +
> +(define-public slurm
> + (package
> + (name "slurm")
Aside: It's too bad the name clashes with SLURM the work-load manager,
but we can use the name "slurm-wlm" for that (like debian) when it's
packaged.
> + (version "0.4.3")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (string-append "https://github.com/mattthias/slurm/archive/upstream/"
> + version ".tar.gz"))
> + (sha256
> + (base32
> + "1b53sckvg1j8510gi4bc48q61191jcc1nvhp5k8f2ywj2p9c0q5r"))))
> + (build-system gnu-build-system)
> + (inputs `(("ncurses" ,ncurses)
Align the opening parentheses with the previous.
> + (home-page "https://github.com/mattthias/slurm")
> + (synopsis "yet another network load monitor")
Perhaps just "Network load monitor"
> + (description
> + "slurm is a generic network load monitor for *BSD, Linux, HP-UX and Solaris. It features 3 graph modes with curses ascii graphics, traffic statistics and works on any interface supported by the kernel.")
> + (license gpl2+)))
Finally, please execute "guix lint slurm" and fix the issues reported
there.
`~Eric
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm
2015-12-28 22:00 swedebugia
2015-12-28 23:13 ` Eric Bavier
@ 2015-12-29 4:31 ` Leo Famulari
1 sibling, 0 replies; 46+ messages in thread
From: Leo Famulari @ 2015-12-29 4:31 UTC (permalink / raw)
To: swedebugia; +Cc: guix-devel
On Mon, Dec 28, 2015 at 11:00:14PM +0100, swedebugia@riseup.net wrote:
> My first patch ever to a software project. How did I do?
Thanks for your first patch! However, it has some problems that will
need to be fixed.
Did you follow all the steps described in the manual under
"Contributing"?
Please read that section, and make the necessary changes to the patch.
Here are the basic steps to get started, assuming you have installed
Guix from the binary tarball, on another distro:
0) Clone the Guix git repo.
1) Build Guix from the git repo.
`guix environment guix`
`./bootstrap && ./configure --localstatedir=/var && make`
Be careful about the value of '--localstatedir'. '/var' is the
default value if you installed from the Guix binary.
2) Lint your package.
`./pre-inst-env guix lint slurm`
3) Build the package.
`./pre-int-env guix build slurm`
4) Finally, you should test that the software provided by the package
works as expected.
`./pre-inst-env guix environment --ad-hoc slurm`
That will put the Guix-provided slurm in your path for you try out.
5) Format and send the patch. Check `git log` for examples of how to
write commit messages in the desired format.
Hopefully those steps are complete. I wrote them from memory.
> If okay I would like to avoid providing my legal name.
I think that's fine. There is at least one other contributor with the
same preference.
Feel free to ask for help on IRC.
> From 53832a06a61801e9996252506aacad468d54f071 Mon Sep 17 00:00:00 2001
> From: swedebugia <swedebugia@riseup.net>
> Date: Mon, 28 Dec 2015 15:04:21 +0100
> Subject: [PATCH] gnu: Add slurm
>
> ---
> gnu/packages/networking.scm | 21 +++++++++++++++++++++
> 1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index 0a7cde0..d84551d 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -3,6 +3,7 @@
> ;;; Copyright ?? 2015 Ricardo Wurmus <rekado@elephly.net>
> ;;; Copyright ?? 2015 Mark H Weaver <mhw@netris.org>
> ;;; Copyright ?? 2015 Stefan Reich??r <stefan@xsteve.at>
> +;;; Copyright ?? 2015 swedebugia <swedebugia@riseup.net>
> ;;;
> ;;; This file is part of GNU Guix.
> ;;;
> @@ -187,3 +188,23 @@ needed/wanted real-time traffic statistics of multiple network
> interfaces, with a simple and efficient view on the command line. It is
> intended as a substitute for the PPPStatus and EthStatus projects.")
> (license license:gpl2+)))
> +
> +(define-public slurm
> + (package
> + (name "slurm")
> + (version "0.4.3")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (string-append "https://github.com/mattthias/slurm/archive/upstream/"
> + version ".tar.gz"))
> + (sha256
> + (base32
> + "1b53sckvg1j8510gi4bc48q61191jcc1nvhp5k8f2ywj2p9c0q5r"))))
> + (build-system gnu-build-system)
> + (inputs `(("ncurses" ,ncurses)
> + (home-page "https://github.com/mattthias/slurm")
> + (synopsis "yet another network load monitor")
> + (description
> + "slurm is a generic network load monitor for *BSD, Linux, HP-UX and Solaris. It features 3 graph modes with curses ascii graphics, traffic statistics and works on any interface supported by the kernel.")
> + (license gpl2+)))
> --
> 1.9.1
>
[0]
https://www.gnu.org/software/guix/manual/html_node/Contributing.html
^ permalink raw reply [flat|nested] 46+ messages in thread
* [PATCH] gnu: Add slurm-llnl.
@ 2016-02-10 17:36 Pjotr Prins
2016-02-11 4:04 ` Eric Bavier
` (2 more replies)
0 siblings, 3 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-10 17:36 UTC (permalink / raw)
To: guix-devel
* gnu/packages/parallel.scm (slurm-llnl): New variable.
---
gnu/packages/parallel.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++---
1 file changed, 48 insertions(+), 3 deletions(-)
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..03ee460 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,7 +2,8 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
-;;;
+;;; Copyright © 2014, 2015 Pjotr Prins <pjotr.guix@thebird.nl>
+
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
@@ -20,11 +21,17 @@
(define-module (gnu packages parallel)
#:use-module (guix packages)
- #:use-module (guix licenses)
#:use-module (guix download)
+ #:use-module (guix licenses)
+ #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -47,3 +54,41 @@
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
(license gpl3+)))
+
+(define-public slurm-llnl
+ (package
+ (name "slurm-llnl")
+ (version "15-08-6-1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ version ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1h8al21blmrhma9r7qxkba2g5i74m3hrjc9a640j7px54szvg18v"))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://www.schedmd.com/")
+ (synopsis "Tool for cluster computing")
+ (description
+ "Fault-tolerant, and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:openssl)))
--
2.5.0
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-10 17:36 [PATCH] gnu: Add slurm-llnl Pjotr Prins
@ 2016-02-11 4:04 ` Eric Bavier
2016-02-11 8:15 ` Pjotr Prins
2016-02-11 4:33 ` [PATCH] gnu: Add slurm-llnl Eric Bavier
2016-02-11 18:36 ` Efraim Flashner
2 siblings, 1 reply; 46+ messages in thread
From: Eric Bavier @ 2016-02-11 4:04 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Wed, 10 Feb 2016 18:36:48 +0100
Pjotr Prins <pjotr.public12@thebird.nl> wrote:
> * gnu/packages/parallel.scm (slurm-llnl): New variable.
> ---
> gnu/packages/parallel.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++---
> 1 file changed, 48 insertions(+), 3 deletions(-)
>
> diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
> index 8f63bda..03ee460 100644
> --- a/gnu/packages/parallel.scm
> +++ b/gnu/packages/parallel.scm
> @@ -2,7 +2,8 @@
> ;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
> ;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
> -;;;
> +;;; Copyright © 2014, 2015 Pjotr Prins <pjotr.guix@thebird.nl>
> +
Remove this extra whitespace.http://www.schedmd.com/
> ;;; This file is part of GNU Guix.
> ;;;
> ;;; GNU Guix is free software; you can redistribute it and/or modify it
> @@ -20,11 +21,17 @@
>
> (define-module (gnu packages parallel)
> #:use-module (guix packages)
> - #:use-module (guix licenses)
> #:use-module (guix download)
> + #:use-module (guix licenses)
> + #:use-module ((guix licenses) #:prefix license:)
> #:use-module (guix build-system gnu)
> #:use-module (gnu packages)
> - #:use-module (gnu packages perl))
> + #:use-module (gnu packages admin)
> + #:use-module (gnu packages linux)
> + #:use-module (gnu packages perl)
> + #:use-module (gnu packages python)
> + #:use-module (gnu packages tcl)
> + #:use-module (gnu packages tls))
>
> (define-public parallel
> (package
> @@ -47,3 +54,41 @@
> or more computers. Jobs can consist of single commands or of scripts
> and they are executed on lists of files, hosts, users or other items.")
> (license gpl3+)))
^
With the new 'license:' symbol prefix, all other licenses need to be
adjusted.
> +
> +(define-public slurm-llnl
> + (package
> + (name "slurm-llnl")
I think we should rather use "slurm-wlm" if we are trying to
dissambiguate with the "Slurm the Realtime network interface monitor".
> + (version "15-08-6-1")
Version 15.08.7 is now available. I would prefer we use '.'s to
separate version number components, and compute the uri string
appropriately.
> + (source (origin
> + (method url-fetch)
> + (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
> + version ".tar.gz"))
> + (file-name (string-append name "-" version ".tar.gz"))
> + (sha256
> + (base32
> + "1h8al21blmrhma9r7qxkba2g5i74m3hrjc9a640j7px54szvg18v"))))
> + (inputs `(("openssl" ,openssl)
> + ("munge" ,munge)
> + ("perl" ,perl)
> + ("expect" ,expect)
> + ("python" ,python)
> + ("linux-pam" , linux-pam)))
> + (build-system gnu-build-system)
> + (arguments
> + `(#:configure-flags '("--enable-pam")
> + #:phases
> + (modify-phases %standard-phases
> + (add-before
> + 'configure 'rewrite-usr-bin
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "./doc/html/shtml2html.py"
> + (("#!/usr/bin/env python")
> + (string-append "#!" (which "python3"))))
Is this shebang not handled by the patch-shebangs phase?
> + (substitute* "src/common/env.c"
> + (("/usr/bin/env") (which "env"))))))))
> + (home-page "http://www.schedmd.com/")
How about "http://slurm.schedmd.com/"?
> + (synopsis "Tool for cluster computing")
How about "Workload manager" to indicate what the tool does.
> + (description
> + "Fault-tolerant, and highly scalable cluster management and job
> +scheduling system for large and small clusters.")
> + (license license:openssl)))
According to the "License" section at http://www.schedmd.com/#repos
and the COPYING file, it's GPLv2.
`~Eric
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-10 17:36 [PATCH] gnu: Add slurm-llnl Pjotr Prins
2016-02-11 4:04 ` Eric Bavier
@ 2016-02-11 4:33 ` Eric Bavier
2016-02-11 8:17 ` Pjotr Prins
2016-02-11 18:36 ` Efraim Flashner
2 siblings, 1 reply; 46+ messages in thread
From: Eric Bavier @ 2016-02-11 4:33 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Wed, 10 Feb 2016 18:36:48 +0100
Pjotr Prins <pjotr.public12@thebird.nl> wrote:
> * gnu/packages/parallel.scm (slurm-llnl): New variable.
> ---
> gnu/packages/parallel.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++---
> 1 file changed, 48 insertions(+), 3 deletions(-)
[...]
> + (license license:openssl)))
There are several bits in the 'contribs' directory that seem to not be
under free licenses. E.g.
- contribs/cray/slurmconfgen_smw.py contains "Copyright 2015 Cray Inc.
All Rights Reserved"
- contribs/cray/slurmconfgen.py.in contains "Copyright 2013 Cray Inc.
All Rights Reserved"
- contribs/cray/libalps_test_programs.tar.gz contains a mixture of
GPLv2, public domain, and binaries.
- contribs/mic/mpirun-mic declares no license.
- contribs/pmi2 is under a custom (copyleft?) license.
- contribs/sgather declares no license.
- contribs/sgi/netloc_to_topology.c contains "Copyright (C) 2014
Silicon Graphics International Corp. All rights reserved."
- contribs/sjobexit/sjobexitmod.pl declares no license.
I don't think we can claim any of these are covered under the same
license as slurm, since the COPYING file explicitely says "Some tools
in the "contribs" directory have other licenses."
The contribs tools are not installed by default, but we do need to
remove any non-free source from there with an origin snippet.
Also, I found the DISCLAIMER file contains the "or (at your option) any
later version." verbiage, so the slurm license itself is license:gpl2+
`~Eric
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 4:04 ` Eric Bavier
@ 2016-02-11 8:15 ` Pjotr Prins
2016-02-11 10:08 ` Andreas Enge
2016-02-12 12:20 ` Pjotr Prins
0 siblings, 2 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-11 8:15 UTC (permalink / raw)
To: Eric Bavier; +Cc: guix-devel
Thanks for the review. This apparently a problematic package. Let's
try fix a few things at a time.
On Wed, Feb 10, 2016 at 10:04:47PM -0600, Eric Bavier wrote:
> > #:use-module (guix download)
> > + #:use-module (guix licenses)
> > + #:use-module ((guix licenses) #:prefix license:)
> > #:use-module (guix build-system gnu)
> > #:use-module (gnu packages)
> > (define-public parallel
> > (package
> > @@ -47,3 +54,41 @@
> > or more computers. Jobs can consist of single commands or of scripts
> > and they are executed on lists of files, hosts, users or other items.")
> > (license gpl3+)))
> ^
> With the new 'license:' symbol prefix, all other licenses need to be
> adjusted.
I am under the impression one should fix one package at a time. What
is the policy anyway? With or without namespace? Without the namespace
there is a naming conflict between the openssl license and the openssl
package (in tls).
> > +
> > +(define-public slurm-llnl
> > + (package
> > + (name "slurm-llnl")
>
> I think we should rather use "slurm-wlm" if we are trying to
> dissambiguate with the "Slurm the Realtime network interface monitor".
The website https://computing.llnl.gov/linux/slurm/ suggests
otherwise. Also archlinux took this name
https://aur.archlinux.org/packages/slurm-llnl/
> > + (version "15-08-6-1")
>
> Version 15.08.7 is now available. I would prefer we use '.'s to
> separate version number components, and compute the uri string
> appropriately.
OK
> > + (source (origin
> > + (method url-fetch)
> > + (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
> > + version ".tar.gz"))
> > + (file-name (string-append name "-" version ".tar.gz"))
> > + (sha256
> > + (base32
> > + "1h8al21blmrhma9r7qxkba2g5i74m3hrjc9a640j7px54szvg18v"))))
> > + (inputs `(("openssl" ,openssl)
> > + ("munge" ,munge)
> > + ("perl" ,perl)
> > + ("expect" ,expect)
> > + ("python" ,python)
> > + ("linux-pam" , linux-pam)))
> > + (build-system gnu-build-system)
> > + (arguments
> > + `(#:configure-flags '("--enable-pam")
> > + #:phases
> > + (modify-phases %standard-phases
> > + (add-before
> > + 'configure 'rewrite-usr-bin
> > + (lambda* (#:key inputs #:allow-other-keys)
> > + (substitute* "./doc/html/shtml2html.py"
> > + (("#!/usr/bin/env python")
> > + (string-append "#!" (which "python3"))))
>
> Is this shebang not handled by the patch-shebangs phase?
I added it because the build failed. I'll try again.
> > + (substitute* "src/common/env.c"
> > + (("/usr/bin/env") (which "env"))))))))
> > + (home-page "http://www.schedmd.com/")
>
> How about "http://slurm.schedmd.com/"?
Sure. Arch does different.
> > + (synopsis "Tool for cluster computing")
>
> How about "Workload manager" to indicate what the tool does.
Arch has: Simple Linux Utility for Resource Management which is even
less descriptive ;). Besides, slurm runs on more environments.
> > + (description
> > + "Fault-tolerant, and highly scalable cluster management and job
> > +scheduling system for large and small clusters.")
> > + (license license:openssl)))
>
> According to the "License" section at http://www.schedmd.com/#repos
> and the COPYING file, it's GPLv2.
See next.
--
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 4:33 ` [PATCH] gnu: Add slurm-llnl Eric Bavier
@ 2016-02-11 8:17 ` Pjotr Prins
2016-02-11 8:28 ` Ricardo Wurmus
0 siblings, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-11 8:17 UTC (permalink / raw)
To: Eric Bavier; +Cc: guix-devel
On Wed, Feb 10, 2016 at 10:33:30PM -0600, Eric Bavier wrote:
> On Wed, 10 Feb 2016 18:36:48 +0100
> Pjotr Prins <pjotr.public12@thebird.nl> wrote:
>
> > * gnu/packages/parallel.scm (slurm-llnl): New variable.
> > ---
> > gnu/packages/parallel.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++---
> > 1 file changed, 48 insertions(+), 3 deletions(-)
> [...]
> > + (license license:openssl)))
>
> There are several bits in the 'contribs' directory that seem to not be
> under free licenses. E.g.
>
> - contribs/cray/slurmconfgen_smw.py contains "Copyright 2015 Cray Inc.
> All Rights Reserved"
>
> - contribs/cray/slurmconfgen.py.in contains "Copyright 2013 Cray Inc.
> All Rights Reserved"
>
> - contribs/cray/libalps_test_programs.tar.gz contains a mixture of
> GPLv2, public domain, and binaries.
>
> - contribs/mic/mpirun-mic declares no license.
>
> - contribs/pmi2 is under a custom (copyleft?) license.
>
> - contribs/sgather declares no license.
>
> - contribs/sgi/netloc_to_topology.c contains "Copyright (C) 2014
> Silicon Graphics International Corp. All rights reserved."
>
> - contribs/sjobexit/sjobexitmod.pl declares no license.
>
> I don't think we can claim any of these are covered under the same
> license as slurm, since the COPYING file explicitely says "Some tools
> in the "contribs" directory have other licenses."
>
> The contribs tools are not installed by default, but we do need to
> remove any non-free source from there with an origin snippet.
>
> Also, I found the DISCLAIMER file contains the "or (at your option) any
> later version." verbiage, so the slurm license itself is license:gpl2+
That was hard to find. Initially I had gpl2+ but they don't include the
license in the source so I defaulted to the license they include which
is openssl. But ja...
I agree the rest is a mess but we aren't building contrib. Do you have
an example of a package that does this the right way?
Pj.
--
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 8:17 ` Pjotr Prins
@ 2016-02-11 8:28 ` Ricardo Wurmus
0 siblings, 0 replies; 46+ messages in thread
From: Ricardo Wurmus @ 2016-02-11 8:28 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
Pjotr Prins <pjotr.public12@thebird.nl> writes:
> On Wed, Feb 10, 2016 at 10:33:30PM -0600, Eric Bavier wrote:
>> On Wed, 10 Feb 2016 18:36:48 +0100
>> Pjotr Prins <pjotr.public12@thebird.nl> wrote:
>>
>> > * gnu/packages/parallel.scm (slurm-llnl): New variable.
>> > ---
>> > gnu/packages/parallel.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++---
>> > 1 file changed, 48 insertions(+), 3 deletions(-)
>> [...]
>> > + (license license:openssl)))
>>
>> There are several bits in the 'contribs' directory that seem to not be
>> under free licenses. E.g.
>>
>> - contribs/cray/slurmconfgen_smw.py contains "Copyright 2015 Cray Inc.
>> All Rights Reserved"
>>
>> - contribs/cray/slurmconfgen.py.in contains "Copyright 2013 Cray Inc.
>> All Rights Reserved"
>>
>> - contribs/cray/libalps_test_programs.tar.gz contains a mixture of
>> GPLv2, public domain, and binaries.
>>
>> - contribs/mic/mpirun-mic declares no license.
>>
>> - contribs/pmi2 is under a custom (copyleft?) license.
>>
>> - contribs/sgather declares no license.
>>
>> - contribs/sgi/netloc_to_topology.c contains "Copyright (C) 2014
>> Silicon Graphics International Corp. All rights reserved."
>>
>> - contribs/sjobexit/sjobexitmod.pl declares no license.
>>
>> I don't think we can claim any of these are covered under the same
>> license as slurm, since the COPYING file explicitely says "Some tools
>> in the "contribs" directory have other licenses."
>>
>> The contribs tools are not installed by default, but we do need to
>> remove any non-free source from there with an origin snippet.
>>
>> Also, I found the DISCLAIMER file contains the "or (at your option) any
>> later version." verbiage, so the slurm license itself is license:gpl2+
>
> That was hard to find. Initially I had gpl2+ but they don't include the
> license in the source so I defaulted to the license they include which
> is openssl. But ja...
>
> I agree the rest is a mess but we aren't building contrib. Do you have
> an example of a package that does this the right way?
The best way is to remove the contrib directory in an origin snippet.
We’re doing the same in the “shogun” package (in machine-learning.scm)
as the upstream sources contain files that are not free software. The
snippet in “shogun” is probably more complicated than what you’ll need
for slurm-llnl; in many cases it’s enough to just do
(begin
(delete-file-recursively "contrib")
#t)
in a snippet.
~~ Ricardo
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 8:15 ` Pjotr Prins
@ 2016-02-11 10:08 ` Andreas Enge
2016-02-11 11:11 ` Pjotr Prins
2016-02-12 12:20 ` Pjotr Prins
1 sibling, 1 reply; 46+ messages in thread
From: Andreas Enge @ 2016-02-11 10:08 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Thu, Feb 11, 2016 at 09:15:34AM +0100, Pjotr Prins wrote:
> I am under the impression one should fix one package at a time. What
> is the policy anyway? With or without namespace? Without the namespace
> there is a naming conflict between the openssl license and the openssl
> package (in tls).
We normally use the namespace as soon as there is a collision; and then I
think it is okay to treat the complete file at once. If you want to be
overcorrect, you could first make the namespace change in one commit and
then add your package in a second one.
> > I think we should rather use "slurm-wlm" if we are trying to
> > dissambiguate with the "Slurm the Realtime network interface monitor".
> The website https://computing.llnl.gov/linux/slurm/ suggests
> otherwise. Also archlinux took this name
> https://aur.archlinux.org/packages/slurm-llnl/
And Debian, but we are free to use our own conventions. Do you think it
is likely that we will package the other slurm? Otherwise, I would simply
go with "slurm" now according to our package guidelines; and then we can
still name the other slurm as slurm-nlm or similar.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 10:08 ` Andreas Enge
@ 2016-02-11 11:11 ` Pjotr Prins
2016-02-11 14:21 ` Andreas Enge
2016-02-11 15:19 ` Eric Bavier
0 siblings, 2 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-11 11:11 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Thu, Feb 11, 2016 at 11:08:01AM +0100, Andreas Enge wrote:
> > > I think we should rather use "slurm-wlm" if we are trying to
> > > dissambiguate with the "Slurm the Realtime network interface monitor".
> > The website https://computing.llnl.gov/linux/slurm/ suggests
> > otherwise. Also archlinux took this name
> > https://aur.archlinux.org/packages/slurm-llnl/
>
> And Debian, but we are free to use our own conventions. Do you think it
> is likely that we will package the other slurm? Otherwise, I would simply
> go with "slurm" now according to our package guidelines; and then we can
> still name the other slurm as slurm-nlm or similar.
There is already a slurm package. But it does something different. I
propose we do it my way, so outsiders understand it. Let them flock
over from Debian ;)
Pj.
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 11:11 ` Pjotr Prins
@ 2016-02-11 14:21 ` Andreas Enge
2016-02-11 15:00 ` Pjotr Prins
2016-02-11 15:19 ` Eric Bavier
1 sibling, 1 reply; 46+ messages in thread
From: Andreas Enge @ 2016-02-11 14:21 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Thu, Feb 11, 2016 at 12:11:27PM +0100, Pjotr Prins wrote:
> There is already a slurm package.
Apparently not in current master:
$ guix package -A slurm
does not show anything, not even
$ grep slurm gnu/packages/*.scm
Did I overlook anything?
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 14:21 ` Andreas Enge
@ 2016-02-11 15:00 ` Pjotr Prins
2016-02-12 12:30 ` Pjotr Prins
0 siblings, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-11 15:00 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Thu, Feb 11, 2016 at 03:21:21PM +0100, Andreas Enge wrote:
> On Thu, Feb 11, 2016 at 12:11:27PM +0100, Pjotr Prins wrote:
> > There is already a slurm package.
>
> Did I overlook anything?
No, I also checked.
The point is that https://packages.debian.org/sid/slurm is a network
tool. So, it is about a (potential) name clash. I am happy to call the
cluster manager by its name since it is going in first.
Pj.
--
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 11:11 ` Pjotr Prins
2016-02-11 14:21 ` Andreas Enge
@ 2016-02-11 15:19 ` Eric Bavier
1 sibling, 0 replies; 46+ messages in thread
From: Eric Bavier @ 2016-02-11 15:19 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Thu, 11 Feb 2016 12:11:27 +0100
Pjotr Prins <pjotr.public12@thebird.nl> wrote:
> On Thu, Feb 11, 2016 at 11:08:01AM +0100, Andreas Enge wrote:
> > > > I think we should rather use "slurm-wlm" if we are trying to
> > > > dissambiguate with the "Slurm the Realtime network interface monitor".
> > > The website https://computing.llnl.gov/linux/slurm/ suggests
> > > otherwise. Also archlinux took this name
> > > https://aur.archlinux.org/packages/slurm-llnl/
> >
> > And Debian, but we are free to use our own conventions. Do you think it
> > is likely that we will package the other slurm? Otherwise, I would simply
> > go with "slurm" now according to our package guidelines; and then we can
> > still name the other slurm as slurm-nlm or similar.
>
> There is already a slurm package. But it does something different. I
> propose we do it my way, so outsiders understand it. Let them flock
> over from Debian ;)
In debian, the "slurm-llnl" is a dummy package to help users
transition to the new "slurm-wlm" package.
`~Eric
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-10 17:36 [PATCH] gnu: Add slurm-llnl Pjotr Prins
2016-02-11 4:04 ` Eric Bavier
2016-02-11 4:33 ` [PATCH] gnu: Add slurm-llnl Eric Bavier
@ 2016-02-11 18:36 ` Efraim Flashner
2 siblings, 0 replies; 46+ messages in thread
From: Efraim Flashner @ 2016-02-11 18:36 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 3623 bytes --]
On Wed, 10 Feb 2016 18:36:48 +0100
Pjotr Prins <pjotr.public12@thebird.nl> wrote:
> * gnu/packages/parallel.scm (slurm-llnl): New variable.
> ---
> gnu/packages/parallel.scm | 51 ++++++++++++++++++++++++++++++++++++++++++++---
> 1 file changed, 48 insertions(+), 3 deletions(-)
>
> diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
> index 8f63bda..03ee460 100644
> --- a/gnu/packages/parallel.scm
> +++ b/gnu/packages/parallel.scm
> @@ -2,7 +2,8 @@
> ;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
> ;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
> -;;;
> +;;; Copyright © 2014, 2015 Pjotr Prins <pjotr.guix@thebird.nl>
> +
> ;;; This file is part of GNU Guix.
> ;;;
> ;;; GNU Guix is free software; you can redistribute it and/or modify it
> @@ -20,11 +21,17 @@
>
> (define-module (gnu packages parallel)
> #:use-module (guix packages)
> - #:use-module (guix licenses)
> #:use-module (guix download)
> + #:use-module (guix licenses)
> + #:use-module ((guix licenses) #:prefix license:)
> #:use-module (guix build-system gnu)
> #:use-module (gnu packages)
> - #:use-module (gnu packages perl))
> + #:use-module (gnu packages admin)
> + #:use-module (gnu packages linux)
> + #:use-module (gnu packages perl)
> + #:use-module (gnu packages python)
> + #:use-module (gnu packages tcl)
> + #:use-module (gnu packages tls))
>
> (define-public parallel
> (package
> @@ -47,3 +54,41 @@
> or more computers. Jobs can consist of single commands or of scripts
> and they are executed on lists of files, hosts, users or other items.")
> (license gpl3+)))
> +
> +(define-public slurm-llnl
> + (package
> + (name "slurm-llnl")
> + (version "15-08-6-1")
> + (source (origin
> + (method url-fetch)
> + (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
> + version ".tar.gz"))
> + (file-name (string-append name "-" version ".tar.gz"))
> + (sha256
> + (base32
> + "1h8al21blmrhma9r7qxkba2g5i74m3hrjc9a640j7px54szvg18v"))))
> + (inputs `(("openssl" ,openssl)
> + ("munge" ,munge)
> + ("perl" ,perl)
> + ("expect" ,expect)
> + ("python" ,python)
> + ("linux-pam" , linux-pam)))
> + (build-system gnu-build-system)
> + (arguments
> + `(#:configure-flags '("--enable-pam")
> + #:phases
> + (modify-phases %standard-phases
> + (add-before
> + 'configure 'rewrite-usr-bin
> + (lambda* (#:key inputs #:allow-other-keys)
> + (substitute* "./doc/html/shtml2html.py"
> + (("#!/usr/bin/env python")
> + (string-append "#!" (which "python3"))))
> + (substitute* "src/common/env.c"
> + (("/usr/bin/env") (which "env"))))))))
> + (home-page "http://www.schedmd.com/")
> + (synopsis "Tool for cluster computing")
> + (description
> + "Fault-tolerant, and highly scalable cluster management and job
^
this comma isn't really needed
> +scheduling system for large and small clusters.")
> + (license license:openssl)))
--
Efraim Flashner <efraim@flashner.co.il> אפרים פלשנר
GPG key = A28B F40C 3E55 1372 662D 14F7 41AA E7DC CA3D 8351
Confidentiality cannot be guaranteed on emails sent or received unencrypted
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 8:15 ` Pjotr Prins
2016-02-11 10:08 ` Andreas Enge
@ 2016-02-12 12:20 ` Pjotr Prins
2016-02-12 12:30 ` Andreas Enge
1 sibling, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-12 12:20 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Thu, Feb 11, 2016 at 09:15:34AM +0100, Pjotr Prins wrote:
> > > + (build-system gnu-build-system)
> > > + (arguments
> > > + `(#:configure-flags '("--enable-pam")
> > > + #:phases
> > > + (modify-phases %standard-phases
> > > + (add-before
> > > + 'configure 'rewrite-usr-bin
> > > + (lambda* (#:key inputs #:allow-other-keys)
> > > + (substitute* "./doc/html/shtml2html.py"
> > > + (("#!/usr/bin/env python")
> > > + (string-append "#!" (which "python3"))))
> >
> > Is this shebang not handled by the patch-shebangs phase?
>
> I added it because the build failed. I'll try again.
Now I remember. The python3 package does not have python in the path.
So I patch it with python3.
Pj.
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-12 12:20 ` Pjotr Prins
@ 2016-02-12 12:30 ` Andreas Enge
2016-02-12 12:31 ` Pjotr Prins
0 siblings, 1 reply; 46+ messages in thread
From: Andreas Enge @ 2016-02-12 12:30 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Fri, Feb 12, 2016 at 01:20:42PM +0100, Pjotr Prins wrote:
> Now I remember. The python3 package does not have python in the path.
> So I patch it with python3.
Alternatively, I would suggest to use python-wrapper; it is exactly python-3
with symlinks python->python3 etc. added.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-11 15:00 ` Pjotr Prins
@ 2016-02-12 12:30 ` Pjotr Prins
0 siblings, 0 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-12 12:30 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 96 bytes --]
Hopefully taken all comments into account.
For better or for worse, at least this works.
Pj.
[-- Attachment #2: 0001-gnu-Add-slurm-wlm.patch --]
[-- Type: text/x-diff, Size: 5770 bytes --]
From 5941b6b2624ee18444c2fa9f0805136cf6924a88 Mon Sep 17 00:00:00 2001
From: Pjotr Prins <pjotr.guix@thebird.nl>
Date: Fri, 12 Feb 2016 13:26:56 +0100
Subject: [PATCH] gnu: Add slurm-wlm.
* gnu/packages/parallel.scm (slurm-wlm): New variable.
---
gnu/packages/parallel.scm | 67 +++++++++++++++++++++-
...urm-wlm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
2 files changed, 107 insertions(+), 3 deletions(-)
create mode 100644 gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a3e69b3 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,11 +21,18 @@
(define-module (gnu packages parallel)
#:use-module (guix packages)
- #:use-module (guix licenses)
#:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
+ ;; #:use-module (guix utils)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +54,57 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm-wlm
+ (package
+ (name "slurm-wlm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ ;; https://github.com/SchedMD/slurm/archive/slurm-15-08-7-1.tar.gz
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ;; ("automake" ,automake)
+ ))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-llnl.
2016-02-12 12:30 ` Andreas Enge
@ 2016-02-12 12:31 ` Pjotr Prins
2016-02-12 12:57 ` [PATCH] gnu: Add slurm-wlm Pjotr Prins
0 siblings, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-12 12:31 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Fri, Feb 12, 2016 at 01:30:10PM +0100, Andreas Enge wrote:
> On Fri, Feb 12, 2016 at 01:20:42PM +0100, Pjotr Prins wrote:
> > Now I remember. The python3 package does not have python in the path.
> > So I patch it with python3.
>
> Alternatively, I would suggest to use python-wrapper; it is exactly python-3
> with symlinks python->python3 etc. added.
Well, it is just another dependency. Feel free to adjust if that is
better.
Pj.
--
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-wlm.
2016-02-12 12:31 ` Pjotr Prins
@ 2016-02-12 12:57 ` Pjotr Prins
2016-02-12 17:51 ` Andreas Enge
2016-02-13 8:59 ` [PATCH] gnu: Add slurm Pjotr Prins
0 siblings, 2 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-12 12:57 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 57 bytes --]
Removed a few extraneous comments and changed subject.
[-- Attachment #2: 0001-gnu-Add-slurm-wlm.patch --]
[-- Type: text/x-diff, Size: 5613 bytes --]
From 5941b6b2624ee18444c2fa9f0805136cf6924a88 Mon Sep 17 00:00:00 2001
From: Pjotr Prins <pjotr.guix@thebird.nl>
Date: Fri, 12 Feb 2016 13:26:56 +0100
Subject: [PATCH] gnu: Add slurm-wlm.
* gnu/packages/parallel.scm (slurm-wlm): New variable.
---
gnu/packages/parallel.scm | 67 +++++++++++++++++++++-
...urm-wlm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
2 files changed, 107 insertions(+), 3 deletions(-)
create mode 100644 gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a3e69b3 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,11 +21,18 @@
(define-module (gnu packages parallel)
#:use-module (guix packages)
- #:use-module (guix licenses)
#:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +54,57 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm-wlm
+ (package
+ (name "slurm-wlm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm-wlm.
2016-02-12 12:57 ` [PATCH] gnu: Add slurm-wlm Pjotr Prins
@ 2016-02-12 17:51 ` Andreas Enge
2016-02-13 8:59 ` [PATCH] gnu: Add slurm Pjotr Prins
1 sibling, 0 replies; 46+ messages in thread
From: Andreas Enge @ 2016-02-12 17:51 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
Hi Piotr,
"git am" fails on current master with this patch, claiming an error at
line 39:
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
etc.
Did we not agree in the end that the package should simply be called slurm?
Could you please send a patch that applies to current master?
Thanks,
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-12 12:57 ` [PATCH] gnu: Add slurm-wlm Pjotr Prins
2016-02-12 17:51 ` Andreas Enge
@ 2016-02-13 8:59 ` Pjotr Prins
2016-02-13 10:28 ` Andreas Enge
1 sibling, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 8:59 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 194 bytes --]
Another package name (this time we go down to slurm), another patch.
I also put the modules in alphabetic order when adding the license
name space. Hope that doesn't need a separate patch.
Pj.
[-- Attachment #2: 0001-gnu-Add-slurm.patch --]
[-- Type: text/x-diff, Size: 5948 bytes --]
From ef998204cde384d35b605509be09b25170c28fb8 Mon Sep 17 00:00:00 2001
From: Pjotr Prins <pjotr.public01@thebird.nl>
Date: Sat, 13 Feb 2016 09:45:30 +0100
Subject: [PATCH] gnu: Add slurm.
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch: New file.
* gnu/packages/parallel.scm (parallel): Introduce license name space.
---
gnu/packages/parallel.scm | 67 ++++++++++++++++++++--
...urm-wlm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
2 files changed, 105 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a52e554 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,54 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; replace python call with python3
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 8:59 ` [PATCH] gnu: Add slurm Pjotr Prins
@ 2016-02-13 10:28 ` Andreas Enge
2016-02-13 16:42 ` Pjotr Prins
2016-02-13 17:13 ` Pjotr Prins
0 siblings, 2 replies; 46+ messages in thread
From: Andreas Enge @ 2016-02-13 10:28 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Sat, Feb 13, 2016 at 09:59:40AM +0100, Pjotr Prins wrote:
> Another package name (this time we go down to slurm), another patch.
Actually, the name of the patch file: slurm-wml-....patch should also
be changed... And it needs to be registered in gnu-system.am.
Some lines are way beyond 80 characters; this should be detected by
"guix lint".
> I also put the modules in alphabetic order when adding the license
> name space. Hope that doesn't need a separate patch.
I think that is fine.
However, your patch still does not apply on top of master:
Applying: gnu: Add slurm.
.git/rebase-apply/patch:87: trailing whitespace.
(substitute* "./doc/html/shtml2html.py"
.git/rebase-apply/patch:119: space before tab in indent.
config.xml
.git/rebase-apply/patch:120: space before tab in indent.
auxdir/Makefile
.git/rebase-apply/patch:141: space before tab in indent.
doc/Makefile
.git/rebase-apply/patch:142: space before tab in indent.
doc/man/Makefile
error: patch failed: gnu/packages/parallel.scm:2
error: gnu/packages/parallel.scm: patch does not apply
Patch failed at 0001 gnu: Add slurm.
I do not think that the whitespace is a real issue; did you rebase before
sending the patch? It is quite curious since the parallel.scm file has not
been changed yet this year.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 10:28 ` Andreas Enge
@ 2016-02-13 16:42 ` Pjotr Prins
2016-02-13 17:00 ` Andreas Enge
2016-02-13 17:01 ` Pjotr Prins
2016-02-13 17:13 ` Pjotr Prins
1 sibling, 2 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 16:42 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Sat, Feb 13, 2016 at 11:28:25AM +0100, Andreas Enge wrote:
> Some lines are way beyond 80 characters; this should be detected by
> "guix lint".
guix lint has not been working for me:
./pre-inst-env guix lint slurm
warning: failed to install locale: Invalid argument
filtered-port: failed to execute ' -dc ': No such file or directory
Backtrace:
In unknown file:
?: 19 [apply-smob/1 #<catch-closure 243f940>]
In ice-9/boot-9.scm:
63: 18 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
432: 17 [eval # #]
In ice-9/boot-9.scm:
(...)
In guix/utils.scm:
255: 5 [call-with-decompressed-port gzip ...]
In guix/cve.scm:
143: 4 [#<procedure 3552980 at guix/cve.scm:139:3 (port)> #<closed: file 0>]
133: 3 [xml->vulnerabilities #<closed: file 0>]
In ice-9/boot-9.scm:
105: 2 [#<procedure 23d1180 at ice-9/boot-9.scm:97:6 (thrown-k . args)> parser-error ...]
65: 1 [abort-to-prompt catch7 parser-error ...]
In unknown file:
?: 0 [scm-error misc-error #f "~A ~S" ("decompressed-port failure" (6495)) #f]
ERROR: In procedure scm-error:
ERROR: decompressed-port failure (6495)
any idea what this could be?
> However, your patch still does not apply on top of master:
> Applying: gnu: Add slurm.
> .git/rebase-apply/patch:87: trailing whitespace.
> (substitute* "./doc/html/shtml2html.py"
> .git/rebase-apply/patch:119: space before tab in indent.
> config.xml
> .git/rebase-apply/patch:120: space before tab in indent.
> auxdir/Makefile
> .git/rebase-apply/patch:141: space before tab in indent.
> doc/Makefile
> .git/rebase-apply/patch:142: space before tab in indent.
> doc/man/Makefile
> error: patch failed: gnu/packages/parallel.scm:2
> error: gnu/packages/parallel.scm: patch does not apply
> Patch failed at 0001 gnu: Add slurm.
>
> I do not think that the whitespace is a real issue; did you rebase before
> sending the patch? It is quite curious since the parallel.scm file has not
> been changed yet this year.
I am using a recent repo of guix. I did do a rebase and the patch applies
on my tree (as did the previous one). Is there no more information?
Pj.
--
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 16:42 ` Pjotr Prins
@ 2016-02-13 17:00 ` Andreas Enge
2016-02-13 17:01 ` Pjotr Prins
1 sibling, 0 replies; 46+ messages in thread
From: Andreas Enge @ 2016-02-13 17:00 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Sat, Feb 13, 2016 at 05:42:57PM +0100, Pjotr Prins wrote:
> On Sat, Feb 13, 2016 at 11:28:25AM +0100, Andreas Enge wrote:
> > Some lines are way beyond 80 characters; this should be detected by
> > "guix lint".
> guix lint has not been working for me:
Strange, it works for me with other packages.
> I am using a recent repo of guix. I did do a rebase and the patch applies
> on my tree (as did the previous one). Is there no more information?
No, that is all (except a few more lines explaining what to do now in a git
context). Could these two issues be related?
It would be good if someone else could try to apply the patch.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 16:42 ` Pjotr Prins
2016-02-13 17:00 ` Andreas Enge
@ 2016-02-13 17:01 ` Pjotr Prins
2016-02-13 17:20 ` Andreas Enge
1 sibling, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 17:01 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Sat, Feb 13, 2016 at 05:42:57PM +0100, Pjotr Prins wrote:
> > However, your patch still does not apply on top of master:
> I am using a recent repo of guix. I did do a rebase and the patch applies
> on my tree (as did the previous one). Is there no more information?
git pull origin master
From git://git.savannah.gnu.org/guix
* branch master -> FETCH_HEAD
Updating a747bab..a42d99f
Fast-forward
gnu/packages/ebook.scm | 4 ++--
gnu/packages/maths.scm | 4 ++--
gnu/packages/ocaml.scm | 6 ++++++
3 files changed, 10 insertions(+), 4 deletions(-)
bergamo:~/izip/git/opensource/scheme/guix$ git log
commit a42d99f2843d3880cad2f20777b4bd1f969c38dd
Author: Andreas Enge <andreas@enge.fr>
Date: Sat Feb 13 14:34:50 2016 +0100
gnu: calibre: Update to 2.51.0.
* gnu/packages/ebook.scm (calibre): Update to 2.51.0.
(i.e. latest)
cat 0001-gnu-Add-slurm.patch |patch -p1 # same patch, different name
patching file gnu/packages/parallel.scm
patching file gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
Works fine. Maybe because I used an attachment previously?
I'll send it again after renaming the patch.
--
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 10:28 ` Andreas Enge
2016-02-13 16:42 ` Pjotr Prins
@ 2016-02-13 17:13 ` Pjotr Prins
1 sibling, 0 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 17:13 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
OK, patch coming up.
On Sat, Feb 13, 2016 at 11:28:25AM +0100, Andreas Enge wrote:
> On Sat, Feb 13, 2016 at 09:59:40AM +0100, Pjotr Prins wrote:
> > Another package name (this time we go down to slurm), another patch.
>
> Actually, the name of the patch file: slurm-wml-....patch should also
> be changed... And it needs to be registered in gnu-system.am.
>
> Some lines are way beyond 80 characters; this should be detected by
> "guix lint".
Only one line that I can tell
(patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
> > I also put the modules in alphabetic order when adding the license
> > name space. Hope that doesn't need a separate patch.
>
> I think that is fine.
>
> However, your patch still does not apply on top of master:
> Applying: gnu: Add slurm.
> .git/rebase-apply/patch:87: trailing whitespace.
> (substitute* "./doc/html/shtml2html.py"
> .git/rebase-apply/patch:119: space before tab in indent.
> config.xml
> .git/rebase-apply/patch:120: space before tab in indent.
> auxdir/Makefile
> .git/rebase-apply/patch:141: space before tab in indent.
> doc/Makefile
> .git/rebase-apply/patch:142: space before tab in indent.
> doc/man/Makefile
> error: patch failed: gnu/packages/parallel.scm:2
> error: gnu/packages/parallel.scm: patch does not apply
> Patch failed at 0001 gnu: Add slurm.
>
> I do not think that the whitespace is a real issue; did you rebase before
> sending the patch? It is quite curious since the parallel.scm file has not
> been changed yet this year.
I double checked. There is no tabs or trailing whitespace in the
package.
Anyway try again. If it fails I give up. I have had enough of slurm
and for now of sending patches back and forth.
Pj.
^ permalink raw reply [flat|nested] 46+ messages in thread
* [PATCH] gnu: Add slurm.
@ 2016-02-13 17:14 Pjotr Prins
0 siblings, 0 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 17:14 UTC (permalink / raw)
To: guix-devel
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch: New file.
* gnu/packages/parallel.scm (parallel): Introduce license name space.
---
gnu-system.am | 1 +
gnu/packages/parallel.scm | 67 ++++++++++++++++++++--
.../slurm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
3 files changed, 106 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
diff --git a/gnu-system.am b/gnu-system.am
index fd9795e..ac4b241 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -702,6 +702,7 @@ dist_patch_DATA = \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
+ gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/sudo-CVE-2015-5602.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a52e554 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,54 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; replace python call with python3
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* [PATCH] gnu: Add slurm.
@ 2016-02-13 17:18 Pjotr Prins
0 siblings, 0 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 17:18 UTC (permalink / raw)
To: guix-devel
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch: New file.
* gnu/packages/parallel.scm (parallel): Introduce license name space.
---
gnu-system.am | 1 +
gnu/packages/parallel.scm | 67 ++++++++++++++++++++--
.../slurm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
3 files changed, 106 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
diff --git a/gnu-system.am b/gnu-system.am
index fd9795e..ac4b241 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -702,6 +702,7 @@ dist_patch_DATA = \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
+ gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/sudo-CVE-2015-5602.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a52e554 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,54 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; replace python call with python3
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 17:01 ` Pjotr Prins
@ 2016-02-13 17:20 ` Andreas Enge
2016-02-13 20:13 ` Leo Famulari
0 siblings, 1 reply; 46+ messages in thread
From: Andreas Enge @ 2016-02-13 17:20 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Sat, Feb 13, 2016 at 06:01:19PM +0100, Pjotr Prins wrote:
> cat 0001-gnu-Add-slurm.patch |patch -p1 # same patch, different name
> patching file gnu/packages/parallel.scm
> patching file gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
> Works fine. Maybe because I used an attachment previously?
No, that should not be a problem (after I removed the first line ">From..."
of the attachment). I still get:
patching file gnu/packages/parallel.scm
Hunk #1 FAILED at 2.
1 out of 3 hunks FAILED -- saving rejects to file gnu/packages/parallel.scm.rej
patching file gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
The thing that does not work is adding your copyright line. Very strange;
we seem to have the same white-space in the file.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* [PATCH] gnu: Add slurm.
@ 2016-02-13 17:21 Pjotr Prins
0 siblings, 0 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 17:21 UTC (permalink / raw)
To: guix-devel
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch: New file.
* gnu/packages/parallel.scm (parallel): Introduce license name space.
---
gnu-system.am | 1 +
gnu/packages/parallel.scm | 67 ++++++++++++++++++++--
.../slurm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
3 files changed, 106 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
diff --git a/gnu-system.am b/gnu-system.am
index fd9795e..ac4b241 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -702,6 +702,7 @@ dist_patch_DATA = \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
+ gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/sudo-CVE-2015-5602.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a52e554 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,54 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; replace python call with python3
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* [PATCH] gnu: Add slurm.
@ 2016-02-13 17:21 Pjotr Prins
0 siblings, 0 replies; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 17:21 UTC (permalink / raw)
To: guix-devel
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch: New file.
* gnu/packages/parallel.scm (parallel): Introduce license name space.
---
gnu-system.am | 1 +
gnu/packages/parallel.scm | 67 ++++++++++++++++++++--
.../slurm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
3 files changed, 106 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
diff --git a/gnu-system.am b/gnu-system.am
index fd9795e..ac4b241 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -702,6 +702,7 @@ dist_patch_DATA = \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
+ gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/sudo-CVE-2015-5602.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a52e554 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,54 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; replace python call with python3
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* [PATCH] gnu: Add slurm.
@ 2016-02-13 17:22 Pjotr Prins
2016-02-13 17:30 ` Andreas Enge
0 siblings, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 17:22 UTC (permalink / raw)
To: guix-devel
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch: New file.
* gnu/packages/parallel.scm (parallel): Introduce license name space.
---
gnu-system.am | 1 +
gnu/packages/parallel.scm | 67 ++++++++++++++++++++--
.../slurm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
3 files changed, 106 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
diff --git a/gnu-system.am b/gnu-system.am
index fd9795e..ac4b241 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -702,6 +702,7 @@ dist_patch_DATA = \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
+ gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/sudo-CVE-2015-5602.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a52e554 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,54 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; replace python call with python3
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.1.4
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 17:22 [PATCH] gnu: Add slurm Pjotr Prins
@ 2016-02-13 17:30 ` Andreas Enge
0 siblings, 0 replies; 46+ messages in thread
From: Andreas Enge @ 2016-02-13 17:30 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
I still have the same problem with your patch. If you do not mind, could
you just send me your final parallel.scm and
slurm-wlm-configure-remove-nonfree-contribs.patch ?
When I will have a bit of time I will then go over it again.
(I still think we should use python-wrapper, for instance.)
Thanks!
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 17:20 ` Andreas Enge
@ 2016-02-13 20:13 ` Leo Famulari
2016-02-13 20:34 ` Andreas Enge
2016-02-13 20:38 ` Leo Famulari
0 siblings, 2 replies; 46+ messages in thread
From: Leo Famulari @ 2016-02-13 20:13 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Sat, Feb 13, 2016 at 06:20:01PM +0100, Andreas Enge wrote:
> On Sat, Feb 13, 2016 at 06:01:19PM +0100, Pjotr Prins wrote:
> > cat 0001-gnu-Add-slurm.patch |patch -p1 # same patch, different name
> > patching file gnu/packages/parallel.scm
> > patching file gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
> > Works fine. Maybe because I used an attachment previously?
>
> No, that should not be a problem (after I removed the first line ">From..."
> of the attachment). I still get:
>
> patching file gnu/packages/parallel.scm
> Hunk #1 FAILED at 2.
> 1 out of 3 hunks FAILED -- saving rejects to file gnu/packages/parallel.scm.rej
> patching file gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
>
> The thing that does not work is adding your copyright line. Very strange;
> we seem to have the same white-space in the file.
I had the same issue with some of Jan's patches yesterday.
I used diffoscope to compare the non-working patch and a "should-be"
identical patch that I generated locally. The only differences were in
the patch headers and the encoding of the file (UTF-8 vs ISO-8859-1).
I couldn't figure out why these differences would matter and moved on,
but it's disturbing that others are hitting the same issue!
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 20:13 ` Leo Famulari
@ 2016-02-13 20:34 ` Andreas Enge
2016-02-13 20:40 ` Leo Famulari
2016-02-13 20:38 ` Leo Famulari
1 sibling, 1 reply; 46+ messages in thread
From: Andreas Enge @ 2016-02-13 20:34 UTC (permalink / raw)
To: Leo Famulari; +Cc: guix-devel
On Sat, Feb 13, 2016 at 03:13:37PM -0500, Leo Famulari wrote:
> I used diffoscope to compare the non-working patch and a "should-be"
> identical patch that I generated locally. The only differences were in
> the patch headers and the encoding of the file (UTF-8 vs ISO-8859-1).
I think that explains it: The non-working part of the patch was the copyright
line, which contains the copyright symbol!
So let us all move to utf-8!
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 20:13 ` Leo Famulari
2016-02-13 20:34 ` Andreas Enge
@ 2016-02-13 20:38 ` Leo Famulari
2016-02-13 21:32 ` Pjotr Prins
1 sibling, 1 reply; 46+ messages in thread
From: Leo Famulari @ 2016-02-13 20:38 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 2383 bytes --]
On Sat, Feb 13, 2016 at 03:13:37PM -0500, Leo Famulari wrote:
> On Sat, Feb 13, 2016 at 06:20:01PM +0100, Andreas Enge wrote:
> > On Sat, Feb 13, 2016 at 06:01:19PM +0100, Pjotr Prins wrote:
> > > cat 0001-gnu-Add-slurm.patch |patch -p1 # same patch, different name
> > > patching file gnu/packages/parallel.scm
> > > patching file gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
> > > Works fine. Maybe because I used an attachment previously?
> >
> > No, that should not be a problem (after I removed the first line ">From..."
> > of the attachment). I still get:
> >
> > patching file gnu/packages/parallel.scm
> > Hunk #1 FAILED at 2.
> > 1 out of 3 hunks FAILED -- saving rejects to file gnu/packages/parallel.scm.rej
> > patching file gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
> >
> > The thing that does not work is adding your copyright line. Very strange;
> > we seem to have the same white-space in the file.
>
> I had the same issue with some of Jan's patches yesterday.
>
> I used diffoscope to compare the non-working patch and a "should-be"
> identical patch that I generated locally. The only differences were in
> the patch headers and the encoding of the file (UTF-8 vs ISO-8859-1).
>
> I couldn't figure out why these differences would matter and moved on,
> but it's disturbing that others are hitting the same issue!
I investigated some more. I used the patch that is upthread of what I am
replying to.
I applied the patch with `patch -p1 < ...`. I could have used `git am`
but I'm not doing it again ;)
Everything applied except for Pjotr's attribution in parallel.scm, so I
manually copied that into the file.
Then, I added all the changes to the index, committed, and used `git
format-patch` to create a patch on master. I'll show you:
$ git add -u
$ git add gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
$ git commit -m "patch-test"
$ git format-patch -n --thread=shallow master
$ git reset --hard HEAD^ # roll back one commit
$ git am 0001-patch-test.patch
$ echo $?
0
$ diffoscope --html report.html 0001-patch-test.patch 0001-gnu-Add-slurm.patch
I've attached report.html and 0001-patch-test.patch for your inspection.
I wonder if the version of git is a factor? 2.1.4 vs 2.6.3. Jan was also
using 2.1.4, and his patches also failed *only* on the attribution line.
[-- Attachment #2: report.html --]
[-- Type: text/html, Size: 30348 bytes --]
[-- Attachment #3: 0001-patch-test.patch --]
[-- Type: text/x-diff, Size: 5666 bytes --]
From 788a22631663d1e4060ebe87b4272c590f138a25 Mon Sep 17 00:00:00 2001
Message-Id: <788a22631663d1e4060ebe87b4272c590f138a25.1455395436.git.leo@famulari.name>
From: Leo Famulari <leo@famulari.name>
Date: Sat, 13 Feb 2016 15:30:30 -0500
Subject: [PATCH 1/1] patch test
---
gnu/packages/parallel.scm | 67 ++++++++++++++++++++--
...urm-wlm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++
2 files changed, 105 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..a52e554 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,54 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list (search-patch "slurm-wlm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf")))) ; configure.ac was patched
+ (add-before
+ 'autogen 'rewrite-usr-bin
+ (lambda* (#:key inputs #:allow-other-keys)
+ ;; replace python call with python3
+ (substitute* "./doc/html/shtml2html.py"
+ (("#!/usr/bin/env python")
+ (string-append "#!" (which "python3"))))
+ (substitute* "src/common/env.c"
+ (("/usr/bin/env") (which "env"))))))))
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-wlm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.6.3
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 20:34 ` Andreas Enge
@ 2016-02-13 20:40 ` Leo Famulari
2016-02-14 14:22 ` Andreas Enge
0 siblings, 1 reply; 46+ messages in thread
From: Leo Famulari @ 2016-02-13 20:40 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Sat, Feb 13, 2016 at 09:34:22PM +0100, Andreas Enge wrote:
> On Sat, Feb 13, 2016 at 03:13:37PM -0500, Leo Famulari wrote:
> > I used diffoscope to compare the non-working patch and a "should-be"
> > identical patch that I generated locally. The only differences were in
> > the patch headers and the encoding of the file (UTF-8 vs ISO-8859-1).
>
> I think that explains it: The non-working part of the patch was the copyright
> line, which contains the copyright symbol!
>
> So let us all move to utf-8!
If that is it, then I believe git should "do the right thing" when
generating patches. I've noticed that it progressively sets the encoding
based on the minimum required to encode the characters in the patch.
For example, if all characters can be encoded in ASCII, it uses ASCII,
otherwise I think it uses UTF-8.
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 20:38 ` Leo Famulari
@ 2016-02-13 21:32 ` Pjotr Prins
2016-02-13 21:43 ` Leo Famulari
0 siblings, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-13 21:32 UTC (permalink / raw)
To: Leo Famulari; +Cc: guix-devel
On Sat, Feb 13, 2016 at 03:38:46PM -0500, Leo Famulari wrote:
> I wonder if the version of git is a factor? 2.1.4 vs 2.6.3. Jan was also
> using 2.1.4, and his patches also failed *only* on the attribution line.
Thank you Leo and Andreas for restoring my sanity!
I'll upgrade git. I was using the newer version in my build
environment but generating the patch in an older version. Also locales
I need to settle on. I tend to have en_GB on Debian, but in a guix
shell it may act strange if I don't specify locales.
And I won't add attribution again ;). I.e., the combination of being
an old git, having wrong locales and injecting self-attribution, was
lethal.
Pj.
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 21:32 ` Pjotr Prins
@ 2016-02-13 21:43 ` Leo Famulari
0 siblings, 0 replies; 46+ messages in thread
From: Leo Famulari @ 2016-02-13 21:43 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Sat, Feb 13, 2016 at 10:32:01PM +0100, Pjotr Prins wrote:
> On Sat, Feb 13, 2016 at 03:38:46PM -0500, Leo Famulari wrote:
> > I wonder if the version of git is a factor? 2.1.4 vs 2.6.3. Jan was also
> > using 2.1.4, and his patches also failed *only* on the attribution line.
>
> Thank you Leo and Andreas for restoring my sanity!
>
> I'll upgrade git. I was using the newer version in my build
> environment but generating the patch in an older version. Also locales
> I need to settle on. I tend to have en_GB on Debian, but in a guix
> shell it may act strange if I don't specify locales.
>
> And I won't add attribution again ;). I.e., the combination of being
> an old git, having wrong locales and injecting self-attribution, was
> lethal.
Does this mean the old version of git doesn't generate patches with the
correct locale?
I wonder... where is everyone getting git 2.1.4 from? It's 2 years old
;)
>
> Pj.
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-13 20:40 ` Leo Famulari
@ 2016-02-14 14:22 ` Andreas Enge
2016-02-14 19:08 ` Leo Famulari
0 siblings, 1 reply; 46+ messages in thread
From: Andreas Enge @ 2016-02-14 14:22 UTC (permalink / raw)
To: Leo Famulari; +Cc: guix-devel
On Sat, Feb 13, 2016 at 03:40:55PM -0500, Leo Famulari wrote:
> If that is it, then I believe git should "do the right thing" when
> generating patches. I've noticed that it progressively sets the encoding
> based on the minimum required to encode the characters in the patch.
The last line of your diffoscope shows that Pjotr's patch was encoded
in iso-8559-1, while all the scheme files in guix are in utf-8. It seems
quite clear to me that this is the reason for our problems. And apparently,
the git version plays a role in this.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-14 14:22 ` Andreas Enge
@ 2016-02-14 19:08 ` Leo Famulari
2016-02-15 12:09 ` Pjotr Prins
0 siblings, 1 reply; 46+ messages in thread
From: Leo Famulari @ 2016-02-14 19:08 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Sun, Feb 14, 2016 at 03:22:56PM +0100, Andreas Enge wrote:
> On Sat, Feb 13, 2016 at 03:40:55PM -0500, Leo Famulari wrote:
> > If that is it, then I believe git should "do the right thing" when
> > generating patches. I've noticed that it progressively sets the encoding
> > based on the minimum required to encode the characters in the patch.
>
> The last line of your diffoscope shows that Pjotr's patch was encoded
> in iso-8559-1, while all the scheme files in guix are in utf-8. It seems
> quite clear to me that this is the reason for our problems. And apparently,
> the git version plays a role in this.
I think the old version of git must play a role, or every patch with a
copyright attribution line would fail to apply.
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-14 19:08 ` Leo Famulari
@ 2016-02-15 12:09 ` Pjotr Prins
2016-02-15 21:51 ` Andreas Enge
0 siblings, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-15 12:09 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
[-- Attachment #1: Type: text/plain, Size: 371 bytes --]
On Sun, Feb 14, 2016 at 02:08:30PM -0500, Leo Famulari wrote:
> I think the old version of git must play a role, or every patch with a
> copyright attribution line would fail to apply.
New version cleaned up (using python-wrapper) and patch created
with latest git and en_US.utf8 Guix style...
Ah yes, lint is happy too. I am proud of this one. Hope you are.
Pj.
--
[-- Attachment #2: 0001-gnu-Add-slurm.patch --]
[-- Type: text/x-diff, Size: 6084 bytes --]
From 72513ea3f730323dc8977d97c9d4ddd691f6d48a Mon Sep 17 00:00:00 2001
From: Pjotr Prins <pjotr.public01@thebird.nl>
Date: Mon, 15 Feb 2016 10:14:44 +0000
Subject: [PATCH] gnu: Add slurm.
* gnu/packages/parallel.scm (slurm): New variable.
* gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch: New file.
* gnu/packages/parallel.scm (parallel): Introduce license name space.
---
gnu-system.am | 1 +
gnu/packages/parallel.scm | 60 ++++++++++++++++++++--
.../slurm-configure-remove-nonfree-contribs.patch | 43 ++++++++++++++++
3 files changed, 99 insertions(+), 5 deletions(-)
create mode 100644 gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
diff --git a/gnu-system.am b/gnu-system.am
index 91945db..7727bad 100644
--- a/gnu-system.am
+++ b/gnu-system.am
@@ -700,6 +700,7 @@ dist_patch_DATA = \
gnu/packages/patches/slim-session.patch \
gnu/packages/patches/slim-config.patch \
gnu/packages/patches/slim-sigusr1.patch \
+ gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch \
gnu/packages/patches/soprano-find-clucene.patch \
gnu/packages/patches/sudo-CVE-2015-5602.patch \
gnu/packages/patches/superlu-dist-scotchmetis.patch \
diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm
index 8f63bda..d6910de 100644
--- a/gnu/packages/parallel.scm
+++ b/gnu/packages/parallel.scm
@@ -2,6 +2,7 @@
;;; Copyright © 2013,2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -19,12 +20,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages parallel)
- #:use-module (guix packages)
- #:use-module (guix licenses)
- #:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix download)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
#:use-module (gnu packages)
- #:use-module (gnu packages perl))
+ #:use-module (gnu packages admin)
+ #:use-module (gnu packages autotools)
+ #:use-module (gnu packages linux)
+ #:use-module (gnu packages perl)
+ #:use-module (gnu packages python)
+ #:use-module (gnu packages tcl)
+ #:use-module (gnu packages tls))
(define-public parallel
(package
@@ -46,4 +53,47 @@
"GNU Parallel is a tool for executing shell jobs in parallel using one
or more computers. Jobs can consist of single commands or of scripts
and they are executed on lists of files, hosts, users or other items.")
- (license gpl3+)))
+ (license license:gpl3+)))
+
+(define-public slurm
+ (package
+ (name "slurm")
+ (version "15.08.7.1")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/SchedMD/slurm/archive/slurm-"
+ (string-join (string-split version #\.) "-") ".tar.gz"))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1rmi35l4img00dr4vic8cv8s7b6n1yx1mkq2s7kjf5hvqdh6s2ki"))
+ (patches (list
+ (search-patch "slurm-configure-remove-nonfree-contribs.patch")))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin
+ (delete-file-recursively "contribs")
+ #t))))
+ (inputs `(("openssl" ,openssl)
+ ("munge" ,munge)
+ ("perl" ,perl)
+ ("expect" ,expect)
+ ("python" ,python-wrapper)
+ ("linux-pam" , linux-pam)))
+ (native-inputs
+ `(("autoconf" ,autoconf)))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:configure-flags '("--enable-pam")
+ #:phases
+ (modify-phases %standard-phases
+ (add-before
+ 'configure 'autogen
+ (lambda _ (zero? (system* "autoconf"))))))) ; configure.ac was patched
+ (home-page "http://slurm.schedmd.com/")
+ (synopsis "Workload manager for cluster computing")
+ (description
+ "Fault-tolerant and highly scalable cluster management and job
+scheduling system for large and small clusters.")
+ (license license:gpl2+)))
diff --git a/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
new file mode 100644
index 0000000..b63d5bb
--- /dev/null
+++ b/gnu/packages/patches/slurm-configure-remove-nonfree-contribs.patch
@@ -0,0 +1,43 @@
+From 53eda9102b969a4be2882cea4befee03591a7436 Mon Sep 17 00:00:00 2001
+From: Pjotr Prins <pjotr.public01@thebird.nl>
+Date: Fri, 12 Feb 2016 12:43:33 +0100
+Subject: [PATCH] Remove contribs
+
+---
+ configure.ac | 20 --------------------
+ 1 file changed, 20 deletions(-)
+
+diff --git a/configure.ac b/configure.ac
+index fedf354..e010732 100644
+--- a/configure.ac
++++ b/configure.ac
+@@ -438,26 +438,6 @@ dnl All slurm Makefiles:
+ AC_CONFIG_FILES([Makefile
+ config.xml
+ auxdir/Makefile
+- contribs/Makefile
+- contribs/cray/Makefile
+- contribs/cray/csm/Makefile
+- contribs/lua/Makefile
+- contribs/mic/Makefile
+- contribs/pam/Makefile
+- contribs/pam_slurm_adopt/Makefile
+- contribs/perlapi/Makefile
+- contribs/perlapi/libslurm/Makefile
+- contribs/perlapi/libslurm/perl/Makefile.PL
+- contribs/perlapi/libslurmdb/Makefile
+- contribs/perlapi/libslurmdb/perl/Makefile.PL
+- contribs/torque/Makefile
+- contribs/phpext/Makefile
+- contribs/phpext/slurm_php/config.m4
+- contribs/sgather/Makefile
+- contribs/sgi/Makefile
+- contribs/sjobexit/Makefile
+- contribs/slurmdb-direct/Makefile
+- contribs/pmi2/Makefile
+ doc/Makefile
+ doc/man/Makefile
+ doc/man/man1/Makefile
+--
+2.1.4
+
--
2.6.3
^ permalink raw reply related [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-15 12:09 ` Pjotr Prins
@ 2016-02-15 21:51 ` Andreas Enge
2016-02-16 7:21 ` Pjotr Prins
0 siblings, 1 reply; 46+ messages in thread
From: Andreas Enge @ 2016-02-15 21:51 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Mon, Feb 15, 2016 at 01:09:01PM +0100, Pjotr Prins wrote:
> New version cleaned up (using python-wrapper) and patch created
> with latest git and en_US.utf8 Guix style...
Well, it turned out it was still in iso-latin-1, and patching failed again...
Anyway, I applied the modifications and expanded the description a bit.
A number of configure flags were missing - without them, the inputs
would not be found in their non-standard location. I also added a
number of further inputs that seemed important to me.
I did not add all possible inputs. In particular, mysql and gtk+ (2 or 3?)
could be added, so it is possible that not all functionality is there.
The result is pushed to master.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-15 21:51 ` Andreas Enge
@ 2016-02-16 7:21 ` Pjotr Prins
2016-02-16 9:55 ` Andreas Enge
0 siblings, 1 reply; 46+ messages in thread
From: Pjotr Prins @ 2016-02-16 7:21 UTC (permalink / raw)
To: Andreas Enge; +Cc: guix-devel
On Mon, Feb 15, 2016 at 10:51:00PM +0100, Andreas Enge wrote:
> On Mon, Feb 15, 2016 at 01:09:01PM +0100, Pjotr Prins wrote:
> > New version cleaned up (using python-wrapper) and patch created
> > with latest git and en_US.utf8 Guix style...
>
> Well, it turned out it was still in iso-latin-1, and patching failed again...
> Anyway, I applied the modifications and expanded the description a bit.
Weird. I should check that the files were utf8 before they went into
git. Maybe git is not the problem at all!
> A number of configure flags were missing - without them, the inputs
> would not be found in their non-standard location.
Hmmm. It compiled, the tools ran...
> I also added a number of further inputs that seemed important to me.
Awesome!
Use of mysql or postgresql for detailed job information is optional.
By default it is text. I think it is fine this way, maybe we'll make
mysql a working option when we roll it out on our setup.
Pj.
^ permalink raw reply [flat|nested] 46+ messages in thread
* Re: [PATCH] gnu: Add slurm.
2016-02-16 7:21 ` Pjotr Prins
@ 2016-02-16 9:55 ` Andreas Enge
0 siblings, 0 replies; 46+ messages in thread
From: Andreas Enge @ 2016-02-16 9:55 UTC (permalink / raw)
To: Pjotr Prins; +Cc: guix-devel
On Tue, Feb 16, 2016 at 08:21:07AM +0100, Pjotr Prins wrote:
> > A number of configure flags were missing - without them, the inputs
> > would not be found in their non-standard location.
> Hmmm. It compiled, the tools ran...
They probably concerned optional inputs, that maybe you did not need
in your use case; but since you had the inputs openssl and munge, it
made sense to activate them. The configure phase printed out warnings
about them missing.
> Use of mysql or postgresql for detailed job information is optional.
> By default it is text. I think it is fine this way, maybe we'll make
> mysql a working option when we roll it out on our setup.
I left a comment in the code so that people would be warned. So if you
or someone else finds a functionality that is missing, we might have
to add more inputs.
Andreas
^ permalink raw reply [flat|nested] 46+ messages in thread
end of thread, other threads:[~2016-02-16 9:55 UTC | newest]
Thread overview: 46+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-02-10 17:36 [PATCH] gnu: Add slurm-llnl Pjotr Prins
2016-02-11 4:04 ` Eric Bavier
2016-02-11 8:15 ` Pjotr Prins
2016-02-11 10:08 ` Andreas Enge
2016-02-11 11:11 ` Pjotr Prins
2016-02-11 14:21 ` Andreas Enge
2016-02-11 15:00 ` Pjotr Prins
2016-02-12 12:30 ` Pjotr Prins
2016-02-11 15:19 ` Eric Bavier
2016-02-12 12:20 ` Pjotr Prins
2016-02-12 12:30 ` Andreas Enge
2016-02-12 12:31 ` Pjotr Prins
2016-02-12 12:57 ` [PATCH] gnu: Add slurm-wlm Pjotr Prins
2016-02-12 17:51 ` Andreas Enge
2016-02-13 8:59 ` [PATCH] gnu: Add slurm Pjotr Prins
2016-02-13 10:28 ` Andreas Enge
2016-02-13 16:42 ` Pjotr Prins
2016-02-13 17:00 ` Andreas Enge
2016-02-13 17:01 ` Pjotr Prins
2016-02-13 17:20 ` Andreas Enge
2016-02-13 20:13 ` Leo Famulari
2016-02-13 20:34 ` Andreas Enge
2016-02-13 20:40 ` Leo Famulari
2016-02-14 14:22 ` Andreas Enge
2016-02-14 19:08 ` Leo Famulari
2016-02-15 12:09 ` Pjotr Prins
2016-02-15 21:51 ` Andreas Enge
2016-02-16 7:21 ` Pjotr Prins
2016-02-16 9:55 ` Andreas Enge
2016-02-13 20:38 ` Leo Famulari
2016-02-13 21:32 ` Pjotr Prins
2016-02-13 21:43 ` Leo Famulari
2016-02-13 17:13 ` Pjotr Prins
2016-02-11 4:33 ` [PATCH] gnu: Add slurm-llnl Eric Bavier
2016-02-11 8:17 ` Pjotr Prins
2016-02-11 8:28 ` Ricardo Wurmus
2016-02-11 18:36 ` Efraim Flashner
-- strict thread matches above, loose matches on Subject: below --
2016-02-13 17:22 [PATCH] gnu: Add slurm Pjotr Prins
2016-02-13 17:30 ` Andreas Enge
2016-02-13 17:21 Pjotr Prins
2016-02-13 17:21 Pjotr Prins
2016-02-13 17:18 Pjotr Prins
2016-02-13 17:14 Pjotr Prins
2015-12-28 22:00 swedebugia
2015-12-28 23:13 ` Eric Bavier
2015-12-29 4:31 ` 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).