I would echo Donagh's excellent comments and links. Just to say - one easy way to help to understand plugin writing, is actually to look at some authors plugins themselves - pick an issue and work on submitting a patch. In that way you can gain experience with collaborative working, plugin development as well as receiving direct feedback and support from the plugin developers themselves.
For example (shameless plug!) - we have lots of issues outstanding that need working up into potential solutions - https://github.com/fossfreedom/coverart-browser/issues?milestone=7&sort=updated&state=open Have fun - and welcome! David (aka fossfreedom) On 12 March 2013 12:00, <rhythmbox-devel-requ...@gnome.org> wrote: > Send rhythmbox-devel mailing list submissions to > rhythmbox-devel@gnome.org > > To subscribe or unsubscribe via the World Wide Web, visit > https://mail.gnome.org/mailman/listinfo/rhythmbox-devel > or, via email, send a message with subject or body 'help' to > rhythmbox-devel-requ...@gnome.org > > You can reach the person managing the list at > rhythmbox-devel-ow...@gnome.org > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of rhythmbox-devel digest..." > > > Today's Topics: > > 1. Fwd: Beginning to contribute to Rhythmbox. (Ankit Arora) > 2. Re: Fwd: Beginning to contribute to Rhythmbox. (Donagh Horgan) > > > ---------------------------------------------------------------------- > > Message: 1 > Date: Tue, 12 Mar 2013 14:46:30 +0530 > From: Ankit Arora <ankitarora...@gmail.com> > To: rhythmbox-devel@gnome.org > Subject: [Rhythmbox-devel] Fwd: Beginning to contribute to Rhythmbox. > Message-ID: > < > caetfwhnfzsehqtu4flq9kzf4yifsgnvdxyxsfgbdlrjzve7...@mail.gmail.com> > Content-Type: text/plain; charset="iso-8859-1" > > Hey guys. I want to begin contributing to Rhythmbox, a Gnome project that I > use the most. This'll be my first venture into Open source development so > do forgive me if my question is to elementary. > I have a few good ideas on a few plugins that I want to develop for > Rhythmbox and I'm sure they'll be of decent use to the community. > > I just need some basic guidance on what are the basic prerequisites I need > to have before I dive in. I've sufficient knowledge of Python so I'm > covered there. But what else do I need to read up on or get familiar with > before I start my first Rhythmbox plugin? I have no clue about GStreamer or > GObject etc. > > Thanks. > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > https://mail.gnome.org/archives/rhythmbox-devel/attachments/20130312/239de6e6/attachment.html > > > > ------------------------------ > > Message: 2 > Date: Tue, 12 Mar 2013 10:16:10 +0000 > From: Donagh Horgan <donagh.hor...@gmail.com> > To: Ankit Arora <ankitarora...@gmail.com> > Cc: rhythmbox-devel@gnome.org > Subject: Re: [Rhythmbox-devel] Fwd: Beginning to contribute to > Rhythmbox. > Message-ID: > <CAK1wx5uKnJXSDYpXP9yOua-AtwY5JNZ0WMKkf= > naqgjd47l...@mail.gmail.com> > Content-Type: text/plain; charset="iso-8859-1" > > Hi Ankit, > > I recently started developing Rhythmbox plugins too, so hopefully you'll > find this of some use. (To other developers, if the following is > offensively incomplete, I apologise sincerely.) > > First up, there's a > guide<https://live.gnome.org/RhythmboxPlugins/WritingGuide>for writing > Rhythmbox plugins on the Gnome website. It covers the basics of > how to put together a plugin and make it do something (essentially, it > boils down to having a plugin description file which references a named > Python file containing your plugin code - from there, anywhere!). There's > also a Python plugin example > page<https://live.gnome.org/Rhythmbox%20Plugins/Python%20Plugin%20Examples > >, > but I seem to recall this being a little out of date. It's probably worth a > look anyway though. > > The latest source code > <http://ftp.gnome.org/pub/GNOME/sources/rhythmbox/>for Rhythmbox is > always a handy reference. If you're planning on adding UI > elements, you'll need to have a look at 'rhythmbox-ui.xml', in the > 'data/ui' subdirectory. It also comes with the source code for all of the > default plugins that Rhythmbox is shipped with. In particular, there's a > fully working Python plugin example in the 'sample-plugins/sample-python' > subdirectory which you might find a good starting point. Similarly, my > first plugin< > http://www.donaghhorgan.com/projects/rhythmbox/open-containing-folder/>, > which shamelessly rips off its old Rhythmbox 0.13 > counterpart<http://www.infinicode.org/code/rb/>, > is probably a good minimal working example of a plugin with some UI. > > The Rhythmbox Python API > reference< > http://www.jetmore.org/john/misc/rb/rb297-python-bindings/index.html>is > pretty essential, and it doesn't seem to exist anywhere else on the > web. > If you're worried about the version numbering being out of date (that link > is for Rhythmbox 2.97), or just want to generate your own, then check out > John Jetmore's blog post > here< > http://www.jetmore.org/john/blog/2012/07/rhythmbox-python-bindings-documentation/ > >. > The API reference is where you'll find functions relating to GStreamer, > etc., although if you're looking for more detailed information then the > GStreamer page itself is probably your best bet - the Python bindings just > allow you to hook into the framework (and, then, only some parts of the > framework - hopefully, what you're looking for will be exposed). > > The third party Rhythmbox > plugins<https://live.gnome.org/RhythmboxPlugins/ThirdParty>are worth > checking out too, especially if you want to see how a particular > API is used in practice. The third party plugins page lists plugins for > both Rhythmbox 2.9+ and the older 0.13 variety, so be careful if you're > planning on copying code to teach yourself - the older code might look ok, > but it's often subtly different from the new API, and you might find > yourself scratching your head and wondering why something so basic just > won't work, for hours and hours and hours... > > Finally, if you're stuck, the other plugin developers are great to talk to. > Most of us don't bite, and can often point in the direction of something we > might have done in the course of writing one of our plugins, that you might > find useful in writing yours. > > That's about it, I think. It might seem like a lot to take it at first, but > it's not too difficult to get the hang of. Besides, my Python was (is) very > basic, so I'm sure you'll adapt a lot faster than I did... > > All the best, > Donagh > > > > On Tue, Mar 12, 2013 at 9:16 AM, Ankit Arora <ankitarora...@gmail.com > >wrote: > > > Hey guys. I want to begin contributing to Rhythmbox, a Gnome project that > > I use the most. This'll be my first venture into Open source development > so > > do forgive me if my question is to elementary. > > I have a few good ideas on a few plugins that I want to develop for > > Rhythmbox and I'm sure they'll be of decent use to the community. > > > > I just need some basic guidance on what are the basic prerequisites I > need > > to have before I dive in. I've sufficient knowledge of Python so I'm > > covered there. But what else do I need to read up on or get familiar with > > before I start my first Rhythmbox plugin? I have no clue about GStreamer > or > > GObject etc. > > > > Thanks. > > > > _______________________________________________ > > rhythmbox-devel mailing list > > rhythmbox-devel@gnome.org > > https://mail.gnome.org/mailman/listinfo/rhythmbox-devel > > > > > -------------- next part -------------- > An HTML attachment was scrubbed... > URL: < > https://mail.gnome.org/archives/rhythmbox-devel/attachments/20130312/633fbc03/attachment.html > > > > ------------------------------ > > Subject: Digest Footer > > _______________________________________________ > rhythmbox-devel mailing list > rhythmbox-devel@gnome.org > https://mail.gnome.org/mailman/listinfo/rhythmbox-devel > > > ------------------------------ > > End of rhythmbox-devel Digest, Vol 107, Issue 3 > *********************************************** >
_______________________________________________ rhythmbox-devel mailing list rhythmbox-devel@gnome.org https://mail.gnome.org/mailman/listinfo/rhythmbox-devel