[PATCH] Add cloud-foundry-cli.

OpenSubmitted by Christopher Baines.
Details
2 participants
  • Christopher Baines
  • Marius Bakke
Owner
unassigned
Severity
normal
C
C
Christopher Baines wrote on 24 Mar 2018 16:05
(address . guix-patches@gnu.org)
87vadl344t.fsf@cbaines.net
Tags: moreinfo

I had a need to use the cloud-foundry-cli recently, so I made a Guix
package. Unfortunately even though this builds, it needs a bit more work
to strip out the third party source code, and package this separately.

Christopher Baines (1):
gnu: Add cloud-foundry-cli.

gnu/packages/cloud-foundry.scm | 61 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
create mode 100644 gnu/packages/cloud-foundry.scm
-----BEGIN PGP SIGNATURE-----

iQKTBAEBCgB9FiEEPonu50WOcg2XVOCyXiijOwuE9XcFAlq2aVJfFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcACgkQXiijOwuE
9Xc2KA//eGx9NnaJEko8FcZ34PoLrSXqVo6CfxyFX4JAZHaXkyeiCn/tFdU/FIOS
cemJrWY+nwz6olO8lZFRHE4ZHbs7uwmRYH3WWGUSjDm0t2HQzLiPPIqyC0oZo1yB
/4Jb4SDXK17MoVFtFi8IkumcxuGnDmbhqawQldw9n5uiKLlI+eHwxFFmCaL4JDLt
TqzWC8Ke5OJ8rhEhr3KELfAm7Q/CfyCatyA2R5o6sVemaEYpDP0SjmlHuo1lD7hT
ofsSKm4ENKPjh0VlRtx6tpXWKo3Ru70e/CHnsaXtfovtxFr6bE3M5qZIOtX96lyl
sX+EaLPIlv0tBrOkJJBzHhvjLpiFc9aVZ75mFNwBM4z89iQNi3AMO9APRWWloEYW
4Y3BO5pr90mcPeIBXIR/K7U0KKVporxK6h1Ttc7ueJzmvG9IjUF5/i7pNlAUpAPg
8iMZyHSu3RXa8XFcC0e1pipmmnx3SbcwIAKeTEnDlkh1s8sF2xIxd77kYzr2rAHM
AAoKc1bFYcur5wpUz+MozkDIt/OVd6GEYsixuBx7OhVS2MJlEa4iAd2CJhREMyyt
F7W2NXAcdvMKnXMmIvaWoHt2HJmJJDF0LvCFoIApLShqmzR6ceP+y9tQaRoIkDRu
F2/fHfzrahNJ9nkmLWWCjuwPwwtT6lekxhx7qDvnAOvVvUjR0Bo=
=fRVj
-----END PGP SIGNATURE-----

C
C
Christopher Baines wrote on 24 Mar 2018 17:04
[PATCH] gnu: Add cloud-foundry-cli.
(address . 30924@debbugs.gnu.org)
20180324160404.1759-1-mail@cbaines.net
* gnu/packages/cloud-foundry.scm: New file.
---
gnu/packages/cloud-foundry.scm | 61 ++++++++++++++++++++++++++++++++++++++++++
1 file changed, 61 insertions(+)
create mode 100644 gnu/packages/cloud-foundry.scm

