aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/packages/video.scm20
1 files changed, 17 insertions, 3 deletions
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 40606d862c..42abe30fba 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1257,10 +1257,24 @@ other site that youtube-dl supports.")
(base32
"0cdbh5w0chw3dlrwizm91l6sgkkzy7p6h0072dai4xbw5zgld31k"))))
(build-system python-build-system)
- (arguments
- '(#:tests? #f)) ; no tests
(inputs
- `(("ffmpeg" ,ffmpeg)))
+ `(("ffmpeg" ,ffmpeg))) ; for multi-part and >=1080p videos
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'qualify-input-references
+ ;; Explicitly invoke the input ffmpeg, instead of whichever one
+ ;; happens to be in the user's $PATH at run time.
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((ffmpeg (string-append (assoc-ref inputs "ffmpeg")
+ "/bin/ffmpeg")))
+ (substitute* "src/you_get/processor/ffmpeg.py"
+ ;; Don't blindly replace all occurrences of ‘'ffmpeg'’: the
+ ;; same string is also used when sniffing ffmpeg's output.
+ (("(FFMPEG == |\\()'ffmpeg'" _ prefix)
+ (string-append prefix "'" ffmpeg "'")))
+ #t))))
+ #:tests? #f)) ; XXX some tests need Internet access
(synopsis "Download videos, audio, or images from Web sites")
(description
"You-Get is a command-line utility to download media contents (videos,