diff mbox series

[bug#63117] gnu: yt-dlp: Change input.

Message ID 20230427143200.13000-1-d@delgado.nrw
State New
Headers show
Series [bug#63117] gnu: yt-dlp: Change input. | expand

Commit Message

Dominik Delgado Steuter April 27, 2023, 2:32 p.m. UTC
yt-dlp complained when the "--add-metadata" flag was used.
youtube-dl does not need ffmpeg as a propagated-input, though.

* gnu/packages/video.scm (yt-dlp)[inputs]: Remove ffmpeg.
[propagated-inputs]: Add ffmpeg.
---
 gnu/packages/video.scm | 3 +++
 1 file changed, 3 insertions(+)


base-commit: fa685c87eaa9888a4278f39bb2b815673589dced

Comments

Jack Hill April 29, 2023, 4:36 a.m. UTC | #1
On Thu, 27 Apr 2023, Dominik Delgado Steuter via Guix-patches via wrote:

> yt-dlp complained when the "--add-metadata" flag was used.
> youtube-dl does not need ffmpeg as a propagated-input, though.

Dominik,

Thanks for working on improving our yt-dlp package. Can you explain a 
little more about why yt-dlp needs ffmpeg to be propagated? I haven't 
looked too closely, but I suspect yt-dlp just want to be able to call 
ffmpeg at runtime. If that's true, then I think it would be better to use 
substitute* in a phase so that yt-dlp can use the full path to ffmpeg, and 
not clutter folks' profiles.

If I'm correct, can you provide an updated patch that does that? I'm happy 
to provide more guidance if you need it.

If I'm wrong and ffmpeg needs to be propagated for some other reason, can 
you add a comment in the code explaining the need?

Best,
Jack
Dominik Delgado Steuter May 1, 2023, 10:39 p.m. UTC | #2
Hi Jack,

thanks for reviewing my patch. You are probably right that yt-dlp only 
needs the path and not necessarily the propagated-input.

I will try to figure out how exactly to do that and then send the 
updated patch.

Regards,
Dominik

Am 29.04.23 um 06:36 schrieb Jack Hill:
> On Thu, 27 Apr 2023, Dominik Delgado Steuter via Guix-patches via wrote:
> 
>> yt-dlp complained when the "--add-metadata" flag was used.
>> youtube-dl does not need ffmpeg as a propagated-input, though.
> 
> Dominik,
> 
> Thanks for working on improving our yt-dlp package. Can you explain a 
> little more about why yt-dlp needs ffmpeg to be propagated? I haven't 
> looked too closely, but I suspect yt-dlp just want to be able to call 
> ffmpeg at runtime. If that's true, then I think it would be better to 
> use substitute* in a phase so that yt-dlp can use the full path to 
> ffmpeg, and not clutter folks' profiles.
> 
> If I'm correct, can you provide an updated patch that does that? I'm 
> happy to provide more guidance if you need it.
> 
> If I'm wrong and ffmpeg needs to be propagated for some other reason, 
> can you add a comment in the code explaining the need?
> 
> Best,
> Jack
diff mbox series

Patch

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index 838dfe7..df6bbc5 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -2598,6 +2598,7 @@  (define-public yt-dlp
                 (when tests?
                   (invoke "pytest" "-k" "not download"))))))))
     (inputs (modify-inputs (package-inputs youtube-dl)
+              (delete ffmpeg) ;yt-dlp needs it as propagated-input
               (append python-brotli
                       python-certifi
                       python-mutagen
@@ -2611,6 +2612,8 @@  (define-public yt-dlp
          (list pandoc)
          '())
        (list python-pytest zip)))
+    (propagated-inputs
+     (list ffmpeg))
     (description
      "yt-dlp is a small command-line program to download videos from
 YouTube.com and many more sites.  It is a fork of youtube-dl with a