[bug#34000] gnu: Separate youtube-viewer-cli from youtube-viewer

Message ID 7aba2ddd3f21b0034c2d4c59d46383b8@riseup.net
State Accepted
Headers show
Series [bug#34000] gnu: Separate youtube-viewer-cli from youtube-viewer | expand

Checks

Context Check Description
cbaines/applying patch success Successfully applied

Commit Message

swedebugia Jan. 6, 2019, 9:29 p.m. UTC

Comments

Eric Bavier Jan. 7, 2019, 3:16 p.m. UTC | #1
On Sun, 06 Jan 2019 13:29:19 -0800
swedebugia@riseup.net wrote:

> * gnu/packages/video.scm (youtube-viewer-cli): New variable.
> ---
>  gnu/packages/video.scm | 62 ++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 62 insertions(+)
...
> Subject: [PATCH 2/2] gnu: youtube-viewer: Rename to youtube-viewer-gtk
> 
> * gnu/packages/video.scm (youtube-viewer):
>   [name] Rename it.
>   [arguments] Add phase to rename the binary.

I think renaming binaries is too much of a divergence from upstream.
This can only cause confusion to users coming to Guix from another
distro that use the upstream binary names, and is unlikely to be
adopted upstream:

  https://github.com/trizen/youtube-viewer/issues/230

If the desire is to create a slimmer cli-only package, would creating
another output not work?

`~Eric

Patch

From cc52eb5b8010d2bd9d9387e8a763948ac95d0d0b Mon Sep 17 00:00:00 2001
From: swedebugia <swedebugia@riseup.net>
Date: Sun, 6 Jan 2019 22:23:29 +0100
Subject: [PATCH 2/2] gnu: youtube-viewer: Rename to youtube-viewer-gtk

* gnu/packages/video.scm (youtube-viewer):
  [name] Rename it.
  [arguments] Add phase to rename the binary.
---
 gnu/packages/video.scm | 14 +++++++++++---
 1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index c6bd9063c..76ad48d19 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -1466,9 +1466,9 @@  audio, images) from the Web.  It can use either mpv or vlc for playback.")
     (home-page "https://you-get.org/")
     (license license:expat)))
 
-(define-public youtube-viewer
+(define-public youtube-viewer-gtk
   (package
-    (name "youtube-viewer")
+    (name "youtube-viewer-gtk")
     (version "3.5.0")
     (source (origin
               (method git-fetch)
@@ -1509,7 +1509,15 @@  audio, images) from the Web.  It can use either mpv or vlc for playback.")
                (for-each (cut wrap-program <>
                               `("PERL5LIB" ":" prefix (,lib-path ,site-dir)))
                          (find-files bin-dir))
-               #t))))))
+               #t)))
+                  (add-after 'wrap-program 'rename
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let* ((out (assoc-ref outputs "out"))
+                   (bin-dir (string-append out "/bin/")))
+               (chdir bin-dir)
+               (rename-file "gtk-youtube-viewer"
+                            "youtube-viewer-gtk")
+               #t))))))))
     (synopsis
      "Lightweight application for searching and streaming videos from YouTube")
     (description
-- 
2.19.2