unofficial mirror of guix-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: David Hashe <david.hashe@dhashe.com>
To: Mark H Weaver <mhw@netris.org>
Cc: guix-devel@gnu.org
Subject: Re: [PATCH] gnu: Add gst-plugins-ugly
Date: Sun, 12 Jul 2015 14:42:39 -0500	[thread overview]
Message-ID: <CAAn-YqE7n7OsCdGz3tzFSkHjF5i2LVBO+bDTx6RCt2pL7y0P1Q@mail.gmail.com> (raw)
In-Reply-To: <87twtcmw18.fsf@netris.org>


[-- Attachment #1.1: Type: text/plain, Size: 5641 bytes --]

I've attached an updated patch making the modifications you suggested.

In addition, I also wrapped GI_TYPELIB_PATH, which is required in order for
plugins (like cd burning and libre.fm integration) to work.

Thanks,
David

On Fri, Jul 10, 2015 at 12:17 AM, Mark H Weaver <mhw@netris.org> wrote:

> David Hashe <david.hashe@dhashe.com> writes:
>
> > From c3ec7cf01a6c1bf9013a2819c2c5ec7181724947 Mon Sep 17 00:00:00 2001
> > From: David Hashe <david.hashe@dhashe.com>
> > Date: Tue, 7 Jul 2015 23:40:01 -0500
> > Subject: [PATCH] gnu: Add rhythmbox.
> >
> > * gnu/packages/gnome.scm (rhythmbox): New variable.
> > ---
> >  gnu/packages/gnome.scm | 74
> ++++++++++++++++++++++++++++++++++++++++++++++++++
> >  1 file changed, 74 insertions(+)
> >
> > diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
> > index 0ec5ea2..6d238af 100644
> > --- a/gnu/packages/gnome.scm
> > +++ b/gnu/packages/gnome.scm
> > @@ -56,6 +56,7 @@
> >    #:use-module (gnu packages libcanberra)
> >    #:use-module (gnu packages linux)
> >    #:use-module (gnu packages libusb)
> > +  #:use-module (gnu packages lirc)
> >    #:use-module (gnu packages image)
> >    #:use-module (gnu packages perl)
> >    #:use-module (gnu packages pkg-config)
>
> I've since added (gnu packages lirc) here as part of the Totem patch, so
> this hunk should be removed.
>
> > @@ -2718,3 +2719,76 @@ the patterned block to the area bordered by green
> markers.  To do so, you will
> >  need to slide other blocks out of the way.  Complete each puzzle in as
> few moves
> >  as possible!")
> >      (license license:gpl2+)))
> > +
> > +(define-public rhythmbox
> > + (package
> > +   (name "rhythmbox")
> > +   (version "3.2.1")
> > +   (source (origin
> > +            (method url-fetch)
> > +            (uri (string-append "mirror://gnome/sources/" name "/"
> > +                                (version-major+minor version) "/"
> > +                                name "-" version ".tar.xz"))
> > +            (sha256
> > +             (base32
> > +              "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz"))))
> > +   (build-system glib-or-gtk-build-system)
> > +   (arguments
> > +    `(#:configure-flags
> > +      (list "--enable-lirc"
> > +            "--enable-python"
> > +            "--enable-vala"
> > +            "--with-brasero"
> > +            "--with-gudev"
> > +            "--with-libsecret")))
> > +   (propagated-inputs
> > +    `(("dconf" ,dconf)
> > +      ("gobject-introspection" ,gobject-introspection)
> > +      ("gst-libav" ,gst-libav)
> > +      ("gst-plugins-base" ,gst-plugins-base)
> > +      ("gst-plugins-good" ,gst-plugins-good)
> > +      ("gst-plugins-ugly" ,gst-plugins-ugly)
> > +      ("totem-pl-parser" ,totem-pl-parser)))
>
> I agree that 'dconf' should be a propagated-input.
>
> 'gobject-introspection' should be moved to 'native-inputs'.
>
> 'gst-libav' and 'gst-plugins-ugly' should be removed entirely.  Users
> can add them to their profile if they wish.
>
> As for 'gst-plugins-base' and 'gst-plugins-good': I think it would be
> better to make them normal inputs, and add a wrapper for rhythmbox that
> adds a prefix to GST_PLUGIN_SYSTEM_PATH, similar to what we do in the
> Totem package.
>
> What about 'totem-pl-parser'?  Does that need to be a propagated-input?
> If so, why?
>
> > +   (native-inputs
> > +    `(("intltool" ,intltool)
> > +      ("glib" ,glib "bin")
> > +      ("desktop-file-utils" ,desktop-file-utils)
> > +      ("pkg-config" ,pkg-config)))
> > +   (inputs
> > +    `(("json-glib" ,json-glib)
> > +      ("tdb" ,tdb)
> > +      ("gnome-desktop" ,gnome-desktop)
> > +      ("python" ,python)
> > +      ("python-pygobject" ,python2-pygobject)
> > +      ("vala" ,vala)
> > +      ("gmime" ,gmime)
> > +      ("nettle" ,nettle)
> > +      ("itstool" ,itstool)
> > +      ("adwaita-icon-theme" ,adwaita-icon-theme)
> > +      ("gstreamer" ,gstreamer)
> > +      ("gudev" ,eudev)
>
> Does 'eudev' provide 'gudev'?  This seems mismatched, but perhaps I'm
> mistaken.
>
> > +      ;("libmtp" ,libmtp) FIXME Not detected
>
> Please use two semicolons here.  In general, use one semicolon for
> margin comments (on the right), and two semicolons for comments that are
> in the same column as the surrounding code.  Emacs decides how to
> auto-indent Lisp/Scheme comments based on the number of semicolons.
>
> > +      ("libsecret" ,libsecret)
> > +      ("libsoup" ,libsoup)
> > +      ("libnotify" ,libnotify)
> > +      ("libpeas" ,libpeas)
> > +      ("lirc" ,lirc)
> > +      ; TODO Unused without mx
>
> Two semicolons, and it's not clear which input the comment above refers
> to.  Please make it more clear.
>
> > +      ;("clutter" ,clutter)
> > +      ;("clutter-gtk" ,clutter-gtk)
> > +      ;("clutter-gst" ,clutter-gst)
>
> Two semicolons.
>
> > +      ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
> > +      ("atk" ,atk)
> > +      ("pango" ,pango)
> > +      ("gtk+" ,gtk+)
> > +      ;; TODO:
> > +      ;;  * grilo
>
> We have grilo now.  You should probably add both 'grilo' and
> 'grilo-plugins' as inputs and then set GRL_PLUGIN_PATH in the wrapper,
> like we do in the Totem package.
>
> > +      ;;  * libgpod
> > +      ;;  * mx
> > +      ;;  * webkit
> > +      ("brasero" ,brasero)))
> > +   (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
> > +   (synopsis "Music player for GNOME")
> > +   (description "Rhythmbox is a music playing application for GNOME.  It
> > +supports playlists, song ratings, and any codecs installed through
> gstreamer.")
> > +   (license license:gpl2+)))
>
> Can you send an updated patch?
>
>      Thanks,
>        Mark
>

[-- Attachment #1.2: Type: text/html, Size: 8110 bytes --]

[-- Attachment #2: 0001-gnu-Add-rhythmbox.patch --]
[-- Type: text/x-patch, Size: 3963 bytes --]

From 3ddd7b8d0744e3d7a105e6ea613df269c8c587a6 Mon Sep 17 00:00:00 2001
From: David Hashe <david.hashe@dhashe.com>
Date: Thu, 9 Jul 2015 23:43:56 -0500
Subject: [PATCH] gnu: Add rhythmbox.

* gnu/packages/gnome.scm (rhythmbox): New variable.
---
 gnu/packages/gnome.scm | 86 ++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 86 insertions(+)

diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 3142506..64c078e 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -2902,3 +2902,89 @@ which can read a large number of file formats.")
     ;; to be used and distributed together with GStreamer and Totem.  See
     ;; file://COPYING in the source distribution for details.
     (license license:gpl2+)))
+
+(define-public rhythmbox
+ (package
+   (name "rhythmbox")
+   (version "3.2.1")
+   (source (origin
+            (method url-fetch)
+            (uri (string-append "mirror://gnome/sources/" name "/"
+                                (version-major+minor version) "/"
+                                name "-" version ".tar.xz"))
+            (sha256
+             (base32
+              "0f3radhlji7rxl760yl2vm49fvfslympxrpm8497acbmbd7wlhxz"))))
+   (build-system glib-or-gtk-build-system)
+   (arguments
+    `(#:configure-flags
+      (list "--enable-lirc"
+            "--enable-python"
+            "--enable-vala"
+            "--with-brasero"
+            "--with-gudev"
+            "--with-libsecret")
+      #:phases
+      (modify-phases %standard-phases
+        (add-after
+         'install 'wrap-rhythmbox
+         (lambda* (#:key inputs outputs #:allow-other-keys)
+           (let ((out               (assoc-ref outputs "out"))
+                 (gi-typelib-path   (getenv "GI_TYPELIB_PATH"))
+                 (gst-plugin-path   (getenv "GST_PLUGIN_SYSTEM_PATH"))
+                 (grl-plugin-path   (getenv "GRL_PLUGIN_PATH")))
+             (wrap-program (string-append out "/bin/rhythmbox")
+               `("GI_TYPELIB_PATH"        ":" prefix (,gi-typelib-path))
+               `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path))
+               `("GRL_PLUGIN_PATH"        ":" prefix (,grl-plugin-path))))
+           #t)))))
+   (propagated-inputs
+    `(("dconf" ,dconf)))
+   (native-inputs
+    `(("intltool" ,intltool)
+      ("glib" ,glib "bin")
+      ("gobject-introspection" ,gobject-introspection)
+      ("desktop-file-utils" ,desktop-file-utils)
+      ("pkg-config" ,pkg-config)))
+   (inputs
+    `(("json-glib" ,json-glib)
+      ("tdb" ,tdb)
+      ("gnome-desktop" ,gnome-desktop)
+      ("python" ,python)
+      ("python-pygobject" ,python2-pygobject)
+      ("vala" ,vala)
+      ("gmime" ,gmime)
+      ("nettle" ,nettle)
+      ("itstool" ,itstool)
+      ("adwaita-icon-theme" ,adwaita-icon-theme)
+      ("grilo" ,grilo)
+      ("grilo-plugins" ,grilo-plugins)
+      ("gstreamer" ,gstreamer)
+      ("gst-plugins-base" ,gst-plugins-base)
+      ("gst-plugins-good" ,gst-plugins-good)
+      ("eudev" ,eudev)
+      ("totem-pl-parser" ,totem-pl-parser)
+      ;;("libmtp" ,libmtp) FIXME: Not detected
+      ("libsecret" ,libsecret)
+      ("libsoup" ,libsoup)
+      ("libnotify" ,libnotify)
+      ("libpeas" ,libpeas)
+      ("lirc" ,lirc)
+      ;; TODO: clutter* only used by visualizer plugin, which also requires mx
+      ;;("clutter" ,clutter)
+      ;;("clutter-gtk" ,clutter-gtk)
+      ;;("clutter-gst" ,clutter-gst)
+      ("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
+      ("atk" ,atk)
+      ("pango" ,pango)
+      ("gtk+" ,gtk+)
+      ;; TODO:
+      ;;  * libgpod
+      ;;  * mx
+      ;;  * webkit
+      ("brasero" ,brasero)))
+   (home-page "https://wiki.gnome.org/Apps/Rhythmbox")
+   (synopsis "Music player for GNOME")
+   (description "Rhythmbox is a music playing application for GNOME.  It
+supports playlists, song ratings, and any codecs installed through gstreamer.")
+   (license license:gpl2+)))
-- 
1.9.1


  reply	other threads:[~2015-07-12 19:42 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-06-18  5:07 [PATCH] gnu: Add rhythmbox David Hashe
2015-06-18 13:45 ` Ricardo Wurmus
2015-06-19  2:09   ` David Hashe
2015-06-26 17:13     ` Ricardo Wurmus
2015-07-05 10:13       ` Ludovic Courtès
2015-07-05 11:44         ` Ricardo Wurmus
2015-07-05 15:28           ` David Hashe
2015-07-05 17:45             ` Amirouche Boubekki
2015-07-05 19:24               ` Amirouche Boubekki
2015-07-05 21:42                 ` David Hashe
2015-07-06 19:34                   ` Mark H Weaver
2015-07-07  3:39                     ` David Hashe
2015-07-07 14:59                       ` [PATCH] gnu: Add gst-plugins-ugly Mark H Weaver
2015-07-07 18:50                         ` Mark H Weaver
2015-07-08  5:06                           ` David Hashe
2015-07-08 18:16                             ` Mark H Weaver
2015-07-10  5:17                             ` Mark H Weaver
2015-07-12 19:42                               ` David Hashe [this message]
2015-07-13  3:29                                 ` Mark H Weaver
2015-07-09 16:21                           ` Mark H Weaver
2015-07-06 19:27               ` [PATCH] gnu: Add rhythmbox Mark H Weaver

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://guix.gnu.org/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAAn-YqE7n7OsCdGz3tzFSkHjF5i2LVBO+bDTx6RCt2pL7y0P1Q@mail.gmail.com \
    --to=david.hashe@dhashe.com \
    --cc=guix-devel@gnu.org \
    --cc=mhw@netris.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/guix.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).