Planning for 2.0

Michael Pujos pujos.michael at laposte.net
Sun Feb 18 12:16:35 UTC 2007


> 6) Plugins
> It's been suggested to let everything be done by plugins, but Amarok
> has never been about extreme configurability. Are we taking this path
> now?
> Some stuff definitely should be handled by plugins, like the database
> stuff, stores, maybe the browsers, or maybe only part of them. I'm not
> confortable with the idea of Amarok changing from a application to a
> kind of framework for plugins, as some seem to suggest.
>   

I think most everything that is not core functionality should be a 
plugin/component, but as I won't be doing the actual design/coding take that
with a grain of salt  :

- cleaner code design because it force to think of good API / interfaces
- it would be possible to enable / disable plugins at runtime depending 
on user's need. This way you could make
amarok as light or heavy as you want depending on yours needs. For 
example I don't need DAP support, lyric, cover manager or store integration.
But I'd need replaygain support. I could enable or disable all that if 
they were plugins.
- reduced compile time (one of your previous point)
- the plugin can have a maintainer which is interested by the 
functionality, whithout having to change the core of amarok (ideal case)
- you can have plugins which are not part of amarok and maintained by 
external people.

I'd also make the Collection manager totally UI independant with a good 
API. That way you could have different UI plugins displaying it's data, 
let's say
a tree view like in current amarok or a multi-pane view more like rythmbox.
Making UI elements (playlist view, collection view, album art panels, 
etc) UI plugins would be great but I understand it's quite challenging 
to do it right, not too complicated.
My feel is that a fixed in stone UI would be a bit disappointing. Having 
panel UI plugins would be great.

Other point of interest:

- make the Collection DB as much memory efficient as possible, to handle 
large collection
- ability to use whatever tag you want (custom or not) in search / tree 
view sorting / playlist column display...
- integrated out of the box replaygain support, as a plugin










More information about the Amarok mailing list