[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Tracker/Beagle integration in Nautilus



As discussed today on #gnome-debian@irc.gimp.net[attaching full log]
it is possible to add Tracker and Beagle indexing support in the
nautilus source we are shipping in Debian.

Adding a build-dep on libtrackerclient-dev and libbeagle-dev and
passing --enable-tracker --enable-beagle to the configure will enable
support for both those technologies:

Choosing tracker per default if it is running when nautilus inits.
Choosing beagle (if it is running) if tracker is not running when
nautilus inits.
Rolling back to the default search engine if neither those modules are
usable.

The only drawback there is adding some extra deps to nautilus, but I
guess that as beagle and tracker packages are quite well thought, that
will just bring back a tiny lib, and so making it runtime loadable
(through binaries found in nautilus-{tracker,beagle} packages) doesn't
seem worth the effort.

The nautilus package should then be linked to one of the indexer, as
disscussed on the channel, those technologies can still be quite
annoying now a days, they might hog your CPU, or produce loads of IO,
So here comes the 'way we should link' issue (Recommends, Suggests).
 
Michael Biebl, tracker maintainer, is confident that lots of the
current 'problems' will be fixed in the future of tracker, and hence
is ok to have a Suggest until we can approve one indexing technologie
for all our users.

Upstream's position seems to be (I haven't properly checked on that,
but that what sjoerd seemed to be feeling too on gnome-devel) to
promote tracker as a default over beagle. As discussed on IRC it
seems to make sense, to have tracker | beagle.

What do you think about it ? could it be possible to have
libtrackerclient-dev and libbeagle-dev added to nautilus' build-deps,
and nautilus added a Suggests tracker | beagle ?

Regards,
-- 
Niv Sardi

> Random Fortune (To make your day better if not wiser) < 
If they were so inclined, they could impeach him because they don't like
his necktie.
		-- Attorney General William Saxbe
14:48 < xaiki> ok, mostly, the tracker/beagle choice is made with #ifdefs in 
               the code, tracker seems to be prefered, if we want to ship both, 
               there are (at least) 2 solutions:
14:50 < xaiki> the easy one: add a gconf key, and then change the ifdef into 
               if(), but then we should be sure to ship all the code always, 
               and have a way to be sure that the selected method is useable, 
               plus I think that might make us pull the 2 indexers, and we'll 
               need a way to NOT have them both running at the same time.
14:50 < sjoerd> We could also just decide to go for tracker 
 is to had some logic to check for a running 
               method, and then a key to chose the prefered one, we could then 
               fall back to the one we want.
14:51 < xaiki> sjoerd: there is also a non-indexing searh.
14:51 < xaiki> *search
14:51 < xaiki> and tracker can get crazy sometimes.
14:51 < xaiki> and it's obviously *add, i'm tiered.
14:53 < xaiki> oh, and tracker also (still) doesn't support all the indexing 
               methods beagle does.
find it a bit harsh on beagle to drop it entirely in favor of 
              tracker
14:55 <@lool> It's a bit like gamin / fam, advantages and inconvenients in both 
              software; except they are compatible :-/
14:55 < xaiki> anyway I'll try to get the second solution, as it's purely 
               nautilus-based, ready for fosdem, and we'll be able to properly 
               discuss it there.
14:55 <@lool> libgnome-search! :)
14:56 < sjoerd> I guess gnome will drop beagle in favor of tracker at one point 
                anyway
14:56 <@lool> sjoerd: Why?
14:56 <@lool> Is beagle too slugish?
14:57 < xaiki> it looks like lots of love has been given to beagle so that it 
               eventually doesn't eat all the available memory arround.
14:57 < sjoerd> Just the feeling i get by following the gnome desktop devel list
14:57 <@lool> Hmmm
15:00 < cortana> people keep saying that, but beagle still keeps falling over 
                 and/or exploding for me
15:00 <@lool> Erf
15:00 <@lool>             basefile=`echo $file | sed -e  's,^.*/,,'`; \
15:00 < sjoerd> Having standard gnome framework stuff not drag in mono is a 
                major plus for me btw :)
15:00 < cortana> also it does this weird thing with its log files that makes it 
                 a complete PITA to debug
15:01 <@lool> sjoerd: Isn't tomboy included nowadays?
15:01 < seb128> imho neither beagle or tracker are ready for the desktop
15:01 < seb128> they just eat too much ressources
15:01 < seb128> you don't want that on a laptop for example
15:01 < sjoerd> I don't think tomboy can be called framework :)
15:02 < cortana> it's sad to say it but the best thing might be to wait and see 
                 how MS' system performs, then clone it
15:02 <@lool> sjoerd: Hmm ok, I misread your point as "not having Mono in the 
              standard desktop"
15:03 < sjoerd> Maybe i'm old-fashioned.. But i still prefer all low-level 
                things to be C and glib :)
15:03 <@lool> sjoerd: I agree it's a very good thing
15:04 < xaiki> it is clearly overkill for a laptop, but really handy on a 
               desktop computer, and having beagle beeing able to search in 
               your mails and IM IS addictive.
15:04 < sonne> definitely less memory hungry - yes
15:05 <@lool> sjoerd: Still, if people have the power to run beagle, and if it 
              had time to mature, it's a bit hard to support only tracker, no?
