Re: [Tracker] Tracker on Solaris
- From: Frank Lahm <franklahm gmail com>
- To: Martyn Russell <martyn lanedo com>
- Cc: tracker-list gnome org
- Subject: Re: [Tracker] Tracker on Solaris
- Date: Tue, 29 Jan 2013 15:39:21 +0100
Hi,
2013/1/24 Martyn Russell <martyn lanedo com>:
On 24/01/13 14:37, Frank Lahm wrote:
---8<---
root solaris:~# echo $DBUS_SESSION_BUS_ADDRESS
unix:path=/tmp/spotlight.ipc
root solaris:~# /opt/tracker/bin/tracker-control -S
Store:
24 Jan 2013, 15:32:37: â Store - Idle
Miners:
24 Jan 2013, 15:32:37: â Dateisystem - Not running or is
a disabled plugin
24 Jan 2013, 15:32:37: â Anwendungen - Not running or is
a disabled plugin
root solaris:~# ps auxwww | grep tracker
root 8223 0.1 0.23940019184 ? S 15:32:03 0:00
/opt/tracker/libexec/tracker-store
root 8269 0.0 0.0 8908 1456 pts/3 S 15:32:57 0:00 grep tracker
---8<---
Note that tracker-store IS running, just not the miners.
Yea. Are you starting the store via the miner-fs instigation? or yourself?
With tracker-control -s.
3. Are you able to test other dbus programs with your session and can
they
"register"?
I'm really new to dbus, could you give me a hint at an example program?
Yea, you can try the server/client here (might be out of date, and needs
Python):
http://cgit.freedesktop.org/dbus/dbus-python/tree/examples
Thanks, learning Python and dbus on the fly, I was able to write
(well, really copy and paste) a simple tracker-miner-fs replacement
which can be activated and called from a python interactive shell.
This is the tracker-miner-fs replacement:
---8<---
#!/usr/bin/env python
import gobject
import dbus
import dbus.service
import dbus.mainloop.glib
class ExampleObject(dbus.service.Object):
@dbus.service.method("org.freedesktop.Tracker1.Miner.Files",
in_signature='', out_signature='s')
def Ping(self):
return str("Hi. I am Alive")
if __name__ == '__main__':
dbus.mainloop.glib.DBusGMainLoop(set_as_default=True)
session_bus = dbus.SessionBus()
name = dbus.service.BusName("org.freedesktop.Tracker1.Miner.Files",
session_bus)
name2 = dbus.service.BusName("org.freedesktop.Tracker1.Miner.Applications",
session_bus)
object = ExampleObject(session_bus, '/ExampleObject')
mainloop = gobject.MainLoop()
mainloop.run()
---8<---
I can interact with this just fine from a Python shell:
root solaris:~# env | egrep 'TRACKER|DBUS|XDG'
TRACKER_EXTRACTOR_RULES_DIR=/opt/tracker/share/tracker/extract-rules
TRACKER_DB_ONTOLOGIES_DIR=/opt/tracker/share/tracker/ontologies
DBUS_SESSION_BUS_ADDRESS=unix:path=/tmp/spotlight.ipc
XDG_DATA_DIRS=/opt/tracker/share/:/usr/share/
TRACKER_LANGUAGE_STOPWORDS_DIR=/opt/tracker/share/tracker/languages
root solaris:~# python
Python 2.6.8 (unknown, Aug 30 2012, 01:56:38) [C] on sunos5
Type "help", "copyright", "credits" or "license" for more information.
import dbus
bus = dbus.SessionBus()
remote_object = bus.get_object("org.freedesktop.Tracker1.Miner.Files","/ExampleObject")
interface = dbus.Interface(remote_object,'org.freedesktop.Tracker1.Miner.Files')
reply = interface.Ping()
print reply
Hi. I am Alive
A test program to do this should be only a few lines of code.
Well, ok, lets get down and dirty. By chance, can you share a link to
a good online ressource or similar.
Try the above first ;)
The Python examples from freedesktop work just fine too... :/
Would it help running tracker-miner-fs from gdb?
Thanks!
-f
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]