On 12/7/06, Jamie McCracken <[EMAIL PROTECTED]> wrote:
> it would be best to discuss this first before doing the patch (unless
> you are content to modify it quite a bit - which is fine!)
>
> I like this in general but there are a few things:
>
thanks..just wanted to get something out there.

> I want it to work with third party packages so it needs to have easy
> installation and deinstallation
>
I agree, that's why I made the directory names the same as the
tracker.cfg keys.  But, there still needs to be a way to update the
database when a new metadata class is added.

>
> I would prefer just "services" to "external-services"
Naming isn't my strong suit.

>
>
> Im not sure this is needed but I suppose there's no harm in having it
> but it should be optional
currently that's how it works.  If check-deps isn't there, the module
is still used.
>
>
> not needed - I prefer to have a service file (like the dbus service
> files or .Desktop files which specify the options needed here).
Ahh.  Sounds cleaner!
Only problem I can see with this is the Man Page indexer.  It gets its
list of directories from the output of `manpath`.

>
> All we need is a directory like /usr/share/tracker/services to hold the
> service files. This makes it easy for seperate packages to install and
> de-install stuff without any hassle.
>
> At start up trackerd can simply read all these service files (+ also
> watch for new ones too!)
>
cool...much better than it currently is.

> >
> > 3) service-type
> not needed - any file in the watch directory above would be passed to
> the spawned service-handler (we can include globs in the service file to
> filter certain files to pass)
wasn't sure.
>
> generally these watched folders will all be in hidden folders (usually)
> so they wont conflict with the file indexer.
>
> >
> > 4) filter-text
> > 5) extract-metadata
>
> I was planning on migrating the existing metadata extractors format to
> an xml format (our current one is quite hacky!). We also need to handle
> multiple values for the same metadata type.
For instance, the "To:" field in an email?

>
> something like:
>
> <extraction>
>         <metadata name="Audio.Title">Moonlight Sonata</metadata>
>         <metadata name="Audio.Artist">Beethoven</metadata>
> </extraction>
>
> Feel free to modify code to match above.
>
> the filter program and metadata extractor program should be specified in
> the service file so there's no need to worry about mimes.
Again, the man pages were the problem.  Some are gzipped, some aren't.

>
> We need a function in tracker-utils that determines if a file is
> associated with a particular service by looking at its path and matching
> it against any path thats registered as a watch by a service. We need
> this for the emails so may as well reuse it for all services. (just
> needs to call g_str_has_prefix on it)
Yeah, I put that code in the process_files_thread.

>
> > 1) IndexManPages
> ok great. Maybe we can use user's locale to work out which translations
> to index?

>
> >
> > 2) IndexTomboy
> see Mikkel's tomboy indexer which he sent on this list last month - it
> does all the fields I believe. Perhaps you could use some of his code?
must have missed that.  I just use xsltproc, so it's no effort to add
the other pieces.
>
> >
> > 3) IndexLiferea
> not sure - will have to think. The xml above for the extractor could be
> modified to support multiple sub-entities with their own uri in one go.
>
> <extraction>
>         <Entity uri="/home/jamie/music/moonlight.ogg">
>                 <metadata name="Audio.Title">Moonlight Sonata</metadata>
>                 <metadata name="Audio.Artist">Beethoven</metadata>
>         </entity>
>
>         <Entity uri="/home/jamie/music/moonlight.ogg">
>                 <metadata name="Audio.Title">Moonlight Sonata</metadata>
>                 <metadata name="Audio.Artist">Beethoven</metadata>
>         </entity>
> </extraction>
>
>
> so in the DB, they should be separate objects "RSS" feed and "RSS Item"
>
> You could also build the uri to include the rss file and an offset to
> the item that matches and the gui can then decode it and show a viewer
> for it
file:///path/to/file#3   ???
>
>
> the service file can contain this - either an exec name or a dbus
> interface/object name
>
ahh..I was wondering how to distiguish one Tomboy specific Note to a
non-Tomboy Note.

> Any comments?
>
> --
> Mr Jamie McCracken
> http://jamiemcc.livejournal.com/
>
>
_______________________________________________
tracker-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/tracker-list

Reply via email to