aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaku Laesvuori via Guix-patches via <guix-patches@gnu.org>2023-05-30 12:22:54 +0300
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2023-07-01 11:13:47 +0200
commit3d55a6b5db7e87e3fb5e17afbe2dac2e66d106e4 (patch)
treed2fb11e80db77f793fb5774ba61304dc4adc029f
parentd8c89606fcf743efa3fe6e752d886f5a36b6a4a8 (diff)
downloadguix-3d55a6b5db7e87e3fb5e17afbe2dac2e66d106e4.tar.gz
guix-3d55a6b5db7e87e3fb5e17afbe2dac2e66d106e4.zip
gnu: Add yle-dl.
* gnu/packages/video.scm (yle-dl): New variable. Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
-rw-r--r--gnu/packages/video.scm48
1 files changed, 48 insertions, 0 deletions
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index aa46da0c5e..64428976eb 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -65,6 +65,7 @@
;;; Copyright © 2022 Andy Tai <atai@atai.org>
;;; Copyright © 2023 Ott Joon <oj@vern.cc>
;;; Copyright © 2023 Dominik Delgado Steuter <dds@disroot.org>
+;;; Copyright © 2023 Saku Laesvuori <saku@laesvuori.fi>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -179,6 +180,7 @@
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
@@ -2468,6 +2470,52 @@ To load this plugin, specify the following option when starting mpv:
to download videos from Austria's national television broadcaster.")
(license license:gpl2+))))
+(define-public yle-dl
+ (package
+ (name "yle-dl")
+ (version "20230611")
+ (source (origin
+ ;; PyPI release doesn't include tests.
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/aajanki/yle-dl")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "04smlq6cswfp08sjif0cxnall0xbxl3bgly849nm5kg1m33ybmqk"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'wrap 'wrap-path
+ (lambda _
+ (wrap-program (string-append #$output "/bin/yle-dl")
+ `("PATH" = (,(string-append #$(this-package-input "ffmpeg")
+ "/bin")
+ ,(string-append #$(this-package-input "wget")
+ "/bin"))))))
+ ;; Integration tests require internet access.
+ (add-before 'check 'remove-integration-tests
+ (lambda _
+ (delete-file-recursively "tests/integration"))))))
+ (native-inputs
+ (list python-flit-core python-pytest python-pytest-runner))
+ (inputs (list bash-minimal ffmpeg-5 wget))
+ (propagated-inputs
+ (list python-attrs
+ python-configargparse
+ python-lxml
+ python-requests
+ python-xattr))
+ (home-page "https://aajanki.github.io/yle-dl/")
+ (synopsis "Download videos from Yle servers")
+ (description
+ "Yle-dl is a command line program for downloading media files from the
+video streaming services of the Finnish national broadcasting company Yle.")
+ (license license:gpl3+)))
+
(define-public youtube-dl
(package
(name "youtube-dl")