GNU bug report logs - #50793
[PATCH 0/2] cloudflare-cli and dependency JSON.sh

Previous Next

Package: guix-patches;

Reported by: Stephen Paul Weber <singpolyma <at> singpolyma.net>

Date: Sat, 25 Sep 2021 01:39:02 UTC

Severity: normal

Tags: patch

Done: Ludovic Courtès <ludo <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stephen Paul Weber <singpolyma <at> singpolyma.net>
To: 50793 <at> debbugs.gnu.org
Cc: Stephen Paul Weber <singpolyma <at> singpolyma.net>
Subject: [bug#50793] [PATCH 2/2] gnu: Add cloudflare-cli
Date: Fri, 24 Sep 2021 20:39:34 -0500
* gnu/packages/dns.scm (cloudflare-cli): New variable.
---
 gnu/packages/dns.scm | 52 ++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm
index 45e250138e..9e68d76a93 100644
--- a/gnu/packages/dns.scm
+++ b/gnu/packages/dns.scm
@@ -42,6 +42,7 @@
   #:use-module (gnu packages bash)
   #:use-module (gnu packages certs)
   #:use-module (gnu packages check)
+  #:use-module (gnu packages curl)
   #:use-module (gnu packages databases)
   #:use-module (gnu packages documentation)
   #:use-module (gnu packages compression)
@@ -69,6 +70,7 @@
   #:use-module (gnu packages python)
   #:use-module (gnu packages python-xyz)
   #:use-module (gnu packages ragel)
+  #:use-module (gnu packages serialization)
   #:use-module (gnu packages shells)
   #:use-module (gnu packages sphinx)
   #:use-module (gnu packages swig)
@@ -82,11 +84,61 @@
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix utils)
+  #:use-module (guix build-system copy)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system meson)
   #:use-module (guix build-system trivial))
 
+(define-public cloudflare-cli
+  (package
+    (name "cloudflare-cli")
+    (version "2d986d3")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/earlchew/cloudflare-cli")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "0f86g6n86kwykl3jnhqjrdfy8ybkp03ghr3dlr70q2552qw4axw2"))))
+    (build-system copy-build-system)
+    (arguments
+     `(#:install-plan '(("cloudflare-cli" "bin/") ("cloudflare-cli.sh" "bin/"))
+       #:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'find-jsonsh
+           (lambda* (#:key inputs #:allow-other-keys)
+             (substitute* "cloudflare-cli.sh"
+               (("\\$\\{0%/\\*\\}/jsonsh")
+                (string-append (assoc-ref inputs "JSON.sh") "/bin/JSON.sh")))
+             #t))
+         (add-after 'install 'wrap-program
+           (lambda* (#:key inputs outputs #:allow-other-keys)
+             (wrap-program (string-append (assoc-ref outputs "out") "/bin/cloudflare-cli")
+               `("PATH" ":" prefix
+                 (,(string-join
+                    (map (lambda (in) (string-append (assoc-ref inputs in) "/bin"))
+                         '("grep" "curl" "coreutils"))
+                    ":")))))))))
+    (inputs
+     `(("bash-minimal" ,bash-minimal)
+       ("coreutils" ,coreutils)
+       ("curl" ,curl)
+       ("grep" ,grep)
+       ("JSON.sh" ,JSON.sh)))
+    (synopsis
+      "CLI to edit Cloudflare DNS records")
+    (description
+      "This command line tool to update Cloudfare DNS records is useful in the
+following scenarios:
+* Keeping dynamic DNS records up to date
+* Updating DNS records as part of the ACME DNS-01 protocol")
+    (home-page "https://github.com/earlchew/cloudflare-cli")
+    (license license:expat)))
+
 (define-public ldns
   (package
     (name "ldns")
-- 
2.20.1




This bug report was last modified 3 years and 222 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.