Toggle diff (69 lines)
diff --git a/gnu/packages/cloud-foundry.scm b/gnu/packages/cloud-foundry.scm
new file mode 100644
index 000000000..b1327a6dc
--- /dev/null
+++ b/gnu/packages/cloud-foundry.scm
@@ -0,0 +1,61 @@
+;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
+;;;
+;;; This file is part of GNU Guix.
+;;;
+;;; GNU Guix is free software; you can redistribute it and/or modify it
+;;; under the terms of the GNU General Public License as published by
+;;; the Free Software Foundation; either version 3 of the License, or (at
+;;; your option) any later version.
+;;;
+;;; GNU Guix is distributed in the hope that it will be useful, but
+;;; WITHOUT ANY WARRANTY; without even the implied warranty of
+;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+;;; GNU General Public License for more details.
+;;;
+;;; You should have received a copy of the GNU General Public License
+;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.
+
+(define-module (gnu packages cloud-foundry)
+  #:use-module (guix build-system go)
+  #:use-module (guix packages)
+  #:use-module (guix download)
+  #:use-module (guix git-download)
+  #:use-module (guix licenses))
+
+(define-public cloud-foundry-cli
+  (package
+    (name "cloud-foundry-cli")
+    (version "6.34.1")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/cloudfoundry/cli.git")
+                    (commit (string-append "v" version))))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32 "1kq6d0sysi4r7wz9zjgbyj7m5a4lkybgj8a91q1vxs7r44yns8y6"))))
+    (build-system go-build-system)
+    (arguments
+     '(#:import-path "code.cloudfoundry.org/cli"
+       #:phases
+       (modify-phases %standard-phases
+         ;; This should be redundant once the vendor directory is removed from
+         ;; this package
+         (add-before 'reset-gzip-timestamps 'remove-readonly-gzip-files
+           (lambda* (#:key outputs #:allow-other-keys)
+             (for-each delete-file
+                       (find-files
+                        (assoc-ref outputs "out")
+                        ".*\\.gz"))))
+         (add-after 'install 'rename-binary
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((out (assoc-ref outputs "out")))
+               (rename-file (string-append out "/bin/cli")
+                            (string-append out "/bin/cf"))))))))
+    (synopsis "Client for the Cloud Foundry application platform")
+    (description
+     "This package contains the official command line client for Cloud Foundry
+application platform.")
+    (home-page "https://github.com/cloudfoundry/cli")
+    (license asl2.0)))
-- 
2.16.2
M
M
Marius Bakke wrote on 26 Mar 2018 19:55
87zi2uiuvp.fsf@fastmail.com
Christopher Baines <mail@cbaines.net> writes:

Toggle quote (2 lines)
> * gnu/packages/cloud-foundry.scm: New file.

[...]

Toggle quote (14 lines)
> + (build-system go-build-system)
> + (arguments
> + '(#:import-path "code.cloudfoundry.org/cli"
> + #:phases
> + (modify-phases %standard-phases
> + ;; This should be redundant once the vendor directory is removed from
> + ;; this package
> + (add-before 'reset-gzip-timestamps 'remove-readonly-gzip-files
> + (lambda* (#:key outputs #:allow-other-keys)
> + (for-each delete-file
> + (find-files
> + (assoc-ref outputs "out")
> + ".*\\.gz"))))

'for-each' has an unspecified return value, so please add #t here.

Toggle quote (6 lines)
> + (add-after 'install 'rename-binary
> + (lambda* (#:key outputs #:allow-other-keys)
> + (let ((out (assoc-ref outputs "out")))
> + (rename-file (string-append out "/bin/cli")
> + (string-append out "/bin/cf"))))))))

Ditto for 'rename-file'.
-----BEGIN PGP SIGNATURE-----

iQEzBAEBCgAdFiEEu7At3yzq9qgNHeZDoqBt8qM6VPoFAlq5NCoACgkQoqBt8qM6
VPrXSQgAkSe4lJhYrGFfbsqTUWkP3D2S0gLcOrmWavGw5VK+JM+p0IuxBN0Acjps
vCSDYhHvUSWM1f+0iWyPNHDWK3JQRTzdPIQdmAQBtioK7dWSEpKFjPgQehq+ZG45
wx6OlGYYbq1IyyBYn04j7YibjdtjTQLXCkxITAo7i6Fl8FT8AyrkbzjTTGs2OuUu
/GajaVP5Sl+5Y9GtISLO3Wn6DsARRyTYOsH8c/ci+xBZCnXDrQI4VrlunBI3h9xW
FtCi21Daw31a14b0V9j9/1ePCZ8F+petRtiTEApS0pE7LVZolyTUr4kYqDGqf60O
E5pLDDxFweB25RardeUO5jP90TCh1Q==
=aqbH
-----END PGP SIGNATURE-----

?