guix-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[PATCH] openssh: install ssh-copy-id.


From: Ricardo Wurmus
Subject: [PATCH] openssh: install ssh-copy-id.
Date: Fri, 27 Nov 2015 11:38:15 +0100

This fixes bug #22024.

>From 65c9863898e1ddc2a1443b557003f0cbc25442d8 Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <address@hidden>
Date: Fri, 27 Nov 2015 10:57:03 +0100
Subject: [PATCH 1/2] gnu: openssh: Use modify-phases syntax.

* gnu/packages/ssh.scm (openssh)[arguments]: Use modify-phases syntax.
---
 gnu/packages/ssh.scm | 39 +++++++++++++++++++--------------------
 1 file changed, 19 insertions(+), 20 deletions(-)

diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 2f4f8a2..26729ea 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -129,26 +129,25 @@ a server that supports the SSH-2 protocol.")
    (arguments
     `(#:test-target "tests"
       #:phases
-       (alist-cons-after
-        'configure 'reset-/var/empty
-        (lambda* (#:key outputs #:allow-other-keys)
-          (let ((out (assoc-ref outputs "out")))
-            (substitute* "Makefile"
-              (("PRIVSEP_PATH=/var/empty")
-               (string-append "PRIVSEP_PATH=" out "/var/empty")))))
-       (alist-cons-before
-        'check 'patch-tests
-        (lambda _
-          ;; remove 't-exec' regress target which requires user 'sshd'
-          (substitute* "regress/Makefile"
-            (("^(REGRESS_TARGETS=.*) t-exec(.*)" all pre post)
-             (string-append pre post))))
-       (alist-replace
-        'install
-        (lambda* (#:key (make-flags '()) #:allow-other-keys)
-          ;; install without host keys and system configuration files
-          (zero? (apply system* "make" "install-nosysconf" make-flags)))
-       %standard-phases)))))
+      (modify-phases %standard-phases
+        (add-after 'configure 'reset-/var/empty
+         (lambda* (#:key outputs #:allow-other-keys)
+           (let ((out (assoc-ref outputs "out")))
+             (substitute* "Makefile"
+               (("PRIVSEP_PATH=/var/empty")
+                (string-append "PRIVSEP_PATH=" out "/var/empty")))
+             #t)))
+        (add-before 'check 'patch-tests
+         (lambda _
+           ;; remove 't-exec' regress target which requires user 'sshd'
+           (substitute* "regress/Makefile"
+             (("^(REGRESS_TARGETS=.*) t-exec(.*)" all pre post)
+              (string-append pre post)))
+           #t))
+        (replace 'install
+         (lambda* (#:key (make-flags '()) #:allow-other-keys)
+           ;; install without host keys and system configuration files
+           (zero? (apply system* "make" "install-nosysconf" make-flags)))))))
    (synopsis "Client and server for the secure shell (ssh) protocol")
    (description
     "The SSH2 protocol implemented in OpenSSH is standardised by the
-- 
2.1.0

>From baf260ebda0a70ec3c7d6f35e1c1bb64a37f0aac Mon Sep 17 00:00:00 2001
From: Ricardo Wurmus <address@hidden>
Date: Fri, 27 Nov 2015 11:35:50 +0100
Subject: [PATCH 2/2] gnu: openssh: Install ssh-copy-id.

* gnu/packages/ssh.scm (openssh)[arguments]: Install "ssh-copy-id" and
  documentation.
---
 gnu/packages/ssh.scm | 14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm
index 26729ea..5c222a2 100644
--- a/gnu/packages/ssh.scm
+++ b/gnu/packages/ssh.scm
@@ -145,9 +145,19 @@ a server that supports the SSH-2 protocol.")
               (string-append pre post)))
            #t))
         (replace 'install
-         (lambda* (#:key (make-flags '()) #:allow-other-keys)
+         (lambda* (#:key outputs (make-flags '()) #:allow-other-keys)
            ;; install without host keys and system configuration files
-           (zero? (apply system* "make" "install-nosysconf" make-flags)))))))
+           (and (zero? (apply system* "make" "install-nosysconf" make-flags))
+                (begin
+                  (install-file "contrib/ssh-copy-id"
+                                (string-append (assoc-ref outputs "out")
+                                               "/bin/"))
+                  (chmod (string-append (assoc-ref outputs "out")
+                                        "/bin/ssh-copy-id") #o555)
+                  (install-file "contrib/ssh-copy-id.1"
+                                (string-append (assoc-ref outputs "out")
+                                               "/share/man/man1/"))
+                  #t)))))))
    (synopsis "Client and server for the secure shell (ssh) protocol")
    (description
     "The SSH2 protocol implemented in OpenSSH is standardised by the
-- 
2.1.0


reply via email to

[Prev in Thread] Current Thread [Next in Thread]