summary refs log tree commit diff
diff options
context:
space:
mode:
authorPierre Neidhardt <mail@ambrevar.xyz>2020-10-20 09:32:26 +0200
committerPierre Neidhardt <mail@ambrevar.xyz>2020-10-20 09:32:39 +0200
commitd096fa939dbe74884b08a7b0669951d020989cb2 (patch)
treeda821bef71317ccfa176f340f198ec5c63bc0f93
parent922a50993e4a33ad3758e2eae6176c3d528f26d3 (diff)
downloadguix-d096fa939dbe74884b08a7b0669951d020989cb2.tar.gz
gnu: Add emacs-ytdl.
* gnu/packages/emacs-xyz.scm (emacs-ytdl): New variable.
-rw-r--r--gnu/packages/emacs-xyz.scm42
1 files changed, 42 insertions, 0 deletions
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index aab3f26e8b..ddb2ccba0d 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -18776,6 +18776,48 @@ News homepage.")
 can be queued at any time.")
       (license license:unlicense))))
 
+(define-public emacs-ytdl
+  (package
+    (name "emacs-ytdl")
+    (version "1.3.5")
+    (source
+     (origin
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://gitlab.com/tuedachu/ytdl")
+             (commit version)))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32
+         "1xv93ny942gha1ipic5r6z4icjsb7src7ssdck9983kks3zacjk7"))))
+    (build-system emacs-build-system)
+    (inputs
+     `(("youtube-dl" ,youtube-dl)))
+    (propagated-inputs
+     `(("async" ,emacs-async)
+       ("transient" ,emacs-transient)))
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'unpack 'configure
+           (lambda* (#:key inputs #:allow-other-keys)
+             (let ((youtube-dl (assoc-ref inputs "youtube-dl")))
+               ;; .el is read-only in git.
+               (chmod "ytdl.el" #o644)
+               ;; Specify the absolute file names of the various
+               ;; programs so that everything works out-of-the-box.
+               (emacs-substitute-variables
+                   "ytdl.el"
+                 ("ytdl-command"
+                  (string-append youtube-dl "/bin/youtube-dl")))))))))
+    (home-page "https://gitlab.com/tuedachu/ytdl")
+    (synopsis "Emacs interface for youtube-dl")
+    (description "This package manages a video download queue for
+@command{youtube-dl}, which serves as the back end.  New videos can be queued
+at any time.  All youtube-dl backends are supported.  It's possible to create
+download profiles depending on the downloaded URL.")
+    (license license:gpl3)))
+
 (define-public emacs-org-web-tools
   (package
     (name "emacs-org-web-tools")