15:06 <@lool> The argument is good for the choice of the _default_ engine we 
              want to promote though
15:07 < sjoerd> It's more of a question if we want to support beagle too i guess
15:07 < xaiki> well following seb128 remark, I'm not sure that having an engine 
               enabled by default is wise (for now at least)
15:08 < xaiki> and the modification into nautilus is also need to support 
               choice between no-indexing and any of the others.
15:08 <@lool> sjoerd: What I fear is that it effectively kills beagle if 
              distros can only build for tracker OR beagle
15:08 < sjoerd> survival of the fittest
15:08 <@lool> sjoerd: "But who are we distro guys to take the decision of life 
              or death of a project"
15:09 < seb128> lool: no real reason to fear for beagle, Novell is not likely 
                to stop using it
15:09 < seb128> and fedora uses it
15:10  * sonne is tries tracker on his notebook now
15:14 < sonne> how about this: 
               http://www.gnome.org/projects/tracker/faq.html#point7
15:14 < sonne> looks like it is not either or ...
15:17 < sonne> tracker feels much much faster and the memory footprint seems 
               also much improved over beagle...


19:41 < mbiebl> xaiki: hi
19:42 < mbiebl> I read your email about enabling tracker support in nautilus
19:49 < mbiebl> I just wanted to say, that the beagle/tracker issue is not 
                either or.
19:50 < mbiebl> Just build-depend on libtrackerclient-dev and libbeagle-dev, 
                and support for both search engines will be enabled.
19:50 < mbiebl> Then add a Recommends: tracker | beagle.
19:51 < mbiebl> This way we promote a default but leave it open to the user to 
                choose.
19:52 < mbiebl> There is also a interesting project going on, called Wasabi
19:52 < mbiebl> Which tries to unify the desktop search and provide a 
                consistend dbus search api
19:52 < mbiebl> http://wiki.freedesktop.org/wiki/WasabiAbout
23:04 < xaiki> mbiebl: recommends will make aptitude pull one of those by 
               default, as discussed here before, these technologies are still 
               a performance hog, and can get really annoying, e.g (seb128) for 
               laptop users.
23:06 < mbiebl> xaiki: tracker is actually quite light weight
23:06 < mbiebl> I have it running all the time on my laptop (3 years old)
23:06 < mbiebl> Without noticeable performance penalties.
23:08 < xaiki> mbiebl: I had it running for 2 hours on my laptop before I 
               killalled it because it wouldn't let my disk to sleep.
23:08 < sjoerd> xaiki: that was while you were on AC or ?
23:08 < mbiebl> Which version? Have you checked the log
23:09 < mbiebl> The initial run takes some time
23:09 < mbiebl> after that it uses inotify to monitor changes.
23:09 < xaiki> sjoerd: it was same on battery.
23:09 < giskard> mbiebl, next version will handle mails, dunno if it will be 
                 *schnell* (fast)
23:09 < xaiki> mbiebl: it was current from a month ago or so.
23:10 < mbiebl> xaiki: Do you still have the log file ~/.Tracker/tracker.log?
23:10 < xaiki> mbiebl: and having it try to index a ~/src with a linux tree 
               beeing built was ANNOYING.
23:10 < mbiebl> If so, pls send it to me via email and I'll take a look
23:10 < mbiebl> xaiki: Do you still have the log file ~/.Tracker/tracker.log?
23:10 < xaiki> mbiebl: and having it try to index a ~/src with a linux tree 
               beeing built was ANNOYING.
23:10 < mbiebl> If so, pls send it to me via email and I'll take a look
23:11 < _feedback> giskard :*
23:11 < mbiebl> xaiki: that is true. But that problem is the same for all 
                indexers.
23:11 < xaiki> mbiebl: I do, but I don't see the relevant data on it.
23:11 < xaiki> I might have removed it while doing tests.
23:11 < xaiki> mbiebl: I'm not especially criticizing tracker, just general 
               indexing tools.
23:12 < mbiebl> In tracker you can exclude certain directories from beeing 
                indexed though.
23:13 < xaiki> and saying, that having tracker installed on ALL debian-desktop 
               isn't really ideal (now)
23:13 < xaiki> but at least laptop-mode (i.e. battery runs) detection, is a 
               must-fix for general installation, imho.
23:14 < mbiebl> Why not, if it is easily removable
23:14 < mbiebl> The next version features email indexing which adds real benefit
23:15 < xaiki> mbiebl: maybe we should move this discution to gtk-gnome
23:15 < xaiki> as it's mostly about point of views.
23:15 < xaiki> mbiebl: are you going to FOSDEM ? 
23:15 < mbiebl> xaiki: Unfortunately, no
23:17 < xaiki> mbiebl: I'm moving the discution to the ML, are you subscribed ?
23:17 < mbiebl> xaiki: tracker is evolving rapidly atm, so I'm sure most of the 
                points you raised in the email you sent me, will be dealt with 
                in the coming weeks and monts
23:18 < mbiebl> Btw, if there are still concerns, which I take very seriously, 
                I'm fine if the Recommends are degraded to suggests first.
23:19 < mbiebl> And give tracker some wider testing first.
23:19 < mbiebl> I would actually prefer that myself.
23:25 < xaiki> mbiebl: I think that's the best solution, anyway I'm in no 
               position to decide for this =)
















Reply to: